Sawfish 1.13.0   Recently updated !


Sawfish

Sawfish Window Manager for X11

Sawfish is an extensible window manager using an Emacs Lisp-like scripting language–all window decorations are configurable, the basic idea is to have as much user-interface policy as possible controlled through the Lisp language.

Despite this extensibility its policy is currently very minimal compared to most window managers. Its aim is simply to manage windows in the most flexible and attractive manner possible. As such it does not implement desktop backgrounds, applications docks, or other things that may be achieved through separate applications.

All high-level wm functions are implemented in Lisp for future extensibility or redefinition. Currently this includes menus (using GTK+), interactive window moving and resizing, virtual desktop, iconification, focus/transient window policies, frame theme definitions and much more.

Also, most received events are exported to the Lisp environment through „key-bindings“ and hooks, similar to in Emacs. These events include pointer behaviour and many internal X11 events (enter/leave, focus-in/focus-out, map/unmap, etc..)

License: GNU GPL v2

Downloads:

git deb file-roller

 

ChangeLog:

1.13.0 "Bolero"
===============

   • Bug Fixes
        − Fix random resize issues with GTK+3 [GSR]

        − Improved KDE4/5 integration, prevent Plasma and KRunner
          windows to be tiled.  [Christopher Bratusek]

        − Update KDE5 session script, use ‘startx11-plasma’ instead of
          ‘startkde’ [Christpher Bratusek]

        − Make ‘shring-yank’ recognise screen edges when shrinking or
          yanking windows, when the window crosses screen edges [Michal
          Nazarewicz]

        − Add support for ‘_NET_FRAME_EXTENTS’ and
          ‘_NET_REQUEST_FRAME_EXTENTS’ properties, fixing issues with
          HTML5 data element positioning in browsers, and several more
          [GSR]

        − Fix wrong detection of GNOME because of other DEs using an old
          GNOME-related envvar [Christopher Bratusek]

   • Build and Installation
        − Make build reproducible [Bernhard M. Wiedemann]

        − Fix cross compilation [Helmut Grohne]

        − Fix compilation with GCC10 [Kim B. Heino]
             x allow overriding ‘build-info’ build time, hostname and
               username.
             x avoid recreating theme tarball for every single file (the
               old code was erroneously recreating theme tarballs for
               each file contained thus calling ‘tar’ over 200 times to
               create 8 tarballs)
             x make ‘DOC’ file reproducibly
             x other improvements to make builds reproducible

        − Explicitely check for ‘rep’ binary, not just ‘librep-dev’.
          [Christopher Bratusek]

        − First check for ‘libgtk2.0-dev’ then for ‘rep-gtk-dev’.
          [Christopher Bratusek]

        − Only create session file directories for GNOME 2, KDE 4 or KDE
          5 if actually requested by user.  [Christopher Bratusek]

        − Makefile.in ‘distclean’ target no longer utilizes
          debian/rules, no longer removes finalized RPM spec file or
          Gentoo ebuild.  [Christopher Bratusek]

        − Remove dead code from ‘build-info’ [Ulrik Haugen]

        − Revert commit ‘6ad175d835aee85179259d7c02b3be152d3e4b86’, "The
          problem is that any sticky windows that have been focused…",
          see https://github.com/SawfishWM/sawfish/pull/49 [Mario
          Goulart]

   • New or changes features
        − Make ‘match-window’ allow specifying arbitrary functions as
          filter [Michal Nazarewicz]

   • Miscellaneous Changes
        − Various minor changes to the Makefiles, mostly replacing
          ‘gitlcean’ target with ‘distclean’ target and adding ‘.PHONY’
          section.  Also move theme tarball creation into ‘all’ target,
          rather than ‘install’ target.  [Christopher Bratusek]

        − Make ‘rename-window’ throw an actual useful error message if
          no string (or no usable) was given.  [Christopher Bratusek]

        − Make ‘resize-window-prompt’ throw an actual useful error
          message if one (or both) of the input values was not given.
          [Christopher Bratusek]

        − Move several modules from ‘sawfish.wm.prg’ into the Sawfish
          Extras package [Christopher Bratusek]
             + ‘diodon’
             + ‘fehlstart’
             + ‘idesk’
             + ‘nm-applet’
             + ‘pancake’

        − Filter out ‘Trayer’ in ‘cabinet’.  [Christopher Bratusek]

        − Update Lumina integration.  [Christopher Bratusek]

        − Update GNOME integration and explicitely check for GNOME,
          respectively GNOME-classic [Christopher Bratusek]

        − Update KDE5 integration, check for plasma as desktop session
          [Christopher Bratusek]

        − Simplify Frame-Style README parsing.  [OpenBSD patch]

        − Update Japanese translation.  [Takeshi Hamasaki]

        − Update Korean translation.  [parkmino]