commit 03e3a48f7b815ab0297f8d6f1d326ff37ed54a1c46f65982a47291449dcfce4a Author: Michael Vetter Date: Mon Nov 25 08:22:49 2024 +0000 - build with gcc14 - use existing openSUSE wallpaper image file - use FvwmBacker module for background instead of external program - do not depend on xli anymore - modified sources % system.fvwm2rc - added patches fix https://github.com/fvwmorg/fvwm/pull/100 + fvwm2-gcc14.patch OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/fvwm2?expand=0&rev=55 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/fvwm-2.5.26-sv_SE.patch b/fvwm-2.5.26-sv_SE.patch new file mode 100644 index 0000000..952c061 --- /dev/null +++ b/fvwm-2.5.26-sv_SE.patch @@ -0,0 +1,17 @@ +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: configure.ac +=================================================================== +--- configure.ac.orig ++++ configure.ac +@@ -1263,7 +1263,7 @@ AC_ARG_ENABLE(perllib, + AC_SUBST(FVWM_PERLLIB) + + # ******* gettext +-ALL_LINGUAS="ar da de fr sv_SE zh_CN ru es" ++ALL_LINGUAS="ar da de fr sv zh_CN ru es" + FVWM_DOMAIN="fvwm" + FVWMSCRIPT_DOMAIN="FvwmScript" + ALL_DOMAINS="$FVWM_DOMAIN $FVWMTASKBAR_DOMAIN $FVWMSCRIPT_DOMAIN" diff --git a/fvwm-2.7.0.tar.gz b/fvwm-2.7.0.tar.gz new file mode 100644 index 0000000..e8bf2d0 --- /dev/null +++ b/fvwm-2.7.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66826dd60b774447170037d9078fd43e75f7230a49acfb84a988eebce7e3418b +size 3933529 diff --git a/fvwm-FvwmAuto-overflow.patch b/fvwm-FvwmAuto-overflow.patch new file mode 100644 index 0000000..a0130a6 --- /dev/null +++ b/fvwm-FvwmAuto-overflow.patch @@ -0,0 +1,11 @@ +--- modules/FvwmAuto/FvwmAuto.c.orig ++++ modules/FvwmAuto/FvwmAuto.c +@@ -340,6 +340,8 @@ main(int argc, char **argv) + { + len = max(len, strlen(leave_fn)); + } ++ /* add space for newline and trailing 0 */ ++ len += 2; + if (do_pass_id) + { + len += 32; diff --git a/fvwm-configure.patch b/fvwm-configure.patch new file mode 100644 index 0000000..e928a6e --- /dev/null +++ b/fvwm-configure.patch @@ -0,0 +1,17 @@ +Index: configure.ac +=================================================================== +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- configure.ac ++++ configure.ac 2017-02-07 10:53:27.290904016 +0000 +@@ -104,7 +104,7 @@ AC_ARG_ENABLE(package-subdirs, + fi], []) + + +-FVWM_MODULEDIR='${libexecdir}'"$FVWM_MODULESUBDIR" ++FVWM_MODULEDIR='${libexecdir}' + FVWM_DATADIR='${datadir}'"$FVWM_DATASUBDIR" + FVWM_DOCDIR='${datadir}'"$FVWM_DOCSUBDIR" + FVWM_PERLLIBDIR='${datadir}'"$FVWM_DATASUBDIR/perllib" diff --git a/fvwm-no-date-time.patch b/fvwm-no-date-time.patch new file mode 100644 index 0000000..a05bdef --- /dev/null +++ b/fvwm-no-date-time.patch @@ -0,0 +1,29 @@ +--- + fvwm/fvwm.c | 4 ++-- + fvwm/session.c | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +--- fvwm/fvwm.c ++++ fvwm/fvwm.c 2017-02-07 11:11:29.990180773 +0000 +@@ -1295,8 +1295,8 @@ static void setVersionInfo(void) + int support_len; + + /* Set version information string */ +- sprintf(version_str, "fvwm %s%s compiled on %s at %s", +- VERSION, VERSIONINFO, __DATE__, __TIME__); ++ sprintf(version_str, "fvwm %s%s", ++ VERSION, VERSIONINFO); + Fvwm_VersionInfo = safestrdup(version_str); + + sprintf(license_str, +--- fvwm/session.c ++++ fvwm/session.c 2017-02-07 11:11:29.990180773 +0000 +@@ -136,7 +136,7 @@ static char *get_version_string(void) + { + /* migo (14-Mar-2001): it is better to manually update a version string + * in the stable branch, otherwise saving sessions becomes useless */ +- return CatString3(VERSION, ", ", __DATE__); ++ return CatString3(VERSION, ", ", "??? ?? ????"); + /* return "2.6-0"; */ + } + diff --git a/fvwm2-gcc14.patch b/fvwm2-gcc14.patch new file mode 100644 index 0000000..de857d8 --- /dev/null +++ b/fvwm2-gcc14.patch @@ -0,0 +1,97 @@ +From 0b4daddf6b88b696daf54714448b8d89a615abf2 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Thu, 24 Nov 2022 13:06:50 +0100 +Subject: [PATCH 1/3] configure: Do not require support for implicit ints + +Implicit ints have not been part of C since 1999, and future +compilers will disable support for them by default. Fortunatenly, +only one configure check needs adjusting. +--- + acinclude.m4 | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index 8b74ff1e5..b66042f9f 100644 +--- acinclude.m4 ++++ acinclude.m4 +@@ -30,7 +30,7 @@ if test "$ac_cv_func_select" = yes; then + #ifdef HAVE_SYS_SOCKET_H + #include + #endif], +-[extern select ($ac_cv_type_fd_set_size_t, ++[extern int select ($ac_cv_type_fd_set_size_t, + $ac_cv_type_fd_set *, $ac_cv_type_fd_set *, $ac_cv_type_fd_set *, + $ac_type_timeval *);], + [ac_found=yes ; break 3],ac_found=no) +diff --git a/configure.ac b/configure.ac +index 97ab9e7a1..c9fcede6a 100644 +--- configure.ac ++++ configure.ac +@@ -220,7 +220,7 @@ AC_MINIX + + # catch -Werror and similar options when running configure + AC_TRY_COMPILE([#include ], +-[int i; static j; int *p; char *c; ++[int i; int *p; char *c; + switch (*p = p = *c) { case 0: printf("%Q", c, p); } + *c = &i; c = p; + while (1 || (unsigned int)3 >= 0 || ((int)-1) == ((unsigned int)1)); + +From 6b9d100ae4e784821b5189474dc58e646417bcf6 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Thu, 24 Nov 2022 13:07:56 +0100 +Subject: [PATCH 2/3] acinclude.m4: Add missing to + AM_SAFETY_CHECK_MKSTEMP + +Otherwise, the check fails on a compiler which does not support +implicit function declarations (a language feature removed in 1999). +--- + acinclude.m4 | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/acinclude.m4 b/acinclude.m4 +index b66042f9f..4dee2abeb 100644 +--- acinclude.m4 ++++ acinclude.m4 +@@ -1154,6 +1154,9 @@ AC_DEFUN([AM_SAFETY_CHECK_MKSTEMP],[ + #include + #include + #include ++#ifdef HAVE_UNISTD_H ++#include ++#endif + int main(void) + { + char template[128]; + +From 33537b8ae5a302e4016dc1c6cfe5577fb3fa36c9 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Tue, 19 Dec 2023 13:24:50 +0100 +Subject: [PATCH 3/3] configure: Further defang the -Werror check + +Incompatible pointer types are actually errors (in the sense +that they are invalid C). Compilers have merely tolerated them as +warnings for backwards compatibility. This is changing with Clang 16 +and GCC 14, so relax the check a little. +--- + configure.ac | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c9fcede6a..2e9615b2b 100644 +--- configure.ac ++++ configure.ac +@@ -220,9 +220,8 @@ AC_MINIX + + # catch -Werror and similar options when running configure + AC_TRY_COMPILE([#include ], +-[int i; int *p; char *c; +- switch (*p = p = *c) { case 0: printf("%Q", c, p); } +- *c = &i; c = p; ++[int unused; int *p; char *c; ++ printf("%Q", c, p); + while (1 || (unsigned int)3 >= 0 || ((int)-1) == ((unsigned int)1)); + ], , AC_MSG_ERROR(" + configure is not able to compile programs with warnings. Please + diff --git a/fvwm2.changes b/fvwm2.changes new file mode 100644 index 0000000..aa68533 --- /dev/null +++ b/fvwm2.changes @@ -0,0 +1,1146 @@ +------------------------------------------------------------------- +Tue Nov 19 10:20:03 UTC 2024 - pgajdos@suse.com + +- build with gcc14 +- use existing openSUSE wallpaper image file +- use FvwmBacker module for background instead of external program +- do not depend on xli anymore +- modified sources + % system.fvwm2rc +- added patches + fix https://github.com/fvwmorg/fvwm/pull/100 + + fvwm2-gcc14.patch + +------------------------------------------------------------------- +Sun Aug 27 09:06:34 UTC 2023 - Michael Vetter + +- Update to 2.7.0: + * Fix handling of configure's --enable-mandoc/--enable-htmldoc + * Fix crash in FvwmPager when desk height or width is 0 + * Added DoubleClick time to man page. + * Fix to FvwmIconMan to disable a SizeHint warning. + * Allow for reproducible builds. + * Increase the number of supported mouse buttons to 15. + * Tweaks to configure.ac +- Remove upstreamed patches: + * enable-more-mouse-buttons.patch + +------------------------------------------------------------------- +Thu May 4 07:30:15 UTC 2023 - Dr. Werner Fink + +- Add patch threadlocking.patch + * Fix for lock recusion in handle_all_expose() to handle if + libX11 1.8.1 and above enables X display locks unconditionnaly + +------------------------------------------------------------------- +Tue Jan 31 14:22:50 UTC 2023 - Reinhard Max + +- Fix a buffer overflow in the FvwmAuto module. + fvwm-FvwmAuto-overflow.patch + +------------------------------------------------------------------- +Tue Mar 3 09:30:08 UTC 2020 - Dr. Werner Fink + +- Install missed main manual page of fvwm its self + +------------------------------------------------------------------- +Mon Sep 9 07:44:29 UTC 2019 - mvetter@suse.com + +- Update to 2.6.9: + * Adds a new conditional option Fullscreen which detects windows in that state; + * Updates to translations; + * Fix how htmldoc/mandoc are detected in configure.ac + +------------------------------------------------------------------- +Fri Oct 5 06:49:37 UTC 2018 - Tomáš Chvátal + +- Add patch to work with multibuttons mice. Upstream is not + interested in the patch as other than xorg servers still might + not support this: + * enable-more-mouse-buttons.patch + +------------------------------------------------------------------- +Fri Oct 5 06:05:12 UTC 2018 - Tomáš Chvátal + +- Remove not really needed patches: + * fvwm-2.5.26-gcc-warnings.patch + * fvwm-2.5.26-ia64.patch + * fvwm-rsvg.patch + * fvwm-2.5.26-no-copy-dt-needed-entries.patch + * fvwm-2.5.26-charset_in_title.patch + +------------------------------------------------------------------- +Thu Oct 4 20:08:30 UTC 2018 - Tomáš Chvátal + +- Version update to 2.6.8: + * Various DESTDIR fixes (especially around the default-config Makefile) + * fvwm-perllib pod2man fixes. + * FvwmIconMan no longer triggers a warning about bad size hints in the fvwm core. + * VMware windows do not disapper when switching between fullscreen and normal state. + * Fix (de)installation with the configure options + --program-prefix, --program-suffix and + --program-transform-name. + * Remove further references to obsolete modules from man page(s). + * fvwm-menu-desktop(1) now requires python3 as an explicit dependency. + * Add a 'fullscreen' option to the 'Maximize' command. +- Remove local fvwm-menu-desktop-config.fpl as upstream has newer + version +- Refresh patch fvwm-2.5.26-sv_SE.patch +- Rename properly the openSUSE.xpm u->U +- Require python3-base as per above change to use it in + the menu-desktop + +------------------------------------------------------------------- +Thu Oct 4 20:05:07 UTC 2018 - Tomáš Chvátal + +- Reduce usage of self defined macros and rely on system ones +- Switch Source to point to upstream provided archive + +------------------------------------------------------------------- +Fri May 18 13:24:18 UTC 2018 - mvetter@suse.com + +- boo#1080494: Add update-alternative configuration +- Run spec-cleaner + +------------------------------------------------------------------- +Fri Feb 10 16:53:50 UTC 2017 - jengelh@inai.de + +- Update summary + +------------------------------------------------------------------- +Tue Feb 7 11:14:39 UTC 2017 - werner@suse.de + +- Update to 2.6.7 (06-Nov-2016) + - dropped fvwm-icon-440d675d14412ec0a123d4c977534ab688229148.patch + * New fvwm features: + A new default configuration which is available when fvwm + doesn't detect a configuration file to load. + A new conditional command "Desk n" can restrict matching + windows to a specific desk. + A new conditional command "Screen n" to restrict matching + windows on a given Xinerama screen. + New expansion variable "w.screen" to ascertain the Xineram + screen number a window is on. + New command "InfoStoreClear" to remove all items in the + InfoStore. + * Removed features: + The old and unmaintained debian/ and rpm/ directories have + been removed; use the maintainers' copies where available. + VMS support has been removed. + GTK1.x support has been removed. + GNOME-specific window hints (pre-EWMH) have been removed. + Some fvwm modules have been removed: + FvwmDragWell (no replacement) + FvwmGTK (no replacement) + FvwmSave (no replacement) + FvwmSaveDesk (no replacement) + FvwmScroll (no replacement) + FvwmTabs (no replacement, never worked anyway) + FvwmTaskBar (use FvwmButtons) + FvwmTheme (in core of fvwm as colorsets) + FvwmWharf (use FvwmButtons) + FvwmWinList (use WindowList command) + FvwmWindowMenu (use WindowList command) + FvwmIconBox (use the IconBox style instead) + * New module features: + FvwmButtons learned a new option "Colorset" to its + ChangeButton command. + * fvwm-menu-desktop updated: + Renamed default menu to XDGMenu and changed the name + of the FvwmForm to FvwmForm-XDGMenu-Config to not conflict + with someone already using FvwmMenu. + fvwm-menu-desktop will now load defaults from the + FvwmForm-XDGMenu-Config data file. + Improved dynamic menus by regenerating them on-the-fly. + Added new options: --regen-cmd, --dynamic, and more. + * Bug fixes: + A bug introduced in 2.6.6 could cause applications with + negative coordinates to be placed at strange positions. This + affected for example acroread when switching to fullscreen + mode. This has been fixed. + FvwmButtons "Silent" option for dynamic ChangeButton commands + no longer loops infinitely. + +------------------------------------------------------------------- +Thu Aug 18 11:48:10 UTC 2016 - mvetter@suse.com + +- boo#877539 - wrong path in system.fvwm2rc: + * Fix wallpaper path for 'init' and 'restart' commands. + * Require default branding wallpaper package. + +------------------------------------------------------------------- +Tue Aug 2 14:18:11 UTC 2016 - werner@suse.de + +- Update to 2.6.6 + * fvwm features: + - Support for Russian from Ivan Gayevskiy. + - EnvMatch supports infostore variables. + - The option "forget" to the Maximize command allows to + unmaximize a window without changing its size and position. + - Windows shaded to a corner (NW, NE, SW, SE) are reduced to a + small square. + - New option "!raise" to the WarpToWindow command. + - The new extended variables $[wa.x], $[wa.y], $[wa.width], + $[wa.height] can be used to get the geometry of the EWMH + working area, and $[dwa.x], $[dwa.y], $[dwa.width], + $[dwa.height] can be used to get the geometry of the EWMH + dynamic working area. + - The Resize commands accept "wa" or "da" as a suffix of the + width or height value. If present, the value is a percentage + of the width or height of the EWMH working area or the EWMH + dynamic working area. + - Fvwm is much more resilient against applications that flood the + window manager with repeated events. + * New module features: + - FvwmForm supports separator lines. + - New FvwmIconMan options: + IconAndSelectButton + IconAndSelectColorset + * Bug fixes: + - Provide a wrapper for the deprecation of XKeycodeToKeysym and + use XkbKeycodeToKeysym() where appropriate. + - fvwm-menu-desktop is re-written and provides better support of + the XDG menu specification. + - Fix fvwm-menu-desktop keyError bug. Use "others" if no desktop + environment found. + - FvwmIconMan had problems displaying the hilight colour on some + systems (64 bit issue?). + - Globally active windows cannot take the focus if the style + forbids programs to take focus themselves (style + !FPFocusByProgram). + - Windows no longer jump from one position to the other which + could happen in some cases with SnapAttraction. Windows now + snap to the closest window (or screen edge). + - Removing bindings had several strange side effects that are + fixed now (removing too many bindings; old bindings showing up + again after another is removed; possibly other effects). + - Windows sometimes did not get expose events (i.e. did not + redraw properly) if they were uncovered by moving a window + above them. This has been fixed. + - FvwmConsole now causes much less network traffic. + - Suppress bogus events sent to the modules when a window is + resized with the mouse. + - Properly handle the has_ref_window_moved flag for ResizeMove and + ResizeMoveMaximize. + - Removed some unnecessary redraws in FvwmPager. + - The option "NoDeskLimitY" option of the GotoPage command did + not work. + - Negative coordinates in the "rectangle" option to the Menu + commend did not work correctly. This has been fixed. + - Removes a slight graphics problem whith the ResizeMaximize + command being invoked from a window button menu. + - When an attempt to reparent a client window (i.e. decorate + it) fails, fvwm no longer throws away all events but only the + events for that window. + - The ChangeButton command of FvwmButtons used to strip + whitespace from the beginning and end of button titles and + image paths. This is no longer done. +- Remove patches now upstream + fvwm-2.6.5-eventcrash.patch + fvwm-rsvg.patch + fvwm-snapshot.patch +- Add upstream patch + fvwm-icon-440d675d14412ec0a123d4c977534ab688229148.patch + Expose: don't flush accumulated events + +------------------------------------------------------------------- +Thu Mar 3 14:03:06 UTC 2016 - mvetter@suse.com + +- Clean up with spec-cleaner +- Remove 'system.fvwm2rc_' seems not to be used +- Fix module 'Command' see (boo#966650) + +------------------------------------------------------------------- +Wed Oct 8 13:43:30 UTC 2014 - tchvatal@suse.com + +- Rename config file to not have underscore at begining + +------------------------------------------------------------------- +Tue Sep 30 20:11:27 UTC 2014 - crrodriguez@opensuse.org + +- fvwm-no-date-time.patch Do not include __DATE__ and __TIME__ + in binaries. +- Drop usage of xorg-x11-devel. pick only the needed packages. + +------------------------------------------------------------------- +Wed Jul 24 10:33:41 UTC 2013 - werner@suse.de + +- Add patch fvwm-2.6.5-eventcrash.patch which should avoid that not + set icon names will be freed (bnc#778347) + +------------------------------------------------------------------- +Thu Jul 18 11:58:36 UTC 2013 - werner@suse.de + +- Update to 2.6.5 + snpashot 2012/10/11 + - NEWS: Added FvwmForm Separators, + fvwm-desktop-menu fixes. + - libs/Bindings.c (AddBinding): + - fvwm/builtins.c (FkeysymToKeycode): + - fvwm/events.c (__handle_key): + Add detection of XKeycodeToKeysym as deprecated, and provide a wrapper + for it by way of fvwm_KeycodeToKeysym() to call the newer + XkbKeycodeToKeysum() where needed. + - libs/PictureImageLoader.c (PImageLoadSvg, PimageLoadXpm, + PImageLoadPng): + Fix compilation errors. + - fvwm/menu.c ( __scan_for_pixmap): + - libs/PictureImageLoader.c (PImageLoadSvg, PimageLoadXpm, + PImageLoadPng): + Add fvwm_msg() for hints about failed image load. + - fvwm/events.c (HandlePropertyNotify): + Fix XSizeHints problem with FVWM not correctly allowing resizing of + windows when the hints are toggled with respect to FVWM processing + XA_WM_NORMAL_HINTS. + - fvwm/placement.c ( __pl_position_get_pos_simple): + When using "UnderMouse" for PositionPlacement, ensure we honor the EWMH + working area by default if it's in use. + - fvwm/fvwm.c (InstallSignals): + Unblock signals when installing them. + When signals are registered, ensure they're unblocked so as not to queue + them up. + - fvwm/infostore.c (get_metainfo_length): + + fvwm/infostore.c (new_metainfo): + + fvwm/infostore.c (insert_metainfo): + + fvwm/style.c (style_parse_one_style_option): + Make C90 compliant. +- Add patch fvwm-snapshot.patch for snpashot 2012/10/11 +- Add patch fvwm-rsvg.patch to avoid internal rsvg-cairo.h included twice +- Add source bin/fvwm-menu-desktop-config.fpl as missed in 2012/10/11 +- Modify patch fvwm-2.5.26-gcc-warnings.patch as fixed upstream + +------------------------------------------------------------------- +Sat Mar 30 18:05:26 CET 2013 - werner@suse.de + +- Add two missing build requires: librsvg-devel and libxslt-tools + +------------------------------------------------------------------- +Tue Feb 7 09:25:57 UTC 2012 - werner@suse.de + +- update to 2.6.4 + new features: + - FvwmIconMan no longer allows for itself to be transient + - New command InfoStore -- to store key/value pairs of information + to relieve the burden of the SetEnv command. + - Speed-up improvements for fvwm-menu-desktop when generating XDG + menus by removing unnecessary stat(2) calls. + - BusyCursor and CursorStyle have been set to make the cursor look + like a dot during Read/PipeRead commands, by default. + Bug fixes: + - FvwmRearrange now understands the "ewmhiwa" option when placing + windows. + - Client gravity for subwindows is honoured for reparenting + windows, such as with XEmbed, when changing the parent's + geometry. + - Conditional command processing of !Layer n + has now been fixed. + - Fixed handling of swallowed windows for transient FvwmButtons'. + - fvwm-menu-desktop now looks in /usr/share/applications for KDE + legacy mode. + - fvwm-config no longer accepts "--is-stable", "--is-released", + "--is-final". + +------------------------------------------------------------------- +Tue Jan 3 09:21:43 UTC 2012 - vcizek@suse.com + +- update to 2.6.3 + dropped libpng patch + New features over 2.5.26: + * Support libpng 1.4 and 1.5.0's slightly newer APIs + * New extended variable $[w.visiblename] + * Style matching now honours the window's visible name + * New style InitialMapCommand allows to execute any command when + a window is mapped first. + * New option to PrintInfo, "bindings" which prints out all of the + Key, PointerKey, Mouse and Stroke bindings which fvwm knows about. + * New differentiated options for SnapAttraction when snapping + against screen edges: + * New option to the BugOpts command + * New BugOpts option QtDragnDropWorkaround to work around an oddity + in handling drag-n-drop events to Qt applications. + * New MenuStyle "UniqueHotkeyActivatesImmediate" and its negation + "!UniqueHotkeyActivatesImmediate" to retain the menu until the + user presses one of the menu keybindings to enact that change in + the case where there's only one item defined in the menu at the + specified hotkey. + * New Style commands + * New Resize argument to direction + * Couple of changes to the Move command: + * The EWMH working area is now honoured by default. + * To move a window ignoring the working area, the option "ewmhiwa" + can be used, similar to how the Maximize command works. + * New expansion placeholder $[pointer.screen] to return the screen + number the pointer is on. + +------------------------------------------------------------------- +Fri Dec 2 07:36:42 UTC 2011 - coolo@suse.com + +- remove uncommented patch + +------------------------------------------------------------------- +Thu Dec 1 17:06:01 UTC 2011 - coolo@suse.com + +- add automake as buildrequire to avoid implicit dependency + +------------------------------------------------------------------- +Thu Sep 1 15:21:45 UTC 2011 - pgajdos@suse.com + +- build with --no-copy-dt-needed-entries + * no-copy-dt-needed-entries.patch + +------------------------------------------------------------------- +Fri Mar 11 20:26:21 UTC 2011 - coolo@novell.com + +- use of %find_lang is a MUST + +------------------------------------------------------------------- +Mon Nov 8 12:57:56 UTC 2010 - coolo@novell.com + +- remove support for pre-9.1 + +------------------------------------------------------------------- +Sun Apr 4 18:55:54 CEST 2010 - ro@suse.de + +- fix build with libpng14 (replace long deprecated functions) + +------------------------------------------------------------------- +Mon Dec 28 18:20:51 CET 2009 - vuntz@opensuse.org + +- Remove gnome-libs-devel, gtk-devel, gtkdoc, imlib-config, + imlib-devel BuildRequires. +- Add xorg-x11-devel BuildRequires. +- Pass --disable-gtk to configure. +- Remove gtk subpackage: it's optional, and doesn't look that good. +- This is for fate#308601: remove gtk/gnome 1.x stack. + +------------------------------------------------------------------- +Tue Nov 3 19:09:16 UTC 2009 - coolo@novell.com + +- updated patches to apply with fuzz=0 + +------------------------------------------------------------------- +Tue Jun 24 16:34:14 CEST 2008 - lmichnovic@suse.cz + +- update to version 2.5.26 +* New features: + - New MenuStyle option VerticalMargins. +* New module features: + - FvwmButtons: New button alignment option: top. +* Bug fixes: + - Fixed crash in ARGB visual detection code. + - Fixed compilation without XRender support. + - Fixed drawing of background pictures in menu items and titles. + - Fixed hadling of shaped windows. + - Fixed a 64-bit bug in the EWMH code. + +------------------------------------------------------------------- +Wed Feb 27 10:59:15 CET 2008 - lmichnovic@suse.cz + +- update to version 2.5.25 + * New features: + - Handle the STATE_ADD command of the EWMH _NET_WM_STATE + message from version 1.3 of the EWMH spec. + - Support transparency in ARGB windows + * Bug Fixes: + - Fixed problem with windows disappearing when created + unless the style Unmanaged was used. + - Edge move delay was used as resistance for the top edge. + - Fixed a parsing problem of the screen argument of the + SnapAttraction style. + - Some html documentation files were not installed. + - Fixed a memory leak in internationalized font handling. + - Fixed a bug in MinOverlap placement. + - Fixed the StickyAcrossPages style in the FvwmPager. + - Fixed the determination of the X charset on UTF-8 systems. + - Fixed a crash when certain EWMH messages were sent to + unmanaged windows. + - Fixed a memory leak in multibyte codepage code. + - Ignore the EWMH staysontop and staysonbottom hints if the + EWMHIgnoreStackingOrderHints style is used. + - Fixed a sporadic crash when the root background set by gnome, + fvwm-root, esetroot etc. changes and a root transparent + colour set is used. + - Fixed spradic crash in modules with root transparent + background from colour sets. + - Fixed a possible crash if the last active module fails. + +------------------------------------------------------------------- +Wed Jan 30 16:10:05 CET 2008 - lmichnovic@suse.cz + +- adjusted system.fvwm2rc and _system.fvwm2rc files + * checked and fixed menu entries + * fixed missing wallpaper after restart + * changed Control center execution for systems with X.org < 7.0 + +------------------------------------------------------------------- +Fri Jan 11 11:33:14 CET 2008 - lmichnovic@suse.cz + +- update to version 2.5.24 + * New features: + - Disabled paging during interactive resize operations by + default (see 2.5.20) as it is annoying to many people. + - New style command options: + EdgeMoveResistance + EdgeMoveDelay + EdgeResizeDelay + SnapGrid + SnapAttraction + that replace the now obsolete commands EdgeResistance, + SnapGrid and SnapAttraction. The EdgeResistance command has + a new syntax with only one argument. + - New command MenuCloseAndExec for menu bindinngs that can be + used to trigger certain commands from a menu without an + associated item. For example, with + Key F1 MTI[]-_ A MenuCloseAndExec Menu RootMenu + the RootMenu can be opened from any other menu by pressing + F1. + * Bug Fixes: + - Sometimes a window jumped by half the screen's size when + moving with the mouse and hitting the border of the desktop. + - Fixed the "screen w" argument of the Move and other commands. + - Clicking on a menu title did not close the menu by default. + - Temporary files in FvwmPerl overwrote each other. + +------------------------------------------------------------------- +Tue Oct 23 10:30:18 CEST 2007 - lmichnovic@suse.cz + +- Removed librsvg from BuildRequires to keep the fvwm lightweight + WM suitable for installation; keeping gnome-libs-devel which + affects only gtk subpackage [#335658] + +------------------------------------------------------------------- +Mon Oct 15 15:21:00 CEST 2007 - lmichnovic@suse.cz + +- fixed wrong font for non ascii characters in titles of windows + especially for english locales (charset_in_title.patch) [#307361] + +------------------------------------------------------------------- +Tue Sep 25 16:23:14 CEST 2007 - lmichnovic@suse.cz + +- excluding useless file README.vms +- file list with %lang (macro find_lang is hard to use for fvwm) +- added gnome-libs-devel (/usr/bin/gnome-config) and librsvg into + BuildReq to enable more features + +------------------------------------------------------------------- +Tue Sep 25 14:16:47 CEST 2007 - lmichnovic@suse.cz + +- update to version 2.5.23 + - obsoletes *string_compar.patch + - fixes segfault on dual core processors [#304236] +- New Features in 2.5.23 cumulative with 2.5.22: + - New Style command options: + StartShaded + UnderMousePlacementHonorsStartsOnPage + UnderMousePlacementIgnoresStartsOnPage + !MinOverlapPlacementPenalties + !MinOverlapPercentPlacementPenalties + MinWindowSize + - SVG (scalable vector graphics) image loading support. + - New extended variables + $[w.iconfile.svgopts] + $[w.miniiconfile.svgopts]. + - Added suffix 'w' to the arguments of the Move command and + similar. It is now possible to add multiple shifts to a + window position, e.g. "50-50w 50-50w" for the center of the + screen. + - Removed UnderMousePlacement and CenterPlacement. Use + "PositionPlacement Center" and "PositionPlacement UnderMouse" + instead. + - Documentation in HTML format. + - Replaced "UseListSkip" with "UseSkipList" & "OnlyListSkip" with + "OnlySkipList" in WindowList command. (Old options deprecated.) + - New subject ImageCache for PrintInfo command. + - The new commad EchoFuncDefinition prints a function's + definition to the console for debugging purposes. + - The CursorStyle command can now load PNG and SVG images as + mouse cursors. New x and y arguments to specify the + hot spot. Also, it is now possible to load non-monochrome + cursors and cursors with partial transparency. +- New module features: + - FvwmScript: New instructions: ChangeWindowTitle and + ChangeWindowTitleFromArg. +- Bug Fixes: + - Windows with aspect ratio no longer maximize past the screen + edges. + - Fixed CenterPlacement with Xinerama screens. + - Fixed CascadePlacement with title direction west and east + - Windows no longer unstick when going to fullscreen mode. + - Fixed crash when raising/lowering a destroyed window. + - Fixed expansion of $[n-] and $[*], broken in 2.5.20. + - Fixes for resizing shaded windows and windows with a gravity + other than northwest. + - Fixed CursorStyle POSITION, broken since 2.3.24. + - The hi, sh and fgsh colors in colorsets are no longer replaced + by computed values if not explicit set on the same line as the + bg, or for fgsh fg, changes. (bug #3359) + - FvwmButtons now redraws stretched button backgrounds correctly + on partial expose. + - Windows with circular transient for hints may no longer crash + fvwm with StackTransientParent style. + - FvwmPager now displays windows that are StickyAcrossPages + correctly. + - Fixed a possible crash with modules closing down. + - Fixed broken demo script fvwm_make_browse_menu.sh. + - The conditon following a comma separator without whitespace + padding was previously ignored if the presiding condition was + multi-worded. + - Various FvwmButtons drawing problems. + - Window movement or resizing triggered by an EWMH message now + honours the FixedSize and FixedPosition window styles. + - Properly generate leave_window and enter_window events for + the root window in FvwmEvent. + - Fixed crash in UTF8 code. + - Fixed parsing of the PropertyChange command. + - Fixed windowlist crash when combining CurrentAtEnd with + IconifiedAtEnd and all windows are iconified. + +------------------------------------------------------------------- +Fri Aug 10 16:40:43 CEST 2007 - dmueller@suse.de + +- package size reduction (#217472) + +------------------------------------------------------------------- +Thu Jul 19 18:01:29 CEST 2007 - lmichnovic@suse.cz + +- wiped susewmif from rc file because it's not available since 9.1 + +------------------------------------------------------------------- +Thu May 10 17:47:14 CEST 2007 - ro@suse.de + +- split off FvwmGtk to its own subpackage + +------------------------------------------------------------------- +Wed Apr 4 21:17:21 CEST 2007 - schwab@suse.de + +- Fix last change. + +------------------------------------------------------------------- +Wed Apr 4 16:48:44 CEST 2007 - lmichnovic@suse.cz + +- fixed gcc warnings: comparing a char* pointer with a + string literal (string_compar.patch) + +------------------------------------------------------------------- +Fri Mar 9 18:40:31 CET 2007 - lmichnovic@suse.cz + +- Fixed corrupted characters in sax2 test mode for some locales + [#251639] (*utf_encoding.patch) + +------------------------------------------------------------------- +Wed Feb 28 14:58:04 CET 2007 - lmichnovic@suse.cz + +- renamed sv_SE to sv, (sv_SE.patch) [#248751] +- removed xorg-x11 from Requires and Buildrequires since + /usr/share/xsessions is part of filesystem [#229172] + +------------------------------------------------------------------- +Tue Feb 13 17:58:44 CET 2007 - lmichnovic@suse.cz + +- adjusted fvwm2rc file, thanks to Thomas Adam [#242015] + +------------------------------------------------------------------- +Tue Feb 13 17:16:11 CET 2007 - lmichnovic@suse.cz + +- update to version 2.5.21 + * New feature: The command Scroll can now be used for interactive + scrolling. + * Bug Fix: Tile...Placement styles (SmartPlacement) that were + broken in 2.5.20. + +------------------------------------------------------------------- +Wed Jan 24 13:42:03 CET 2007 - lmichnovic@suse.cz + +- removed superfluous slashes ante macros +- now building with icecream + +------------------------------------------------------------------- +Tue Jan 16 18:13:49 CET 2007 - lmichnovic@suse.cz + +- fixed wrong path for icons in system.fvwm2rc [#223521] +- changed titles to openSUSE +- created openSuSE.xpm icon for Button bar menu +- spec cleanup + +------------------------------------------------------------------- +Mon Jan 15 21:03:22 CET 2007 - lmichnovic@suse.cz + +- update to 2.5.20 + - many bug fixes + - fixed few memory leaks + - some new functions and features: + * "Mouse n M N" is no longer used to disable or remap the + builtin tear off menu button. See the section Tear Off Menus. + * Full support for menu context (M) key and mouse bindings. + * New window conditions: StickyIcon, StickyAcrossPagesIcon + and StickyAcrossDesksIcon. + * Hilighted menu backgrounds now use pixmaps gradients and + transparency from their related colorset. + +------------------------------------------------------------------- +Fri Jan 5 18:10:37 CET 2007 - lmichnovic@suse.cz + +- fixed missing background image [#223521] + +------------------------------------------------------------------- +Tue Dec 19 20:00:44 CET 2006 - lmichnovic@suse.cz + +- added xorg-x11 into Requires and Buildrequires and excluding + /usr/share/xsessions directory from filelist [#229172] + +------------------------------------------------------------------- +Tue Dec 12 11:19:11 CET 2006 - lmichnovic@suse.cz + +- update to version 2.5.19 including bugfix in FvwmWinList: problem + with window name/button mixups during Init/Restart of fvwm. + * Many bugfixes: + - fvwm no longer crashes on 1 and 4 bit displays. + - Security fix in fvwm-menu-directory. (CVE-2006-5969) +- which obsoletes *sec-fvwmname.patch + * New features (from version 2.5.17): + - New MenuStyle options TitleFont, TitleColorset and + HilightTitleBack. + - New command PressButton in module FvwmButtons for being able + to emulate button press via other means than the mouse. + - New wrap options to EdgeScroll command for wrapping with pixel + distances. + - New Style option UnderMousePlacement. + - Unused arguments to Style options generate warnings. + - The name style names match against can be augmented by the + X-resource "fvwmstyle". + - New options, Reverse and UseStack, to All command. + - WindowShade can now reshade windows using the Last direction. + - Positional parameters to complex functions can now be expanded + using $[n], $[n-m], $[n-] and $[*] expressions. + - The width and height arguments of the Resize command now + accept the prefix 'w' to allow resizing relative to the + current window size. + - New command ModuleListenOnly. + - New "Periodic" option added to Schedule command. + +------------------------------------------------------------------- +Tue Nov 14 16:17:36 CET 2006 - lmichnovic@suse.cz + +- fixed possible command execution (sec-fvwmname.patch) [#220708] + +------------------------------------------------------------------- +Tue Sep 5 14:35:24 CEST 2006 - lmichnovic@suse.cz + +- distinquishing from X.org version which config file to install + (Source4 resp. Source5) + +------------------------------------------------------------------- +Mon Sep 4 17:39:49 CEST 2006 - lmichnovic@suse.cz + +- omitting X11R6 in config file (which is Source4) +- specifying X.org libs and headers + +------------------------------------------------------------------- +Sun Aug 6 22:18:50 CEST 2006 - pnemec@suse.cz + +- major change in specfile instalation and file section to build + with Xorg 7 + +------------------------------------------------------------------- +Mon Jul 3 17:08:19 CEST 2006 - schwab@suse.de + +- Set mandir. + +------------------------------------------------------------------- +Tue May 30 15:03:29 CEST 2006 - pnemec@suse.cz + +- updated to 2.5.16 + clean up in code see changelog +- patches (-64bit, -grab_pointer, -conf) are in upstream now +- patch -ia64 is in upstream only partially + +------------------------------------------------------------------- +Fri Feb 17 12:19:30 CET 2006 - pnemec@suse.cz + +- fixed menu entry #150221 + +------------------------------------------------------------------- +Wed Jan 25 21:36:04 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Thu Oct 20 16:54:05 CEST 2005 - pnemec@suse.cz + +- changed fvmw default theme to use diferent program to set background #106011 +- fixed gcc warnings + +------------------------------------------------------------------- +Thu Aug 25 16:01:42 CEST 2005 - schwab@suse.de + +- Remove obsolete patch. + +------------------------------------------------------------------- +Mon May 16 14:17:24 CEST 2005 - ltinkl@suse.cz + +- update to 2.5.12 +- adapt patches + +------------------------------------------------------------------- +Thu Feb 10 15:04:43 CET 2005 - adrian@suse.de + +- install session desktop file + +------------------------------------------------------------------- +Thu Jan 27 01:38:12 CET 2005 - ro@suse.de + +- add 64bit fix from lubos (#50203) + +------------------------------------------------------------------- +Fri May 07 15:39:24 CEST 2004 - ltinkl@suse.cz + +- added mktemp to requirements +- updated sources to 2.5.10 + +------------------------------------------------------------------- +Thu Apr 08 10:19:27 CEST 2004 - ltinkl@suse.cz + +- fix button background (#37677) + +------------------------------------------------------------------- +Thu Mar 18 12:28:42 CET 2004 - ltinkl@suse.cz + +- fixed missing icons (#35551) +- fixed SUSE helpcenter command line +- reworked color scheme to match the current blueish design +- build the list of screensavers dynamically +- fixed the invocation of fvwm2 manpage +- build with -fno-strict-aliasing +- make Acroread work in fullscreen mode (#36189) + +------------------------------------------------------------------- +Mon Mar 15 11:29:43 CET 2004 - kukuk@suse.de + +- Provide/Obsolete xpmroot + +------------------------------------------------------------------- +Thu Mar 11 21:44:54 CET 2004 - ltinkl@suse.cz + +- SuSE -> SUSE +- use the default system wallpaper (#31644, #35687) + +------------------------------------------------------------------- +Tue Mar 9 17:30:49 CET 2004 - schwab@suse.de + +- Don't require on xpmroot. + +------------------------------------------------------------------- +Thu Mar 04 15:11:20 CET 2004 - ltinkl@suse.cz + +- updated to 2.4.9 + +------------------------------------------------------------------- +Wed Jan 28 12:09:24 CET 2004 - ltinkl@suse.cz + +- fix security problem with temp file handling (#34077) + +------------------------------------------------------------------- +Sat Jan 10 12:10:55 CET 2004 - adrian@suse.de + +- build as user + +------------------------------------------------------------------- +Wed Dec 17 18:33:43 CET 2003 - mfabian@suse.de + +- enable building with Xft2 again (configure script had changed + the way of detecting Xft2, therefore building with Xft2 was + accidentally disabled again after the update). + +------------------------------------------------------------------- +Tue Nov 18 12:43:53 CET 2003 - ltinkl@suse.cz + +- update to latest stable version 2.5.8 + +------------------------------------------------------------------- +Wed Sep 17 15:01:09 CEST 2003 - ltinkl@suse.cz + +- fix menu encoding (has to be UTF-8) +- fix RMB desktop menu + +------------------------------------------------------------------- +Mon Sep 15 11:42:34 CEST 2003 - ltinkl@suse.cz + +- adjusted default fonts and fixed some broken menu entries (#30521) + +------------------------------------------------------------------- +Sat Sep 13 20:10:59 CEST 2003 - schwab@suse.de + +- Workaround broken module interface (it can't handle padding). + +------------------------------------------------------------------- +Fri Sep 5 19:55:36 CEST 2003 - mfabian@suse.de + +- enable Xft2 support to get better i18n support out of the box + and to be able to finally fix Bugzilla #24765. +- change system.fvwm2rc to use only fonts via Xft2 by default +- specify "StringEncoding=UTF-8:" and ":encoding=iso10646-1" + for all fonts (config file should be UTF-8 encoded!). +- remove my fvwm-nls-examples.tar.bz2 documentation, it is very + obsolete now. +- add xpmroot to Requires because it is used to draw the + background in system.fvwmrc. + +------------------------------------------------------------------- +Fri Sep 05 15:01:22 CEST 2003 - ltinkl@suse.cz + +- integrate common (XDG) menu, closes #29498 + +------------------------------------------------------------------- +Tue Sep 02 11:37:44 CEST 2003 - ltinkl@suse.cz + +- created an implicit configuration to fix #29498 + +------------------------------------------------------------------- +Wed Jul 30 13:40:58 CEST 2003 - schwab@suse.de + +- Update to fvwm 2.5.7. +- Fix misalignment bug. + +------------------------------------------------------------------- +Tue Jul 15 09:28:12 CEST 2003 - ltinkl@suse.cz + +- updated sources to 2.4.16 + +------------------------------------------------------------------- +Sat Mar 8 23:44:26 CET 2003 - adrian@suse.de + +- add wallpaper background pixmap + +------------------------------------------------------------------- +Sun Feb 16 13:21:35 CET 2003 - adrian@suse.de + +- do not require icon packages anymore, default config will be + without icons due to dropped package. Let's see what breaks :/ + +------------------------------------------------------------------- +Tue Feb 4 12:09:04 CET 2003 - pmladek@suse.cz + +- updated to version 2.4.15 (many bug fixes) + +------------------------------------------------------------------- +Tue Sep 3 17:15:36 CEST 2002 - mfabian@suse.de + +- add fvwm-2.4.8-utf-8-font-load.patch. + Thanks to Egbert Eich + Without this patch, fvwm2 doesn't work in UTF-8 locales. + It writes many "internal error" messages about missing fonts + to stdout and the menus are empty because the fonts couldn't + be loaded. I.e. without this patch fvwm2 is unusable in UTF-8 + locales. + +------------------------------------------------------------------- +Sat Aug 17 16:27:13 CEST 2002 - ro@suse.de + +- don't duplicate README's in filelist + +------------------------------------------------------------------- +Tue Jul 9 16:38:47 CEST 2002 - pmladek@suse.cz + +- updated to version 2.4.8: + * many bugfixes, some improvents +- removed obsolete ia64-prep patch + +------------------------------------------------------------------- +Tue Apr 2 13:09:32 CEST 2002 - pmladek@suse.cz + +- fixed to compile with autoconf-2.53 + * added missing brackets into smr_SWITCH macro + * removed redundant AC_SUBST(LIBOBJS) + +------------------------------------------------------------------- +Wed Mar 6 14:04:51 MET 2002 - mmj@suse.de + +- Fixed permissions [Bug #14421] + +------------------------------------------------------------------- +Sun Feb 10 12:24:11 CET 2002 - ro@suse.de + +- new option for bz2 tar is "j" + +------------------------------------------------------------------- +Tue Feb 5 17:04:07 CET 2002 - pmladek@suse.cz + +- updated to version 2.4.5 + +------------------------------------------------------------------- +Mon Jan 21 11:15:07 CET 2002 - pmladek@suse.cz + +- updated to version 2.4.4 + +------------------------------------------------------------------- +Tue Dec 4 11:07:38 CET 2001 - pmladek@suse.cz + +- fixed too long time of deadlock when fvwm2 tries to grab mouse + pointer but the mouse pointer is already grabbed by another + application (#12167) + +------------------------------------------------------------------- +Thu Nov 29 16:52:41 CET 2001 - pmladek@suse.cz + +- updated to version 2.4.3 + * many bug fixes + * new commands and options + +------------------------------------------------------------------- +Thu Aug 9 13:48:48 CEST 2001 - pmladek@suse.cz + +- updated to stable version 2.4.0 +- fixed configure.in + * forget cached value in readline tests + +------------------------------------------------------------------- +Thu Jun 14 09:00:02 CEST 2001 - pmladek@suse.cz + +- fixed to compile with new automake + +------------------------------------------------------------------- +Wed May 16 15:53:39 CEST 2001 - pmladek@suse.cz + +- fixed cast warnigs on ia64 + +------------------------------------------------------------------- +Thu May 10 15:24:17 CEST 2001 - pmladek@suse.cz + +- removed link: + ln -sf system.fvwm2rc $RPM_BUILD_ROOT/etc/X11/fvwm2/.fvwm2rc + (because susewm generates right config file system.fvwm2rc now) +- /etc/X11/fvwm2/system.fvwm2rc is right config file now + +------------------------------------------------------------------- +Tue Apr 24 08:31:47 CEST 2001 - pmladek@suse.cz + +- fixed conversions int <-> poiter on ia64 +- fixed preprocesor problems on ia64 + +------------------------------------------------------------------- +Thu Apr 12 08:01:58 CEST 2001 - pmladek@suse.cz + +- updated to version 2.3.31 + +------------------------------------------------------------------- +Mon Apr 9 08:38:39 CEST 2001 - pmladek@suse.cz + +- added icons-xpm to Requires + +------------------------------------------------------------------- +Wed Apr 4 12:24:29 CEST 2001 - mfabian@suse.de + +- removed rplay again from "# neededforbuild" because a small + fvwm2 is needed as a default windowmanager and rplay will not + be in the default selection. + +------------------------------------------------------------------- +Wed Apr 4 10:37:36 CEST 2001 - mfabian@suse.de + +- added libstroke, libstroke-devel, and rplay to "# neededforbuild" + (request of upstream fvwm2 authors) + +------------------------------------------------------------------- +Fri Mar 30 09:06:23 CEST 2001 - pmladek@suse.cz + +- updated to version 2.3.30 +- added URL +- compiled witk GTK and IMLIB + * added gtk gtk-devel gtkdoc glib glib-devel imlib imlib-devel + imlib-config to neededforbuild +- fixed call of suse_update_config + +------------------------------------------------------------------- +Thu Mar 15 07:53:55 CET 2001 - cihlar@suse.cz + +- fixed file list +- removed xselection, package xselect is better + +------------------------------------------------------------------- +Wed Mar 7 21:32:37 CET 2001 - mfabian@suse.de + +- repair packaging mistake, forgot to pack /usr/X11R6/share/ + +------------------------------------------------------------------- +Wed Mar 7 13:20:48 CET 2001 - mfabian@suse.de + +- upgrade to fvwm2-2.3.29 +- improve nls examples + +------------------------------------------------------------------- +Fri Feb 23 00:10:25 CET 2001 - ro@suse.de + +- added readline/readline-devel to neededforbuild (split from bash) + +------------------------------------------------------------------- +Sun Jan 28 05:37:53 CET 2001 - mfabian@suse.de + +- upgraded to "stable beta release" FVWM 2.3.28. +- added icons tarball (previously included in main tarball) +- added "--enable-multibyte" to ./configure +- added fvwm-nls-examples.tar.bz2 (explanation and examples + for native language support, especially for Japanese) +- added symlink: + ln -sf system.fvwm2rc $RPM_BUILD_ROOT/etc/X11/fvwm2/.fvwm2rc + (because fvwm2 now reads only /etc/X11/fvwm2/system.fvwm2rc, but + SuSEconfig generates /etc/X11/fvwm/.fvwm2rc) +- removed patches changing path of perl (handled by configure now) +- removed old i18n patch (already included upstream now) + +------------------------------------------------------------------- +Wed Dec 13 08:15:16 CET 2000 - cihlar@suse.cz + +- fixed i18n patch [#4532] +- removed %preun + +------------------------------------------------------------------- +Mon Nov 20 12:53:32 CET 2000 - cihlar@suse.cz + +- fixed neededforbuild +- requires: icons ... + +------------------------------------------------------------------- +Fri Oct 13 09:39:02 CEST 2000 - cihlar@suse.cz + +- fixed i18n +- bzipped sources +- fixed configuration + +------------------------------------------------------------------- +Fri Aug 18 11:48:31 CEST 2000 - cihlar@suse.cz + +- fixed to work with new pixmaps +- fixed config file + +------------------------------------------------------------------- +Tue Jun 6 18:44:02 CEST 2000 - kukuk@suse.de + +- Update to 2.2.4 +- Move sysconfdir to /etc/X11/fvwm2 + +------------------------------------------------------------------- +Mon Jun 5 01:08:33 CEST 2000 - ro@suse.de + +- doc relocation + +------------------------------------------------------------------- +Mon Dec 13 23:02:15 CET 1999 - ro@suse.de + +- use /usr/X11R6/bin instead of /usr/bin/X11 +- use /usr/X11R6/lib/X11 instead of /usr/lib/X11 + +------------------------------------------------------------------- +Mon Sep 20 16:45:48 CEST 1999 - ro@suse.de + +- added Provides windowmanager + +------------------------------------------------------------------- +Mon Sep 13 17:23:57 CEST 1999 - bs@suse.de + +- ran old prepare_spec on spec file to switch to new prepare_spec. + +------------------------------------------------------------------- +Sat Jul 17 17:21:06 MEST 1999 - maddin@suse.de + +- created package version 2.2.2 (based on and conflicting with fvwm-2.0) + + diff --git a/fvwm2.desktop b/fvwm2.desktop new file mode 100644 index 0000000..4364aff --- /dev/null +++ b/fvwm2.desktop @@ -0,0 +1,57 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=XSession +Exec=fvwm +TryExec=fvwm +Name=FVWM +Name[hi]=एफ़वीडबल्यूएम +Name[xx]=xxFVWMxx +Comment=A powerful ICCCM-compliant multiple virtual desktop window manager +Comment[ar]=مدير نوافذ قوي ومتوافق مع ICCCM ذي أسطح مكتب وهمية متعددة +Comment[bn]= একটি শক্তিশালী ICCCM-compliant উইণ্ডো ম্যানেজার, যাতে একাধিক ভার্চুয়াল ডেস্কটপ সম্ভব +Comment[bs]=Moćan ICCCM-sukladan window manager sa podrškom za više virtuelnih desktopa +Comment[ca]=Un poderós gestor de finestres per a múltiples escriptoris virtuals que compleix amb ICCCM +Comment[cy]=Trefnydd ffenestri pwerus efo penbyrddau rhith lluosol, sy'n cydymffurfio â ICCCM +Comment[da]=En kraftig ICCCM-kompliant vindueshåndtering med flere virtuelle desktoppe +Comment[de]=Ein mächtiger ICCCM-kompatibler Fenstermanager mit vielen virtuellen Arbeitsflächen +Comment[el]=Ένας πολύ δυνατός, συμβατός με το ICCCM, διαχειριστής παραθύρων με πολλαπλές εικονικές επιφάνειες εργασίας +Comment[eo]=Fenestroadministrilo +Comment[es]=Un potente administrador de ventanas, compatible con ICCCM y que soporta varios escritorios virtuales +Comment[et]=Võimas ICCCM nõuetele vastav mitme virtuaalse töölauaga aknahaldur +Comment[eu]=ICCCM konpatiblea den, eta mahaigain birtual ugari dituen leiho kudeatzaile bortitza +Comment[fi]=Tehokas ICCCM-mukautuva virtuaalityöpöytiä tukeva ikkunaohjelma +Comment[fr]=Un gestionnaire de fenêtres puissant compatible ICCCM avec gestion de bureaux virtuels multiples +Comment[fy]=In krêftige ICCCM-compliant finstersmanager mei meardere buroblêden +Comment[gl]=Un xestor de fiestras potente acorde coa ICCCM con múltiples escritorios virtuais +Comment[he]=מנהל חלונות עצמתי עם תאימות ל־ICCCM בעל שולחנות עבודה וירטואליים רבים +Comment[hi]=शक्तिशाली आईसीसीसीएम-कम्पलाएंट अनेक आभासी डेस्कटॉप विंडो प्रबंधक +Comment[hr]=Moćni, ICCCM kompatibilni, upravitelj prozora s više virtualnih radnih površina +Comment[hu]=Egy sokoldalú, ICCCM-kompatibilis ablakkezelő, virtuális munkaasztal-kezeléssel +Comment[is]=Öflugur ICCCM samhæfður gluggastjóri með sýndarskjáborðum +Comment[it]=Un window manager molto potente e ICCCM-compatibile che supporta i desktop virtuali +Comment[ja]=複数の仮想デスクトップをサポートしたICCCM準拠のパワフルなウィンドウマネージャ +Comment[lt]=galinga, su ICCCM suderinama daugelio virtualių darbastalių langų tvarkyklė +Comment[mk]=Моќен менаџер на прозорци со повеќе виртуелни површини во согласност со ICCCM +Comment[mt]=Window manager b'saħħtu, konformi ma' ICCCM, b'desktops virtwali. +Comment[nb]=En slagkraftig vindusbehandler med flere virtuelle skrivbord, som støtter ICCCM +Comment[nds]=En kraftvulle, ICCCM-kompatible Finsterpleger, mit vele virtuelle Schriefdischen +Comment[nl]=Een krachtige ICCCM-compliant windowmanager met meerdere bureaubladen +Comment[nn]=Ein slagkraftig vindaugssjef med fleire virtuelle skrivebord, som støttar ICCCM +Comment[pa]=ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ICCCM-ਅਨੁਕੂਲ ਬਹੁ-ਫਰਜ਼ੀ ਵਿਹੜਿਆਂ ਵਾਲਾ ਝਰੋਖਾ ਪ੍ਰਬੰਧਕ +Comment[pl]=Potężny menedżer okien zgodny z ICCCM obsługujący wirtualne pulpity +Comment[pt]=Um gestor de janelas poderoso em conformidade com o ICCCM e que suporta vários ecrãs virtuais +Comment[pt_BR]=Um poderoso gerenciador de janelas compatível com o ICCM, com suporte a múltiplas áreas de trabalho virtuais +Comment[ro]=Un manager de ferestre puternic compliant ICCCM ce suportă ecrane virtuale +Comment[ru]=Мощный ICCCM-совместимый оконный менеджер, поддерживающий виртуальные рабочие столы +Comment[sk]=Výkonný správca okien kompatibilný s ICCCM s podporou virtuálnych plôch +Comment[sl]=Močan okenski upravitelj z večimi navideznimi namizji in popolnoma v skladu z ICCCM +Comment[sr]=Моћни, ICCCM-сагласни, менаџер прозора са више виртуелних радних површина +Comment[sr@Latn]=Moćni, ICCCM-saglasni, menadžer prozora sa više virtuelnih radnih površina +Comment[sv]=Kraftfull fönsterhanterare med flera virtuella skrivbord som följer ICCCM +Comment[ta]=ICCCM-தரத்தில் பலதரப்பட்ட மெய்நிகர் மேல் மேசை சாளர மேளாளர் +Comment[tr]=Güçlü ICCCM-uyumlu çoklu sanal masaüstü yöneticisi +Comment[uk]=Потужний, сумісний з ICCCM менеджер вікон, з підтримкою віртуальних стільниць +Comment[vi]=Trình quản lý cửa sổ ICCCM tương thích đa desktop ảo +Comment[xx]=xxA powerful ICCCM-compliant multiple virtual desktop window managerxx +Comment[zh_CN]=强大的多虚拟桌面窗口管理器,与 ICCCM 兼容 +Comment[zh_TW]=一個強大的 ICCCM 相容的多重虛擬桌面視窗管理程式 diff --git a/fvwm2.spec b/fvwm2.spec new file mode 100644 index 0000000..d1984bf --- /dev/null +++ b/fvwm2.spec @@ -0,0 +1,175 @@ +# +# spec file for package fvwm2 +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: fvwm2 +Version: 2.7.0 +Release: 0 +Summary: The F Virtual Window Manager +License: GPL-2.0-or-later +Group: System/GUI/Other +URL: http://www.fvwm.org +Source0: https://github.com/fvwmorg/fvwm/releases/download/%{version}/fvwm-%{version}.tar.gz +Source1: fvwm_icons.tar.bz2 +Source3: %{name}.desktop +Source4: system.fvwm2rc +Source6: openSUSE.xpm +Patch0: fvwm-configure.patch +Patch1: fvwm-2.5.26-sv_SE.patch +Patch2: fvwm-no-date-time.patch +Patch3: fvwm-FvwmAuto-overflow.patch +Patch4: threadlocking.patch +# https://github.com/fvwmorg/fvwm/pull/100 +Patch5: fvwm2-gcc14.patch +BuildRequires: automake +BuildRequires: gcc-c++ +BuildRequires: libpng-devel +BuildRequires: libstroke-devel +BuildRequires: libxslt-tools +BuildRequires: pkgconfig +BuildRequires: python3-base +BuildRequires: readline-devel +BuildRequires: update-desktop-files +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(fribidi) +BuildRequires: pkgconfig(gobject-2.0) +BuildRequires: pkgconfig(ice) +BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(sm) +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xcursor) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xft) +BuildRequires: pkgconfig(xinerama) +BuildRequires: pkgconfig(xpm) +BuildRequires: pkgconfig(xrender) +#not actually used but includes its headers anyway.. +BuildRequires: pkgconfig(xt) +Requires: desktop-data +Requires: mktemp +Requires: wallpaper-branding +Requires: xdg-menu +Requires(post): update-alternatives +Requires(postun): update-alternatives +Provides: fvwm +Provides: fvwmicns +Provides: windowmanager +Provides: xpmroot +Obsoletes: fvwm +Obsoletes: xpmroot + +%description +FVWM is a virtual desktop window manager for the X Window System. + +FVWM is intended to have a small memory footprint but a rich feature +set, to be extremely customizable and extendible, and to be very +compatible with the Motif Window Manager (mwm). + +%prep +%setup -q -n fvwm-%{version} +%autopatch -p0 +find . -name *sv_SE* -exec rename --verbose sv_SE sv '{}' \+ +mkdir icons +tar -C icons -j -x -v -f $RPM_SOURCE_DIR/fvwm_icons.tar.bz2 +cp %{SOURCE6} icons + +%build +autoreconf -fvi +%configure \ + --sysconfdir=%{_sysconfdir}/X11/fvwm2 \ + --libexecdir=%{_prefix}/lib/X11/fvwm2 \ + --with-imagepath=%{_datadir}/X11/fvwm2/pixmaps:%{_datadir}/X11/fvwm2/bitmaps:%{_datadir}/pixmaps:%{_datadir}/wallpapers +make %{?_smp_mflags} + +%install +%make_install + +# missed main manual page +install -m 644 doc/fvwm/fvwm.1 %{buildroot}%{_mandir}/man1 + +# default config +install -d -m 755 %{buildroot}%{_sysconfdir}/X11/fvwm2 +install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/X11/fvwm2/system.fvwm2rc +# documentation for modules +rm -vf sample.fvwmrc/Makefile* sample.fvwmrc/system.fvwm2rc-sample-95 + +rm -vf docs/Makefile* +install -d -m 755 docu-module +for i in $(find -name "README*" -not -name "*,v" -and -not -name "*.orig") +do + TMPDIR=$(dirname ${i#./}) + if [ "x$TMPDIR" = "x." ]; then + install -m 644 $i docu-module/${i#./} + else + install -m 644 $i docu-module/README.$(basename "$TMPDIR") + fi +done + +# forbidden links +pushd %{buildroot}/ + find . -type l -printf '%%P %%l\n' | while read dst src + do + case "$src" in + %{buildroot}/*) + src=${src#%{buildroot}/} + rm -vf $dst + ln -frsv $src $dst + ;; + *) + ;; + esac + done +popd + +# icons +install -d -m 755 %{buildroot}%{_datadir}/X11/fvwm2/pixmaps +install -m 644 icons/* %{buildroot}%{_datadir}/X11/fvwm2/pixmaps + +# install kdm/gdm entry +install -m 0755 -d %{buildroot}%{_datadir}/xsessions/ +install -m 0644 %{SOURCE3} %{buildroot}%{_datadir}/xsessions/ +# removing the useless README.vms file +rm -f %{buildroot}/%{_docdir}/fvwm2/README.vms +%suse_update_desktop_file %{buildroot}%{_datadir}/xsessions/%{name}.desktop +%find_lang fvwm %{name}.lang +%find_lang FvwmScript %{name}.lang + +%post +%{_sbindir}/update-alternatives --install %{_datadir}/xsessions/default.desktop \ + default-xsession.desktop %{_datadir}/xsessions/fvwm2.desktop 20 + +%postun +[ -f %{_datadir}/xsessions/lxqt.desktop ] || %{_sbindir}/update-alternatives \ + --remove default-xsession.desktop %{_datadir}/xsessions/fvwm2.desktop + +%files -f %{name}.lang +%license COPYING +%doc NEWS docs docu-module/* +%dir %{_sysconfdir}/X11/fvwm2 +%config %{_sysconfdir}/X11/fvwm2/system.fvwm2rc +%{_bindir}/* +%{_prefix}/lib/X11/fvwm2/* +%{_datadir}/X11/fvwm2/pixmaps/* +%dir %{_prefix}/lib/X11/fvwm2 +%{_datadir}/fvwm +%dir %{_datadir}/X11/fvwm2 +%dir %{_datadir}/X11/fvwm2/pixmaps +%{_mandir}/man1/* +%{_datadir}/xsessions/*desktop + +%changelog diff --git a/fvwm_icons.tar.bz2 b/fvwm_icons.tar.bz2 new file mode 100644 index 0000000..548b40f --- /dev/null +++ b/fvwm_icons.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:741c1100478177d1989203cb04ff1332e8280789d5c76b42d945b8b9d040fa64 +size 329871 diff --git a/openSUSE.xpm b/openSUSE.xpm new file mode 100644 index 0000000..1f06f6f --- /dev/null +++ b/openSUSE.xpm @@ -0,0 +1,39 @@ +/* XPM */ +static char * openSUSE1_xpm[] = { +"51 34 2 1", +" c None", +". c #084404", +" ", +" ", +" ", +" ", +" ", +" ", +" ........ ", +" ................. .... ", +" .............................. ", +" ............................ . ", +" ............................. ..... ", +" ............................... . . . ", +" ................................ ... . ", +" .............................. ... ... ", +" ............................... ...... ", +" .................................. ", +" ..... ................................ ", +" .... ............................ ", +" .... ..... ................. ", +" ... ....... ..... ..... ", +" ... .. ... ... .... ", +" ... .. .. ... .... ", +" ... .... .. ... ... ", +" ... ... .. . . ", +" .... ... ", +" .......... ", +" ........ ", +" ... ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/system.fvwm2rc b/system.fvwm2rc new file mode 100644 index 0000000..0379c35 --- /dev/null +++ b/system.fvwm2rc @@ -0,0 +1,460 @@ +## Major cleanup. +## +## Thomas Adam + +# window buttons +# +#Large up Triangle for Maximize + +## The least we can do here is define a decor. +DestroyDecor DefaultDecor +AddToDecor DefaultDecor ++ ButtonStyle 2 4 50x24@1 75x74@0 25x74@0 50x24@1 ++ ButtonStyle 4 4 50x74@1 75x24@0 25x24@1 50x74@1 ++ ButtonStyle 3 13 20x60@1 20x40@1 40x40@1 40x20@1 60x20@1 60x40@0 80x40@1 80x60@0 60x60@0 60x80@0 40x80@0 40x60@1 20x60@0 ++ BorderStyle Inactive -- HiddenHandles NoInset + +#general configuration + +DeskTopSize 3x2 +EdgeResistance 250 10 +EdgeScroll 0 0 +ClickTime 750 +ColormapFocus FollowsMouse +IgnoreModifiers L2 +## Having this set to unlimited ensures potential users aren't confused due +## to the XGrabServer() call when having to draw the rubber-band which would +## have happened had OpaqueMoveSize been set to the default. +OpaqueMoveSize -1 + +#paths specific to fvwm2 +# +## The difference between X.org 6.x and 7.x +## If you switch to X.org version 6.9 or below change the paths for ImagePath +## /usr/lib/X11/fvwm2 -> /usr/X11R6/lib... +## /usr/share/X11/fvwm2/pixmaps -> /usr/X11R6/lib/X11/fvwm2/pixmaps + +### No, redefining ModulePath is the wrong thing to do. +##ModulePath /usr/lib/X11/fvwm2 + +## Adding $[FVWM_USERDIR] here doesn't hurt, and neither does prepending the +## *internal* ImagePath. + +ImagePath /usr/share/X11/fvwm2/pixmaps:/usr/share/wallpapers:$[FVWM_USERDIR]:+ + +#colors + +# 0 = Default colors +# 1 = Inactive windows +# 2 = Active windows +# 3 = Inactive menu entry and menu background +# 4 = Active menu entry +# 5 = greyed out menu entry (only bg used) +# 6 = module foreground and background) +# 7 = hilight colors + +Colorset 0 fg black, bg rgb:6f/a1/dc +Colorset 1 fg black, bg rgb:a1/b2/c8 +Colorset 2 fg black, bg rgb:70/a2/dd +Colorset 3 fg black, bg rgb:c8/d3/e5 +Colorset 4 fg black, bg rgb:91/ae/d6 +Colorset 5 fg rgb:d2/bf/a8, bg rgb:b4/aa/94 +Colorset 6 fg black, bg rgb:b4/aa/94 +Colorset 7 fg black, bg rgb:94/ab/bf + + +# run FvwmTheme before anything else is done +##ModuleSynchronous Timeout 5 FvwmTheme +# +# general setup +# +Style * Colorset 1 +Style * HilightColorset 2 +MenuStyle * MenuColorset 3 +MenuStyle * ActiveColorset 4 +MenuStyle * GreyedColorset 5 + +XORvalue 255 + +#fonts +DefaultFont "StringEncoding=UTF-8:xft:sans-serif:encoding=iso10646-1:size=10;-misc-*-medium-r-semicondensed-*-13-*-*-*-*-*-iso10646-1" +IconFont "StringEncoding=UTF-8:xft:sans-serif:encoding=iso10646-1:size=8;-misc-fixed-medium-r-normal-*-10-*-*-*-*-*-iso10646-1" + + +#fvwm system functions + +AddToFunc QuitSave + + "I" Quit + + +AddToFunc StartFunction ++ I Test (Init) Module FvwmBanner ++ I Test (Init) Exec exec xterm -ls -geometry +150+85 ++ I Module FvwmButtons + +AddToFunc ExitFunction + + I Exec xsetroot + + I Exec xsetroot + + +#fvwm window modifier functions + +AddToFunc MoveOrRaise ++ C Raise ++ M Raise ++ M Move ++ D Lower +AddToFunc ResizeOrRaise ++ C Raise ++ M Raise ++ M Resize ++ D Lower +AddToFunc MaximizeFunc ++ M Maximize 0 100 ++ C Maximize 0 80 ++ D Maximize 100 100 + +## all. +AddToFunc MoveOrIconify ++ I Raise ++ M Move ++ D Iconify + + +#buttonbar menu + +AddToMenu bargraphicspopup "Graphics" Title + + "Gimp" Exec exec gimp + + "Inkscape" Exec exec inkscape + + "XV" Exec exec xv + +AddToMenu bartoolspopup "Tools" Title + + "Firefox" Exec exec firefox + + "OpenOffice" Exec exec soffice + +AddToMenu barshellspopup "Shell in XTerm" Title + + "Shell in XTerm" Exec exec xterm -ls + + "Root shell" Exec exec xterm -ls -vb -sb -sl 2000 -T Root -n Root -j -rw +vb -bg \#ff8c6d -e su - + + +AddToMenu barsusepopup "openSUSE" Title + + "Control Center" Exec exec xterm -e su - -cyast2 + + "Help" Exec exec susehelp + + "openSUSE menu" Popup xdg_menu + +## Adding Pick here ensures we always ensure a window context. +AddToMenu windowops "Window menu (Shift-Alt-Space)" Title + + "Mo&ve (Alt-F5) " Pick Move + + "Resi&ze (Alt-F6) " Pick Resize + + "&Iconify (Alt-F4) " Pick Iconify + + "&Maximize/Normal (Shift-Alt-F3) " Pick Maximize + + "(Un)St&ick (Shift-Alt-F4) " Pick Stick + + "" Nop + + "Window &list (Alt-F11) " WindowList + + "" Nop + + "&Close (Alt-F9) " Pick Delete + + "&Kill (Alt-F11) " Pick Destroy + + +#Menu: Fvwm-Manpages + +AddToMenu manpages_popup "Fvwm-Manpages" Title + + "FvwmEvent" Exec exec xterm -e man FvwmEvent + + "FvwmAuto" Exec exec xterm -e man FvwmAuto + + "FvwmBacker" Exec exec xterm -e man FvwmBacker + + "FvwmBanner" Exec exec xterm -e man FvwmBanner + + "FvwmButtons" Exec exec xterm -e man FvwmButtons +## + "FvwmCascade" Exec exec xterm -e man FvwmCascade + + "FvwmCommand" Exec exec xterm -e man FvwmCommand + + "FvwmConfig" Exec exec xterm -e man fvwm-config + + "FvwmConsole" Exec exec xterm -e man FvwmConsole + + "FvwmConsoleC" Exec exec xterm -e man FvwmConsoleC + + "FvwmCpp" Exec exec xterm -e man FvwmCpp + + "FvwmDebug" Exec exec xterm -e man FvwmDebug + + "FvwmForm" Exec exec xterm -e man FvwmForm +## + "FvwmGoodStuff" Exec exec xterm -e man FvwmGoodStuff + + "FvwmIconBox" Exec exec xterm -e man FvwmIconBox + + "FvwmIconMan" Exec exec xterm -e man FvwmIconMan + + "FvwmIdent" Exec exec xterm -e man FvwmIdent + + "FvwmM4" Exec exec xterm -e man FvwmM4 + + "FvwmPager" Exec exec xterm -e man FvwmPager + + "FvwmSave" Exec exec xterm -e man FvwmSave + + "FvwmSaveDesk" Exec exec xterm -e man FvwmSaveDesk + + "FvwmScript" Exec exec xterm -e man FvwmScript + + "FvwmScroll" Exec exec xterm -e man FvwmScroll +## + "FvwmTalk" Exec exec xterm -e man FvwmTalk + + "FvwmTaskBar" Exec exec xterm -e man FvwmTaskBar + + "FvwmTile" Exec exec xterm -e man FvwmTile + + "FvwmWharf" Exec exec xterm -e man FvwmWharf + + "FvwmWinList" Exec exec xterm -e man FvwmWinList + + + +#Menu: Modules + +AddToMenu modules_popup "Modules" Title + + "Event" Module FvwmEvent + + "Autoraise off" KillModule FvwmAuto + + "Autoraise 500ms" Module FvwmAuto 500 + + "Banner" Module FvwmBanner + + "Buttons" Module FvwmButtons + + "Cascade" Module FvwmCascade + + "Command" Module FvwmCommandS +##+ "Config" Module FvwmConfig + + "Console" Module FvwmConsole + + "Debug" Module FvwmDebug + + "Form" Module FvwmForm +## + "GoodStuff" Module FvwmGoodStuff + + "IconBox" Module FvwmIconBox + + "IconMan" Module FvwmIconMan + + "Ident" Module FvwmIdent + + "M4" Module FvwmM4 + + "Pager" Module FvwmPager 0 0 +## + "Pipe" Module FvwmPipe + + "Save" Module FvwmSave +## + "SaveDesk" Module FvwmSaveDesk + + "Script" Module FvwmScript + + "Scroll" Module FvwmScroll + + "Talk" Module FvwmTalk + + "TaskBar" Module FvwmTaskBar + + "Tile" Module FvwmTile + + "Wharf" Module FvwmWharf + + "WindowMenu" Module FvwmWindowMenu + + "WinList" Module FvwmWinList + + + +#Menu: WindowManager + +AddToMenu THISWM_MENU_popup "WindowManager" Title + + "Modules" Popup modules_popup + + "Fvwm-Manpages" Popup manpages_popup + + "" Nop + + "Fvwm2-Manpage" Exec exec xterm -e man fvwm + + "" Nop + + "Restart Fvwm2" Restart + + "" Nop + + "Exit" Quit + + + +#Menu: Keyboardclicks + +AddToMenu settings_kbdclick_popup "Keyboardclicks" Title + + "hard" Exec exec xset c 100 + + "Off" Exec exec xset c off + + "soft" Exec exec xset c on + + +#Menu: Mouse + +AddToMenu settings_mouse_popup "Mouse" Title + + "fast" Exec exec xset m 4 2 + + "Left handed mouse" Exec exec xmodmap -e + + "normal" Exec exec xset m 2 5 + + "slow" Exec exec xset m 1 1 + + + +#Menu: Speaker + +AddToMenu settings_speaker_popup "Speaker" Title + + "loud" Exec exec xset b 100 600 50 + + "normal" Exec exec xset b on + + "loud and long" Exec exec xset b 100 600 300 + + "Off" Exec exec xset b off + + + +#Menu: Screensaver + +AddToMenu screen_popup "Screensaver" Title + + "Blank" Exec exec xset s blank + + "Off" Exec exec xset s off + + "Pattern after 5 min" Exec exec xset s noblank s 300 300 + + "Immediately" Exec exec xset s activate + + "Default" Exec exec xset s default + + + +#Menu: Settings + +AddToMenu settings_popup "Settings" Title + + "Keyboardclicks" Popup settings_kbdclick_popup + + "Mouse" Popup settings_mouse_popup + + "Speaker" Popup settings_speaker_popup + + "Screensaver" Popup screen_popup + + +#Menu: Work + +PipeRead 'xdg_menu --charset UTF-8 --format fvwm2' + +AddToMenu WORK_MENU_popup "Work Menu" Title + + "xterm" Exec exec xterm + + "Firefox" Exec exec firefox + + "" Nop + + "Top" Exec exec xterm -e top + + "" Nop + + "Settings" Popup settings_popup + + "WindowManager" Popup THISWM_MENU_popup + + "openSUSE" Popup xdg_menu + +Style "FvwmPager" !Title, Sticky, WindowListSkip +*FvwmPager: Rows 1 +*FvwmPager: Columns 1 +*FvwmPager: Geometry -0+0 +*FvwmPager: Fore Black +*FvwmPager: Back grey67 +*FvwmPager: Hilight grey50 +*FvwmPager: Font none +*FvwmPager: SmallFont "StringEncoding=UTF-8:xft:sans-serif:encoding=iso10646-1:size=6;-misc-fixed-medium-r-normal--7-*-*-*-*-*-iso10646-1" + +AddToFunc barthiswmpopupfunc + + "I" Popup THISWM_MENU_popup + +AddToFunc barsusepopupfunc + + "I" Popup barsusepopup + +AddToFunc bargraphicspopupfunc + + "I" Popup bargraphicspopup + +AddToFunc bartoolspopupfunc + + "I" Popup bartoolspopup + +AddToFunc barshellspopupfunc + + "I" Popup barshellspopup + +*FvwmButtons: Font "StringEncoding=UTF-8:xft:sans-serif:encoding=iso10646-1:size=9;-*-*-medium-*-semicondensed-*-12-*-*-*-*-*-iso10646-1" +#*FvwmButtonsFore Black +*FvwmButtons: Back rgb:91/ae/d6 +*FvwmButtons: Geometry +0+0 +*FvwmButtons: Rows 1 +*FvwmButtons: (2x1 Frame 0 Swallow(UseOld, Respawn, NoClose) "FvwmPager" "Module FvwmPager 0 0") +*FvwmButtons: (Swallow FvwmXeyes 'Exec xeyes -name "FvwmXeyes" -geometry +0+0 -bg grey67 &') +*FvwmButtons: (Swallow FvwmXclock 'Exec xclock -name "FvwmXclock" -geometry +0+0 -padding 1 -bg rgb:91/ae/d6 &') +*FvwmButtons:(Title "Fvwm2", Icon fvwm.xpm, Action (Mouse 0) Function barthiswmpopupfunc) +*FvwmButtons: (Title "openSUSE", Icon openSUSE.xpm, Action (Mouse 0) Function barsusepopupfunc) +*FvwmButtons: (Title "Graphics", Icon gimp.xpm, Action (Mouse 0) Function bargraphicspopupfunc) +*FvwmButtons (Title "Tools", Icon toolbox.xpm, Action (Mouse 0) Function bartoolspopupfunc) +*FvwmButtons (Title "Shells", Icon xterm.xpm, Action (Mouse 0) Function barshellspopupfunc) +#style options for modules and programs in fvwm2 + + +##Style "*" BackColor Grey +##Style "*" ForeColor DimGrey +Style * UseDecor DefaultDecor +Style * SloppyFocus +Style * DecorateTransient +Style * IconBox +55 +85 +130 +480 +Style * StickyIcon +Style * SmartPlacement, RandomPlacement, ActivePlacement +Style * NoPPosition +Style FvwmWinList !Title, WindowListSkip +Style FvwmButtons !Title, Sticky, WindowListSkip +Style FvwmBanner !Title, Sticky, StaysOnTop, WindowListSkip +Style IconManModule !Title, Sticky, !Handles, Icon toolbox.xpm + +Style "xeyes" SmartPlacement, RandomPlacement +Style "xclock" SmartPlacement, RandomPlacement + +# see bug n#51189 +Style "AcroRead" SmartPlacement, RandomPlacement +# see bug n#51188 +# Style "OpenOffice*" NoPPosition, RandomPlacement, EWMHIgnoreStrutHints, EWMHMaximizeIgnoreWorkingArea, EWMHPlacementIgnoreWorkingArea, IgnoreGravity + +Module FvwmBacker +Colorset 10 Pixmap /usr/share/wallpapers/openSUSEdefault/contents/images/1600x1200.png +*FvwmBacker: Command (Desk *) Colorset 10 + +*FvwmIdent: Back MidnightBlue +*FvwmIdent: Fore Yellow +*FvwmIdent: Font "StringEncoding=UTF-8:xft:sans-serif:encoding=iso10646-1:size=10;-misc-fixed-medium-r-normal--13-*-*-*-*-*-iso10646-1" + +*FvwmWinList: Back Grey +*FvwmWinList: Fore Black +*FvwmWinList: FocusBack Black +*FvwmWinList: FocusFore Grey +*FvwmWinList: IconBack LightGrey +*FvwmWinList: IconFore DimGrey +*FvwmWinList: Font "StringEncoding=UTF-8:xft:sans-serif:encoding=iso10646-1:size=11;-misc-fixed-medium-r-normal--15-*-*-*-*-*-iso10646-1" +*FvwmWinList: Action Click1 Iconify -1,Focus +*FvwmWinList: Action Click2 Iconify +*FvwmWinList: Action Click3 Module "FvwmIdent" FvwmIdent +*FvwmWinList: Geometry +0-1 +*FvwmWinList: UseSkipList +*FvwmWinList: UseIconNames + +# Key bindings + +Key Left A SM Scroll -100 +0 +Key Left A C CursorMove -1 0 +Key Left A SC CursorMove -10 +0 + +Key Right A SM Scroll +100 +0 +Key Right A C CursorMove +1 0 +Key Right A SC CursorMove +10 +0 + +Key Up A SM Scroll +0 -100 +Key Up A C CursorMove +0 -1 +Key Up A SC CursorMove +0 -10 + +Key Down A SM Scroll +0 +100 +Key Down A C CursorMove +0 +1 +Key Down A SC CursorMove +0 +10 + +Key F1 A M Menu WORK_MENU_popup +Key F2 A M WindowList +Key F3 A M Menu xdg_menu +Key F4 A M Pick Iconify +Key F5 A M Pick Move +Key F6 A M Pick Resize +Key F7 A M Pick Raise +Key F8 A M Pick Lower +Key F9 A M Pick Delete +Key F10 A M Pick Destroy + +Key F11 A M Prev (AcceptsFocus) focus +Key F12 A M Next (AcceptsFocus) focus +Key Tab A 4 Next (AcceptsFocus) focus +Key Tab A S4 Prev (AcceptsFocus) focus + +Key F3 A SM Pick Maximize +Key F4 A SM Pick Stick +Key F5 A SM Pick RefreshWindow + +Key BackSpace A SM Function QuitSave + +#button bar popup menus +Key s A SM Function barsusepopupfunc +Key g A SM Function bargraphicpopupfunc +Key t A SM Function bartoolspopupfunc +Key l A SM Function barshellpopupfunc +Key m A SM Function MailFunc + +Key F1 A SM Restart + +# Mouse bindings + +Mouse 1 R A Menu WORK_MENU_popup Nop +Mouse 2 R A Module FvwmWinList Transient +Mouse 3 R A Menu xdg_menu Nop +Mouse 2 FST A Menu windowops Nop + +Mouse 1 1 A Menu windowops Delete +Mouse 2 1 A Menu windowops Destroy +Mouse 3 1 A Menu windowops Nop + +Mouse 1 SF A Function "ResizeOrRaise" + +Mouse 1 T A Function "MoveOrRaise" + +Mouse 1 I A Iconify +Mouse 2 I A Iconify +Mouse 3 TSIF A RaiseLower + +Mouse 1 2 A Maximize 0 100 +Mouse 2 2 A Maximize 100 100 +Mouse 3 2 A Maximize 100 0 +Mouse 0 4 A Iconify +Mouse 1 3 A Stick diff --git a/threadlocking.patch b/threadlocking.patch new file mode 100644 index 0000000..edc7dc7 --- /dev/null +++ b/threadlocking.patch @@ -0,0 +1,105 @@ +From 58cc099368de9b0dd8bf5d2daa0f31d5c373f812 Mon Sep 17 00:00:00 2001 +From: Thomas Adam +Date: Tue, 2 May 2023 16:53:10 +0100 +Subject: [PATCH] debian bug 1034054: backport fvwm3 xthreadlock() + +Backport this fix from fvwm3 to fvwm2: + +https://github.com/fvwmorg/fvwm3/commit/5c17c83df4605d2d97999740cf180af983298896 + +XCheckIfEvent() holds the X display lock and the predicate +function it calls is not allowed to call any Xlib function that +would re-enter the lock. +libX11 1.8.1 enables X display locks unconditionnaly (it was only +enabled by XInitThreads() when called explicitely before) and +thus exposes the issue. + +So don't process events in the FCheckPeekIfEvent() predicate, but +instead use a separate handler that is called for the returned event +out of the lock. + +--- + fvwm/events.c | 9 ++++++++- + libs/FEvent.c | 22 ++++++++++++++++++++++ + libs/FEvent.h | 8 ++++++++ + 3 files changed, 38 insertions(+), 1 deletion(-) + +diff --git a/fvwm/events.c b/fvwm/events.c +index a2d024068..7a3d06c3b 100644 +--- fvwm/events.c ++++ fvwm/events.c +@@ -258,6 +258,12 @@ static int _pred_weed_accumulate_expose( + return 1; + } + ++static int _pred_weed_is_expose( ++ Display *display, XEvent *event, XPointer arg) ++{ ++ return (event->type == Expose); ++} ++ + static int _pred_weed_handle_expose( + Display *display, XEvent *event, XPointer arg) + { +@@ -4542,7 +4548,8 @@ void handle_all_expose(void) + + saved_event = fev_save_event(); + FPending(dpy); +- FWeedIfEvents(dpy, _pred_weed_handle_expose, NULL); ++ FWeedAndHandleIfEvents(dpy, _pred_weed_is_expose, ++ _pred_weed_handle_expose, NULL); + fev_restore_event(saved_event); + + return; +diff --git a/libs/FEvent.c b/libs/FEvent.c +index 24d019dd1..ec31728a9 100644 +--- libs/FEvent.c ++++ libs/FEvent.c +@@ -532,6 +532,28 @@ int FWeedIfEvents( + return weed_args.count; + } + ++int FWeedAndHandleIfEvents( ++ Display *display, ++ int (*weed_predicate) (Display *display, XEvent *event, XPointer arg), ++ int (*handler) (Display *display, XEvent *event, XPointer arg), ++ XPointer arg) ++{ ++ _fev_weed_args weed_args; ++ XEvent e; ++ ++ assert(fev_is_invalid_event_type_set); ++ memset(&weed_args, 0, sizeof(weed_args)); ++ weed_args.weed_predicate = weed_predicate; ++ weed_args.arg = arg; ++ if (FCheckPeekIfEvent(display, &e, _fev_pred_weed_if, ++ (XPointer)&weed_args)) { ++ handler(display, &e, arg); ++ } ++ _fev_pred_weed_if_finish(&weed_args); ++ ++ return weed_args.count; ++} ++ + int FWeedIfWindowEvents( + Display *display, Window window, + int (*weed_predicate) ( +diff --git a/libs/FEvent.h b/libs/FEvent.h +index 821aef51a..2622f4474 100644 +--- libs/FEvent.h ++++ libs/FEvent.h +@@ -113,6 +113,14 @@ int FWeedIfEvents( + Display *display, XEvent *current_event, XPointer arg), + XPointer arg); + ++/* Same as FWeedIfEvents but with a second callback out of XLockDisplay() ++ * to handle events in a lock-safe manner */ ++int FWeedAndHandleIfEvents( ++ Display *display, ++ int (*weed_predicate) (Display *display, XEvent *event, XPointer arg), ++ int (*handler) (Display *display, XEvent *event, XPointer arg), ++ XPointer arg); ++ + /* Same as FWeedIfEvents but weeds only events for the given window. The + * weed_predicate is only called for events with a matching window. */ + int FWeedIfWindowEvents(