Premiers pas avec awesome
Avec un nom pareil, ça ne pouvait qu'être bien, récit :
Contexte
Un eeepc sur lequel est installé ubuntu 11.04, un pc surtout utilisé pour surfer.
La version d'awesome utilisée est la 3.4.
awesome
awesome est un gestionnaire de fenêtre léger et entièrement pilotable au clavier.
C'est ce pilotage qui m'a amené à l'essayer.
Il est facilement modifiable à l'aide de scripts lua et a une approche originale des bureau virtuels : tout passe par le concept d'étiquettes (tags). Vu que j'en suis encore au début, je ne creuserai pas pour l'instant.
Installation
Pas de problème, il suffit de passer par le gestionnaire de paquets.
Pour la lancer, ça se passe au démarrage, dans la fenêtre de login.
Guide minimal de survie
Première impression : j'aurai du lire un peu plus la doc, car je suis largué. Avec un clic droit bien placé, je lance firefox, mais plus moyen de faire autre chose sans quitter mon navigateur préféré.
Un petit rappel des commandes utiles : (Mod = touche windows)
Mod + espace : changer de mode d'organisation des fenêtres : plein écran, plein écran sans barre de menu, flottant… il y a beaucoup de modes
Mod + 1-9 : passer sur étiquette suivante[1]
Mod + shift + 1-9 : envoyer la fenêtre sur une autre étiquette
Mod + ctrl + shift + 1-9 : ajouter l'étiquette à la fenêtre
Mod + j/k : passer à la fenêtre précédente/suivante
Mod + entré : ouvre un nouveau terminal
Mod + r : permet de lancer une commande
Mod + shift + q : quitter awesome (ferme la session graphique)
[1] : le concept d'étiquette est proche de celui de bureau, une fenêtre pouvant avoir plusieurs étiquettes à la fois.
Personnalisation
Pour personnaliser awesome, il faut commencer par dupliquer le fichier de configuration :
mkdir ~/.config/awesome/
cp /etc/xdg/awesom/rc.lua ~/.config/awesome/
Personnalisation : modes
Il y a trop de modes pour mon utilisation personnelle, j'en ai donc supprimé certains :
-- Table of layouts to cover with awful.layout.inc, order matters.
layouts =
{
-- par defaut, on est a une fenetre maximisée, mais on laisse la barre de menu visible
awful.layout.suit.max,
-- fenetre cote a cote
awful.layout.suit.tile,
-- fenetre dessus / dessous
awful.layout.suit.tile.bottom,
--plein écran
awful.layout.suit.max.fullscreen
}
Personnalisation : utilisation de la batterie
Comme je suis sur un portable, j'ai besoin de suivre la charge de la batterie.
Il existe des paquets tout fait, mais ce n'est pas la solution que j'ai retenu.
J'ai donc fait un script minimal qui renvoie la charge de la batterie :
BATT=BAT0
REM=`cat /proc/acpi/battery/$BATT/state | grep "remaining capacity:" | awk '{ print $3 }'`
TOT=`cat /proc/acpi/battery/$BATT/info | grep "design capacity:" | awk '{ print $3 }'`
expr 100 \* $REM / $TOT
On va configurer awesome pour qu'il appelle ce script à intervalle régulier et qu'il affiche
le résultat :
-- {{{ Wibox
-- Create a textclock widget
mytextclock = awful.widget.textclock({ align = "right" })
-- battery state
mybatterystate = widget({ type = "textbox" })
mybatterystate.text = "---"
mytimer = timer({ timeout = 60 })
mytimer:add_signal("timeout", function()
local f = io.popen("battery.sh")
local s = f:read("*a")
f:close()
mybatterystate.text = s
end)
mytimer:start()
Conclusion
Énormément de potentiel quand on préfère le clavier à la souris. En ce qui me concerne, je pense que je ne changerai plus de gestionnaire avant un moment.
Cela dit, je ne le conseille pas à tout le monde (dès qu'on veut personnaliser un peu) : il faut bien sur ne pas être réfractaires à lua, mais il m'est aussi arriver de devoir passer en mode non graphique pour réparer un fichier rc invalide.
# Petite correction du script
Posté par barmic . Évalué à 2. Dernière modification le 19 septembre 2012 à 10:17.
Autant faire simple :
Mais pour des choses aussi simple peut être que le faire directement en lua serait plus pratique :)
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Petite correction du script
Posté par benoar . Évalué à 8.
Autant faire plus simple :
# Rechargement à chaud avec XMonad
Posté par Miguel Moquillon (site web personnel) . Évalué à 2.
Dans la même veine qu'Awesome, il y a XMonad, un autre tiling window manager. La différence entre les deux est que XMonad est écrit en Haskell et que la configuration se fait en Haskell ; c'est en fait une surcharge des paramètres ou du comportement par défaut de XMonad et qui est compilé puis chargé au démarrage du gestionnaire de fenêtre. Aussi, face à une erreur dans la configuration, XMonad s'exécute avec la configuration précédente (s'il n'y en avait pas, celle par défaut). De même, on peut charger à chaud la configuration que l'on a modifié sans avoir à quitter son environnement (en fait, c'est un redémarrage transparent de XMonad).
Par contre, il n'y pas le support des tags que l'on a dans Awesome et que j'aime bien.
[^] # Re: Rechargement à chaud avec XMonad
Posté par Anonyme . Évalué à 1.
<reponse mode="moi d'abord">
awesome fait aussi du redémarrage à chaud
</reponse>
[^] # Re: Rechargement à chaud avec XMonad
Posté par barmic . Évalué à 2.
C'est quoi un redémarrage à chaud ?
Dans les faits il faut rebooter awesome pour prendre en compte les nouvelles configurations.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Rechargement à chaud avec XMonad
Posté par Anonyme . Évalué à 1.
en gros oui…
un coup de awesome.restart() en lua et hop: tu ne perds pas tes clients et ils sont repositionnés selon ta nouvelle configuration.
D'un autre coté, je ne pense pas que ce soit une fonctionnalité exceptionnelle: j'ai souvenir d'avoir killer twm tout en conservant la main sur un xterm pour pouvoir relancer un autre WM juste après.
Pour moi, l'intérêt d'awesome réside plus dans sa très grande flexibilité de configuration.
[^] # Re: Rechargement à chaud avec XMonad
Posté par gnumdk (site web personnel) . Évalué à 2.
Depuis quand tuer un WM cause une perte de clients X11 ?
[^] # Re: Rechargement à chaud avec XMonad
Posté par Shuba . Évalué à 1.
A l'époque où j'utilisais awesome, certaines versions avaient un bug qui faisait que les clients X11 tournaient toujours, mais le WM n'en avait plus connaissance et il était donc impossible d'y accéder. Heureusement le problème avait disparu après quelques versions.
[^] # Re: Rechargement à chaud avec XMonad
Posté par Maxime (site web personnel) . Évalué à 3.
Ctrl+Mod+r dans la conf par défaut.
[^] # Re: Rechargement à chaud avec XMonad
Posté par barmic . Évalué à 2.
Si j'ai bien compris avec xmonad, tu compile ta propre version configuré alors qu'avec awesome tu as un fichier exterieur au programme principal qui exécute ta configuration.
Ça fait longtemps que je souhaite passer de awesome à xmonad (la principal raison est de pouvoir gérer des onglets) mais j'ai vraiment du mal avec haskell.
C'est à dire ?
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Rechargement à chaud avec XMonad
Posté par anaseto . Évalué à 3.
Il y a une introduction a haskell traduite en français qui est plutôt sympathique, il y a des images et tout, même si souvent je ne vois pas trop ce qu'elles apportent :)
Par contre, si c'est juste pour apprendre à configurer xmonad rapidement, c'est peut être pas l'idéal.
[^] # Re: Rechargement à chaud avec XMonad
Posté par François Chaix (site web personnel) . Évalué à 1.
Sinon comme WM de la famille des tiling, et qui sait faire des onglets, y’a i3, que j’utilise.
La lumière pense voyager plus vite que quoi que ce soit d'autre, mais c'est faux. Peu importe à quelle vitesse voyage la lumière, l'obscurité arrive toujours la première, et elle l'attend.
[^] # Re: Rechargement à chaud avec XMonad
Posté par barmic . Évalué à 2.
Ce qui me gène dans i3 c'est les deux barres (celle pour les tags et celle pour le reste).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Rechargement à chaud avec XMonad
Posté par bibile . Évalué à 1.
Petite question sur i3. dejà posé, mais pas eu de réponse.
C'est possible d'avoir un mode plein écran, similaire à celui de xmonad ?
Par exemple, i3 mettra firefox en plein écran, comme un F11.
Moi, je recherche la même chose que sous xmonad, qui s'applique au layout, laisse la barre (i3bar ou autre), etc ..
Un peu comme le layout " tabbed " d'i3, mais sans la barre de stack.
Si je reprends l'exemple de firefox, dans xmonad, en fullscreen, la souris, si je la colle au haut de l'écran, permettra de changer d'onglet. La première ligne de pixel de l'écran est déjà sur firefox (avec xmobarr en bas)
merci !
[^] # Re: Rechargement à chaud avec XMonad
Posté par barmic . Évalué à 2.
Tu as une capture ?
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Rechargement à chaud avec XMonad
Posté par bibile . Évalué à 1.
capture
Bon, elle est pas top, parce qu'il n'y a pas le pointeur de la souris…
Mais imagine qu'il est sur le pixel le plus haut de mon écran.
On le devine grâce à l'info bulle sur le 3ième onglet.
Quand je change d'onglet, je peux donc appuyer ma souris sur la première ligne de pixel, c'est très confortable.
Bon, évidement, je peux aussi changer d'onglet en ctrl+pageUpDown, mais si j'ai la souris dans la main, c'est bien aussi.
Ce n'est donc pas un mode plein écran de firefox, mais bien un mode plein écran du layout.
[^] # Re: Rechargement à chaud avec XMonad
Posté par barmic . Évalué à 2.
J'ai plus l'impression que c'est un mode sans décoration (ce que fait awesome par défaut). Parce que le fullscreen pour moi il vire aussi là barre en bas.
Voici pour moi le mode que tu cherche : http://img15.hostingpics.net/pics/966334811.png
et le mode fullscreen : http://img15.hostingpics.net/pics/982364642.png
La subtilité se trouve en haut (bon je garde 1px de bordure autour de mes clients pour distinguer les terminaux entre eux, mais c'est configurable dans awesome).
Bon après je ne peux pas te dire si c'est possible dans i3 (je ne crois pas que c'était possible dans wmii, mais je peux me tromper). Mais peut être qu'en cherchant sur les décorations de fenêtres tu trouvera ton bonheur.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Rechargement à chaud avec XMonad
Posté par bibile . Évalué à 1.
Pas de soucis pour awesome, c’était i3 qui me posait problème.
Je n'ai pas trouvé dans la doc.
Et je suis retourner paisiblement sous xmonad :)
Mais si quelqu'un connaît la solution pour i3, je re-tenterais bien !
[^] # Re: Rechargement à chaud avec XMonad
Posté par Tiwaz . Évalué à 3.
Pour tester le comportement, dans ta console :
Si cela convient, dans .i3/config, tu ajoutes à la fin:
ou
[^] # Re: Rechargement à chaud avec XMonad
Posté par bibile . Évalué à 1. Dernière modification le 21 septembre 2012 à 20:42.
parfait !
merci !!
[^] # Re: Rechargement à chaud avec XMonad
Posté par Miguel Moquillon (site web personnel) . Évalué à 1.
En fait,ton fichier de configuration est le programme principal qui est compilé puis lancé par XMonad. Il comporte donc l'instruction principale main :
Où xmonad est la fonction qui lance le gestionnaire de fenêtre avec les paramètres par défaut defaults ici.
Par exemple, sur le PC du boulot où j'utilise XMonad avec KDE4 :
où kde4Config est fourni par l'API de contribution de XMonad et les myquelquechose sont des paramètres de config qui me sont propre. Par exemple :
Sous XMonad, tu as un support par défaut des workspaces virtuels et à côté, en contribution, un support de tags des fenêtres mais que je ne trouve pas très utilisable. En tout cas pas comme dans Awesome. Ce dernier, du moins dans la version que j'avais utilisé à l'époque, tu n'as pas de worspaces virtuels mais des regroupements de fenêtres sous des étiquettes (tag) et que tu peux afficher ou non sous l'action de raccourcis clavier.
# Ça a l'air bien, mais...
Posté par batousky . Évalué à 1.
Sans pavé numérique, les raccourcis clavier par défaut me paraissent assez indigestes.
Par exemple :
Mod + ctrl + shift + 1-9
deviendrait
Mod + ctrl + shift + fn + 1-9
C'est dommage d'utiliser la touche shift dans les raccourcis sachant qu'elle est (presque) indispensable pour taper des chiffres
[^] # Re: Ça a l'air bien, mais...
Posté par Shuba . Évalué à 3.
En fait quand on dit mod + 1 dans awesome ça correspond à mod + &, pas besoin de shift. awesome raisonne en keycode plutôt que caractère d'ailleurs, ce qui lui permet de ne pas avoir de problèmes avec l'internationalisation des claviers (contrairement à kde…).
[^] # Re: Ça a l'air bien, mais...
Posté par barmic . Évalué à 4.
Voici le code qui s'occupe de ça c'est moi (je en l'ai pas modifié) :
Et j'utilise uniquement les touches au dessus des lettres pour les utiliser (mod + 1/& : aller au tag 1, etc).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Ça a l'air bien, mais...
Posté par Maxime (site web personnel) . Évalué à 3.
Pas besoin de la touche shift, mais j'avoue préférer Mod + Flèches pour changer de bureau la plupart du temps car c'est pas très pratique de faire Mod + 5 par exemple.
Il faudrait que je les passe sur le pavé numérique vu que j'en ai un sur mon laptop.
[^] # Re: Ça a l'air bien, mais...
Posté par barmic . Évalué à 2.
Tu peut aussi partir de 0 et revenir vers 1, comme ça les mains restent écartées (personnellement 6 tags, ça me suffit amplement, donc de 5 à 0).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Ça a l'air bien, mais...
Posté par Maxime (site web personnel) . Évalué à 2.
J'ai surtout, suite à mon post, pris le temps de coder les raccourcis avec le pavé numérique et c'est pas mal du tout :).
(Vu à quel point mon code est moche, ne sachant pas coder en Lua, je pense pas que ça soit utile de partager ça ici)
# Pas mon gestionnaire de fenêtre préféré
Posté par Thom (site web personnel) . Évalué à 2.
… mais sans doute l'un des plus impressionnant.
J'ai un peu de mal avec ce côté trop automatique, je crois que je préfère les tiling manuel comme subtle.
Par contre, il gère très bien les configurations multi-écrans.
La réalité, c'est ce qui continue d'exister quand on cesse d'y croire - Philip K. Dick
# la config change trop souvent
Posté par pipotron . Évalué à 1.
J'avais pas mal investi dans awesome un moment donné avec mon eeepc. J'étais super content de ma configuration au petits oignons jusqu'à ce que j'upgrade la version.
Et là pouf ! La config avait changé du tout au tout, j'ai dut tout me retaper. La deuxième fois que ça m'est arrivé j'ai laissé tomber et je suis revenu sur KDE.
Dommage pour moi peut être.
Est-ce que des personnes ici on testé CLFSWM. Ca a l'air simple et bien
[^] # Re: la config change trop souvent
Posté par bibile . Évalué à 1.
awesome a un peu la réputation de casser les config régulièrement.
tente xmonad, pas eu de soucis pour l'instant.
Je ne peux pas dire pour les autres.
[^] # Re: la config change trop souvent
Posté par 태 (site web personnel) . Évalué à 4.
Cette réputation a été vraie. Le passage de 2 à 3 puis les débuts de la version 3 ont été bouleversantes. Cela dit, depuis 3 ans (depuis le 11 décembre 2009 d'après subversion), je n'ai fait que des changements cosmétiques à ma configuration qui contient quand même des modifs de raccourcis, des widgets (progressbar) de volume et de batterie et quelques autres petites joyeusetés. On peut dire que c'est stabilisé.
Est-ce qu'une configuration non triviale d'xmonad de 2009 marche sur les xmonad récents ?
[^] # Re: la config change trop souvent
Posté par bibile . Évalué à 1.
Je ne pourrais pas dire pour 2009/xmonad.
Et je retire donc mon observation précédente !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.