Index: head/sysutils/conky/Makefile =================================================================== --- head/sysutils/conky/Makefile (revision 422934) +++ head/sysutils/conky/Makefile (revision 422935) @@ -1,142 +1,142 @@ # Created by: Roman Bogorodskiy # $FreeBSD$ PORTNAME= conky PORTVERSION= 1.10.4 DISTVERSIONPREFIX= v -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= sysutils MAINTAINER= madpilot@FreeBSD.org COMMENT?= Advanced, highly configurable system monitor for X11 LIB_DEPENDS= libtolua++-5.1.so:lang/tolua++ \ libinotify.so:devel/libinotify BUILD_DEPENDS= db2x_xsltproc:textproc/docbook2X \ docbook-xsl>=0:textproc/docbook-xsl \ xsltproc:textproc/libxslt CONFLICTS?= conky-awesome-[0-9]* SLAVEDIRS= sysutils/conky-awesome USES= cpe cmake compiler:c++11-lib gettext-runtime iconv \ localbase lua:51 pkgconfig tar:bzip2 CMAKE_ARGS+= -DBUILD_PORT_MONITORS:BOOL=false \ -DBUILD_IBM:BOOL=false \ -DBUILD_HDDTEMP:BOOL=false \ -DBUILD_IOSTATS:BOOL=false \ -DBUILD_AUDACIOUS:BOOL=false PLIST_FILES= bin/conky man/man1/conky.1.gz PORTEXAMPLES= conky.conf conky_no_x11.conf convert.lua PORTDOCS= html/config_settings.html html/docs.html html/lua.html html/variables.html USE_GITHUB= yes GH_ACCOUNT= brndnmtthws OPTIONS_DEFINE= APCUPSD CURL DOCS EXAMPLES IPV6 METAR MOC MPD NCURSES RSS \ X11 XMMS2 XOAP OPTIONS_GROUP?= X11 OPTIONS_GROUP_X11= ARGB DOUBLE_BUFFER IMLIB2 XFT XINERAMA LUA_CAIRO LUA_IMLIB2 LUA_RSVG OPTIONS_DEFAULT?= X11 ARGB DOUBLE_BUFFER XFT APCUPSD_DESC= Monitor APCUPSD APCUPSD_CMAKE_BOOL= BUILD_APCUPSD ARGB_DESC= Use an ARGB visual to draw on X11 ARGB_CMAKE_BOOL= BUILD_ARGB ARGB_IMPLIES= X11 CURL_CMAKE_BOOL= BUILD_CURL CURL_LIB_DEPENDS= libcurl.so:ftp/curl DOUBLE_BUFFER_DESC= X11 double buffering DOUBLE_BUFFER_CMAKE_BOOL=BUILD_XDBE DOUBLE_BUFFER_IMPLIES= X11 IMLIB2_CMAKE_BOOL= BUILD_IMLIB2 IMLIB2_LIB_DEPENDS= libImlib2.so:graphics/imlib2 IMLIB2_IMPLIES= X11 IPV6_CMAKE_BOOL= BUILD_IPV6 LUA_CAIRO_DESC= Lua-Cairo binding LUA_CAIRO_CMAKE_BOOL= BUILD_LUA_CAIRO LUA_CAIRO_USE= gnome=cairo LUA_CAIRO_PLIST_FILES= lib/conky/libcairo.so LUA_CAIRO_IMPLIES= X11 LUA_IMLIB2_DESC= Lua-Imlib2 binding LUA_IMLIB2_CMAKE_BOOL= BUILD_LUA_IMLIB2 LUA_IMLIB2_PLIST_FILES= lib/conky/libimlib2.so LUA_IMLIB2_IMPLIES= IMLIB2 X11 LUA_RSVG_DESC= Lua-rsvg binding LUA_RSVG_CMAKE_BOOL= BUILD_LUA_RSVG LUA_RSVG_USE= gnome=librsvg2 LUA_RSVG_PLIST_FILES= lib/conky/librsvg.so LUA_RSVG_IMPLIES= X11 METAR_DESC= Display METAR weather reports METAR_CMAKE_BOOL= BUILD_WEATHER_METAR METAR_IMPLIES= CURL MOC_DESC= Control MOC (Music On Console) MOC_CMAKE_BOOL= BUILD_MOC MPD_DESC= Control MPD (Music Player Daemon) MPD_CMAKE_BOOL= BUILD_MPD NCURSES_DESC= Use ncurses to draw on terminals NCURSES_CMAKE_BOOL= BUILD_NCURSES NCURSES_USES= ncurses:port RSS_DESC= Display RSS feeds RSS_CMAKE_BOOL= BUILD_RSS RSS_USE= gnome=glib20,libxml2 RSS_IMPLIES= CURL X11_USE= xorg=x11,xext,xdamage,xfixes X11_CMAKE_BOOL= BUILD_X11 OWN_WINDOW X11_VARS= EXAMPLE_CONF_FILE=${WRKSRC}/data/conky.conf X11_VARS_OFF= EXAMPLE_CONF_FILE=${WRKSRC}/data/conky_no_x11.conf XFT_CMAKE_BOOL= BUILD_XFT XFT_USE= xorg=xft XFT_IMPLIES= X11 XINERAMA_CMAKE_BOOL= BUILD_XINERAMA XINERAMA_USE= xorg=xinerama XINERAMA_IMPLIES= X11 XMMS2_DESC= Control XMMS2 media player XMMS2_CMAKE_BOOL= BUILD_XMMS2 XMMS2_LIB_DEPENDS= libxmmsclient.so:audio/xmms2 XOAP_DESC= Display XOAP weather reports XOAP_CMAKE_BOOL= BUILD_WEATHER_XOAP XOAP_IMPLIES= CURL XOAP_USE= gnome=libxml2 .include .if ${PORT_OPTIONS:MLUA_CAIRO} && ${PORT_OPTIONS:MLUA_IMLIB2} PLIST_FILES+= lib/conky/libcairo_imlib2_helper.so .endif post-patch: @${REINPLACE_CMD} -e 's/^#\(set(RELEASE true\)/\1/' \ -e 's/-D_POSIX_C_SOURCE=200809L/& -D__BSD_VISIBLE=1 -D_XOPEN_SOURCE=700/' \ ${WRKSRC}/cmake/Conky.cmake @${REINPLACE_CMD} -e 's,^set(INCLUDE_SEARCH_PATH \(.*\)),set(INCLUDE_SEARCH_PATH \1 ${LUA_INCDIR}),' \ -e 's/ -lbsd/ -lintl -linotify/' \ ${WRKSRC}/cmake/ConkyPlatformChecks.cmake @${REINPLACE_CMD} -e 's,LOCALBASE,${LOCALBASE},' \ ${WRKSRC}/doc/docgen.sh \ ${WRKSRC}/doc/docs.xml post-build: (cd ${WRKSRC}/doc && ${SH} docgen.sh) .include Index: head/sysutils/conky/files/patch-src_freebsd.cc =================================================================== --- head/sysutils/conky/files/patch-src_freebsd.cc (revision 422934) +++ head/sysutils/conky/files/patch-src_freebsd.cc (revision 422935) @@ -1,71 +1,79 @@ --- src/freebsd.cc.orig 2016-07-20 16:53:48 UTC +++ src/freebsd.cc @@ -295,11 +295,7 @@ int update_running_processes(void) std::lock_guard guard(kvm_proc_mutex); p = kvm_getprocs(kd, KERN_PROC_ALL, 0, &n_processes); for (i = 0; i < n_processes; i++) { -#if (__FreeBSD__ < 5) && !defined(__FreeBSD_kernel__) - if (p[i].kp_proc.p_stat == SRUN) { -#else if (p[i].ki_stat == SRUN) { -#endif cnt++; } } @@ -475,7 +471,7 @@ void get_battery_stuff(char *buf, unsign break; case BATTERY_STATUS: if (batstate == 1) // Discharging - snprintf(buf, n, "remaining %d%%", batcapacity); + snprintf(buf, n, "remaining (%d%%)", batcapacity); else snprintf(buf, n, batstate == 2 ? "charging (%d%%)" : (batstate == 7 ? "absent/on AC" : "charged (%d%%)"), @@ -508,26 +504,10 @@ static int check_bat(const char *bat) int get_battery_perct(const char *bat) { - union acpi_battery_ioctl_arg battio; - int batnum, acpifd; - int designcap, lastfulcap, batperct; + int batcapacity; - if ((battio.unit = batnum = check_bat(bat)) < 0) - return 0; - if ((acpifd = open("/dev/acpi", O_RDONLY)) < 0) { - fprintf(stderr, "Can't open ACPI device\n"); - return 0; - } - if (ioctl(acpifd, ACPIIO_BATT_GET_BIF, &battio) == -1) { - fprintf(stderr, "Unable to get info for battery unit %d\n", batnum); - return 0; - } - close(acpifd); - designcap = battio.bif.dcap; - lastfulcap = battio.bif.lfcap; - batperct = (designcap > 0 && lastfulcap > 0) ? - (int) (((float) lastfulcap / designcap) * 100) : 0; - return batperct > 100 ? 100 : batperct; + get_battery_stats(NULL, &batcapacity, NULL, NULL); + return batcapacity; } double get_battery_perct_bar(struct text_object *obj) -@@ -745,11 +725,14 @@ void get_battery_short_status(char *buff +@@ -729,6 +709,7 @@ void get_top_info(void) + + proc->time_stamp = g_time; + proc->name = strndup(p[i].ki_comm, text_buffer_size.get(*state)); ++ proc->basename = strndup(p[i].ki_comm, text_buffer_size.get(*state)); + proc->amount = 100.0 * p[i].ki_pctcpu / FSCALE; + proc->vsize = p[i].ki_size; + proc->rss = (p[i].ki_rssize * getpagesize()); +@@ -745,11 +726,14 @@ void get_battery_short_status(char *buff if (0 == strncmp("charging", buffer, 8)) { buffer[0] = 'C'; memmove(buffer + 1, buffer + 8, n - 8); - } else if (0 == strncmp("discharging", buffer, 11)) { + } else if (0 == strncmp("remaining", buffer, 9)) { buffer[0] = 'D'; - memmove(buffer + 1, buffer + 11, n - 11); + memmove(buffer + 1, buffer + 9, n - 9); + } else if (0 == strncmp("charged", buffer, 7)) { + buffer[0] = 'F'; + memmove(buffer + 1, buffer + 7, n - 7); } else if (0 == strncmp("absent/on AC", buffer, 12)) { - buffer[0] = 'A'; + buffer[0] = 'N'; memmove(buffer + 1, buffer + 12, n - 12); } }