glfs/x/wm/sawfish.xml
Bruce Dubbs 12fe806968 Remove unneeded .desktop files.
Several packages add unneeded .desktop files in /usr/share/xsessions/.
These then show up in display managers and can confuse users.
This change moves them out of the way.

Also document that lxdm does not support wayland based desktop sessions.
2023-02-22 19:21:48 -06:00

353 lines
11 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY sawfish-download-http "https://download.tuxfamily.org/sawfish/sawfish_&sawfish-version;.tar.xz">
<!ENTITY sawfish-download-ftp " ">
<!ENTITY sawfish-md5sum "fd6ca5be0acbee8ea150945d3fb3ec60">
<!ENTITY sawfish-size "2.7 MB">
<!ENTITY sawfish-buildsize "52 MB">
<!ENTITY sawfish-time "0.3 SBU">
]>
<sect1 id="sawfish" xreflabel="sawfish-&sawfish-version;">
<?dbhtml filename="sawfish.html" ?>
<title>sawfish-&sawfish-version;</title>
<indexterm zone="sawfish">
<primary sortas="a-Sawfish">Sawfish</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to sawfish</title>
<para>
The <application>sawfish</application> package contains a window
manager. This is useful for organizing and displaying windows where all
window decorations are configurable and all user-interface policy is
controlled through the extension language.
</para>
&lfs113_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&sawfish-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&sawfish-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &sawfish-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &sawfish-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &sawfish-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &sawfish-time;
</para>
</listitem>
</itemizedlist>
<!--
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/sawfish-&sawfish-version;-gcc10_fixes-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">sawfish Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="gdk-pixbuf-xlib"/>,
<xref linkend="rep-gtk"/>, and
<xref linkend="which"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="libnsl"/>
</para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/sawfish"/></para>
</sect2>
<sect2 role="installation">
<title>Installation of sawfish</title>
<!--
<para>
First, adapt <application>sawfish</application> to build with GCC-10:
</para>
<screen><userinput remap="pre">patch -Np1 -i ../sawfish-&sawfish-version;-gcc10_fixes-1.patch</userinput></screen>
-->
<para>
Install <application>sawfish</application> by running the following
commands:
</para>
<screen><userinput>./configure --prefix=/usr --with-pango &amp;&amp;
make</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
<para>This package creates six .desktop files in the
/usr/share/xsessions/ directory. All but one are needed in a
BLFS system, so prevent the extra files showing up as options
in a window manager. As the &root; user:</para>
<screen role="root"><userinput>mkdir -p /usr/share/xsessions/deprecated &amp;&amp;
mv -v /usr/share/xsessions/sawfish-*.desktop /usr/share/xsessions/deprecated</userinput></screen>
</sect2>
<!--
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>- -disable-themer</parameter>: This
option prevents building the <application>sawfish</application> themer.
This program was not migrated to <application>GTK-2</application>.
</para>
<para>
<option>- -with-audiofile</option>: This command directs
<application>sawfish</application> to use
<filename class="libraryfile">libaudiofile</filename>
for sound manipulation.
</para>
<para>
<option>- -with-esd</option>: This command directs
<application>sawfish</application> to use the Enlightened Sound
Daemon.
</para>
</sect2>
-->
<sect2 role="configuration">
<title>Configuring sawfish</title>
<sect3 id="sawfish-config">
<title>Configuration Information</title>
<indexterm zone="sawfish sawfish-config">
<primary sortas="e-AA.xinitrc">~/.xinitrc</primary>
</indexterm>
<para>
Be sure to backup your current <filename>.xinitrc</filename>
before proceeding.
</para>
<screen><userinput>cat &gt;&gt; ~/.xinitrc &lt;&lt; "EOF"
<literal>exec sawfish</literal>
EOF</userinput></screen>
<para>
Optionally, you can use a Display Manager, such as <xref
linkend="lxdm"/>.
</para>
<para>
From the developers: <quote>The default menu binding is somewhat
obscure; you must middle-click on the background to bring up the menus.
(If you have a two-button mouse, try clicking both buttons
simultaneously)</quote>. You can find this at <ulink
url="https://download.tuxfamily.org/sawfish/themes/FAQ.html/">sawfish's
FAQ</ulink>.
</para>
</sect3>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>
sawfish, sawfish-about, sawfish-client, sawfish-config,
sawfish-kde4-session, sawfish-kde5-session, sawfish-lumina-session,
sawfish-mate-session, and sawfish-xfce-session
</seg>
<seg>
Several internal modules under /usr/lib/sawfish tree
</seg>
<seg>
/usr/include/sawfish,
/usr/lib/sawfish,
/usr/lib/rep/sawfish, and
/usr/share/sawfish
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="sawfish-prog">
<term><command>sawfish</command></term>
<listitem>
<para>
is the extensible window manager using a
<application>Lisp</application>-based scripting language
</para>
<indexterm zone="sawfish sawfish-prog">
<primary sortas="b-sawfish">sawfish</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-about">
<term><command>sawfish-about</command></term>
<listitem>
<para>
is the <application>sawfish</application> about window
</para>
<indexterm zone="sawfish sawfish-about">
<primary sortas="b-sawfish-about">sawfish-about</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-client">
<term><command>sawfish-client</command></term>
<listitem>
<para>
allows you to connect to a window manager process and
evaluate arbitrary <application>Lisp</application> forms
</para>
<indexterm zone="sawfish sawfish-client">
<primary sortas="b-sawfish-client">sawfish-client</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-config-prog">
<term><command>sawfish-config</command></term>
<listitem>
<para>
is the <application>sawfish</application> configuration manager
</para>
<indexterm zone="sawfish sawfish-config-prog">
<primary sortas="b-sawfish-config-prog">sawfish-config</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-kde4-session">
<term><command>sawfish-kde4-session</command></term>
<listitem>
<para>
is a script to run <application>KDE4</application> using
<application>sawfish</application>
</para>
<indexterm zone="sawfish sawfish-kde4-session">
<primary sortas="b-sawfish-kde4-session">sawfish-kde4-session</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-kde5-session">
<term><command>sawfish-kde5-session</command></term>
<listitem>
<para>
is a script to run <application>Plasma 5</application> using
<application>sawfish</application>
</para>
<indexterm zone="sawfish sawfish-kde5-session">
<primary sortas="b-sawfish-kde5-session">sawfish-kde5-session</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-mate-session">
<term><command>sawfish-mate-session</command></term>
<listitem>
<para>
is a script to run <application>mate</application> using
<application>sawfish</application>
</para>
<indexterm zone="sawfish sawfish-mate-session">
<primary sortas="b-sawfish-mate-session">sawfish-mate-session</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-lumina-session">
<term><command>sawfish-lumina-session</command></term>
<listitem>
<para>
is a script to run <application>Lumina</application> using
<application>sawfish</application>
</para>
<indexterm zone="sawfish sawfish-lumina-session">
<primary sortas="b-sawfish-lumina-session">sawfish-lumina-session</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="sawfish-xfce-session">
<term><command>sawfish-xfce-session</command></term>
<listitem>
<para>
is a script to run <application>xfce</application> using
<application>sawfish</application>
</para>
<indexterm zone="sawfish sawfish-xfce-session">
<primary sortas="b-sawfish-xfce-session">sawfish-xfce-session</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>