diff --git a/desktop/icewm/README b/desktop/icewm/README index 6a766518ff..5f4f763a9a 100644 --- a/desktop/icewm/README +++ b/desktop/icewm/README @@ -1,5 +1,14 @@ IceWM is a window manager for the X Window System. The goal of IceWM is speed, simplicity, and not getting in the user's way. -Many users will need to have a polkit authentication agent invoked -at X startup - see /usr/share/icewm/startup for suggestions. +Because icewm users are perhaps less likely to use components of other +desktop environments, the following could be considered a recommendation +for addition to /etc/sudoers (use visudo(8) to edit it), which will allow +all members of the "power" group to use icewm's built-in methods for +shutdown, reboot, and sleep. + + Cmnd_Alias POWERMGMT = /sbin/halt, /sbin/reboot, /sbin/poweroff, /usr/sbin/pm-suspend + %power ALL=(ALL) NOPASSWD: POWERMGMT + +Some users might wish to have a polkit authentication agent or other things +invoked at X startup - see /usr/share/icewm/startup for suggestions. diff --git a/desktop/icewm/config/icewm-sleep b/desktop/icewm/config/icewm-sleep deleted file mode 100644 index 21ff523ab6..0000000000 --- a/desktop/icewm/config/icewm-sleep +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -# This is used for Slackware 14.2 -/usr/bin/dbus-send \ - --system \ - --print-reply \ - --dest="org.freedesktop.UPower" \ - /org/freedesktop/UPower \ - org.freedesktop.UPower.Suspend 2>/dev/null - -# This will be needed instead in Slackware 15.0 -#/usr/bin/dbus-send \ -# --system \ -# --print-reply \ -# --dest="org.freedesktop.ConsoleKit" \ -# /org/freedesktop/ConsoleKit/Manager \ -# org.freedesktop.ConsoleKit.Manager.Suspend \ -# boolean:true diff --git a/desktop/icewm/icewm.SlackBuild b/desktop/icewm/icewm.SlackBuild index a3ea0d5dde..ddcfa3b0f5 100644 --- a/desktop/icewm/icewm.SlackBuild +++ b/desktop/icewm/icewm.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for icewm -# Copyright 2006-2015 Robby Workman Northport, Alabama, USA +# Copyright 2006-2019 Robby Workman Northport, Alabama, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,7 +23,7 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=icewm -VERSION=${VERSION:-1.4.2} +VERSION=${VERSION:-1.5.5} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -60,7 +60,7 @@ rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$VERSION -tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 +tar xvf $CWD/$PRGNAM-$VERSION.tar.xz cd $PRGNAM-$VERSION chown -R root:root . find -L . \ @@ -69,8 +69,8 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -# Set some sane keyboard shortcut defaults -patch -p1 < $CWD/patches/icewm-keys.patch +# Tweak default configs for keybindings and power management commands +patch -p1 < $CWD/patches/tweak-default-configs.diff CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -98,8 +98,6 @@ mkdir -p $PKG/usr/share/icewm cp $CWD/config/* $PKG/usr/share/icewm chmod 0755 $PKG/usr/share/icewm/startup chmod 0755 $PKG/usr/share/icewm/shutdown -cp $CWD/config/icewm-sleep $PKG/usr/bin -chmod 0755 $PKG/usr/bin/icewm-sleep # Add xinitrc for xwmconfig(1) mkdir -p $PKG/etc/X11/xinit @@ -112,7 +110,7 @@ cat $CWD/icewm.desktop > $PKG/usr/share/xsessions/icewm.desktop mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html cp -a \ - AUTHORS COMPLIANCE COPYING ChangeLog INSTALL* NEWS README.md THANKS TODO VERSION \ + AUTHORS COMPLIANCE COPYING ChangeLog NEWS README THANKS TODO VERSION \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/icewm.SlackBuild > $PKG/usr/doc/icewm-$VERSION/icewm.SlackBuild diff --git a/desktop/icewm/icewm.info b/desktop/icewm/icewm.info index c95595424c..46e2750188 100644 --- a/desktop/icewm/icewm.info +++ b/desktop/icewm/icewm.info @@ -1,8 +1,8 @@ PRGNAM="icewm" -VERSION="1.4.2" -HOMEPAGE="https://github.com/bbidulock/icewm" -DOWNLOAD="https://github.com/bbidulock/icewm/releases/download/1.4.2/icewm-1.4.2.tar.bz2" -MD5SUM="3e7c3a95e7f8518346267f48a11966cd" +VERSION="1.5.5" +HOMEPAGE="https://ice-wm.org/" +DOWNLOAD="https://github.com/ice-wm/icewm/releases/download/1.5.5/icewm-1.5.5.tar.xz" +MD5SUM="6eba94a7935a0531d2c14eeb1426aeef" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/desktop/icewm/patches/icewm-keys.patch b/desktop/icewm/patches/icewm-keys.patch deleted file mode 100644 index 23fb9ff89e..0000000000 --- a/desktop/icewm/patches/icewm-keys.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -Nur icewm-1.4.2.orig/lib/keys.in icewm-1.4.2/lib/keys.in ---- icewm-1.4.2.orig/lib/keys.in 2017-07-30 03:53:35.524267864 -0500 -+++ icewm-1.4.2/lib/keys.in 2019-07-21 00:54:04.355694881 -0500 -@@ -20,8 +20,8 @@ - # advanced function keys by watching the output of the xev command whilest - # pressing those keys and map those symbols by using xmodmap. - --key "XF86Standby" /bin/sh -c "{ test -e /run/systemd/system && systemctl suspend; } ||:" --key "XF86Sleep" /bin/sh -c "{ test -e /run/systemd/system && systemctl suspend; } ||:" -+key "XF86Standby" /bin/sh -c "{ /usr/bin/icewm-sleep; } ||:" -+key "XF86Sleep" /bin/sh -c "{ /usr/bin/icewm-sleep; } ||:" - key "XF86AudioLowerVolume" amixer sset PCM 5%- - key "XF86AudioRaiseVolume" amixer sset PCM 5%+ - key "XF86AudioMute" amixer sset PCM 0% diff --git a/desktop/icewm/patches/tweak-default-configs.diff b/desktop/icewm/patches/tweak-default-configs.diff new file mode 100644 index 0000000000..bd8c10132d --- /dev/null +++ b/desktop/icewm/patches/tweak-default-configs.diff @@ -0,0 +1,47 @@ +diff -Nur icewm-1.5.5.orig/lib/keys.in icewm-1.5.5/lib/keys.in +--- icewm-1.5.5.orig/lib/keys.in 2019-06-06 17:42:00.019998596 -0500 ++++ icewm-1.5.5/lib/keys.in 2019-07-27 17:42:43.139090310 -0500 +@@ -13,8 +13,8 @@ + key "Alt+Ctrl+b" xdg-open about:blank + key "Alt+Ctrl+s" xdg-open https://www.google.com + +-key "Super+KP_Subtract" amixer sset Master 5%- +-key "Super+KP_Add" amixer sset Master 5%+ ++key "Super+KP_Subtract" pamixer -d 5 ++key "Super+KP_Add" pamixer -i 5 + + # "Multimedia key" bindings for Xorg. Gather the keycodes of your + # advanced function keys by watching the output of the xev command whilest +@@ -23,11 +23,11 @@ + # Note: some of them might have unwanted side effects through concurrency with + # other listeners like systemd for the suspend key events + # +-# key "XF86Standby" /bin/sh -c "{ test -e /run/systemd/system && systemctl suspend; } ||:" +-# key "XF86Sleep" /bin/sh -c "{ test -e /run/systemd/system && systemctl suspend; } ||:" +-key "XF86AudioLowerVolume" amixer sset Master 5%- +-key "XF86AudioRaiseVolume" amixer sset Master 5%+ +-key "XF86AudioMute" amixer sset Master toggle ++# key "XF86Standby" /bin/sh -c "{ sudo /usr/sbin/pm-suspend; } ||:" ++# key "XF86Sleep" /bin/sh -c "{ sudo /usr/sbin/pm-suspend; } ||:" ++key "XF86AudioLowerVolume" pamixer -d 5 ++key "XF86AudioRaiseVolume" pamixer -i 5 ++key "XF86AudioMute" pamixer -t + key "XF86HomePage" xdg-open about:blank + key "XF86Search" xdg-open https://www.google.com + key "XF86Eject" eject +diff -Nur icewm-1.5.5.orig/src/default.h icewm-1.5.5/src/default.h +--- icewm-1.5.5.orig/src/default.h 2019-06-06 17:42:00.043999061 -0500 ++++ icewm-1.5.5/src/default.h 2019-07-27 17:36:10.134553913 -0500 +@@ -184,9 +184,9 @@ + XSV(const char *, logoutCancelCommand, 0) + #if defined(__linux__) + // use shell code since those are wrapped through shell in YWindowManager::execAfterFork +-XSV(const char *, shutdownCommand, "test -e /run/systemd/system && systemctl poweroff") +-XSV(const char *, rebootCommand, "test -e /run/systemd/system && systemctl reboot") +-XSV(const char *, suspendCommand, "test -e /run/systemd/system && systemctl suspend") ++XSV(const char *, shutdownCommand, "sudo /sbin/halt") ++XSV(const char *, rebootCommand, "sudo /sbin/reboot") ++XSV(const char *, suspendCommand, "sudo /usr/sbin/pm-suspend") + #else + XSV(const char *, shutdownCommand, 0) + XSV(const char *, rebootCommand, 0)