Accepting request 340896 from home:XRevan86
OBS-URL: https://build.opensuse.org/request/show/340896 OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/icewm?expand=0&rev=45
This commit is contained in:
committed by
Git OBS Bridge
parent
8af8c6b5c8
commit
5b4814186e
13
icewm-fix-local-search.patch
Normal file
13
icewm-fix-local-search.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
--- 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();
|
||||
|
303
icewm-mate.patch
Normal file
303
icewm-mate.patch
Normal file
@@ -0,0 +1,303 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -53,5 +53,5 @@ add_subdirectory(po)
|
||||
add_subdirectory(lib)
|
||||
add_subdirectory(doc)
|
||||
|
||||
+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 \
|
@@ -19,8 +19,17 @@ a file generated by ./src/genpref. To edit the patch:
|
||||
|
||||
Index: src/preferences
|
||||
===================================================================
|
||||
--- src/preferences.orig
|
||||
+++ 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=""
|
||||
|
||||
@@ -43,7 +52,7 @@ Index: src/preferences
|
||||
|
||||
# Command to run on CPU status
|
||||
# CPUStatusCommand="xterm -name top -title Process\ Status -e top"
|
||||
@@ -1328,19 +1328,19 @@ WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4
|
||||
@@ -1328,19 +1328,19 @@
|
||||
#
|
||||
|
||||
# Display desktop background centered and not tiled
|
||||
|
11
icewm-toolbar-icons-generic.patch
Normal file
11
icewm-toolbar-icons-generic.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- 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
|
||||
|
@@ -1,3 +1,17 @@
|
||||
-------------------------------------------------------------------
|
||||
Sun Oct 25 21:08:03 UTC 2015 - sor.alexei@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 - tchvatal@suse.com
|
||||
|
||||
|
276
icewm.spec
276
icewm.spec
@@ -17,8 +17,12 @@
|
||||
|
||||
|
||||
%global lites icewm icewmhint icewmbg icesh icewm-session
|
||||
# default to gnome support, overriden in ring1
|
||||
%bcond_without gnome
|
||||
# Default to mate support, overriden in ring1.
|
||||
%if 0%{?suse_version} >= 1320 || (0%{?suse_version} == 1315 && 0%{?is_opensuse})
|
||||
%bcond_without mate
|
||||
%else
|
||||
%bcond_with mate
|
||||
%endif
|
||||
Name: icewm
|
||||
Version: 1.3.11
|
||||
Release: 0
|
||||
@@ -26,16 +30,22 @@ Summary: Window Manager with a Taskbar
|
||||
License: LGPL-2.1+
|
||||
Group: System/GUI/Other
|
||||
Url: http://www.icewm.org/
|
||||
Source0: https://github.com/bbidulock/%{name}/archive/%{version}.tar.gz
|
||||
Source1: %{name}.desktop
|
||||
Source0: https://github.com/bbidulock/icewm/archive/%{version}.tar.gz
|
||||
Source1: icewm.desktop
|
||||
# PATCH-FIX-UPSTREAM icewm-fix-local-search.patch sor.alexei@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.alexei@meowr.ru -- Don't specify paths in toolbar icons.
|
||||
Patch1: icewm-toolbar-icons-generic.patch
|
||||
# PATCH-FIX-OPENSUSE icewm-mate.patch sor.alexei@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
|
||||
BuildRequires: pkgconfig
|
||||
# Needed for documentation
|
||||
# Needed for documentation.
|
||||
BuildRequires: pkg-config
|
||||
BuildRequires: sgmltool
|
||||
BuildRequires: update-alternatives
|
||||
BuildRequires: update-desktop-files
|
||||
@@ -55,39 +65,38 @@ Requires: desktop-data
|
||||
Requires: icewm-bin
|
||||
Requires: xdg-menu
|
||||
Requires: xterm
|
||||
# if you have the choice, prefer the big one
|
||||
# If you have the choice, prefer the big one.
|
||||
Recommends: icewm-default
|
||||
Provides: windowmanager
|
||||
# We use fdo tool to generate menu so no need for gnome subpkg
|
||||
Provides: icewm-gnome = %{version}
|
||||
Obsoletes: icewm-gnome < %{version}
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%if %{with mate}
|
||||
BuildRequires: pkgconfig(mate-desktop-2.0)
|
||||
%endif
|
||||
|
||||
%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 default
|
||||
Summary: Window Manager with a Taskbar--Default Version
|
||||
Summary: Window Manager with a Taskbar -- Default Version
|
||||
Group: System/GUI/Other
|
||||
Requires: gnome-icon-theme
|
||||
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
|
||||
Requires: icewm
|
||||
Requires: update-alternatives
|
||||
@@ -95,128 +104,158 @@ 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.
|
||||
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 mate
|
||||
Summary: Windowmanager with Taskbar -- MATE Version
|
||||
Group: System/GUI/Other
|
||||
Requires: icewm-default
|
||||
Provides: icewm-gnome = %{version}
|
||||
Obsoletes: icewm-gnome < %{version}
|
||||
|
||||
%description mate
|
||||
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 MATE menu support to IceWM.
|
||||
|
||||
%lang_package
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
# Do not require needlessly new gettext
|
||||
sed -i \
|
||||
-e 's:0.19.5:0.19.1:g' \
|
||||
configure.ac
|
||||
%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
|
||||
autoreconf -fvi
|
||||
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 \
|
||||
--enable-taskbar \
|
||||
--disable-menus-gnome2
|
||||
--disable-silent-rules \
|
||||
--with-cfgdir=%{_sysconfdir}/icewm \
|
||||
--enable-i18n \
|
||||
--disable-nls \
|
||||
--disable-guievents \
|
||||
--disable-winmenu \
|
||||
--without-icesound \
|
||||
--enable-lite \
|
||||
--enable-taskbar \
|
||||
--disable-menus-fdo \
|
||||
--disable-menus-mate
|
||||
make %{?_smp_mflags}
|
||||
# Grab the lite content
|
||||
# Grab the lite content.
|
||||
mkdir lite
|
||||
for i in %{lites}; do
|
||||
mv src/$i lite/$i-lite
|
||||
for file in %{lites}; do
|
||||
mv -f src/$file lite/$file-lite
|
||||
done
|
||||
make %{?_smp_mflags} clean
|
||||
# Configure for full deployment
|
||||
# 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 \
|
||||
--enable-menus-fdo \
|
||||
--disable-menus-gnome2
|
||||
--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 \
|
||||
--enable-menus-fdo \
|
||||
%if %{with mate}
|
||||
--enable-menus-mate \
|
||||
%endif
|
||||
--enable-i18n
|
||||
make %{?_smp_mflags}
|
||||
# patch generated lib/preferences file
|
||||
patch -p0 -i %{PATCH99}
|
||||
# Patch generated lib/preferences file.
|
||||
patch -p1 -i %{PATCH99}
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||
# First just remove gnome wm setter as we don't have gnome2 anyway
|
||||
rm %{buildroot}%{_bindir}/icewm-set-gnomewm
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/icewm
|
||||
%make_install
|
||||
|
||||
# First just remove GNOME WM setter as we don't have GNOME 2 anyway.
|
||||
rm -f %{buildroot}%{_bindir}/icewm-set-gnomewm
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/icewm/
|
||||
for cfgfile in keys menu preferences toolbar winoptions ; do
|
||||
mv %{buildroot}%{_datadir}/icewm/$cfgfile \
|
||||
%{buildroot}%{_sysconfdir}/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}%{_datadir}/xsessions
|
||||
cp -f %{SOURCE1} %{buildroot}%{_datadir}/xsessions
|
||||
%suse_update_desktop_file %{buildroot}%{_datadir}/xsessions/icewm.desktop
|
||||
# link duplicate theme icons to save some space
|
||||
%fdupes %{buildroot}%{_datadir}/icewm/themes/
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
|
||||
for i in %{lites}; do
|
||||
mv lite/$i-lite %{buildroot}%{_prefix}/bin
|
||||
mv %{buildroot}%{_bindir}/$i %{buildroot}%{_bindir}/$i-default
|
||||
ln -sf icewm.html %{buildroot}/%{_docdir}/icewm/index.html
|
||||
|
||||
# dummy
|
||||
touch %{buildroot}%{_sysconfdir}/alternatives/$i
|
||||
ln -s %{_sysconfdir}/alternatives/$i %{buildroot}%{_bindir}/$i
|
||||
# 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
|
||||
%{_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 \
|
||||
--slave %{_bindir}/icesh icesh %{_bindir}/icesh-lite \
|
||||
--slave %{_bindir}/icewm-session icewm-session %{_bindir}/icewm-session-lite
|
||||
--install %{_bindir}/icewm icewm %{_bindir}/icewm-lite 0 \
|
||||
--slave %{_bindir}/icewmhint icewmhint %{_bindir}/icewmhint-lite \
|
||||
--slave %{_bindir}/icewmbg icewmbg %{_bindir}/icewmbg-lite \
|
||||
--slave %{_bindir}/icesh icesh %{_bindir}/icesh-lite \
|
||||
--slave %{_bindir}/icewm-session icewm-session %{_bindir}/icewm-session-lite
|
||||
|
||||
%preun lite
|
||||
if [ "$1" = 0 ] ; then
|
||||
%{_sbindir}/update-alternatives --remove icewm %{_bindir}/icewm-lite
|
||||
%{_sbindir}/update-alternatives --remove icewm %{_bindir}/icewm-lite
|
||||
fi
|
||||
|
||||
%post default
|
||||
%{_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 \
|
||||
--slave %{_bindir}/icesh icesh %{_bindir}/icesh-default \
|
||||
--slave %{_bindir}/icewm-session icewm-session %{_bindir}/icewm-session-default
|
||||
--install %{_bindir}/icewm icewm %{_bindir}/icewm-default 100 \
|
||||
--slave %{_bindir}/icewmhint icewmhint %{_bindir}/icewmhint-default \
|
||||
--slave %{_bindir}/icewmbg icewmbg %{_bindir}/icewmbg-default \
|
||||
--slave %{_bindir}/icesh icesh %{_bindir}/icesh-default \
|
||||
--slave %{_bindir}/icewm-session icewm-session %{_bindir}/icewm-session-default
|
||||
|
||||
%preun default
|
||||
if [ "$1" = 0 ] ; then
|
||||
%{_sbindir}/update-alternatives --remove icewm %{_bindir}/icewm-default
|
||||
%{_sbindir}/update-alternatives --remove icewm %{_bindir}/icewm-default
|
||||
fi
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_docdir}/icewm
|
||||
%dir %{_sysconfdir}/icewm
|
||||
%dir %{_sysconfdir}/icewm/
|
||||
%config %{_sysconfdir}/icewm/*
|
||||
%{_datadir}/icewm/
|
||||
%{_datadir}/xsessions/*
|
||||
%{_mandir}/man1/icewm.1.*
|
||||
%{_mandir}/man1/icewm.1%{?ext_man}
|
||||
|
||||
%files lang -f icewm.lang
|
||||
%defattr(-,root,root)
|
||||
|
||||
%files default
|
||||
%defattr(-,root,root)
|
||||
%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
|
||||
@@ -224,35 +263,38 @@ fi
|
||||
%{_bindir}/icesh-default
|
||||
%{_bindir}/icewmtray
|
||||
%{_bindir}/icewm-session-default
|
||||
%{_bindir}/icesound
|
||||
%ghost %{_bindir}/icewm
|
||||
%ghost %{_bindir}/icewmhint
|
||||
%ghost %{_bindir}/icewmbg
|
||||
%ghost %{_bindir}/icesh
|
||||
%ghost %{_bindir}/icewm-session
|
||||
%ghost %{_bindir}/icewm-menu-fdo
|
||||
|
||||
%if %{with mate}
|
||||
%files mate
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/icewm-menu-mate
|
||||
%endif
|
||||
%{_datadir}/applications/icewm.desktop
|
||||
%{_bindir}/icewm-set-matewm
|
||||
|
||||
%files lite
|
||||
%defattr(-,root,root)
|
||||
%ghost %{_sysconfdir}/alternatives/icewm
|
||||
%ghost %{_sysconfdir}/alternatives/icewmhint
|
||||
%ghost %{_sysconfdir}/alternatives/icewmbg
|
||||
%ghost %{_sysconfdir}/alternatives/icesh
|
||||
%ghost %{_sysconfdir}/alternatives/icewm-session
|
||||
%{_bindir}/icewm
|
||||
%{_bindir}/icewmhint
|
||||
%{_bindir}/icewmbg
|
||||
%{_bindir}/icesh
|
||||
%{_bindir}/icewm-session
|
||||
%{_bindir}/icewm-menu-fdo
|
||||
%{_bindir}/icesound
|
||||
|
||||
%files lite
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/icewm-lite
|
||||
%{_bindir}/icewmhint-lite
|
||||
%{_bindir}/icewmbg-lite
|
||||
%{_bindir}/icesh-lite
|
||||
%{_bindir}/icewm-session-lite
|
||||
%ghost %{_sysconfdir}/alternatives/icewm
|
||||
%ghost %{_sysconfdir}/alternatives/icewmhint
|
||||
%ghost %{_sysconfdir}/alternatives/icewmbg
|
||||
%ghost %{_sysconfdir}/alternatives/icesh
|
||||
%ghost %{_sysconfdir}/alternatives/icewm-session
|
||||
%{_bindir}/icewm
|
||||
%{_bindir}/icewmhint
|
||||
%{_bindir}/icewmbg
|
||||
%{_bindir}/icesh
|
||||
%{_bindir}/icewm-session
|
||||
%ghost %{_bindir}/icewm
|
||||
%ghost %{_bindir}/icewmhint
|
||||
%ghost %{_bindir}/icewmbg
|
||||
%ghost %{_bindir}/icesh
|
||||
%ghost %{_bindir}/icewm-session
|
||||
|
||||
%changelog
|
||||
|
Reference in New Issue
Block a user