Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 948445 - app-admin/gkrellm version bump, and fix for 9999 ebuild required
Summary: app-admin/gkrellm version bump, and fix for 9999 ebuild required
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Sam James
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-01-20 13:16 UTC by Mark
Modified: 2025-02-18 23:05 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild for version 2.4.0 and 9999 (gkrellm-2.4.0.ebuild,3.45 KB, application/vnd.gentoo.ebuild)
2025-01-25 20:18 UTC, Mark
Details
Updated 2.4.0 ebuild (gkrellm-2.4.0.ebuild,4.37 KB, text/plain)
2025-01-30 10:33 UTC, Eddie Chapman
Details
Updated config file patch (gkrellm-2.4.0-config.patch,1.44 KB, patch)
2025-01-30 10:34 UTC, Eddie Chapman
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark 2025-01-20 13:16:03 UTC
Upstream development of gkrellm continued and updated some sources over the last months, as well as the Makefile (e.g. does not automatically strip the binary after build to let distributions decide); gkrellm has updated dependencies (especially openssl, gnutls); it now also delivers a service unit for systemd.

Yesterday version 2.4.0 was released:
https://git.srcbox.net/gkrellm/gkrellm/releases

The 9999 ebuild is outdated regarding the recent changes, it also tries to patch the sources, which fails:

>>> Source unpacked in /mnt/ramdisk/portage/app-admin/gkrellm-9999/work
>>> Preparing source in /mnt/ramdisk/portage/app-admin/gkrellm-9999/work/gkrellm-9999 ...
 * Applying gkrellm-2.3.5-config.patch ...
patching file server/gkrellmd.conf
Hunk #2 FAILED at 77.
Hunk #3 FAILED at 86.
2 out of 3 hunks FAILED -- saving rejects to file server/gkrellmd.conf.rej                                                                [ !! ]
 * ERROR: app-admin/gkrellm-9999::gentoo failed (prepare phase):
 *   patch -p1  failed with /mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-config.patch

More details below.

Reproducible: Always




emerge info:

Portage 3.0.66.1 (python 3.12.8-final-0, default/linux/amd64/23.0/desktop/plasma/systemd, gcc-14, glibc-2.40-r5, 6.12.10 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.12.10-x86_64-AMD_Ryzen_7_7700X_8-Core_Processor-with-glibc2.40
KiB Mem:    31915696 total,  25813208 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Mon, 20 Jan 2025 12:03:27 +0000
Head commit of repository gentoo: 3ad3e17020259cfd4759c9a7e7826d2d5d0b696a

Timestamp of repository guru: Mon, 20 Jan 2025 09:48:44 +0000
Head commit of repository guru: fad88f4d794067a20e9e64ff73c6a881868c5837

Timestamp of repository swegener: Tue, 17 Dec 2024 22:21:06 +0000
Head commit of repository swegener: 40a68fe6e309fb43158ae55a17f1dddeb22ed39d

sh bash 5.2_p37
ld GNU ld (Gentoo 2.43 p3) 2.43.1
ccache version 4.10.2 [disabled]
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.71-r7::gentoo, 2.72-r1::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.30.6::gentoo
dev-build/libtool:         2.5.4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.6.1::gentoo
dev-java/java-config:      2.3.4::gentoo
dev-lang/perl:             5.40.0-r1::gentoo
dev-lang/python:           3.12.8_p1::gentoo, 3.13.0::gentoo
dev-lang/rust:             1.82.0-r101::gentoo, 1.83.0-r1::gentoo
dev-util/ccache:           4.10.2-r1::gentoo
llvm-core/clang:           19.1.7::gentoo
llvm-core/lld:             19.1.7::gentoo
llvm-core/llvm:            19.1.7::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/sandbox:          2.39::gentoo
sys-apps/systemd:          256.7::gentoo
sys-devel/binutils:        2.43-r2::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/gcc:             14.2.1_p20241221::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-kernel/linux-headers:  6.12::gentoo (virtual/os-headers)
sys-libs/glibc:            2.40-r5::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://anongit.gentoo.org/git/repo/sync/gentoo.git
    priority: -1000
    volatile: False
    sync-git-verify-commit-signature: yes

guru
    location: /var/db/repos/guru
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/guru.git
    masters: gentoo
    volatile: False

swegener
    location: /var/db/repos/swegener
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/swegener.git
    masters: gentoo
    volatile: False

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0
    volatile: True

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=znver4 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.9/conf /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=znver4 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -O2 -pipe"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-march=znver4 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=znver4 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="de_DE.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -fuse-ld=mold"
LEX="flex"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/mnt/ramdisk"
RUSTFLAGS="-C target-cpu=native -C opt-level=3 -C link-arg=-Wl,-z,pack-relative-relocs"
SHELL="/bin/bash"
USE="X a52 aac acl acpi activities alsa amd64 ao avif branding bzip2 cairo cdda cdr cet crypt cups curl dbus declarative dri dts dvd dvdr encode exif ffmpeg flac gdbm gif gles2 glslang gpm gstreamer gtk gui heif iconv icu ipv6 jpeg jpeg2k kde kf6compat kwallet ladspa lcms libass libnotify libplacebo libtirpc llvm-libunwind lto lv2 lz4 mad matroska mng mp3 mp4 mpeg mtp multilib ncurses networkmanager nls ogg opencl opengl openmp opus pam pango pcre pdf pgo phonon pipewire plasma png policykit ppds pulseaudio qml qt6 raw readline rubberband screencast sdl seccomp smp sound speex spell ssl startup-notification svg systemd taglib test-rust theora threads tiff truetype udev udisks unicode upower usb vaapi vdpau verify-sig vorbis vulkan wayland webp widgets wxwidgets x264 x265 xattr xcb xft xml xv xvid xxhash zlib zstd" ABI_X86="64" ADA_TARGET="gcc_13" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512_bf16 avx512_bitalg avx512_vbmi2 avx512_vnni avx512_vpopcntdq avx512bw avx512cd avx512dq avx512f avx512ifma avx512vbmi avx512vl f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 vpclmulqdq" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="efi-64" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="roccat_konepuremilitary roccat_ryosmk" KERNEL="linux" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby32" SANE_BACKENDS="genesys" VIDEO_CARDS="amdgpu radeonsi radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, MAKEOPTS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, SIZE, STRINGS, STRIP, YACC, YFLAGS


emerge pqv:
[ebuild     U ] app-admin/gkrellm-9999 [2.3.11-r4] USE="X nls ssl -gnutls -hddtemp -lm-sensors -ntlm" 


build.log:
[32m * [39;49;00mPackage:    app-admin/gkrellm-9999:2
[32m * [39;49;00mRepository: gentoo
[32m * [39;49;00mMaintainer: sam@gentoo.org
[32m * [39;49;00mUSE:        X abi_x86_64 amd64 elibc_glibc kernel_linux nls ssl
[32m * [39;49;00mFEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
 [32m*[0m Repository id: gkrellm_gkrellm.git
 [32m*[0m To override fetched repository properties, use:
 [32m*[0m   EGIT_OVERRIDE_REPO_GKRELLM_GKRELLM
 [32m*[0m   EGIT_OVERRIDE_BRANCH_GKRELLM_GKRELLM
 [32m*[0m   EGIT_OVERRIDE_COMMIT_GKRELLM_GKRELLM
 [32m*[0m   EGIT_OVERRIDE_COMMIT_DATE_GKRELLM_GKRELLM
 [32m*[0m 
 [32m*[0m Fetching https://git.srcbox.net/gkrellm/gkrellm.git ...
git fetch https://git.srcbox.net/gkrellm/gkrellm.git +HEAD:refs/git-r3/HEAD
git symbolic-ref refs/git-r3/app-admin/gkrellm/2/__main__ refs/git-r3/HEAD
 [32m*[0m Checking out https://git.srcbox.net/gkrellm/gkrellm.git to /mnt/ramdisk/portage/app-admin/gkrellm-9999/work/gkrellm-9999 ...
git checkout --quiet refs/git-r3/HEAD
GIT update -->
   repository:               https://git.srcbox.net/gkrellm/gkrellm.git
   at the commit:            8769bb434adcc5268ad415132f578f032bcd8b43
>>> Source unpacked in /mnt/ramdisk/portage/app-admin/gkrellm-9999/work
>>> Preparing source in /mnt/ramdisk/portage/app-admin/gkrellm-9999/work/gkrellm-9999 ...
 [32m*[0m Applying gkrellm-2.3.5-config.patch ...
patching file server/gkrellmd.conf
Hunk #2 FAILED at 77.
Hunk #3 FAILED at 86.
2 out of 3 hunks FAILED -- saving rejects to file server/gkrellmd.conf.rej
[A[137C [34;01m[ [31;01m!![34;01m ][0m
 [31;01m*[0m ERROR: app-admin/gkrellm-9999::gentoo failed (prepare phase):
 [31;01m*[0m   patch -p1  failed with /mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-config.patch
 [31;01m*[0m 
 [31;01m*[0m Call stack:
 [31;01m*[0m               ebuild.sh, line  136:  Called src_prepare
 [31;01m*[0m             environment, line 2266:  Called default
 [31;01m*[0m      phase-functions.sh, line  874:  Called default_src_prepare
 [31;01m*[0m      phase-functions.sh, line  950:  Called __eapi8_src_prepare
 [31;01m*[0m             environment, line  332:  Called eapply '--' '/mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-config.patch' '/mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-width.patch' '/mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-sansfont.patch' '/mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.11-clang16.patch'
 [31;01m*[0m             environment, line  807:  Called _eapply_patch '/mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-config.patch'
 [31;01m*[0m             environment, line  745:  Called __helpers_die 'patch -p1  failed with /mnt/ramdisk/portage/app-admin/gkrellm-9999/files/gkrellm-2.3.5-config.patch'
 [31;01m*[0m   isolated-functions.sh, line  112:  Called die
 [31;01m*[0m The specific snippet of code:
 [31;01m*[0m   		die "$@"
 [31;01m*[0m 
 [31;01m*[0m If you need support, post the output of `emerge --info '=app-admin/gkrellm-9999::gentoo'`,
 [31;01m*[0m the complete build log and the output of `emerge -pqv '=app-admin/gkrellm-9999::gentoo'`.
 [31;01m*[0m The complete build log is located at '/mnt/ramdisk/portage/app-admin/gkrellm-9999/temp/build.log'.
 [31;01m*[0m The ebuild environment file is located at '/mnt/ramdisk/portage/app-admin/gkrellm-9999/temp/environment'.
 [31;01m*[0m Working directory: '/mnt/ramdisk/portage/app-admin/gkrellm-9999/work/gkrellm-9999'
 [31;01m*[0m S: '/mnt/ramdisk/portage/app-admin/gkrellm-9999/work/gkrellm-9999'
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-01-25 17:28:59 UTC
FWIW, I adopted gkrellm because of user outpouring against last-rites -- I don't use it personally. I will get to this bug but it won't be immediate. If you (or someone) who does use it is able to provide some patches for me to use as a starting point for the migration, that'd speed things up greatly.
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-01-25 17:29:15 UTC
(I also encourage anyone interested in it to proxy-maint/co-maintain it with me.)
Comment 3 Mark 2025-01-25 20:18:04 UTC
Created attachment 917505 [details]
ebuild for version 2.4.0 and 9999

I updated the 2.x ebuild, which also works as 9999 ebuild, as both files were identical.

The attached ebuild seems to work with a X and a -X build; both binaries are running and the client can connect to the remote gkrellmd.

I commented all patches because compiler issues and font issues were taken care of upstream and I changed the ebuild to use the .service file from the package instead of portage (and it seems the Gentoo version of the service was picked upstream, so nothing really changes).

I just realized: The gkrellm-2.3.5-config.patch we probably want to keep though, it changes the config file presets to some better values (e.g. from user nobody to user gkrellmd). So you can remove the comment, I kept them in.

The plugins I use also still work.

Upstream is working on porting gkrellm to gtk-3 as well. Version 2.4 contains a couple of code cleanups required for it. Maybe there will be more intermediate releases before the port commits are eventually released.
Comment 4 Eddie Chapman 2025-01-27 16:02:47 UTC
I've used Gkrellm for years so delighted to learn of this new release. Thanks for taking the time to come up with an ebuild Mark, I'll give it a try today. And thanks Sam for keeping it on life support for Gentoo :-) Would be happy to lend a hand with maintenance, if anyone who steps up would like any help feel free to contact me. If no one else steps up I might have a read up on the relevant Gentoo proxy-maint requirements/procedures and put a pull request in time permitting.
Comment 5 Eddie Chapman 2025-01-30 10:33:28 UTC
Created attachment 917910 [details]
Updated 2.4.0 ebuild

Hi Mark,

Thanks again for your ebuild, I've made a couple of improvements to it (attached):

- corrected wrong installation of /usr/etc/gkrellmd.conf by server/Makefile. Just handled it in src_install() although of course fixing upstream would be ideal.
- added systemd use flag purely so the unit file does not get installed if the use flag not set
- we no longer need the gkrellmd.service file in the files directory nor the call to systemd_dounit, the upstream unit file gets installed correctly anyway without it.
- created a new gkrellm-2.4.0-config.patch as the old one fails to apply cleanly.

I've tested the updated ebuild and the resultant installation works great on my workstation as a client connected to a remote instance of the same install.
Comment 6 Eddie Chapman 2025-01-30 10:34:13 UTC
Created attachment 917911 [details, diff]
Updated config file patch
Comment 7 Stefan Gehn 2025-01-30 20:32:57 UTC
Heya,

I'm currently maintaining GKrellM and thus am responsible for most of the breakages and fixes.

Regarding the config location that is indeed a bit unfortunate.
For the default installation prefix of /usr/local it makes sense to use /usr/local/etc, however for the typical distro prefix of /usr you rather want /etc. This should work with the current make logic already by passing both PREFIX=/usr and CFGDIR=/etc.

A heads up for packaging:

After I studied the elaborate changes in the FreeBSD port I think I finally found out why the separation between PREFIX and DESTDIR which is meant for distro packaging did not work as expected. I am currently in the process to fix that so distros hopefully do not need makefiles patches anymore.

I will probably release an update soon, mostly with makefile fixes to make packaging less of a hassle.

In the long run the handwritten makefiles will probably be replaced with meson (another task I already started on) but for the time being makefile it is :)

Please reach out to me if there are other oddities when it comes to packaging. I already spotted a few others and will create additional bugreports so it's visible what defects I am aware of.
Comment 8 Patrice Levesque 2025-02-18 23:05:18 UTC
Long, long time gkrellm user, quite happy the project is not collecting dust anymore.

FWIW, I tried the latest 2.4.0 ebuild + config file patch on my amd64 machine, both as local client instance and as a client to a remote server, and both appear to work just as well as the 2.3.11 version did.

Thanks to all involved.