commit:     fa7d0f2433cee6d4839c52daf15d2ebd0c1fff23
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  3 20:11:27 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Nov  3 20:17:11 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa7d0f24

app-laptop/laptop-mode-tools: update EAPI 7 -> 8, disable gui

gui requires PyQt5 but no one ever added dependencies for that in the ebuild.

Closes: https://bugs.gentoo.org/924275
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/laptop-mode-tools-1.74-disable-gui.patch | 31 ++++++++
 .../laptop-mode-tools-1.74-r1.ebuild               | 86 ++++++++++++++++++++++
 2 files changed, 117 insertions(+)

diff --git 
a/app-laptop/laptop-mode-tools/files/laptop-mode-tools-1.74-disable-gui.patch 
b/app-laptop/laptop-mode-tools/files/laptop-mode-tools-1.74-disable-gui.patch
new file mode 100644
index 000000000000..1d1490a79c33
--- /dev/null
+++ 
b/app-laptop/laptop-mode-tools/files/laptop-mode-tools-1.74-disable-gui.patch
@@ -0,0 +1,31 @@
+--- a/install.sh
++++ b/install.sh
+@@ -161,10 +161,12 @@
+       exit 11
+ fi
+ 
++if false; then
+ if ( ! $INSTALL -m 644 usr/share/polkit-1/actions/org.linux.lmt.gui.policy 
"$DESTDIR/usr/share/polkit-1/actions/" ) ; then
+       echo "$0: Failed to install 
$DESTDIR/usr/share/polkit-1/actions/org.linux.lmt.gui.policy Installation 
failed."
+       exit 11
+ fi
++fi
+ 
+ if ( ! $INSTALL -m 755 usr/sbin/lm-syslog-setup "$DESTDIR/usr/sbin" ) ; then
+       echo "$0: Failed to install $DESTDIR/usr/sbin/lm-syslog-setup. 
installation failed."
+@@ -198,6 +200,7 @@
+       exit 23
+ fi
+ 
++if false; then
+ if ( ! $INSTALL -m 644 gui/laptop-mode-tools.desktop 
"$DESTDIR/usr/share/applications" ) ; then
+       echo "$0: Failed to install 
$DESTDIR/usr/share/applications/laptop-mode-tools.desktop"
+       exit 11
+@@ -217,6 +220,7 @@
+       echo "$0: Failed to install 
$DESTDIR/usr/share/laptop-mode-tools/lmt.py";
+       exit 11
+ fi
++fi
+ 
+ # Install pm-utils hook only if pm-utils config dir is present, or force the
+ # install if we have a DESTDIR.

diff --git a/app-laptop/laptop-mode-tools/laptop-mode-tools-1.74-r1.ebuild 
b/app-laptop/laptop-mode-tools/laptop-mode-tools-1.74-r1.ebuild
new file mode 100644
index 000000000000..013eaaef52c4
--- /dev/null
+++ b/app-laptop/laptop-mode-tools/laptop-mode-tools-1.74-r1.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}_${PV}"
+inherit optfeature systemd tmpfiles udev
+
+DESCRIPTION="Linux kernel laptop_mode user-space utilities"
+HOMEPAGE="https://github.com/rickysarraf/laptop-mode-tools/wiki";
+SRC_URI="https://github.com/rickysarraf/${PN}/releases/download/${PV}/${MY_P}.tar.gz";
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="+acpi apm"
+
+RDEPEND="
+       sys-apps/ethtool
+       sys-apps/iproute2
+       sys-apps/which
+       || (
+               sys-apps/sdparm
+               sys-apps/hdparm
+       )
+       acpi? ( sys-power/acpid )
+       apm? ( sys-apps/apmd )
+"
+
+PATCHES=( "${FILESDIR}/${P}-disable-gui.patch" ) # bug #924275
+
+src_compile() { :; }
+
+src_install() {
+       DESTDIR="${D}" \
+               INIT_D="none" \
+               MAN_D="/usr/share/man" \
+               LIB_D="/usr/$(get_libdir)" \
+               UDEV_D="$(get_udevdir)" \
+               SYSTEMD_UNIT_D="$(systemd_get_systemunitdir)" \
+               TMPFILES_D="/usr/lib/tmpfiles.d" \
+               ACPI="$(usex acpi force disabled)" \
+               PMU="disabled" \
+               APM="$(usex apm)" \
+               SYSTEMD=yes \
+               sh ./install.sh || die
+
+       dodoc Documentation/*.txt README.md
+       newinitd "${FILESDIR}"/laptop_mode.init-1.4 laptop_mode
+
+       newtmpfiles "${S}"/etc/systemd/laptop-mode.conf.tmpfiles 
laptop-mode.conf
+
+       rm "${ED}/usr/lib/pm-utils/sleep.d/01laptop-mode" || die "could not 
remove PM utils config."
+}
+
+pkg_postinst() {
+       local daemon_name
+       optfeature "bluetooth support" net-wireless/bluez
+
+       tmpfiles_process laptop-mode.conf
+
+       if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+               if use acpi || use apm; then
+                       if use acpi; then
+                               daemon_name="acpid"
+                       elif use apm; then
+                               deamon_name="apmd"
+                       fi
+                       ewarn "To enable automatic power state event handling,"
+                       ewarn "e.g. enabling laptop_mode after unplugging the 
battery,"
+                       ewarn "both laptop_mode and the ${daemon_name} daemon 
must be"
+                       ewarn "added to default runlevel."
+               else
+                       ewarn "Without USE=\"acpi\" or USE=\"apm\" ${PN} can 
not"
+                       ewarn "automatically disable laptop_mode on low 
battery."
+                       ewarn
+                       ewarn "This means you can lose up to 10 minutes of work 
if running"
+                       ewarn "out of battery while laptop_mode is enabled."
+                       ewarn
+                       ewarn "Please see laptop-mode.txt in 
/usr/share/doc/${PF} for further"
+                       ewarn "information."
+                       ewarn
+               fi
+       fi
+}

Reply via email to