Slackel 7.1 con jwm+spacefm+xdgmenumaker alla Vitforlinux.

Un motivo per provare Slackel è che non ci è piaciuto nessun altro Linux, lo vogliamo leggero ma semplice, basilare e senza troppi grilli per la testa e non abbiamo bisogno dei 50000 pacchetti disponibili su una Debian. Vogliamo tornare ai vecchi tempi quando abbiamo amato Slackware.

Slackel 7.1 con jwm+spacefm+xdgmenumaker alla Vitforlinux.

È uscita la nuova Slackel 7.1 una distribuzione greca basata su Openbox (ma è quasi LXDE) Slackware 14.2 e Salix, ma con pacchetti più aggiornati, potevo io non modificarla alla Vitforlinux con jwm+spacefm+xdgmenumaker? No!

Prima cosa ho scaricato la iso di Slackel 7.1 con openbox da SourceForge: https://sourceforge.net/projects/slackel/files/openbox/

Poi l’ho avviata scegliendo la lingua italiana e installata con l’ottimo Sli, l’installer più semplice che abbia mai visto, e che ha una schermata sola. La password dell’ utente one che si usa per l’installazi… one è… one!

slackel installer sli

Scelta la partizione, che si prepara prima con il noto Gparted premendo il pulsante “Partions”, il file system (il solito ext4), gli utenti, le password, si può scegliere tra installazione full, completa di Libreoffice, java, gimp…e base, più scarna che io ho preferito,  mentre la core la eviterei. Poi si preme il bottone “Install live system”

Dopo il riavvio per installare jwm, spacefm e xdgmenumaker (e udevil) basta rivolgersi, senza compilare, al talmente semplice da risultare ovvio Gslapt, intefaccia grafica di slapt-get che soddisfa automaticamente le dipendenze (la prima volta bisogna premere “Aggiorna”), e con cui si possono anche fare gli aggiornamenti (Aggiorna> Seleziona tutti gli aggiornamenti> Esegui> Aspetta che abbia finito)… troppo facile.

slackel installazione pacchetti gslapt

Se i pacchetti presenti in Gslapt non bastano c’è anche il comodo Sourcery con cui si possono compilare (ma non sempre) i pacchetti da sorgente, non sarà mai come yaourt e e le sue interfacce grafiche solo perchè come da tradizione Slackware non soddisfa automaticamente le dipendenze.

slackel compilazione pacchetti sourcery

Ora che abbiamo installato jwm+spacefm+xdgmenumaker… I 2 file di configurazione.

il contenuto del primo file che va copiato in un nuovo ~/.jwmrc (fate backup dell’eventuale vecchio) :

<?xml version="1.0"?>
<JWM>

    <!-- The root menu. -->
    <RootMenu onroot="12">
        <Program icon="terminal.png" label="Terminal">xterm</Program>
	
        <Menu icon="folder.png" label="Applications">
            <Program icon="music.png" label="Audacious">audacious</Program>
            <Program icon="calculator.png" label="Calculator">xcalc</Program>
            <Program icon="gimp.png" label="Gimp">gimp</Program>
            <Program icon="chat.png" label="Pidgin">pidgin</Program>
            <Program icon="www.png" label="Firefox">firefox</Program>
            <Program icon="editor.png" label="XEdit">xedit</Program>
        </Menu>
        <Menu icon="folder.png" label="Utilities">
            <Program icon="font.png" label="Fonts">xfontsel</Program>
            <Program icon="window.png" label="Window Properties">
                xprop | xmessage -file -
            </Program>
            <Program icon="window.png" label="Window Information">
                xwininfo | xmessage -file -
            </Program>
        </Menu>
	<Include>exec: xdgmenumaker -nif jwm </Include>
        <Separator/>
        <Program icon="lock.png" label="Lock">
            xlock -mode blank
        </Program>
        <Separator/>
        <Restart label="Restart" icon="restart.png"/>
        <Exit label="Exit" confirm="true" icon="quit.png"/>
	<Program icon="slackel" label="wm-logout">wm-logout</Program>
    </RootMenu>

    <!-- Options for program groups. -->
    <Group>
        <Option>tiled</Option>
        <Option>aerosnap</Option>
    </Group>
    <Group>
        <Class>Pidgin</Class>
        <Option>sticky</Option>
    </Group>
    <Group>
        <Name>xterm</Name>
        <Option>vmax</Option>
    </Group>
    <Group>
        <Name>xclock</Name>
        <Option>drag</Option>
        <Option>notitle</Option>
    </Group>

    <!-- Tray at the bottom. -->
    <Tray x="0" y="-1" height="24" autohide="off">

        <TrayButton icon="/usr/share/icons/hicolor/24x24/apps/slackel.png" label="Slackel">root:1</TrayButton>
        <Spacer width="2"/>
        <TrayButton label="_">showdesktop</TrayButton>
        <Spacer width="2"/>

        <Pager labeled="true"/>

        <TaskList maxwidth="256"/>

        <Dock/>
        <Clock format="%H:%M"><Button mask="123">exec:xclock</Button></Clock>

    </Tray>

    <!-- Visual Styles -->
    <WindowStyle>
        <Font>Sans-9:bold</Font>
        <Width>4</Width>
        <Height>21</Height>
        <Corner>3</Corner>
        <Foreground>#FFFFFF</Foreground>
        <Background>#555555</Background>
        <Outline>#000000</Outline>
        <Opacity>0.5</Opacity>
        <Active>
            <Foreground>#FFFFFF</Foreground>
            <Background>#0077CC</Background>
            <Outline>#000000</Outline>
            <Opacity>1.0</Opacity>
        </Active>
    </WindowStyle>
    <TrayStyle group="true" list="all">
        <Font>Sans-9</Font>
        <Background>#333333</Background>
        <Foreground>#FFFFFF</Foreground>
        <Outline>#000000</Outline>
        <Opacity>0.75</Opacity>
    </TrayStyle>
    <PagerStyle>
        <Outline>#000000</Outline>
        <Foreground>#555555</Foreground>
        <Background>#333333</Background>
        <Text>#FFFFFF</Text>
        <Active>
            <Foreground>#0077CC</Foreground>
            <Background>#004488</Background>
        </Active>
    </PagerStyle>
    <MenuStyle>
        <Font>Sans-9</Font>
        <Foreground>#FFFFFF</Foreground>
        <Background>#333333</Background>
        <Outline>#000000</Outline>
        <Active>
            <Foreground>#FFFFFF</Foreground>
            <Background>#0077CC</Background>
        </Active>
        <Opacity>0.85</Opacity>
    </MenuStyle>
    <PopupStyle>
        <Font>Sans-9</Font>
        <Foreground>#000000</Foreground>
        <Background>#999999</Background>
    </PopupStyle>

    <!-- Path where icons can be found.
         IconPath can be listed multiple times to allow searching
         for icons in multiple paths.
      -->
    <IconPath>
        /usr/share/icons/wm-icons/32x32-aquafusion
    </IconPath>
    <IconPath>
        /usr/local/share/jwm
    </IconPath>

    <!-- Virtual Desktops -->
    <!-- Desktop tags can be contained within Desktops for desktop names. -->
    <Desktops width="4" height="1">
        <!-- Default background. Note that a Background tag can be
              contained within a Desktop tag to give a specific background
              for that desktop.
         -->
        <Background type="solid">#111111</Background>
    </Desktops>

    <!-- Double click speed (in milliseconds) -->
    <DoubleClickSpeed>400</DoubleClickSpeed>

    <!-- Double click delta (in pixels) -->
    <DoubleClickDelta>2</DoubleClickDelta>

    <!-- The focus model (sloppy or click) -->
    <FocusModel>sloppy</FocusModel>

    <!-- The snap mode (none, screen, or border) -->
    <SnapMode distance="10">border</SnapMode>

    <!-- The move mode (outline or opaque) -->
    <MoveMode>opaque</MoveMode>

    <!-- The resize mode (outline or opaque) -->
    <ResizeMode>opaque</ResizeMode>

    <!-- Key bindings -->
    <Key key="Up">up</Key>
    <Key key="Down">down</Key>
    <Key key="Right">right</Key>
    <Key key="Left">left</Key>
    <Key key="h">left</Key>
    <Key key="j">down</Key>
    <Key key="k">up</Key>
    <Key key="l">right</Key>
    <Key key="Return">select</Key>
    <Key key="Escape">escape</Key>

    <Key mask="A" key="Tab">nextstacked</Key>
    <Key mask="A" key="F4">close</Key>
    <Key mask="A" key="#">desktop#</Key>
    <Key mask="A" key="F1">root:1</Key>
    <Key mask="A" key="F2">window</Key>
    <Key mask="A" key="F10">maximize</Key>
    <Key mask="A" key="Right">rdesktop</Key>
    <Key mask="A" key="Left">ldesktop</Key>
    <Key mask="A" key="Up">udesktop</Key>
    <Key mask="A" key="Down">ddesktop</Key>
    
<StartupCommand>~/autostart.sh</StartupCommand>
</JWM>

il contenuto del secondo file che va copiato in un nuovo ~/autostart.sh perché si colleghi correttamente a ~.jwmrc e bisogna dare dati i corretti permessi di esecuzione. (chmod +x)

#!/bin/sh
#
# openbox startup-script:

# Applications you want to run with openbox.
# MAKE SURE THAT APPS THAT KEEP RUNNING HAVE AN ''&'' AT THE END.
#

# D-bus
if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
eval `dbus-launch --sh-syntax --exit-with-session`
fi

([ -x /usr/bin/batti ] && dbus-launch batti) &
([ -x /usr/bin/xdg-user-dirs-update ] && xdg-user-dirs-update) &
#(sleep 1 && [ -x /usr/bin/pcmanfm ] && dbus-launch pcmanfm --desktop) &
(sleep 1 && [ -x /usr/bin/spacefm ] && spacefm --desktop) &
#([ -x /usr/bin/spacefm ] && spacefm --set-wallpaper=/usr/share/wallpapers/slackel.png) &
([ -x /usr/bin/conky ] && conky) &
([ -x /usr/bin/pasystray ] && pasystray) &
#([ -x /usr/bin/volumeicon ] && volumeicon) &
([ -x /usr/bin/wicd-gtk ] && wicd-gtk -t) &
(setxkbmap -query | grep "^layout:" | sed "s/^layout: *//" | grep -q "," && [ -x /usr/bin/fbxkb ] && fbxkb) &
#(sleep 1 && [ -x /usr/bin/fbpanel ] && fbpanel) &
#(sleep 1 && [ -x /usr/bin/lxpanel ] && lxpanel) &
#(sleep 1 && [ -x /usr/libexec/menu-cached ] && /usr/libexec/menu-cached) &
#(sleep 1 && [ -x /usr/bin/parcellite ] && parcellite) &
#(sleep 9 && [ -x /usr/bin/xscreensaver ] && xscreensaver -nosplash) &
Annunci