Hello community, here is the log from the commit of package icewm for openSUSE:Factory checked in at 2015-11-17 14:21:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/icewm (Old) and /work/SRC/openSUSE:Factory/.icewm.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "icewm" Changes: -------- --- /work/SRC/openSUSE:Factory/icewm/icewm.changes 2015-01-15 16:00:50.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.icewm.new/icewm.changes 2015-11-17 14:22:01.000000000 +0100 @@ -1,0 +2,133 @@ +Mon Oct 26 10:51:29 UTC 2015 - tchva...@suse.com + +- Split out configuration files to allow icewm-theme-branding to + work + +------------------------------------------------------------------- +Mon Oct 26 10:40:08 UTC 2015 - tchva...@suse.com + +- Simplify reboot/shutdown commands: + * icewm-preferences.patch + +------------------------------------------------------------------- +Mon Oct 26 10:31:51 UTC 2015 - tchva...@suse.com + +- Enable fribidi support on main package RTL is quite used + +------------------------------------------------------------------- +Mon Oct 26 10:06:43 UTC 2015 - tchva...@suse.com + +- Kill back the mate subpkg as it does not really pose any benefit + for us. But keep the patch as it should be merged upstream + +------------------------------------------------------------------- +Mon Oct 26 07:10:58 UTC 2015 - tchva...@suse.com + +- Cleanup a bit the update-alternatives syntax + +------------------------------------------------------------------- +Sun Oct 25 21:08:03 UTC 2015 - sor.ale...@meowr.ru + +- Add icewm-fix-local-search.patch: make icewm-menu-fdo not to + search through whole ~/.local/share/ as it can be unexpectedly big. +- Add icewm-toolbar-icons-generic.patch: don't specify paths in + toolbar icons. +- Require adwaita-icon-theme instead of gnome-icon-theme. +- Append icon search paths to icewm-preferences.patch including + Adwaita theme. +- Add basic MATE support via icewm-mate.patch and icewm-mate + subpackage. +- Fix build under openSUSE 13.1. + +------------------------------------------------------------------- +Sun Oct 25 20:49:42 UTC 2015 - tchva...@suse.com + +- Deprecate the gnome subpackage as after investigation we figured + we can simply use icewm-menu-fdo to generate the taskbar menu + without any need for gnome2 ties. +- Drop binary icewm-set-gnomewm as the gnome2 is not supported anyway + and thus gconf settings of its defaults are bit pointless + +------------------------------------------------------------------- +Sun Oct 25 12:31:15 UTC 2015 - tchva...@suse.com + +- Move icesound to default package as alsa is in by default + +------------------------------------------------------------------- +Sat Oct 24 19:13:30 UTC 2015 - tchva...@suse.com + +- Add requires on xterm+alsa-utils that are used in default calls + of icewm +- For icewm-default add requires on gnome-icon-theme as otherwise + we would not see icons for most of the things + +------------------------------------------------------------------- +Sat Oct 24 18:01:03 UTC 2015 - tchva...@suse.com + +- Set up icesound to base on alsa only, as OSS and ESD are quite + not useful nowdays + +------------------------------------------------------------------- +Fri Oct 23 23:29:22 UTC 2015 - zai...@opensuse.org + +- Drop gnome-desktop-devel BuildRequires: That symbol is provided + by libgnome-desktop-3-devel now, and is not what configure needs, + nor is looking for. The compat package libgnome-desktop-2-devel + is the correct one for icewm-gnome, and is already present via + pkgconfig(gnome-desktop-2.0) BuildRequires. +- Also drop libgnomeui-devel as pkgconfig(libgnomeui-2.0) takes + care of that. +- Move pkgconfig(gdk-pixbuf-xlib-2.0) BuildRequires: to the with + gnome section. + +------------------------------------------------------------------- +Fri Oct 16 08:19:51 UTC 2015 - tchva...@suse.com + +- Add back bcond_with gnome conditional as it is redefined on low + rings + +------------------------------------------------------------------- +Fri Oct 9 20:02:31 UTC 2015 - tchva...@suse.com + +- Sed in lower requirement on gettext to work on Leap and 13.2 + +------------------------------------------------------------------- +Fri Oct 9 18:30:16 UTC 2015 - tchva...@suse.com + +- Split lang pkg and properly recommend it +- Install icewm-menu-fdo and manpage +- Properly set docdir +- Add sgmltool to generate html help pages +- Use %configure macros properly +- Cleanup with spec-cleaner +- Drop bcond for gnome as it is enabled everywhere anyway +- Drop patches that should not be needed after discussion with mmarek: + * icewm-menu.patch + * icewm-susemenu.patch +- Peferences file is now in src not in lib so update patch, + also use systemd to call shutdown and reboot which should be bit more safe + today: + * icewm-preferences.patch + +------------------------------------------------------------------- +Fri Oct 9 14:02:32 UTC 2015 - tchva...@suse.com + +- Version bump to 1.3.11: + * various bugfixes collected from all upstream vendors +- Remove upstreamed patches: + * icewm-1.2.35-empty-winmenu.patch + * icewm-1.2.35-override-config.patch + * icewm-1.2.35-unaligned-access.patch + * icewm-1.3.6-winoptions.patch + * icewm-1.3.8-enable-guievents.patch + * icewm-1.3.8-shutdown-reboot-command.patch + * icewm-1.3.8.tar.gz + * icewm-bg-default-at-error.patch + * icewm-docdir.patch + * icewm-fix-themes.patch + * icewm-linking.patch + * icewm-multiByte.patch +- Refresh patch: + * icewm-menu.patch + +------------------------------------------------------------------- Old: ---- icewm-1.2.35-empty-winmenu.patch icewm-1.2.35-override-config.patch icewm-1.2.35-unaligned-access.patch icewm-1.3.6-winoptions.patch icewm-1.3.8-enable-guievents.patch icewm-1.3.8-shutdown-reboot-command.patch icewm-1.3.8.tar.gz icewm-bg-default-at-error.patch icewm-docdir.patch icewm-fix-themes.patch icewm-linking.patch icewm-menu.patch icewm-multiByte.patch icewm-susemenu.patch New: ---- 1.3.11.tar.gz icewm-fix-local-search.patch icewm-mate.patch icewm-toolbar-icons-generic.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ icewm.spec ++++++ --- /var/tmp/diff_new_pack.Afsq0U/_old 2015-11-17 14:22:02.000000000 +0100 +++ /var/tmp/diff_new_pack.Afsq0U/_new 2015-11-17 14:22:02.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package icewm # -# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,197 +16,196 @@ # -# default to gnome support -%bcond_without gnome - +%global lites icewm icewmhint icewmbg icesh icewm-session Name: icewm +Version: 1.3.11 +Release: 0 +Summary: Window Manager with a Taskbar +License: LGPL-2.1+ +Group: System/GUI/Other +Url: http://www.icewm.org/ +Source0: https://github.com/bbidulock/icewm/archive/%{version}.tar.gz +Source1: icewm.desktop +# PATCH-FIX-UPSTREAM icewm-fix-local-search.patch sor.ale...@meowr.ru -- Make icewm-menu-fdo not to search through whole ~/.local/share/. +Patch0: icewm-fix-local-search.patch +# PATCH-FIX-OPENSUSE icewm-toolbar-icons-generic.patch sor.ale...@meowr.ru -- Don't specify paths in toolbar icons. +Patch1: icewm-toolbar-icons-generic.patch +# PATCH-FIX-OPENSUSE icewm-mate.patch sor.ale...@meowr.ru -- Add MATE Menus support. +Patch2: icewm-mate.patch +Patch99: icewm-preferences.patch BuildRequires: autoconf +BuildRequires: automake +BuildRequires: fdupes BuildRequires: gcc-c++ +BuildRequires: libtool +# Needed for documentation. +BuildRequires: pkg-config +BuildRequires: sgmltool BuildRequires: update-alternatives BuildRequires: update-desktop-files +BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(fribidi) +BuildRequires: pkgconfig(gdk-pixbuf-xlib-2.0) BuildRequires: pkgconfig(ice) BuildRequires: pkgconfig(sm) +BuildRequires: pkgconfig(sndfile) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xft) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xrandr) -%if %{with gnome} -BuildRequires: gnome-desktop-devel -BuildRequires: libgnomeui-devel -BuildRequires: pkgconfig(gnome-desktop-2.0) -BuildRequires: pkgconfig(libgnomeui-2.0) -%endif -BuildRequires: pkgconfig(gdk-pixbuf-xlib-2.0) -%if 0%{?suse_version} >= 1030 -BuildRequires: fdupes -%endif -Provides: windowmanager +Requires: alsa-utils Requires: desktop-data Requires: icewm-bin +Requires: icewm-configuration-files Requires: xdg-menu -# if you have the choice, prefer the big one +Requires: xterm +# If you have the choice, prefer the big one. Recommends: icewm-default -Version: 1.3.8 -Release: 0 -Source: http://downloads.sourceforge.net/project/%{name}/%{name}-1.3/%{version}/%{name}-%{version}.tar.gz -Source1: %{name}.desktop -Patch1: icewm-multiByte.patch -Patch2: icewm-menu.patch -Patch3: icewm-docdir.patch -Patch4: icewm-1.2.35-override-config.patch -Patch5: icewm-1.2.35-empty-winmenu.patch -Patch6: icewm-1.2.35-unaligned-access.patch -Patch7: icewm-1.3.6-winoptions.patch -Patch8: icewm-linking.patch -Patch9: icewm-1.3.8-enable-guievents.patch -Patch10: icewm-susemenu.patch -Patch11: icewm-fix-themes.patch -Patch12: icewm-bg-default-at-error.patch -Patch13: icewm-1.3.8-shutdown-reboot-command.patch -# applied in %%build -Patch99: icewm-preferences.patch -Url: http://www.icewm.org/ -Summary: Window Manager with a Taskbar -License: LGPL-2.1+ -Group: System/GUI/Other -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Recommends: icewm-lang = %{version} +Provides: icewm-gnome = %{version} +Obsoletes: icewm-gnome < %{version} +Provides: windowmanager %description -A window manager for the X Window System that can emulate the look of -Windows '95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to take the -best features from those systems. IceWM features multiple workspaces, -opaque move and resize, a taskbar, a window list, mailbox status, and a -digital clock. It is fast and small. +A window manager for the X Window System that can emulate the look +of Windows '95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to +take the best features from those systems. IceWM features multiple +workspaces, opaque move and resize, a taskbar, a window list, +mailbox status, and a digital clock. It is fast and small. + +%package config-upstream +Summary: Window Manager with a Taskbar -- Default configuration +Group: System/GUI/Other +Provides: icewm-configuration-files = %{version} +BuildArch: noarch + +%description config-upstream +A window manager for the X Window System that can emulate the look +of Windows '95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to +take the best features from those systems. IceWM features multiple +workspaces, opaque move and resize, a taskbar, a window list, +mailbox status, and a digital clock. It is fast and small. + +Configuration files from upstream provider without suse branding %package default -Summary: Window Manager with a Taskbar--Default Version +Summary: Window Manager with a Taskbar -- Default Version Group: System/GUI/Other -Provides: icewm-bin +Requires: adwaita-icon-theme Requires: icewm Requires: update-alternatives +Recommends: icewm-lang +Provides: icewm-bin %description default -A window manager for the X Window System that can emulate the look of -Windows '95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to take the -best features from those systems. IceWM features multiple workspaces, -opaque move and resize, a taskbar, a window list, mailbox status, and a -digital clock. It is fast and small. +A window manager for the X Window System that can emulate the look +of Windows '95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to +take the best features from those systems. IceWM features multiple +workspaces, opaque move and resize, a taskbar, a window list, +mailbox status, and a digital clock. It is fast and small. %package lite -Summary: Window Manager with a Taskbar -- lite version +Summary: Window Manager with a Taskbar -- Lite Version Group: System/GUI/Other -Provides: icewm-bin Requires: icewm Requires: update-alternatives +Recommends: icewm-lang +Provides: icewm-bin %description lite -A window manager for the X Window System that can emulate the look of -Windows 95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to take the -best features from those systems. IceWM features multiple workspaces, -opaque move and resize, a taskbar, a window list, mailbox status, and a -digital clock. It is fast and small. - -%package gnome -Summary: Windowmanager with Taskbar - gnome version -Group: System/GUI/GNOME -Requires: icewm-default - -%description gnome -Window Manager for X Window System. Can emulate the look of Windows 95, -OS/2 Warp 3,4, Motif. Tries to take the best features of the above -systems. Features multiple workspaces, opaque move and resize, task -bar, window list, mailbox status, digital clock. Fast and small. +A window manager for the X Window System that can emulate the look +of Windows '95, OS/2 Warp 3, OS/2 Warp 4, and Motif and tries to +take the best features from those systems. IceWM features multiple +workspaces, opaque move and resize, a taskbar, a window list, +mailbox status, and a digital clock. It is fast and small. -This package adds GNOME menu and sound support to icewm. +%lang_package %prep %setup -q -%patch1 -%patch2 -%patch3 -%patch4 -%patch5 -%patch6 -%patch7 -p1 -%patch8 -%patch9 -%patch10 -p1 -%patch11 -p1 -%patch12 -p1 -%patch13 -p1 - -%define lites icewm icewmhint icewmbg icesh icewm-session +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +# Do not require needlessly new gettext. +sed -i 's/0.19.5/0.18.3/g' configure.ac %build -autoconf -export CFLAGS="$RPM_OPT_FLAGS" -export CXXFLAGS="$RPM_OPT_FLAGS -fvisibility-inlines-hidden" -./configure --without-debug \ - --sysconfdir=/etc \ - --with-cfgdir=/etc/icewm \ - --prefix=/usr \ - --with-docdir=%{_docdir} \ +autoreconf -fi +# Build the Lite version +%configure \ + --disable-silent-rules \ + --with-cfgdir=%{_sysconfdir}/icewm \ --enable-i18n \ --disable-nls \ --disable-guievents \ --disable-winmenu \ + --without-icesound \ --enable-lite \ - --disable-gnome-menus -make %{?jobs:-j%jobs} V=1 + --enable-taskbar \ + --disable-menus-fdo \ + --disable-menus-mate \ + --disable-fribidi +make %{?_smp_mflags} +# Grab the lite content. mkdir lite -for i in %lites; do mv src/$i lite/$i-lite; done -make clean - -./configure --disable-silent-rules --without-debug \ - --sysconfdir=/etc \ - --with-cfgdir=/etc/icewm \ - --prefix=/usr \ - --with-docdir=%{_docdir} \ +for file in %{lites}; do + mv -f src/$file lite/$file-lite +done +make %{?_smp_mflags} clean +# Configure for full deployment. +%configure \ + --docdir=%{_docdir}/%{name} \ + --disable-silent-rules \ + --with-cfgdir=%{_sysconfdir}/icewm \ + --with-icesound=alsa \ + --enable-i18n \ --enable-nls \ --enable-corefonts \ --enable-guievents \ --enable-antialiasing \ --enable-gradients \ --enable-shaped-decorations \ -%if %{with gnome} - --with-icesound=oss,esd \ - --with-imlib \ - --enable-menus-gnome2 \ -%endif + --enable-menus-fdo \ --enable-i18n -make %{?jobs:-j%jobs} V=1 -# patch generated lib/preferences file -patch -p0 -i %{P:99} +make %{?_smp_mflags} +# Patch generated lib/preferences file. +patch -p1 -i %{PATCH99} %install -make DESTDIR=%{buildroot} install install-docs -mkdir -p %{buildroot}/etc/icewm +%make_install + +# First just remove GNOME WM setter as we don't have GNOME 2 anyway. +rm -f %{buildroot}%{_bindir}/icewm-set-{gnomewm,matewm} + +mkdir -p %{buildroot}%{_sysconfdir}/icewm/ for cfgfile in keys menu preferences toolbar winoptions ; do - mv %{buildroot}/usr/share/icewm/$cfgfile \ - %{buildroot}/etc/icewm + mv -f %{buildroot}%{_datadir}/icewm/$cfgfile \ + %{buildroot}%{_sysconfdir}/icewm/ done -%{find_lang} icewm -ln -s icewm.html %{buildroot}/%{_docdir}/icewm/index.html -# install the xsession desktop file -mkdir -p %{buildroot}/usr/share/xsessions -cp -f %{SOURCE1} %{buildroot}/usr/share/xsessions -%suse_update_desktop_file %{buildroot}/usr/share/xsessions/icewm.desktop -# link duplicate theme icons to save some space -%{?fdupes:%fdupes %buildroot/usr/share/icewm/themes/} -mkdir -p %{buildroot}%{_sysconfdir}/alternatives -for i in %lites; do - mv lite/$i-lite %{buildroot}/usr/bin - mv %{buildroot}/usr/bin/$i %{buildroot}/usr/bin/$i-default - - # dummy - touch %{buildroot}%{_sysconfdir}/alternatives/$i - ln -s %{_sysconfdir}/alternatives/$i %{buildroot}%_bindir/$i +%find_lang icewm +ln -sf icewm.html %{buildroot}/%{_docdir}/icewm/index.html + +# Install the xsession desktop file. +install -Dm 0644 %{SOURCE1} %{buildroot}%{_datadir}/xsessions/icewm.desktop + +mkdir -p %{buildroot}%{_sysconfdir}/alternatives/ +for file in %{lites}; do + mv -f lite/$file-lite %{buildroot}%{_prefix}/bin + mv -f %{buildroot}%{_bindir}/$file %{buildroot}%{_bindir}/$file-default + + # Dummy. + touch %{buildroot}%{_sysconfdir}/alternatives/$file + ln -s %{_sysconfdir}/alternatives/$file %{buildroot}%{_bindir}/$file done +%suse_update_desktop_file %{buildroot}%{_datadir}/xsessions/icewm.desktop +# Link duplicate theme icons to save some space. +%fdupes %{buildroot}%{_datadir}/icewm/themes/ + %post lite -/usr/sbin/update-alternatives \ +%{_sbindir}/update-alternatives \ --install %{_bindir}/icewm icewm %{_bindir}/icewm-lite 0 \ --slave %{_bindir}/icewmhint icewmhint %{_bindir}/icewmhint-lite \ --slave %{_bindir}/icewmbg icewmbg %{_bindir}/icewmbg-lite \ @@ -215,11 +214,11 @@ %preun lite if [ "$1" = 0 ] ; then - /usr/sbin/update-alternatives --remove icewm %{_bindir}/icewm-lite + %{_sbindir}/update-alternatives --remove icewm %{_bindir}/icewm-lite fi %post default -/usr/sbin/update-alternatives \ +%{_sbindir}/update-alternatives \ --install %{_bindir}/icewm icewm %{_bindir}/icewm-default 100 \ --slave %{_bindir}/icewmhint icewmhint %{_bindir}/icewmhint-default \ --slave %{_bindir}/icewmbg icewmbg %{_bindir}/icewmbg-default \ @@ -228,62 +227,63 @@ %preun default if [ "$1" = 0 ] ; then - /usr/sbin/update-alternatives --remove icewm %{_bindir}/icewm-default + %{_sbindir}/update-alternatives --remove icewm %{_bindir}/icewm-default fi -%files -f icewm.lang +%files %defattr(-,root,root) %doc %{_docdir}/icewm -%dir /etc/icewm -%config /etc/icewm/* -/usr/share/icewm/ -/usr/share/xsessions/* +%{_datadir}/icewm/ +%{_datadir}/xsessions/* +%{_mandir}/man1/icewm.1%{?ext_man} -%files default +%files config-upstream %defattr(-,root,root) -/usr/bin/icewm-default -/usr/bin/icewmhint-default -/usr/bin/icewmbg-default -/usr/bin/icehelp -/usr/bin/icesh-default -/usr/bin/icewmtray -/usr/bin/icewm-session-default -%ghost %_sysconfdir/alternatives/icewm -%ghost %_sysconfdir/alternatives/icewmhint -%ghost %_sysconfdir/alternatives/icewmbg -%ghost %_sysconfdir/alternatives/icesh -%ghost %_sysconfdir/alternatives/icewm-session -/usr/bin/icewm -/usr/bin/icewmhint -/usr/bin/icewmbg -/usr/bin/icesh -/usr/bin/icewm-session +%dir %{_sysconfdir}/icewm/ +%config %{_sysconfdir}/icewm/* -%if %{with gnome} -%files gnome +%files lang -f icewm.lang +%defattr(-,root,root) + +%files default %defattr(-,root,root) -/usr/bin/icewm-menu-gnome2 -%endif -# make those two part of -default without gnome -/usr/bin/icesound -/usr/bin/icewm-set-gnomewm +%ghost %{_sysconfdir}/alternatives/icewm +%ghost %{_sysconfdir}/alternatives/icewmhint +%ghost %{_sysconfdir}/alternatives/icewmbg +%ghost %{_sysconfdir}/alternatives/icesh +%ghost %{_sysconfdir}/alternatives/icewm-session +%{_bindir}/icewm-default +%{_bindir}/icewmhint-default +%{_bindir}/icewmbg-default +%{_bindir}/icehelp +%{_bindir}/icesh-default +%{_bindir}/icewmtray +%{_bindir}/icewm-session-default +%{_bindir}/icesound +%{_bindir}/icewm +%{_bindir}/icewmhint +%{_bindir}/icewmbg +%{_bindir}/icesh +%{_bindir}/icewm-session +%{_bindir}/icewm-menu-fdo +%{_datadir}/applications/icewm.desktop %files lite %defattr(-,root,root) -/usr/bin/icewm-lite -/usr/bin/icewmhint-lite -/usr/bin/icewmbg-lite -/usr/bin/icesh-lite -/usr/bin/icewm-session-lite -%ghost %_sysconfdir/alternatives/icewm -%ghost %_sysconfdir/alternatives/icewmhint -%ghost %_sysconfdir/alternatives/icewmbg -%ghost %_sysconfdir/alternatives/icesh -%ghost %_sysconfdir/alternatives/icewm-session -/usr/bin/icewm -/usr/bin/icewmhint -/usr/bin/icewmbg -/usr/bin/icesh -/usr/bin/icewm-session +%ghost %{_sysconfdir}/alternatives/icewm +%ghost %{_sysconfdir}/alternatives/icewmhint +%ghost %{_sysconfdir}/alternatives/icewmbg +%ghost %{_sysconfdir}/alternatives/icesh +%ghost %{_sysconfdir}/alternatives/icewm-session +%{_bindir}/icewm-lite +%{_bindir}/icewmhint-lite +%{_bindir}/icewmbg-lite +%{_bindir}/icesh-lite +%{_bindir}/icewm-session-lite +%{_bindir}/icewm +%{_bindir}/icewmhint +%{_bindir}/icewmbg +%{_bindir}/icesh +%{_bindir}/icewm-session %changelog ++++++ icewm-1.3.8.tar.gz -> 1.3.11.tar.gz ++++++ ++++ 127030 lines of diff (skipped) ++++++ icewm-fix-local-search.patch ++++++ --- a/src/fdomenu.cc +++ b/src/fdomenu.cc @@ -378,7 +378,9 @@ int main(int argc, const char **argv) opt_g_free(pmdir); } // user's stuff might replace the system links - proc_dir(usershare); + gchar *usershare_full = g_strjoin(NULL, usershare, "/applications", NULL); + proc_dir(usershare_full); + opt_g_free(usershare_full); dump_menu(); ++++++ icewm-multiByte.patch -> icewm-mate.patch ++++++ --- /work/SRC/openSUSE:Factory/icewm/icewm-multiByte.patch 2011-09-23 02:03:14.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.icewm.new/icewm-mate.patch 2015-11-17 14:22:01.000000000 +0100 @@ -1,14 +1,303 @@ -Index: src/ylocale.cc -=================================================================== ---- src/ylocale.cc.orig -+++ src/ylocale.cc -@@ -47,8 +47,7 @@ YLocale::YLocale(char const * localeName - "Falling back to 'C' locale'.")); - fLocaleName = setlocale(LC_ALL, "C"); - } --#warning "P1 should always use multibyte/fontset if I18N" -- multiByte = (MB_CUR_MAX > 1); -+ multiByte = true; +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -53,5 +53,5 @@ add_subdirectory(po) + add_subdirectory(lib) + add_subdirectory(doc) - char const * codeset = NULL; - int const codesetItems[] = { CONFIG_NL_CODESETS }; ++install(FILES icewm-set-matewm DESTINATION ${BINDIR} PERMISSIONS WORLD_EXECUTE OWNER_EXECUTE GROUP_EXECUTE WORLD_READ OWNER_READ OWNER_WRITE GROUP_READ) + install(FILES icewm-set-gnomewm DESTINATION ${BINDIR} PERMISSIONS WORLD_EXECUTE OWNER_EXECUTE GROUP_EXECUTE WORLD_READ OWNER_READ OWNER_WRITE GROUP_READ) +- +--- a/configure.ac ++++ b/configure.ac +@@ -344,6 +344,18 @@ fi + AC_SUBST([GNOME1_CFLAGS]) + AC_SUBST([GNOME1_LIBS]) + ++AC_ARG_ENABLE([menus-mate], ++ AC_HELP_STRING([--disable-menus-mate],[Disable display of MATE menus.])) ++if test x$enable_menus_mate != xno; then ++ PKG_CHECK_MODULES([GNOME2],[mate-desktop-2.0],[ ++ enable_menus_gnome2=no ++ AC_DEFINE([CONFIG_MATE_MENUS],[1],[Define to make IceWM more MATE-friendly]) ++ AC_DEFINE([CONFIG_GNOME_MENUS],[1],[Define to make IceWM more GNOME-friendly]) ++ BUILD_MENU_MATE=yes ++ APPLICATIONS="${APPLICATIONS} icewm-menu-mate"],[ ++ AC_MSG_WARN([MATE menus not supported.])]) ++fi ++ + 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 +@@ -383,6 +395,7 @@ AM_CONDITIONAL([BUILD_HELP],[test x$BUIL + AM_CONDITIONAL([BUILD_SOUND],[test x$BUILD_SOUND = xyes]) + AM_CONDITIONAL([BUILD_MENU_GNOME1],[test x$BUILD_MENU_GNOME1 = xyes]) + AM_CONDITIONAL([BUILD_MENU_GNOME2],[test x$BUILD_MENU_GNOME2 = xyes]) ++AM_CONDITIONAL([BUILD_MENU_MATE],[test x$BUILD_MENU_MATE = xyes]) + AM_CONDITIONAL([BUILD_MENU_FDO],[test x$BUILD_MENU_FDO = xyes]) + + test "x$prefix" = xNONE && prefix="$ac_default_prefix" +--- a/icewm.desktop ++++ b/icewm.desktop +@@ -0,0 +1,13 @@ ++[Desktop Entry] ++Type=Application ++Name=IceWM ++Exec=icewm ++NoDisplay=true ++X-MATE-WMName=IceWM ++X-MATE-Autostart-Phase=WindowManager ++X-MATE-Provides=windowmanager ++X-MATE-Autostart-Notify=true ++X-GNOME-WMName=IceWM ++X-GNOME-Autostart-Phase=WindowManager ++X-GNOME-Provides=windowmanager ++X-GNOME-Autostart-Notify=true +--- a/icewm-set-matewm ++++ b/icewm-set-matewm +@@ -0,0 +1,9 @@ ++#!/bin/sh ++ ++echo -n "Previous window manager: " ++gsettings get org.mate.session.required-components windowmanager ++ ++gsettings set org.mate.session.required-components windowmanager "'icewm'" ++ ++echo -n "New window manager: " ++gsettings get org.mate.session.required-components windowmanager +--- a/Makefile.am ++++ b/Makefile.am +@@ -36,8 +36,12 @@ dist_noinst_SCRIPTS = \ + autogen.sh + + dist_bin_SCRIPTS = \ ++ icewm-set-matewm \ + icewm-set-gnomewm + ++desktopdir = $(datadir)/applications ++desktop_DATA = icewm.desktop ++ + ChangeLog: + ( \ + echo -e "# created with git log -n 200 --abbrev-commit --decorate --stat=76 -M -C|fmt -sct -w80\n" ; \ +--- a/src/gnome2.cc ++++ b/src/gnome2.cc +@@ -22,12 +22,17 @@ + #include <dirent.h> + #include <string.h> + +-#include <gnome.h> ++#include "yarray.h" ++#ifdef CONFIG_MATE_MENUS ++#include <libmate-desktop/mate-desktop-item.h> ++ ++char const * ApplicationName = "icewm-menu-mate"; ++#else + #include <libgnome/gnome-desktop-item.h> + #include <libgnomevfs/gnome-vfs-init.h> +-#include "yarray.h" + + char const * ApplicationName = "icewm-menu-gnome2"; ++#endif + + class GnomeMenu; + +@@ -58,14 +63,16 @@ void dumpMenu(GnomeMenu *menu) { + GnomeMenuItem *item = menu->items.getItem(i); + + if (item->dentry && !item->submenu) { +- printf("prog \"%s\" %s icewm-menu-gnome2 --open \"%s\"\n", ++ printf("prog \"%s\" %s %s --open \"%s\"\n", + item->title, + item->icon ? item->icon : "-", ++ ApplicationName, + item->dentry); + } else if (item->dentry && item->submenu) { +- printf("menuprog \"%s\" %s icewm-menu-gnome2 --list \"%s\"\n", ++ printf("menuprog \"%s\" %s %s --list \"%s\"\n", + item->title, + item->icon ? item->icon : "-", ++ ApplicationName, + (!strcmp(my_basename(item->dentry), ".directory") ? + g_dirname(item->dentry) : item->dentry)); + } +@@ -101,16 +108,27 @@ void GnomeMenu::addEntry(const char *fPa + GnomeMenuItem *item = new GnomeMenuItem(); + item->title = name; + ++#ifdef CONFIG_MATE_MENUS ++ MateDesktopItem *ditem = ++ mate_desktop_item_new_from_file(npath, ++ (MateDesktopItemLoadFlags)0, ++#else + GnomeDesktopItem *ditem = + gnome_desktop_item_new_from_file(npath, + (GnomeDesktopItemLoadFlags)0, ++#endif + NULL); + + struct stat sb; + const char *type; + bool isDir = (!stat(npath, &sb) && S_ISDIR(sb.st_mode)); ++#ifdef CONFIG_MATE_MENUS ++ type = mate_desktop_item_get_string(ditem, ++ MATE_DESKTOP_ITEM_TYPE); ++#else + type = gnome_desktop_item_get_string(ditem, + GNOME_DESKTOP_ITEM_TYPE); ++#endif + if (!isDir && type && strstr(type, "Directory")) { + isDir = 1; + } +@@ -119,7 +137,9 @@ void GnomeMenu::addEntry(const char *fPa + GnomeMenu *submenu = new GnomeMenu(); + + item->title = g_path_get_basename(npath); +- item->icon = gnome_pixmap_file("gnome-folder.png"); ++ item->icon = gtk_icon_info_get_filename(gtk_icon_theme_lookup_icon( ++ gtk_icon_theme_get_default(), "folder", ++ 16, GTK_ICON_LOOKUP_NO_SVG)); + item->submenu = submenu; + + char *epath = new char[nlen + sizeof("/.directory")]; +@@ -130,19 +150,35 @@ void GnomeMenu::addEntry(const char *fPa + strcpy(epath, npath); + } + ++#ifdef CONFIG_MATE_MENUS ++ ditem = mate_desktop_item_new_from_file(epath, ++ (MateDesktopItemLoadFlags)0, ++#else + ditem = gnome_desktop_item_new_from_file(epath, + (GnomeDesktopItemLoadFlags)0, ++#endif + NULL); + if (ditem) { ++#ifdef CONFIG_MATE_MENUS ++ item->title = mate_desktop_item_get_localestring(ditem, MATE_DESKTOP_ITEM_NAME); //LXP FX ++ item->icon = mate_desktop_item_get_string(ditem, MATE_DESKTOP_ITEM_ICON); ++#else + item->title = gnome_desktop_item_get_localestring(ditem, GNOME_DESKTOP_ITEM_NAME); //LXP FX + item->icon = gnome_desktop_item_get_string(ditem, GNOME_DESKTOP_ITEM_ICON); ++#endif + } + item->dentry = epath; + } else { + if (type && !strstr(type, "Directory")) { ++#ifdef CONFIG_MATE_MENUS ++ item->title = mate_desktop_item_get_localestring(ditem, MATE_DESKTOP_ITEM_NAME); ++ if (mate_desktop_item_get_string(ditem, MATE_DESKTOP_ITEM_ICON)) ++ item->icon = mate_desktop_item_get_string(ditem, MATE_DESKTOP_ITEM_ICON); ++#else + item->title = gnome_desktop_item_get_localestring(ditem, GNOME_DESKTOP_ITEM_NAME); + if (gnome_desktop_item_get_string(ditem, GNOME_DESKTOP_ITEM_ICON)) + item->icon = gnome_desktop_item_get_string(ditem, GNOME_DESKTOP_ITEM_ICON); ++#endif + item->dentry = npath; + } + } +@@ -280,13 +316,24 @@ void GnomeMenu::populateMenu(const char + char fullpath[256]; + strcpy(fullpath, dirname); + strcat(fullpath, file->d_name); ++#ifdef CONFIG_MATE_MENUS ++ MateDesktopItem *ditem = ++ mate_desktop_item_new_from_file(fullpath, ++ (MateDesktopItemLoadFlags)0, ++#else + GnomeDesktopItem *ditem = + gnome_desktop_item_new_from_file(fullpath, + (GnomeDesktopItemLoadFlags)0, ++#endif + NULL); + const char *categories = ++#ifdef CONFIG_MATE_MENUS ++ mate_desktop_item_get_string(ditem, ++ MATE_DESKTOP_ITEM_CATEGORIES); ++#else + gnome_desktop_item_get_string(ditem, + GNOME_DESKTOP_ITEM_CATEGORIES); ++#endif + + if (categories && strstr(categories, category)) { + if (*file->d_name != '.') { +@@ -323,9 +370,15 @@ int runFile(const char *dentry_path) { + char arg[32]; + int i; + ++#ifdef CONFIG_MATE_MENUS ++ MateDesktopItem *ditem = ++ mate_desktop_item_new_from_file(dentry_path, ++ (MateDesktopItemLoadFlags)0, ++#else + GnomeDesktopItem *ditem = + gnome_desktop_item_new_from_file(dentry_path, + (GnomeDesktopItemLoadFlags)0, ++#endif + NULL); + + if (ditem == NULL) { +@@ -334,7 +387,11 @@ int runFile(const char *dentry_path) { + // FIXME: leads to segfault for some reason, so using execlp instead + // gnome_desktop_item_launch(ditem, NULL, 0, NULL); + ++#ifdef CONFIG_MATE_MENUS ++ const char *app = mate_desktop_item_get_string(ditem, MATE_DESKTOP_ITEM_EXEC); ++#else + const char *app = gnome_desktop_item_get_string(ditem, GNOME_DESKTOP_ITEM_EXEC); ++#endif + if(!app) + return 1; + +@@ -351,7 +408,10 @@ int runFile(const char *dentry_path) { + + int main(int argc, char **argv) { + ++ gtk_init(&argc, &argv); ++#ifndef CONFIG_MATE_MENUS + gnome_vfs_init(); ++#endif + + for (char ** arg = argv + 1; arg < argv + argc; ++arg) { + if (**arg == '-') { +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -14,6 +14,7 @@ EXTRA_PROGRAMS = \ + icesound \ + icewm-menu-gnome1 \ + icewm-menu-gnome2 \ ++ icewm-menu-mate \ + icewm-menu-fdo \ + testarray \ + testlocale \ +@@ -75,6 +76,10 @@ if BUILD_MENU_GNOME2 + bin_PROGRAMS += icewm-menu-gnome2 + endif + ++if BUILD_MENU_MATE ++bin_PROGRAMS += icewm-menu-mate ++endif ++ + if BUILD_MENU_FDO + bin_PROGRAMS += icewm-menu-fdo + endif +@@ -373,6 +378,20 @@ icewm_menu_gnome1_SOURCES = \ + ycmdline.h + icewm_menu_gnome1_LDADD = libice.la $(GNOME1_LIBS) $(CORE_LIBS) + ++icewm_menu_mate_SOURCES = \ ++ intl.h \ ++ debug.h \ ++ sysdep.h \ ++ base.h \ ++ themable.h \ ++ default.h \ ++ ylib.h \ ++ gnome2.cc \ ++ ascii.h \ ++ ycmdline.cc \ ++ ycmdline.h ++icewm_menu_mate_LDADD = libice.la $(GNOME2_LIBS) $(CORE_LIBS) ++ + icewm_menu_gnome2_SOURCES = \ + intl.h \ + debug.h \ ++++++ icewm-preferences.patch ++++++ --- /var/tmp/diff_new_pack.Afsq0U/_old 2015-11-17 14:22:03.000000000 +0100 +++ /var/tmp/diff_new_pack.Afsq0U/_new 2015-11-17 14:22:03.000000000 +0100 @@ -8,18 +8,29 @@ quilt push -a ./configure <options from the spec> make -C src genpref - ./src/genpref >lib/preferences + ./src/genpref >src/preferences quilt import -p0 patches/icewm-preferences.patch quilt push vi lib/preferences quilt refresh --- - lib/preferences | 12 ++++++------ + src/preferences | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) ---- lib/preferences.orig -+++ lib/preferences -@@ -509,7 +509,7 @@ +Index: src/preferences +=================================================================== +--- a/src/preferences ++++ b/src/preferences +@@ -530,7 +530,7 @@ + # NetWorkAreaBehaviour=0 # [0-2] + + # Icon search path (colon separated) +-# IconPath="" ++IconPath="/usr/share/icons/Adwaita/16x16/apps:/usr/share/icons/hicolor/16x16/apps:/usr/share/pixmaps" + + # Mailbox path (use $MAIL instead) + # MailBoxPath="" +@@ -545,7 +545,7 @@ # NewMailCommand="" # Command to lock display/screensaver @@ -28,20 +39,20 @@ # Command to run on clock # ClockCommand="xclock -name icewm -title Clock" -@@ -533,10 +533,10 @@ +@@ -569,10 +569,10 @@ # LogoutCancelCommand="" # Command to shutdown the system --# ShutdownCommand="" -+ShutdownCommand="dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.PowerOff boolean:true 2>&1 && return" +-# ShutdownCommand="/bin/sh -c "{ test -e /run/systemd/system && systemctl poweroff; } ||:"" ++ShutdownCommand="/bin/sh -c "systemctl poweroff ||:"" # Command to reboot the system --# RebootCommand="" -+RebootCommand="dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.Reboot boolean:true 2>&1 && return" +-# RebootCommand="/bin/sh -c "{ test -e /run/systemd/system && systemctl reboot; } ||:"" ++RebootCommand="/bin/sh -c "systemctl reboot ||:"" # Command to run on CPU status # CPUStatusCommand="xterm -name top -title Process\ Status -e top" -@@ -1280,19 +1280,19 @@ WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 +@@ -1328,19 +1328,19 @@ # # Display desktop background centered and not tiled ++++++ icewm-toolbar-icons-generic.patch ++++++ --- a/lib/toolbar.in +++ b/lib/toolbar.in @@ -4,6 +4,6 @@ # since modifications to this file will be discarded when you # (re)install icewm. # -prog xterm /usr/share/icons/gnome/16x16/apps/terminal.png xterm -prog "Web browser" /usr/share/icons/gnome/16x16/apps/web-browser.png xdg-open about:blank +prog xterm utilities-terminal xterm +prog "Web browser" web-browser xdg-open about:blank