Bye bye Gnome, hello Openbox

Adapter son environnement  de travail à vos envies du moment, voilà un domaine ou Linux a beaucoup d’avance sur ses concurrents !

Au cours de ces dernières années passées sous Linux, j’ai essayé un peu tous les environnements de bureau, e16, kde, gnome, fluxbox, xfce… tout y est passé ou presque.

Ces temps-ci, je m’étais arrêté sur Gnome, pour une raison essentielle, c’est simple et efficace, et bien « packagé » dans les grandes distributions. Seulement voilà, l’envie de changer est de retour, et ce pour de bonnes raisons (enfin, tout est question de point de vue;-) : a force d’utiliser gnome, je l’ai adapté à mes besoins, je n’utilise pas le bureau, pas plus que gnome-terminal (depuis l’épisode urxvt / screen ),  je ne me sers que de nautilus, du panel et de nombreuses applications GTK ou QT. Pourquoi alors conserver Gnome, qui n’est pas particulièrement réactif et léger (tiens un troll !)? Ici où là, au fil des flux RSS, je vois fleurir des expériences, heureuses le plus souvent, avec un gestionnaire de fenêtres que je ne connais pas encore : OpenBox.

Après quelques tests rapides, j’ai retenu comme environnement OpenBox équipé du fameux dock « Avant Window Manager », de nautilus, urxvt / screen  et quelques autres « bouts » de gnome (gnome-power-manager, gnome-settings-daemon, nm-applet…)

Rien ne vaut une petite capture d’écran pour résumer tout ça 😉

OpenBox

Pour ce qui est de l’installation, c’est simple, il ne faut que quelques coups d' »apt-get »…

[code]

sudo apt-get install openbox obmenu obconf awn-applets-c-core awn-applets-c-extras awn-applets-python-core awn-applets-python-extras awn-manager libawn-extras0 libawn0 python-awn python-awn-extras python-awnlib parcellite

[/code]

seulement voilà, un vilain bug c’est glissé dans la code d’OpenBox et la combinaison OpenBox /awn provoque des problèmes de focus. Il y a une « barre » d’une centaine de pixels en bas de l’écran qui reste innaccessible aux « clics » de souris. Pas de problème, notre chère communauté a bien travaillé, un patch est déjà disponible. Le bug est référencé ici, et le pach .

Pour être le plus propre possible, nous allons « patcher » le paquet OpenBox d’Ubuntu (Je suis actuellement sous Jaunty 64bits)

[code]

mkdir ~/compil

cd ~/compil

sudo apt-get source openbox

wget -O openbox.patch http://bugzilla-attachments.icculus.org/attachment.cgi?id=1893

cd openbox-3.4.7.2/

cat ../openbox.patch | sudo patch -p0

sudo apt-get install devscripts

sudo apt-get build-dep openbox

sudo debuild -us -uc

cd ..

sudo dpkg -i *.deb

[/code]

Ca y est, après quelques minutes, on a notre openbox patché et installé. Fini le bug de la barre en bas.

Il ne reste plus qu’à « customiser » l’environnement. La configuration d’openbox est accessible soit via les utilitaires obconf et obmenu soit avec un bon éditeur de texte dans .config/openbox/…

J’ai ajouté un certain nombre de programmes au démarrage de ma session. Voilà le fichier autostart.sh d’openbox.

[code]

# This shell script is run before Openbox launches.
# Environment variables set here are passed to the Openbox session.

xcompmgr &

# Set a background color
BG= » »
if which hsetroot >/dev/null; then
BG=hsetroot
else
if which esetroot >/dev/null; then
BG=esetroot
else
if which xsetroot >/dev/null; then
BG=xsetroot
fi
fi
fi
test -z $BG || $BG -solid « #303030 »

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

# Make GTK apps look and behave how they were set up in the gnome config tools
if test -x /usr/libexec/gnome-settings-daemon >/dev/null; then
/usr/libexec/gnome-settings-daemon &
elif which gnome-settings-daemon >/dev/null; then
gnome-settings-daemon &
# Make GTK apps look and behave how they were set up in the XFCE config tools
elif which xfce-mcs-manager >/dev/null; then
xfce-mcs-manager n &
fi

# Run XDG autostart things.  By default don’t run anything desktop-specific
# See xdg-autostart –help more info
DESKTOP_ENV= » »
if which /usr/lib/openbox/xdg-autostart >/dev/null; then
/usr/lib/openbox/xdg-autostart $DESKTOP_ENV
fi

(
sleep 3
awn&
sleep 1
nm-applet&
pidgin&
parcellite&
conky&
gnome-power-manager&
)&

[/code]

Pour finir, voilà un petit voyage sur mon environnement ! [bliptv]2133383[/bliptv]

Backporter le noyau 2.6.28 de Jaunty dans Intrepid

Il y a quelques semaines, j’ai remplacé mon portable. Après avoir fait un tour des différents PC disponibles, j’ai finalement craqué pour un macbook alu. La machine est superbe comparé à la concurrence. Pour ce qui est de l’OS, c’est quand même mieux que Windows (a défaut d’être totalement ouvert, c’est stable et il y a un shell, un vrai…). Pour être tout à fait honnête, c’est même parfait pour celui qui veut un truc qui marche sans soucis… Mais pour moi Linux reste de loin plus intéressant car beaucoup plus ouvert.

J’ai donc installé sur mon Macbook Ubuntu 8.10 64bits. Tout fonctionne en suivant les instructions du site Ubuntu, il ne reste que le microphone et le haut parleur interne gauche qui ne marche pas chez moi. La puce audio semble un peu trop récente…

Afin d’améliorer encore le support pour ce nouveau matériel, j’ai décidé d’installer le noyau 2.6.28 présent dans Ubuntu Jaunty. La procédure est longue mais simple: il suffit de télécharger sur https://launchpad.net/ubuntu/jaunty/+source/linux/2.6.28-4.9 les sources du noyau, les patchs et le fichier de description puis d’utiliser pbuilder pour créer les packages

term1

[code]

# installation de l’outil de compilation

sudo apt-get install pbuilder

# Creation de l’environnement de compilation

sudo pbuilder create

[/code]

capture-pierremacbook-download

[code]

# Compilation du kernel

sudo pbuilder build linux_2.6.28-4.9.dsc

[/code]

capture

Vous allez pouvoir aller prendre un café, cette opération dure un certain temps. Attention aussi à prévoir pas mal d’espace, 10 gigas de libres ne sont pas superflus pour la compilation de l’ensemble. Si vous n’avez pas assez sur votre volume, vous pouvez compiler dans un autre répertoire à l’aide de l’option –buildplace de pbuilder.

Le résultat de cette longue phase de compilation se trouve dans /var/cache/pbuilder/result

Pour installer le nouveau noyau fraichement compilé,

[code]

sudo dpkg -i linux-image-2.6.28-4-generic_2.6.28-4.9_amd64.deb linux-headers-2.6.28-4-generic_2.6.28-4.9_amd64.deb

[/code]

Il ne me reste plus qu’à tester ce nouveau noyau 😉