conky: Add a conky not depending on lua:0
authorStefan Huber <shuber@sthu.org>
Tue, 26 Feb 2019 20:33:05 +0000 (21:33 +0100)
committerStefan Huber <shuber@sthu.org>
Tue, 26 Feb 2019 20:33:05 +0000 (21:33 +0100)
app-admin/conky/Manifest [new file with mode: 0644]
app-admin/conky/conky-1.10.8-r5.ebuild [new file with mode: 0644]
app-admin/conky/files/conky-1.10.4-x11-build.patch [new file with mode: 0644]
app-admin/conky/files/conky-1.10.8-libical-3.patch [new file with mode: 0644]
app-admin/conky/files/conky-1.10.8-use-pkgconfig.patch [new file with mode: 0644]
app-admin/conky/metadata.xml [new file with mode: 0644]

diff --git a/app-admin/conky/Manifest b/app-admin/conky/Manifest
new file mode 100644 (file)
index 0000000..db7aceb
--- /dev/null
@@ -0,0 +1,6 @@
+AUX conky-1.10.4-x11-build.patch 944 BLAKE2B eafeab1078e1c1c96190dce1207f49272a86fb964b153cd971d3e773ddfb8094a55b0c8e77f0d152c5cc4ec77f0863b694fca8d776208f2aae26d6366cc898ef SHA512 4ef0fb7467101befd1adbc0ae43268d69ceaa35af0185ade1f3b8ce4ebe8d8083cc6c71ddabae73bae1c5f92f5f95b0a4595dd92dd55bd9ffc4a34d10af26afa
+AUX conky-1.10.8-libical-3.patch 1395 BLAKE2B a42403799854d0c96e37b654ab1a72897e32cd176d4efee3aa3816f36b782d823502a4a1cb79646995e90c9ac25d9a4bcd6f1879abe365173c3e29fc8583f213 SHA512 40cdd81f975c5198149ac62066af1a7b8eaa2c722d896d71a88663bef5bfdda17521d841a4fa8e08b5c4cc9106929385d626afcbe65709360b669b10a118f397
+AUX conky-1.10.8-use-pkgconfig.patch 1115 BLAKE2B d951bdd32ee0e6eace1444d3b8a6453c6ba25c15df2cb5ca4e1ccbb2f7f86fb860e4b43e75d76b62f7d1d12e91018bb03fb3b0237ce1b1af239c53f0bffc832b SHA512 e4b73aa8c0cc917a87e1eaecc3a2e55058fa4ea0acee9c76e409cda29de0c430df3a13f8a6c3ac922dd0a11b6c4cfca781bef39c6d508e903ae81423144c86d4
+DIST conky-1.10.8.tar.gz 373075 BLAKE2B 749d8bb37557c1eeb8b07955bbd45704fadb41995fad8380dd89afdf7b0c9dce02d19692691e3ef1857d849c05eae1b2fdf20243460d767199a681aeb9e87746 SHA512 743b1d17db4ae654c7a319fe9157e9ebc5eb4ae0462a1f7269332d379e8bdd1dbfecc3ab6f46c8b5176b7e40918301649ac3ee883a84dc4fc8d766abbac6585a
+EBUILD conky-1.10.8-r5.ebuild 4721 BLAKE2B eb63824fa39f3a85060fc5ba63b8ffc05eaae25a4ad51196f22758239f0962d1b0be8af439eca68f80165196db343da358ca58dc39d804b8e9f6fb043cd54c98 SHA512 f7a2345703e64ea7d07282f6b5519dcbb50c67ef70fe17400724bfe6a2f76243bbc53a96a7fead2f6937666a2fc2ff0dfe5a8a126a86f1c1a5367e123d1dd4f0
+MISC metadata.xml 2524 BLAKE2B c86460a6b065874ba17b35f4aba4240424a71bddf0d6648555d936259a2e9ef46ae373bcfc91a5382edd79e830945baef6c54eff52ed88a7f6648254c447675b SHA512 7f9aa6dcd65d7e4a9e1829cb273329b08cadec8820afb65de5e9fb189981b7084384e759909365adad36ea587161c6eb5a193363cc1a95e0aef65434ab827d55
diff --git a/app-admin/conky/conky-1.10.8-r5.ebuild b/app-admin/conky/conky-1.10.8-r5.ebuild
new file mode 100644 (file)
index 0000000..c936ef2
--- /dev/null
@@ -0,0 +1,183 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils linux-info readme.gentoo-r1
+
+DESCRIPTION="An advanced, highly configurable system monitor for X"
+HOMEPAGE="https://github.com/brndnmtthws/conky"
+SRC_URI="https://github.com/brndnmtthws/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3 BSD LGPL-2.1 MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86"
+IUSE="apcupsd cmus curl eve hddtemp ical iconv imlib iostats ipv6 irc
+       lua-cairo lua-imlib lua-rsvg math moc mpd mysql nano-syntax ncurses
+       nvidia +portmon pulseaudio rss systemd thinkpad truetype vim-syntax
+       weather-metar webserver wifi X xmms2"
+
+COMMON_DEPEND="
+       X? (
+               imlib? ( media-libs/imlib2[X] )
+               lua-cairo? ( >=dev-lua/toluapp-1.0.93 x11-libs/cairo[X] )
+               lua-imlib? ( >=dev-lua/toluapp-1.0.93 media-libs/imlib2[X] )
+               lua-rsvg? ( >=dev-lua/toluapp-1.0.93 gnome-base/librsvg )
+               nvidia? ( x11-drivers/nvidia-drivers[tools,static-libs] )
+               truetype? ( x11-libs/libXft >=media-libs/freetype-2 )
+               x11-libs/libX11
+               x11-libs/libXdamage
+               x11-libs/libXinerama
+               x11-libs/libXfixes
+               x11-libs/libXext
+               xmms2? ( media-sound/xmms2 )
+       )
+       cmus? ( media-sound/cmus )
+       curl? ( net-misc/curl )
+       eve? ( net-misc/curl dev-libs/libxml2 )
+       ical? ( dev-libs/libical )
+       iconv? ( virtual/libiconv )
+       irc? ( net-libs/libircclient )
+       mysql? ( dev-db/mysql-connector-c )
+       ncurses? ( sys-libs/ncurses:= )
+       pulseaudio? ( media-sound/pulseaudio )
+       rss? ( dev-libs/libxml2 net-misc/curl dev-libs/glib:2 )
+       systemd? ( sys-apps/systemd )
+       wifi? ( net-wireless/wireless-tools )
+       weather-metar? ( net-misc/curl )
+       webserver? ( net-libs/libmicrohttpd )
+       >=dev-lang/lua-5.1.4-r8
+"
+RDEPEND="
+       ${COMMON_DEPEND}
+       apcupsd? ( sys-power/apcupsd )
+       hddtemp? ( app-admin/hddtemp )
+       moc? ( media-sound/moc )
+       nano-syntax? ( app-editors/nano )
+       vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
+"
+DEPEND="
+       ${COMMON_DEPEND}
+       app-text/docbook2X
+"
+
+CONFIG_CHECK=~IPV6
+
+DOCS=( README.md TODO ChangeLog NEWS AUTHORS )
+
+PATCHES=(
+       "${FILESDIR}"/${P}-use-pkgconfig.patch
+       "${FILESDIR}"/${P}-libical-3.patch
+)
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="You can find sample configurations at ${ROOT}/usr/share/doc/${PF}.
+To customize, copy to ${XDG_CONFIG_HOME}/conky/conky.conf
+and edit it to your liking.
+
+There are pretty html docs available at the conky homepage
+or in ${ROOT}/usr/share/doc/${PF}/html.
+
+Also see https://wiki.gentoo.org/wiki/Conky/HOWTO"
+
+pkg_setup() {
+       use ipv6 && linux-info_pkg_setup
+}
+
+src_prepare() {
+       cmake-utils_src_prepare
+
+       sed -i -e "s|find_program(APP_MAN man)|set(APP_MAN $(which man) CACHE FILEPATH MAN_BINARY)|" \
+               cmake/ConkyPlatformChecks.cmake || die
+}
+
+src_configure() {
+       local mycmakeargs
+
+       if use X; then
+               mycmakeargs=(
+                       -DBUILD_X11=ON
+                       -DOWN_WINDOW=ON
+                       -DBUILD_XDAMAGE=ON
+                       -DBUILD_XINERAMA=ON
+                       -DBUILD_XDBE=ON
+                       -DBUILD_XFT=$(usex truetype)
+                       -DBUILD_IMLIB2=$(usex imlib)
+                       -DBUILD_XSHAPE=ON
+                       -DBUILD_ARGB=ON
+                       -DBUILD_LUA_CAIRO=$(usex lua-cairo)
+                       -DBUILD_LUA_IMLIB2=$(usex lua-imlib)
+                       -DBUILD_LUA_RSVG=$(usex lua-rsvg)
+                       -DBUILD_NVIDIA=$(usex nvidia)
+                       -DBUILD_XMMS2=$(usex xmms2)
+               )
+       else
+               mycmakeargs=(
+                       -DBUILD_X11=OFF
+                       -DBUILD_NVIDIA=OFF
+                       -DBUILD_LUA_CAIRO=OFF
+                       -DBUILD_LUA_IMLIB2=OFF
+                       -DBUILD_LUA_RSVG=OFF
+                       -DBUILD_XMMS2=OFF
+               )
+       fi
+
+       mycmakeargs+=(
+               -DBUILD_APCUPSD=$(usex apcupsd)
+               -DBUILD_CMUS=$(usex cmus)
+               -DBUILD_CURL=$(usex curl)
+               -DBUILD_EVE=$(usex eve)
+               -DBUILD_HDDTEMP=$(usex hddtemp)
+               -DBUILD_IOSTATS=$(usex iostats)
+               -DBUILD_ICAL=$(usex ical)
+               -DBUILD_ICONV=$(usex iconv)
+               -DBUILD_IPV6=$(usex ipv6)
+               -DBUILD_IRC=$(usex irc)
+               -DBUILD_MATH=$(usex math)
+               -DBUILD_MOC=$(usex moc)
+               -DBUILD_MPD=$(usex mpd)
+               -DBUILD_MYSQL=$(usex mysql)
+               -DBUILD_NCURSES=$(usex ncurses)
+               -DBUILD_PORT_MONITORS=$(usex portmon)
+               -DBUILD_PULSEAUDIO=$(usex pulseaudio)
+               -DBUILD_RSS=$(usex rss)
+               -DBUILD_JOURNAL=$(usex systemd)
+               -DBUILD_IBM=$(usex thinkpad)
+               -DBUILD_HTTP=$(usex webserver)
+               -DBUILD_WEATHER_METAR=$(usex weather-metar)
+               -DBUILD_WLAN=$(usex wifi)
+               -DBUILD_BUILTIN_CONFIG=ON
+               -DBUILD_OLD_CONFIG=ON
+               -DBUILD_I18N=ON
+               -DMAINTAINER_MODE=ON
+               -DRELEASE=ON
+               -DBUILD_AUDACIOUS=OFF
+               -DBUILD_BMPX=OFF
+               -DDOC_PATH=/usr/share/doc/${PF}
+       )
+
+       cmake-utils_src_configure
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       if use vim-syntax; then
+               insinto /usr/share/vim/vimfiles/ftdetect
+               doins "${S}"/extras/vim/ftdetect/conkyrc.vim
+
+               insinto /usr/share/vim/vimfiles/syntax
+               doins "${S}"/extras/vim/syntax/conkyrc.vim
+       fi
+
+       if use nano-syntax; then
+               insinto /usr/share/nano/
+               doins "${S}"/extras/nano/conky.nanorc
+       fi
+
+       readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+       readme.gentoo_print_elog
+}
diff --git a/app-admin/conky/files/conky-1.10.4-x11-build.patch b/app-admin/conky/files/conky-1.10.4-x11-build.patch
new file mode 100644 (file)
index 0000000..eb113a4
--- /dev/null
@@ -0,0 +1,31 @@
+From 178015a9495b7d40031ed7459e4f6b6731633a7c Mon Sep 17 00:00:00 2001
+From: shizeeg <shizeeque@gmail.com>
+Date: Thu, 8 Sep 2016 18:24:29 +0300
+Subject: [PATCH] Fix build without X11 (#317)
+
+---
+ src/conky.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/conky.cc b/src/conky.cc
+index 0a812fc..4c5da94 100644
+--- a/src/conky.cc
++++ b/src/conky.cc
+@@ -1404,6 +1404,9 @@ static void draw_string(const char *s)
+ int draw_each_line_inner(char *s, int special_index, int last_special_applied)
+ {
++#ifndef BUILD_X11
++      static int cur_x, cur_y;        /* current x and y for drawing */
++#endif
+ #ifdef BUILD_X11
+       int font_h = 0;
+       int cur_y_add = 0;
+@@ -1934,6 +1937,7 @@ static void draw_text(void)
+ static void draw_stuff(void)
+ {
++      static int text_offset_x, text_offset_y; /* offset for start position */
+       text_offset_x = text_offset_y = 0;
+ #ifdef BUILD_IMLIB2
+       cimlib_render(text_start_x, text_start_y, window.width, window.height);
diff --git a/app-admin/conky/files/conky-1.10.8-libical-3.patch b/app-admin/conky/files/conky-1.10.8-libical-3.patch
new file mode 100644 (file)
index 0000000..032a6d2
--- /dev/null
@@ -0,0 +1,32 @@
+From 128c8cce3415839a3d19a5cb877fd77af2538d35 Mon Sep 17 00:00:00 2001
+From: Adam Majer <amajer@suse.de>
+Date: Tue, 6 Mar 2018 13:46:31 +0100
+Subject: [PATCH] Add support for libical 3.x (#465)
+
+In libical3, deprecated icaltime_from_timet is removed
+Use icaltime_from_timet_with_zone instead. This function
+exists in libical 2.x so no need to change requirements
+---
+ src/ical.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/ical.cc b/src/ical.cc
+index e4b48511..ef069124 100644
+--- a/src/ical.cc
++++ b/src/ical.cc
+@@ -49,13 +49,13 @@ struct ical_event *add_event(struct ical_event *listend, icalcomponent *new_ev)
+       icaltimetype start;
+       start = icalcomponent_get_dtstart(new_ev);
+-      if(icaltime_compare(start, icaltime_from_timet(time(NULL), 0)) <= 0) {
++      if(icaltime_compare(start, icaltime_from_timet_with_zone(time(NULL), 0, NULL)) <= 0) {
+               icalproperty *rrule = icalcomponent_get_first_property(new_ev, ICAL_RRULE_PROPERTY);
+               if(rrule) {
+                       icalrecur_iterator* ritr = icalrecur_iterator_new(icalproperty_get_rrule(rrule), start);
+                       icaltimetype nexttime = icalrecur_iterator_next(ritr);
+                       while (!icaltime_is_null_time(nexttime)) {
+-                              if(icaltime_compare(nexttime, icaltime_from_timet(time(NULL), 0)) > 0) {
++                              if(icaltime_compare(nexttime, icaltime_from_timet_with_zone(time(NULL), 0, NULL)) > 0) {
+                                       start = nexttime;
+                                       break;
+                               }
diff --git a/app-admin/conky/files/conky-1.10.8-use-pkgconfig.patch b/app-admin/conky/files/conky-1.10.8-use-pkgconfig.patch
new file mode 100644 (file)
index 0000000..97e6bd0
--- /dev/null
@@ -0,0 +1,34 @@
+Reversed patch
+
+From abd0be51a00444d3be6b213e0926675e5a4e5ed3 Mon Sep 17 00:00:00 2001
+From: Brenden Matthews <brenden@diddyinc.com>
+Date: Tue, 23 Jan 2018 12:56:06 -0500
+Subject: [PATCH] Use FindCurses instead of pkg_check_modules.
+
+This should resolve #217.
+---
+ cmake/ConkyPlatformChecks.cmake | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/cmake/ConkyPlatformChecks.cmake b/cmake/ConkyPlatformChecks.cmake
+index c5b39b2f..19ec7b9b 100644
+--- a/cmake/ConkyPlatformChecks.cmake
++++ b/cmake/ConkyPlatformChecks.cmake
+@@ -129,12 +129,12 @@ if(BUILD_HTTP)
+ endif(BUILD_HTTP)
+ if(BUILD_NCURSES)
++      pkg_check_modules(NCURSES ncurses)
++      if(NOT NCURSES_FOUND)
+-      include(FindCurses)
+-      if(NOT CURSES_FOUND)
+               message(FATAL_ERROR "Unable to find ncurses library")
++      endif(NOT NCURSES_FOUND)
++      set(conky_libs ${conky_libs} ${NCURSES_LIBRARIES})
++      set(conky_includes ${conky_includes} ${NCURSES_INCLUDE_DIRS})
+-      endif(NOT CURSES_FOUND)
+-      set(conky_libs ${conky_libs} ${CURSES_LIBRARIES})
+-      set(conky_includes ${conky_includes} ${CURSES_INCLUDE_DIR})
+ endif(BUILD_NCURSES)
+ if(BUILD_MYSQL)
diff --git a/app-admin/conky/metadata.xml b/app-admin/conky/metadata.xml
new file mode 100644 (file)
index 0000000..d15fcbe
--- /dev/null
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+       <maintainer type="person">
+               <email>billie@gentoo.org</email>
+               <name>Daniel Pielmeier</name>
+       </maintainer>
+       <upstream>
+               <maintainer>
+                       <email>brenden@rty.ca</email>
+                       <name>Brenden Matthews</name>
+               </maintainer>
+               <remote-id type="sourceforge">conky</remote-id>
+               <remote-id type="github">brndnmtthws/conky</remote-id>
+       </upstream>
+       <longdescription>Conky is a system monitor that sits in the corner of your desktop. It is a fork of Torsmo that is actually maintained.</longdescription>
+       <use>
+               <flag name="apcupsd">Enable support for <pkg>sys-power/apcupsd</pkg></flag>
+               <flag name="audacious">Enable monitoring of music played by <pkg>media-sound/audacious</pkg></flag>
+               <flag name="cmus">Enable monitoring of music played by <pkg>media-sound/cmus</pkg></flag>
+               <flag name="eve">Enable support for the eve-online skill monitor</flag>
+               <flag name="ical">Enable support for events from iCalendar (RFC 5545) files using <pkg>dev-libs/libical</pkg></flag>
+               <flag name="iostats">Enable support for per-task I/O statistics</flag>
+               <flag name="irc">Enable support for displaying everything from an irc channel using <pkg>net-libs/libircclient</pkg></flag>
+               <flag name="lua-cairo">Enable if you want Lua Cairo bindings</flag>
+               <flag name="lua-imlib">Enable if you want Lua Imlib2 bindings</flag>
+               <flag name="lua-rsvg">Enable if you want Lua RSVG bindings</flag>
+               <flag name="math">Enable support for glibc's libm math library</flag>
+               <flag name="moc">Enable monitoring of music played by <pkg>media-sound/moc</pkg></flag>
+               <flag name="mpd">Enable monitoring of music controlled by <pkg>media-sound/mpd</pkg></flag>
+               <flag name="nano-syntax">Enable syntax highlighting for <pkg>app-editors/nano</pkg></flag>
+               <flag name="nvidia">Enable reading of nvidia card temperature sensors via <pkg>x11-drivers/nvidia-drivers</pkg></flag>
+               <flag name="portmon">Enable support for tcp (ip4) port monitoring</flag>
+               <flag name="thinkpad">Enable support for IBM/Lenovo notebooks</flag>
+               <flag name="weather-metar">Enable support for metar weather service</flag>
+               <flag name="weather-xoap">Enable support for metar and xoap weather service</flag>
+               <flag name="webserver">Enable support to act as a webserver serving conkys output using <pkg>net-libs/libmicrohttpd</pkg></flag>
+               <flag name="xmms2">Enable monitoring of music played by <pkg>media-sound/xmms2</pkg></flag>
+       </use>
+</pkgmetadata>