From: Jakub Bogusz Date: Wed, 11 Nov 2020 13:10:07 +0000 (+0100) Subject: - new Source URL, updated to 1.3.12 X-Git-Tag: auto/th/icewm-1.4.2-1~1 X-Git-Url: http://git.pld-linux.org/?p=packages%2Ficewm.git;a=commitdiff_plain;h=25f07c4 - new Source URL, updated to 1.3.12 - updated build-fixes patch - removed obsolete ifstat-exact-check,autohide patches - use upstream xsession file - guievents are back --- diff --git a/icewm-autohide.patch b/icewm-autohide.patch deleted file mode 100644 index 3b95897..0000000 --- a/icewm-autohide.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -urp icewm-1.3.7/src/wmtaskbar.cc icewm-1.3.7a/src/wmtaskbar.cc ---- icewm-1.3.7/src/wmtaskbar.cc 2010-10-31 15:09:36.000000000 +0100 -+++ icewm-1.3.7a/src/wmtaskbar.cc 2011-08-28 22:13:26.000000000 +0200 -@@ -897,12 +897,12 @@ void TaskBar::updateWMHints() { - - - void TaskBar::handleCrossing(const XCrossingEvent &crossing) { -- if (crossing.serial != ignore_enternotify_hack && crossing.serial != ignore_enternotify_hack + 1) -+ if (crossing.serial != ignore_enternotify_hack && (crossing.serial != ignore_enternotify_hack + 1 || crossing.detail != NotifyVirtual)) - { - if (crossing.type == EnterNotify /* && crossing.mode != NotifyNormal */) { - fEdgeTrigger->stopHide(); - } else if (crossing.type == LeaveNotify /* && crossing.mode != NotifyNormal */) { -- if (crossing.detail != NotifyInferior && crossing.detail != NotifyVirtual && crossing.detail != NotifyAncestor) { -+ if (crossing.detail != NotifyInferior && !(crossing.detail == NotifyVirtual && crossing.mode == NotifyGrab) && !(crossing.detail == NotifyAncestor && crossing.mode != NotifyNormal)) { - MSG(("taskbar hide: %d", crossing.detail)); - fEdgeTrigger->startHide(); - } else { diff --git a/icewm-build-fixes.patch b/icewm-build-fixes.patch index 69989f8..a9fb5c6 100644 --- a/icewm-build-fixes.patch +++ b/icewm-build-fixes.patch @@ -1,62 +1,14 @@ -Index: icewm-1.3.7/configure -=================================================================== ---- icewm-1.3.7.orig/configure 2010-10-31 15:09:40.000000000 +0100 -+++ icewm-1.3.7/configure 2011-03-14 15:58:59.000000000 +0100 -@@ -7038,8 +7038,9 @@ - - if test "${PKG_CONFIG}" != ""; then - GNOME_VER=2 -- GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0 libgnomeui-2.0` -- GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0 libgnomeui-2.0` -+ GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0 gnome-vfs-2.0 libgnomeui-2.0 fontconfig` -+ GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0 gnome-vfs-2.0 libgnomeui-2.0 fontconfig` -+ - - - $as_echo "#define CONFIG_GNOME_MENUS 1" >>confdefs.h -Index: icewm-1.3.7/configure.in -=================================================================== ---- icewm-1.3.7.orig/configure.in 2010-10-31 15:09:37.000000000 +0100 -+++ icewm-1.3.7/configure.in 2011-03-14 15:58:59.000000000 +0100 -@@ -836,8 +836,8 @@ - - if test "${PKG_CONFIG}" != ""; then +--- icewm-1.3.12/configure.ac.orig 2020-11-11 11:21:19.688467839 +0100 ++++ icewm-1.3.12/configure.ac 2020-11-11 11:23:25.721118395 +0100 +@@ -347,7 +347,7 @@ + AC_ARG_ENABLE([menus-gnome2], + AC_HELP_STRING([--disable-menus-gnome2],[Disable display of GNOME 2 menus.])) + if test x$enable_menus_gnome2 != xno; then +- PKG_CHECK_MODULES([GNOME2],[gnome-desktop-2.0 libgnomeui-2.0],[ ++ PKG_CHECK_MODULES([GNOME2],[gnome-desktop-2.0 gnome-vfs-2.0 libgnomeui-2.0],[ GNOME_VER=2 -- GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0 libgnomeui-2.0` -- GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0 libgnomeui-2.0` -+ GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0 gnome-vfs-2.0 libgnomeui-2.0 fontconfig` -+ GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0 gnome-vfs-2.0 libgnomeui-2.0 fontconfig` - - AC_DEFINE(CONFIG_GNOME_MENUS, 1, [Define to make IceWM more GNOME-friendly]) - -Index: icewm-1.3.7/po/Makefile.in -=================================================================== ---- icewm-1.3.7.orig/po/Makefile.in 2010-10-31 15:09:37.000000000 +0100 -+++ icewm-1.3.7/po/Makefile.in 2011-03-14 15:58:59.000000000 +0100 -@@ -4,7 +4,9 @@ - prefix = @prefix@ - datadir = @datadir@ - --PACKAGE = @PACKAGE@ -+PACKAGE = icewm -+# /*ebloch*/ XXX this should become @PACKAGE@ again when it's passing is fixed -+ - LOCDIR = @LOCDIR@ - - DESTDIR = -Index: icewm-1.3.7/src/WinMgr.h -=================================================================== ---- icewm-1.3.7.orig/src/WinMgr.h 2010-10-31 15:09:36.000000000 +0100 -+++ icewm-1.3.7/src/WinMgr.h 2011-03-14 15:58:59.000000000 +0100 -@@ -128,7 +128,7 @@ - * this where WIN_WORKSPACE_COUNT comes into play. - */ - --#define WinWorkspaceInvalid (-1L) -+#define WinWorkspaceInvalid ((unsigned long)-1) - - /* workspaces */ - #define XA_WIN_WORKSPACES "_WIN_WORKSPACES" + AC_DEFINE([CONFIG_GNOME_MENUS],[1],[Define to make IceWM more GNOME-friendly]) + BUILD_MENU_GNOME2=yes Index: icewm-1.3.7/src/yapp.cc =================================================================== --- icewm-1.3.7.orig/src/yapp.cc 2010-10-31 15:09:36.000000000 +0100 @@ -70,36 +22,3 @@ Index: icewm-1.3.7/src/yapp.cc struct timeval difftime; struct timeval curtime; gettimeofday(&curtime, 0); -Index: icewm-1.3.7/src/Makefile.in -=================================================================== ---- icewm-1.3.7.orig/src/Makefile.in 2011-03-14 16:00:59.012121443 +0100 -+++ icewm-1.3.7/src/Makefile.in 2011-03-14 16:01:08.285521758 +0100 -@@ -37,7 +37,7 @@ - CXXFLAGS = @CXXFLAGS@ $(DEBUG) $(DEFS) `pkg-config gdk-pixbuf-xlib-2.0 --cflags` \ - @CORE_CFLAGS@ @IMAGE_CFLAGS@ @AUDIO_CFLAGS@ # `fc-config --cflags` - LFLAGS = @LDFLAGS@ --LIBS = @LIBS@ `pkg-config gdk-pixbuf-xlib-2.0 --libs` -+LIBS = @LIBS@ `pkg-config gdk-pixbuf-xlib-2.0 --libs` -lfontconfig - - CORE_LIBS = @CORE_LIBS@ # `fc-config --libs` - IMAGE_LIBS = @IMAGE_LIBS@ ---- icewm-1.3.8/src/icesh.cc.orig 2013-11-17 17:54:39.000000000 +0100 -+++ icewm-1.3.8/src/icesh.cc 2020-11-10 22:44:42.344406358 +0100 -@@ -245,7 +245,7 @@ - }; - - SymbolTable layers = { -- layerIdentifiers, 0, WinLayerCount - 1, WinLayerInvalid -+ layerIdentifiers, 0, WinLayerCount - 1, (long)WinLayerInvalid - }; - - SymbolTable states = { -@@ -257,7 +257,7 @@ - }; - - SymbolTable trayOptions = { -- trayOptionIdentifiers, 0, WinTrayOptionCount - 1, WinTrayInvalid -+ trayOptionIdentifiers, 0, WinTrayOptionCount - 1, (long)WinTrayInvalid - }; - - /******************************************************************************/ diff --git a/icewm-ifstate-exact-check.patch b/icewm-ifstate-exact-check.patch deleted file mode 100644 index 562268b..0000000 --- a/icewm-ifstate-exact-check.patch +++ /dev/null @@ -1,51 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## ifstate_exact_check.dpatch by Eduard Bloch -## -## DP: Check the state of the interface with SIOCGIFFLAGS instead of traversing the SIOCGIFCONF output, also checking the link state more exactly (Debian bug #563371) - -@DPATCH@ -Index: icewm-1.3.7~pre2/src/apppstatus.cc -=================================================================== ---- icewm-1.3.7~pre2.orig/src/apppstatus.cc 2010-04-28 21:00:30.000000000 +0200 -+++ icewm-1.3.7~pre2/src/apppstatus.cc 2010-04-29 22:11:16.961086255 +0200 -@@ -429,19 +429,18 @@ - } - return false; - #else -- char buffer[32 * sizeof(struct ifreq)]; -- struct ifconf ifc; -- struct ifreq *ifr; -- long long len; -- - if (fNetDev == null) - return false; -- -- int s = socket(PF_INET, SOCK_STREAM, 0); - -+ int s = socket(PF_INET, SOCK_STREAM, 0); - if (s == -1) - return false; - -+#if BROWSE_SIOCGIFCONF_LIST -+ char buffer[32 * sizeof(struct ifreq)]; -+ struct ifconf ifc; -+ struct ifreq *ifr; -+ long long len; - ifc.ifc_len = sizeof(buffer); - ifc.ifc_buf = buffer; - if (ioctl(s, SIOCGIFCONF, &ifc) < 0) { -@@ -459,6 +458,14 @@ - ifr++; - } - -+#else -+ struct ifreq ifr; -+ fNetDev.copy(ifr.ifr_name, IFNAMSIZ-1); -+ bool bUp = (ioctl(s, SIOCGIFFLAGS, &ifr) >= 0 && (ifr.ifr_flags & IFF_UP)); -+ close(s); -+ return bUp; -+#endif -+ - close(s); - return false; - #endif diff --git a/icewm-xsession.desktop b/icewm-xsession.desktop deleted file mode 100644 index fc0a035..0000000 --- a/icewm-xsession.desktop +++ /dev/null @@ -1,15 +0,0 @@ -[Desktop Entry] -Type=XSession -Exec=icewm-session -TryExec=icewm-session -Name=IceWM -Name[af]=Icewm -Name[sv]=Ice WM -Comment=A Win95-OS/2-Motif-like window manager -Comment[lo]=ຕົວຈັດການຫນ້າຕ່າງ IceWM -Comment[pl]=Zarządca okien podobny do Win95, OS/2 i Motifa -Comment[nl]=Een Win95-OS/2-Motif-achtige window manager -Comment[sr]=Win95-OS/2-Motif-олики менаџер прозора -Comment[sv]=En fönsterhanterare som liknar Windows 95-OS/2-Motif -Comment[th]=ตัวจัดการหน้าต่าง IceWM -# vi: encoding=utf-8 diff --git a/icewm.spec b/icewm.spec index fe3346f..dabd766 100644 --- a/icewm.spec +++ b/icewm.spec @@ -1,13 +1,20 @@ +# TODO: +# - make a PLD-theme - default :] # # Conditional build: %bcond_without gradients # gradients (requires antialiasing which requires freetype) %bcond_without freetype # xfreetype support (implies no antialiasing) -%bcond_with guievents # GUI events (broken in 1.3.8) -%bcond_with gnome2 # support for GNOME2 wm-properties -# -# TODO: -# - make a PLD-theme - default :] +%bcond_without guievents # GUI events +%bcond_without alsa # ALSA sound for GUI events +%bcond_with esd # EsounD sound for GUI events +%bcond_without yiff # YIFF sound for GUI events +%bcond_with gnome2 # support for GNOME2 menus and wm-properties +%if %{without guievents} +%undefine with_alsa +%undefine with_esd +%undefine with_yiff +%endif Summary: IceWM X11 Window Manager Summary(de.UTF-8): IceWM ist ein Window Manager für X Summary(es.UTF-8): Administrador de Ventanas X11 @@ -16,29 +23,38 @@ Summary(pt_BR.UTF-8): Gerenciador de Janelas X11 Summary(ru.UTF-8): Оконный менеджер для X11 Summary(uk.UTF-8): Віконний менеджер для X11 Name: icewm -Version: 1.3.8 +Version: 1.3.12 %define iceicons_ver 0.6 Release: 1 Epoch: 2 License: LGPL v2 Group: X11/Window Managers -Source0: http://downloads.sourceforge.net/icewm/%{name}-%{version}.tar.gz -# Source0-md5: 6d61aced3bd20b9e7caeb7e8380368c8 +#Source0Download: https://github.com/ice-wm/icewm/releases +Source0: https://github.com/ice-wm/icewm/archive/%{version}/%{name}-%{version}.tar.gz +# Source0-md5: ab4671878fc36d5f96896a04e5f8c0bc Source1: IceWM.desktop Source3: http://downloads.sourceforge.net/icewm/iceicons-%{iceicons_ver}.tar.gz # Source3-md5: 53ed111a3c4d1e609bd1604ddccd4701 Source4: icewm-startup.sh -Source7: %{name}-xsession.desktop Patch0: %{name}-build-fixes.patch -Patch3: %{name}-ifstate-exact-check.patch -Patch5: %{name}-autohide.patch URL: https://ice-wm.org/ -BuildRequires: autoconf >= 2.50 +%{?with_alsa:BuildRequires: alsa-lib-devel} +BuildRequires: autoconf >= 2.69 BuildRequires: automake +%{?with_esd:BuildRequires: esound-devel} +BuildRequires: fontconfig-devel +BuildRequires: fribidi-devel >= 0.10.4 BuildRequires: gdk-pixbuf2-xlib-devel >= 2.0 -BuildRequires: gettext-tools +BuildRequires: gettext-tools >= 0.19.6 +BuildRequires: glib2-devel >= 2.0 +%{?with_gnome2:BuildRequires: gnome-desktop2-devel >= 2.0} +%{?with_gnome2:BuildRequires: gnome-vfs2-devel >= 2.0} +%{?with_gnome2:BuildRequires: libgnomeui-devel >= 2.0} +%{?with_alsa:BuildRequires: libsndfile-devel} BuildRequires: libstdc++-devel +BuildRequires: libtool >= 2:2.4.2 BuildRequires: pkgconfig +BuildRequires: sed >= 4.0 BuildRequires: xorg-lib-libICE-devel BuildRequires: xorg-lib-libSM-devel BuildRequires: xorg-lib-libX11-devel @@ -47,7 +63,7 @@ BuildRequires: xorg-lib-libXext-devel BuildRequires: xorg-lib-libXinerama-devel BuildRequires: xorg-lib-libXrandr-devel BuildRequires: xorg-lib-libXrender-devel -%{?with_guievents:BuildRequires: yiff-devel} +%{?with_yiff:BuildRequires: yiff-devel >= 2.14.7-3} Requires(pre): /bin/rm Requires(pre): /usr/bin/test Requires: shared-mime-info @@ -130,23 +146,22 @@ nice2, warp3, warp4, win95. %prep %setup -q %patch0 -p1 -%patch3 -p1 -%patch5 -p1 -# remove GNOME1/GNOME2 menu rules -%{__sed} -i -e '/icewm-menu-gnome/d' lib/menu.in +tar -xzf %{SOURCE3} -C lib/icons -cd lib/icons -tar -xzf %{SOURCE3} +%{__sed} -i -e '/po\/Makefile.in/d' configure.ac %build -cp -f /usr/share/automake/config.sub . -%{__aclocal} +%{__gettextize} +%{__libtoolize} +%{__aclocal} -I m4 %{__autoconf} %{__autoheader} +%{__automake} %configure \ %{!?with_gradients:--disable-gradients} \ - %{?with_guievents:--enable-guievents --with-icesound=OSS,Y} \ + %{?with_guievents:--enable-guievents --with-icesound=%{?with_alsa:ALSA,}OSS%{?with_yiff:,Y}%{?with_esd:,ESound}} \ + %{!?with_gnome2:--disable-menus-gnome2} \ --enable-shaped-decorations \ %{!?with_freetype:--disable-xfreetype --enable-corefonts} \ --with-cfgdir=%{_sysconfdir}/X11/%{name} \ @@ -155,17 +170,19 @@ cp -f /usr/share/automake/config.sub . %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_datadir}/xsessions,%{_pixmapsdir}} \ - $RPM_BUILD_ROOT{%{_wmpropsdir},%{_sysconfdir}/X11/%{name}} +install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_wmpropsdir},%{_sysconfdir}/X11/%{name}} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT +%{__sed} -e 's|^# IconPath=""|IconPath="%{_datadir}/pixmaps:%{_datadir}/icons"|' -i $RPM_BUILD_ROOT%{_datadir}/icewm/preferences + +# packaged as %doc +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/icewm + %{?with_gnome2:cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_wmpropsdir}} cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/icewm/startup -cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_datadir}/xsessions/%{name}.desktop cp -p lib/keys $RPM_BUILD_ROOT%{_sysconfdir}/X11/%{name}/keys -sed 's|^# IconPath=""|IconPath="%{_datadir}/pixmaps:%{_datadir}/icons"|' < lib/preferences > $RPM_BUILD_ROOT%{_sysconfdir}/X11/%{name}/preferences cp -p lib/toolbar $RPM_BUILD_ROOT%{_sysconfdir}/X11/%{name}/toolbar cp -p lib/winoptions $RPM_BUILD_ROOT%{_sysconfdir}/X11/%{name}/winoptions echo %{_bindir}/icewmbg > $RPM_BUILD_ROOT%{_sysconfdir}/X11/%{name}/startup @@ -192,6 +209,7 @@ test -h %{_pixmapsdir}/icewm || rm -rf %{_pixmapsdir}/icewm %attr(755,root,root) %{_bindir}/icesound %endif %attr(755,root,root) %{_bindir}/icewm +%attr(755,root,root) %{_bindir}/icewm-menu-fdo %attr(755,root,root) %{_bindir}/icewm-session %attr(755,root,root) %{_bindir}/icewm-set-gnomewm %attr(755,root,root) %{_bindir}/icewmbg @@ -200,7 +218,6 @@ test -h %{_pixmapsdir}/icewm || rm -rf %{_pixmapsdir}/icewm %dir %{_sysconfdir}/X11/%{name} %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/X11/%{name}/keys %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/X11/%{name}/menu -%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/X11/%{name}/preferences %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/X11/%{name}/toolbar %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/X11/%{name}/winoptions %config(noreplace,missingok) %verify(not md5 mtime size) %attr(755,root,root) %{_sysconfdir}/X11/%{name}/restart @@ -213,6 +230,7 @@ test -h %{_pixmapsdir}/icewm || rm -rf %{_pixmapsdir}/icewm %{_datadir}/icewm/ledclock %{_datadir}/icewm/mailbox %{_datadir}/icewm/preferences +%{_datadir}/icewm/programs %attr(755,root,root) %{_datadir}/icewm/startup %{_datadir}/icewm/toolbar %{_datadir}/icewm/taskbar @@ -221,7 +239,9 @@ test -h %{_pixmapsdir}/icewm || rm -rf %{_pixmapsdir}/icewm %{_datadir}/icewm/themes/Infadel2 %{_datadir}/icewm/themes/icedesert %{_datadir}/xsessions/icewm.desktop +%{_datadir}/xsessions/icewm-session.desktop %{?with_gnome2:%{_wmpropsdir}/IceWM.desktop} +%{_mandir}/man1/icewm.1* %files themes-base %defattr(644,root,root,755)