Table des matières

Fluxbox

Description rapide

Fluxbox est un gestionnaire de fenêtres (window manager) basé sur Blackbox et sous licence MIT2).

Caractéristiques

L'installation de Fluxbox

Vous pouvez installer très facilement Fluxbox via votre gestionnaire de paquets, ici pour debian:

apt update && apt install fluxbox fbautostart

Ou rendez vous sur le site officiel de Fluxbox pour télécharger le .deb

fbautostart permet de prendre en compte les applications prévues pour être lancées en début de session.

Le menu Fluxbox

Tout d'abord une chose essentielle à savoir, le menu est accessible via le “clic droit”. Après une installation toute fraîche vous aurez droit à un menu plutôt complet. Deux solutions s'offrent à vous, soit garder ce menu ou bien éditer le vôtre à la main.

Personnaliser son menu

Pour personnaliser son menu, il vous faudra éditer le fichier du même nom qui se trouve dans ~/.fluxbox/menu. Examinons quelques parties du mien après le lancement de fluxbox-generate_menu.

Le menu fluxbox commence par cette ligne

[begin] (Fluxbox)

C'est le nom que portera votre menu, vous pouvez si vous le voulez personnaliser le nom de votre menu, pour cela éditer simplement (Fluxbox) pour mettre le nom que vous désirez.

Voici comment ajouter une application dans votre menu

[exec] (Eterm) {Eterm}

Explication

[execution] (nom de l'application) {chemin de l'application}

Créer un sous menu

[submenu] (Terminals)
  [exec] (xterm) {xterm}
  [exec] (Eterm) {Eterm}
  [exec] (aterm) {aterm}
[end]

Explication

[sous-menu] (Nom du sous-menu)
    [exec] (xterm) {xterm}
    [exec] (Eterm) {Eterm}
    [exec] (aterm) {aterm} 
[Fin du sous-menu]

Vous pouvez aussi ajouter des sous menus dans les sous menus ex:

[submenu] (Net)
[submenu] (Browsers)
      [exec] (firefox) {firefox} 
[end]
[submenu] (IM)
      [exec] (gaim) {gaim} 
      [exec] (psi) {psi} 
[end]
[submenu] (Mail)
      [exec] (evolution) {evolution} 
      [exec] (mutt) {Eterm -e mutt} 
[end]
[submenu] (News)
      [exec] (liferea) {liferea} 
[end]
[submenu] (IRC]
      [exec] (xchat) {xchat} 
[end]
[submenu] (P2P)
      [exec] (amule) {amule} 
[end]
[submenu] (ftp)
      [exec] (gftp) {gftp} </usr/share/gftp/gftp.xpm>
[end]
[end]

Attention!!! il y a parfois quelques subtilités.

[exec] (eterm) {eterm} je retrouve bien “eterm” dans le menu mais rien ne se lance. Ou est l'erreur ?… Bah, en fait, on installe “eterm” mais on utilise “Eterm” avec une majuscule dans la configuration du menu. Pensez y!.

La personnalisation ne s'arrête pas là, vous pouvez aussi ajouter des icônes pour chaque application dans votre menu.

Ajouts d'icônes dans le Menu

Il vous suffit pour cela d'ajouter le chemin de votre image (forcement .xpm) après la syntaxe de base que nous avons vu plus haut.

[exec] (gftp) {gftp} </usr/share/gftp/gftp.xpm>

Personnalisation de Fluxbox

Nous avons maintenant une Fluxbox prête à l'emploi avec un joli petit menu qui va bien, mais certaines options supplémentaires vous manquent. Les raccourcies clavier ou “keys” les raccourcis bureau et le fond d'écran que vous aimez tant; me trompe-je ? :-P Et oui, comme Fluxbox est optimisé pour la légèreté, il va falloir nous même installer ce qu'il nous faut pour avoir ce privilège.

Raccourcis Clavier

Généralement le fichier contenant les raccourcis se trouve dans ~/.fluxbox/keys. Pour le modifier, un simple éditeur de texte est suffisant. Suite à une modification dans ce fichier, vous devrez passer par un “Reload config” via le menu (par défaut de Fluxbox)pour que les changements prennent effet.

La syntaxe des raccourcis clavier est la suivante:

  <mod> [<mod> <mod>] touche [touche touche] :commande <options de la commande>

le <mod> est un “modificateur”, une touche spéciale de votre clavier. Pour connaître les différentes touches spéciales de votre clavier, tapez :

xmodmap -pm

dans une console. En général les “modificateurs” des claviers standards sont:

  
  Mod1    == Alt
  Mod4    == Touche Windows
  Control == Ctrl
  Shift   == Shift

Pour identifier le “nom” d'une touche, ouvrez une console et tapez ' xev'. Vous devrez ensuite sélectionner une touche ou cliquer sur un bouton de la souris et le résultat s'affichera. Si une touche que vous souhaitez utiliser n'a pas de nom, vous pouvez utiliser son code ascii (Fluxbox le gère sans problème). Ce code est identifié derrière le 'keycode'. Quelques exemples de raccourcis:

  
  Control i :ExecCommand xterm   # Ctrl+i lancera xterm
  Mod4 4 :Workspace 4            # Touche Windows+4 se mettra sur le workspace 4
  None F12 :ExecCommand firefox  # F12 lancera Firefox
  Mod1 Shift F4 :KillWindow      # Alt+Shift+F4 fermera la fenêtre qui a le focus
  Mod1 113 :exec xterm           # Lance xterm : notez l'utilisation du code ascii
  XF86HomePage :exec firefox     # Utilise le lancement rapide présent sur certains clavier multimédia
  

Pour lancer une application, utilisez ExecCommand, ou Exec si vous voulez faire plus court. Vous pouvez exécuter ce que vous voulez (script, applications, …). Certaines combinaisons de touches ne fonctionneront pas.

A savoir

  Les Commandes ne sont pas sensibles à la casse
  Les numéros des Workspaces commencent à 1
  Certaines commandes ont des synonymes
  L'espace avant le ":" est **obligatoire !**
  Certaines combinaisons de touches sont proscrites comme : **Control n Control a** :exec nautilus (on n'est pas sous emacs) 

Mettre son fond d'écran

Il existe plusieurs possibilités pour choisir un fond d'écran.
nitrogen, bsetroot, feh et fbsetbg entre autres.
Voici comment mettre votre fond d'écran avec fbsetbg:

fbsetbg -f /home/user/.fluxbox/backgrounds/votre fond d'écran.png

Pour choisir par la suite un nouveau fond d'écran, le mieux est de placer vos images dans le répertoire :
~/.fluxbox/backgrounds
fbsetbg supporte les options comme :
-f (fullscreen) par default, -c (centré), -t (mozaique), -a (maximise), -r (random) et d'autres options. Un fbsetbg -h vous donneras un peu plus d'infos. (fbsetbg -h pour help)

Si vous voulez utiliser xcompmgr pour avoir la transparence, fbsetbg n'est pas compatible. Cela fonctionne plus ou moins mais au ralenti et lancer xcompmgr vous montrera plein de messages d'erreur.
Il vous faudra alors laisser fbsetbg pour nitrogen, par exemple.
Après l'avoir installé (il est sur les dépôts), pour choisir un fond d'écran :

nitrogen:

nitrogen /home/user/le chemin des photos

En faisant un :

cat lastwallpaper

dans le fichier /.fluxbox

nous avons les informations suivante :

/home/user/.fluxbox# cat lastwallpaper 
$full $full|/home/user/Images/Fond Red.png||:0.0

nitrogen peut aussi fonctionner en mode graphique :

nitrogen &

Placer ensuite après la ligne : # Applications you want to run with fluxbox.

 nitrogen --restore &

dans le fichier ./fluxbox/startup

feh:
Les images sont à mettre dans :

 ~/.config/feh/themes

Dans le fichier ~/.fluxbox/startup vous ajoutez :

 ~/.fehbg &

Toujours après # Applications you want to run with fluxbox.

Ensuite dans votre fichier : ~/.fehbg vous placez :

 "feh  --bg-scale '.config/feh/themes/votre image.jpg'"

Garder votre fond d'écran au redémarrage

Le thème que vous avez sur votre Fluxbox remettra, à chaque redémarrage de votre système, son fond d'écran par défaut. Pour éviter cela il faut éditer votre fichier ~/.fluxbox/init et lui ajouter cette ligne:

session.screen0.rootCommand: fbsetbg -l

pour fbsetbg.

session.screen0.rootCommand: -l

pour nitrogen.

Ce qui aura pour effet de permettre à Fluxbox, de se souvenir de votre dernier fond d'écran utilisé.

Les icônes de bureau

Au même titre que le fond d'écran, il vous faudra aussi mettre un peu les mains dans le cambouis pour avoir de belles icônes sur votre bureau.
Nous allons ici nous servir de idesk

Installation de idesk

apt-get install idesk

Ensuite il vous faudra créer le dossier .idesktop, c'est lui qui contiendra vos fichiers .lnk. Le fichier .lnk détient les infos concernant vos icônes/liens applications.

mkdir /home/votrenom/.idesktop

ou

mkdir ~/.idesktop

Nous allons pouvoir maintenant créer notre premier fichier .lnk (dans le dossier .idesktop), voici ce qu'il doit comporter.

Exemple : mon fichier xchat.lnk

fichier xchat.lnk
table Icon
  Caption: xchat
  Icon: /home/syb/.idesktop/icones/xchat.xpm
  X: 32
  Y: 66
  Command: xchat
end

Faites de même pour toutes vos icônes. Pour voir vos icônes lancez idesk via la console ;-)

Lancer idesk au démarrage

Pour lancer idesk à chaque démarrage de Fluxbox il suffit simplement d'éditer votre fichier ~/.fluxbox/startup et de dé-commenter la ligne

 idesk &

ou simplement l'ajouter si elle n'existe pas, après :

 # Applications you want to run with Fluxbox.

Pendant que nous sommes dans l'apparence de Fluxbox faisons un petit tour du côté des thèmes.

Les thèmes

Voici quelques liens ou vous trouverez quelques thèmes pour votre fluxbox chérie (si ça ne l'est pas encore elle le deviendra ;-))

Une fois l'archive téléchargée, il ne vous restera plus qu'à la désarchiver et à placer le thèmes dans ~/.fluxbox/styles

Pour le sélectionner –> clic droit sur le bureau –> Fluxbox menu –> User styles

Bureaux virtuels comme Gnome et KDE avec fbpager

Une petite installation ;-)

apt-get install fbpager

Créer le fichier de configuration fbpager (optionnel) dans dans ~/.fluxbox

nano ~/.fluxbox/fbpager

Et remplissez le avec ceci:

fichier fbpager
fbpager.alpha: 255
fbpager.x: 0                                 #Emplacement géographique horizontal (ici en bas)
fbpager.y: 0                                 #Emplacement géographique Vertical (et là a gauche)
fbpager.workspace.width: 64                  #La largeur de vos fenêtres
fbpager.workspace.height: 64                 #La hauteur de vos fenêtres
fbpager.workspacesPerRow: 6400
fbpager.followDrag: false
fbpager.followMove: false
fbpager.changeWorkspaceButton: 11
fbpager.raiseWindowButton: 2
fbpager.lowerWindowButton: 3
fbpager.closeWindowButton: 3 3 1
fbpager.exitButton: 1 3 3
fbpager.nextWorkspaceButton: 4
fbpager.prevWorkspaceButton: 5
fbpager.moveInWorkspaceButton: 1
fbpager.dragToWorkspaceButton: 2
fbpager.align: LeftToRight
fbpager.color: white
fbpager.windowColor: white                   #Les bordures de fenêtre intérieure
fbpager.focusedWindowColor: white            #La couleur de la fenêtre sélectionné 
fbpager.windowBorderColor: black             #La bordure de la fenêtre active
fbpager.backgroundColor: darkgray            #Couleur d'arrière plan
fbpager.currentBackgroundColor: lightgray    #Couleur du fond sélectionné
fbpager.multiClickTime: 250                  #Vitesse double clic pour choix fenêtre
fbpager.icons: false

A modifier à votre convenance.

Pour le démarrer en même temps que fluxbox éditez le fichier ~/.fluxbox/startup et ajoutez:

 fbpager &

Toujours dans la section : # Applications you want to run with fluxbox. Page des astuces fluxbox

Le slit

Personnellement je ne m'en sers pas mais je vais tout de même en parler pour que vous sachiez ce que c'est.

Le slit à l'inverse de ce que beaucoup de personnes peuvent penser n'est pas le nom donné à la barre d'outil de Fluxbox. C'est un emplacement, que vous pouvez configurer pour accueillir des applications “dockable”, les DockApps.

Les applications dites “dockables” sont des applications fonctionnant avec l'option -w

Par exemple pour les utilisateurs de Gkrellm, il vous suffira de le lancer avec l'option -w pour qu'il s'affiche dans le slit.

gkrellm -w

Plus d'info sur le site de fluxbox

Regrouper plusieurs fenêtres façon onglet

Il s'agit en fait de regrouper deux fenêtres d'applications différentes (ou identiques) ensembles et ainsi passer de l'une à l'autre avec des “onglets”. C'est l'une des fonctionnalités que j'apprécie le plus sous Fluxbox.

Ce n'est pas évident à expliquer.

Ouvrez deux applications différentes sur votre bureau comme par exemple un éditeur de texte et une console.

Placez l'éditeur de texte à gauche et la console à droite sur votre bureau, ensuite placez le curseur de votre souris sur le haut de la fenêtre de votre console et tout en cliquant dessus avec le scroll de votre souris (bouton du milieu) faites la glisser sur votre éditeur de texte.

Vos deux fenêtres sont maintenant regroupées et vous pouvez passer de l'une à l'autre avec un style onglet.

Pour les séparer faite la manipulation inverse ;)

Note : si le bouton du milieu ne vous permet pas de gérer les onglets, essayez Ctrl + clic gauche.

Voilà à quoi ressemble ma p'tite Fluxbox

Astuces

Embellir sa fluxbox

Avoir un Terminal transparent

Eterm

Pour avoir un beau Eterm complètement transparent il faudra éditer votre menu Fluxbox et remplacer le chemin d'exécution classique. Trouvez dans votre ~/.fluxbox/menu la ligne correspondante à Eterm et à la place de

{Eterm}

Entrez ceci

{Eterm -f white -b black -O --shade 25 --utmp-logging -x -w=0 --scrollbar=0 --buttonbar=0 -g  0x10x0x0}

Sauvegardez et lancez Eterm ;-)

gnome-terminal

Pour Gnome-terminal il suffit de passer par l'interface de gestion de Profil et l'onglet “arrière-plan”. Cocher le bouton “arrière-plan transparent” et agir sur la valeur de la barre situé juste en dessous.

Conky

Au même titre que Gkrellm et superkaramba, conky est un moniteur système qui vous donnera des infos concernant votre pc (CPU, RAM, SWAP, DD, processus, connexion internet,météo,Play-List etc….) Je l'apprécie tout particulièrement pour sa légèreté qui s'accorde très bien avec Fluxbox.

Bon… Commençons par l'installer.
Ensuite importez le thème par défaut de conky dans votre /home avec la commande:

zcat /usr/share/doc/conky/examples/conkyrc.sample.gz >> ~/.conkyrc

Vous pouvez d'ores et déjà le lancer via la console

conky

Le thème par défaut n'est pas génial, mais heureusement des thèmes sont à votre disposition sur cette page

Pour vous servir des thèmes c'est très simple, cliquez sur le lien “conkyrc” qui se trouve en dessous de chaque screenshot. Copiez/collez le contenu dans le fichier du même nom

nano ~/.conkyrc

Il ne vous reste plus qu'à redémarrer conky pour voir le nouveau thème. A savoir que les thèmes sont assez facilement modifiables.
Ouvrez votre ~/.conkyrc avec votre éditeur de texte préféré et vous pourrez très facilement changer la place de celui-ci sur le bureau, les couleurs etc..

Par exemple pour changer la place de conky sur le bureau trouvez le passage du code qui ressemble un peu à ça:

# Text alignment, other possible values are commented
alignment top_left
#alignment top_right
#alignment bottom_left
#alignment bottom_right

# Gap between borders of screen and text
gap_x 10     ( = 10 pixels du bord de l'écran   x =  coordonnées Horizontale )
gap_y 40     ( = 10 pixels du bord de l'écran   y =  coordonnées Verticale )

Pas besoin de grand discours, vous commentez/dé-commentez les lignes qui vous conviennent pour son emplacement et ajustez sa place en changeant les coordonnées “gap”. Une “#” au début d'une ligne d'un fichier de commande, permet de mettre en suspend celle-ci. (De la commenter)

y = monter ou descendre

x = gauche ou droite

Démarrer Conky au lancement de Fluxbox

Bon, je suis sûr que vous savez le faire maintenant…mais pour ceux qui comme moi ne lisent jamais les tutos en entier et sautent directement sur ce qui les intéressent ^_^ (Rappel : Installation de Conky )

Éditez votre fichier startup

nano ~/.fluxbox/startup

Et ajoutez
Toujours et encore une fois après la section :
# Applications you want to run with fluxbox.

(sleep 10s && conky) &

Cette option aura pour effet de retarder le montage de conky et ainsi ne pas surcharger les services.

Nautilus lance le bureau Gnome sous Fluxbox

Les personnes utilisant Gnome l'auront peut être remarqué, sous Fluxbox lorsqu'on lance Nautilus c'est tout le bureau Gnome qui se lance… une petite astuce très simple pour parer ce problème, il suffit simplement de lancer Nautilus comme ceci:

   nautilus --no-desktop
   
   [exec] (nautilus) {nautilus --no-desktop --browser}

Éditez votre ~/.fluxbox/menu et entrez : {nautilus –no-desktop –browser} à la place de {nautilus}

Éteindre et redémarrer

Le “MENU” via clic droit comporte un bouton “Exit” qui aura pour effet de vous déconnecter de la session et vous envoyer sur l'écran de connections.
Il ne vous restera plus qu'à éteindre votre machine via le bouton en bas à gauche de cet écran. Bien plus simple n'est il pas. LOL

Si toutefois vous désirez éteindre directement votre machine depuis le menu fluxbox, placez cette section en fin de menu (~/.fluxbox/menu):

...
[submenu] (Exit)
    [exit] (Déconnexion)
    [exec] (Veille) {systemctl suspend}
    [exec] (Redémarrer) {systemctl reboot}
    [exec] (Éteindre) {systemctl poweroff}
[end]

Connexion Réseaux

Eth: pas de problème le réseau se configure seul pour une Ip dynamique/aléatoire (attribuées par la box. Contraire d'une Ip fixe. Qui est obligatoire pour un serveur par exemple) donc, rien à configurer.

Mais ce n'est pas le cas des connexions “wifi” wlan. Pour remédier au problème inscrire dans votre fichier ~/.fluxbox/startup Toujours après la ligne, c'est la dernière fois promis… :
# Applications you want to run with fluxbox.

(sleep 4s && nm-applet) &

Idem que pour Conky, on retarde l'envoi de la commande pour ne pas surcharger le démarrage.

Ensuite cela aura pour action d'exécuter le “Network-Manager” et donc de rendre votre réseau détectable. Toujours sur une Ip dynamique.

Pour info au passage, n'oubliez pas le signe “&” après une commande inscrite dans le fichier “startup”. Celui-ci sert à exécuter les commandes suivantes.

Son

Si vous rencontrez un problème de sortie “Son”, vérifiez auparavant que vous n'avez pas mis en sourdine celui-ci au niveau de votre interface Gnome. Il semblerait que le fait d'avoir coupé la sortie sur Gnome ne vous permettent pas de la réactiver sur Fluxbox. “ C'est du vécu”

Voilà, n'hésitez surtout pas à reporter les erreurs si vous en relevez. Nous pourrons ainsi le faire progresser. :-D !!!

Quelques liens utiles

Sources

wikipedia.org
fluxbox-wiki.org

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
2)
La licence MIT ou licence X11 est une licence de logiciel utilisée notamment pour la diffusion du gestionnaire de fenêtre X11 (ou X Window System). Elle est aussi appelée Licence MIT car elle provient du Massachusetts Institute of Technology (MIT), mais l'appellation est impropre car le MIT utilise aussi d'autres licences logicielles.
3)
Les applications dockables (dockapps) typiques de WM sont les horloges et les applications de monitoring du systèmes. Rien que pour la fonctionnalité de l'horloge, il y a de nombreuses implémentations, incluant mais pas limité à wmcalclock, wmtime, wmclock, wmclockmon. Pour le monitoring, il existe wmload, wmavgload, wmmon, wmnet, wmnd, etc. Beaucoup d'autres dockapps sont disponibles, dont des applications qui montrent des paramètres systèmes variés, lancent d'autres applications, etc.