Routine de slacker: -Geekons un peu-Installer et configurer Openbox

Pré-requis:

Avoir une Slackware de « base » installée (au minimum base du système, serveur d’affichage, desktop)

[Rapport au billet : Slackware n’est pas obligatoire si on ne prend en compte que la conf’, ma Debian a la même (bah ouais, si on à un wm à sa pogne sur un OS, autant l’utiliser sur l’autre)]

En général, c’est le cas après une installation classique. Openbox est disponible dans son plus simple appareil

Il va falloir installer pas mal de slackbuilds, rétrograder 2 paquets et configurer tout cela.

Installation de sbopkg

Sbopkg est un script bash permettant de manipuler les slackbuilds (une collection de scripts permettant de construire des paquets Slackware). Le fonctionnement? Très simple. Sbopkg va télécharger le SlackBuild puis le décompresser, télécharger le code source du programme, le copier dans le même répertoire que le SlackBuild, vérifier les sommes de contrôle, exécuter le slackbuild et installer le package résultant.

On télécharge et on se renseigne sur l’installation de sbopkg ici

sbopkg ne gère pas les dépendances, mais vous dira ce qui a coincé en cas d’échec de la compilation. A vous de trouver la dépendance manquante, ce qui peut être sportif. Le mode d’emploi de sbopkg

Parenthèses à caractère purement égocentré : J’utilise Current, pas de slackbuilds pour cette version, j’utilise donc ceux de la 14.2. Je vais donc devoir rétrograder certains paquets comme vte (pour lxterminal) ou libfm (pour pcmanfm), plus exactement installer une version antérieur de ces paquets via sbopkg (pour les utilisateurs qui utilisent la version stable, je ne pense pas que ce genre de problèmes existe). Ce qui casse Kde-Plasma. Et disons que je m’en balance un peu, je ne me souviens même plus de la dernière fois où j’ai utilisé ce dernier. L’air de rien, je m’aperçois que le goût que j’avais pour les DE s’est mangé une sacrée claque dans la tête, une fois passée la quarantaine. Avec les wm, t’as la base. A toi de construire Ton environnement de travail… 😀

Liste des paquets à installer via sbopkg, en prenant en compte le fait que lxpanel, lxappearance, lxterminal, conky, tint2 seront à installer en dernier. (Ces paquets dépendent de imlib2, lua, tolua.. Si ces builds ne sont pas installés avant, ce sera un échec de compilation)

geany, imlib2, libfm, libvterm, nitrogen, obapps, obmenu, obkey openbox-simple-theme, openbox-themes, pcmanfm, ranger, lua,  tolua++,lxappearance, lxappearance-obconf, lxpanel, lxterminal, conky, tint2

On va ajouter quelques thèmes d’icônes (de la même façon, c’est à dire avec sbopkg)

awoken-icon-theme, faba-mono-icons, faenza-icon-theme, faenza-xfce, flatwoken-icon-theme, paper-icon-theme, vivacious-colors-gtk-icon-theme

Voilà, voilà… On va mettre tout cela en place

Configuration:

Openbox ne nécessite que 3 fichiers de configuration: menu.xml, rc.xml et autostart.sh

On retrouve ces fichiers à cet endroit : /home/votre_nom_d’utilisateur/.config/openbox

1/ Le fichier autostart.sh

Ce fichier définit les programmes à lancer au démarrage d’openbox  (je l’utilise également pour définir le mappage de mon clavier)

Voici sa structure  (J’utilise l’éditeur Geany pour modifier les fichiers manuellement, c’est plutôt agréable):

#! /bin/bash

# Restauration du dernier wallpaper choisi
nitrogen --restore &

Restaure le dernier fond d’écran choisi avec Nitrogen, le gestionnaire de fond d’écran

#NoQwerty
setxkbmap fr oss

Me permet de démarrer ma session  avec le clavier en  FR
# Lancement de conky
# Penser a ajouter une marge de 30 pixels via obconf
# si on souhaite que conky soit visible en permanence
conky &

Démarre le moniteur système conky

# Demarrage de la barre de taches Tint
tint2 &

On peut démarrer à la place lxpanel, beaucoup moins casse-bonbon à configurer. De plus tint2 a un bogue avec les applets de contrôle de volume

# Effets de transparence et ombre
xcompmgr -c &

Démarre le compositeur

#Le Réz000
nm-applet &

Démarre l’applet Network-Manager

#Son

pnmixer &

tint2 a un bogue concernant les applets de contrôle du volume, je cherche toujours une solution (et je ne suis pas le seul :/ )

Heureusement qu’il y a les raccourcis clavier

[EDIT du 07/02/18]: j’ai finalement installé pnmixer via sbopkg

#Screensaver
xscreensaver-command -exit &
xscreensaver -no-splash &

Démarrage de xscreensaver en tâche de fond

2/ Le fichier rc.xml permet d’éditer et de régler le comportement et l’apparence d’openbox, je choisis la facilité en utilisant obconf

(Ce fichier est plus ou moins compréhensible mais laborieux à éditer)

3/Le fichier menu.xml

Permet d’ajouter des entrées au menu d’openbox. A éditer à la main ou avec obmenu

Je préfère utiliser obmenu. Pas que la structure du menu soit difficile, mais c’est long et laborieux également… Je préfère largement éditer le menu d’un Pekwm

L’édition est très simple avec obmenu

-Nom de l’appli sur la ligne du haut

-Action pour 3ème ligne

-Commande pour la ligne du bas

Logiciels et utilisation

pcmanfm : gestionnaire de fichiers

Geany : l’éditeur de fichier de conf. devenu habituel

Nitrogen: le sélecteur de fond d’écran

-lxappearance: personnalisation de l’apparence

lxterminal: le terminal

ranger: un gestionnaire de fichiers-CLI 😀

A noter: pour ce genre de logiciels qui se lancent dans un terminal ( on peut évoquer irssi, moc ou encore htop), il faut éditer la commande de cette façon dans le menu :

lxterminal -e nomdulogiciel (donc dans le cas de ranger , ce sera : lxterminal -e ranger)

-obkey: un éditeur de raccourcis clavier

tint2 et lxpanel

Ceux qui sont habitués à Openbox auront tendance à utiliser tint2 comme tableau de bord, les moins patients utiliseront lxpanel, très facilement configurable en GUI

Et j’avoue que ma conf’ tint2 traîne sur mes machines depuis quelques années (ex-conf crunchbang).. Toujours la même, j’y touche rarement, sauf en cas de force majeure

-conky : un moniteur système hautement configurable. Le fichier de configuration est .conkyrc. Le net foisonne d’exemples, de modèles, d’archives, de tutoriels… Vous êtes seul maître à bord

Voici le mien et sa structure

#!/usr/bin/conky -d -c
## .conkyrc configuration
alignment top_right
background yes
border_margin 5
border_width 5
color0 555555 #
color1 FCAF3E # zolty
color2 64574e # braz
color3 a82553 # rozowy f71f84
color4 5e1014 # bordowy
color5 64574e # braz
color6 a7a7a7 # szary
color7 8888CC # (COOL)
color8 9d9c61 # zolto-szary
color9 525276 # niebiesko-szary
cpu_avg_samples 2
default_color e1e1e1 # szary a7a7a7
default_outline_color 000000 # Black
default_shade_color 000000 # Black
double_buffer yes
draw_borders no
draw_graph_borders no
draw_outline no
draw_shades no
gap_x 5
gap_y 40
max_specials 1024
max_user_text 10000
maximum_width 180
minimum_size 850
net_avg_samples 2
no_buffers yes
override_utf8_locale yes
own_window yes
own_window_colour 000000 # Black
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_transparent yes
own_window_type override ## normal
pad_percents 2 # to co nizej, miejsc po przecinku
short_units yes # krotka wersja podawania wielkosci dyskow np. 612.21M/3.80G
stippled_borders 3
text_buffer_size 8000
total_run_times 0
update_interval 1.0
uppercase no
use_spacer right
use_xft yes
xftalpha 0.75
xftfont sans:size=7

lua_load /home/didisoft/.conky/lua.lua

# ${diskiograph /dev/sda 15,180 a7a7a7 a7a7a7} # wskaznik pracy dysku
# ${image /home/didisoft/.conky/didisoft.jpg -p 0,80 -s 26×28} # obrazki w conky

TEXT
${color6}${goto 05}${font hack:size=40}${time %H}${font DejaVu Sans Mono:size=20}${voffset -25}’${time %M}${font DejaVu Sans Mono:size=8}${voffset -12}${time %S}
${color6}${goto 80}${voffset 10}${font :size=6}${time %A}
${color6}${goto 80}${voffset 1}${font :size=6}${time %d %B %Y}
${color6}${font RsbillsDng:size=14} ${font}${font DejaVu Sans Mono:size=6}${execpi 3600 DJS=`date +%_d`; cal -m | sed ‘1d’ | sed ‘/./!d’ | sed ‘s/$/ /’ | fold -w 21 | sed -n ‘/^.\{21\}/p’ | sed ‘s/^/${alignc} /’ | sed / » $DJS « /s/ » $DJS « / » « ‘${color2}’ »$DJS »‘${color}’ » « /}${font}

${voffset -20}${color6}${font hack:size=12}Slackware 64

${voffset -20}${color6}${font hack:size=10}Current

${voffset -20}${color6}${font hack:size=8}OpenBox

${voffset -20}${color6}${font hack:size=12}NoDE

${voffset -20}${color6}${font hack:size=8}SYSTEME ${font}$hr
${color6}Architecture:${alignr}$machine
${color6}${sysname} Kernel: ${alignr}$kernel
${color6}Conky:${alignr}${conky_version}

${voffset -10}${color6}${font hack:size=8}CPU ${font}$hr
${color6}Coeur 1: ${cpu cpu1}% $alignr ${freq_g (1)} GHz ${exec sensors | grep « Core 0 » | cut –bytes=14-21}
${color6}Coeur 2: ${cpu cpu2}% $alignr ${freq_g (2)} GHz ${exec sensors | grep « Core 1 » | cut –bytes=14-21}
${color6}Coeur 3: ${cpu cpu3}% $alignr ${freq_g (3)} GHz ${exec sensors | grep « Core 2 » | cut –bytes=14-21}
${color6}Coeur 4: ${cpu cpu4}% $alignr ${freq_g (4)} GHz ${exec sensors | grep « Core 3 » | cut –bytes=14-21}

${voffset -7}${color6}${font}NOM ${goto 90}PID${goto 120}CPU% ${alignr}MEM%
${color6}${font :size=6}${goto 9}${top name 1}${goto 85}${top pid 1}${goto 120}${top cpu 1}${goto 156}${top mem 1}
${color6}${font :size=6}${goto 9}${top name 2}${goto 85}${top pid 2}${goto 120}${top cpu 2}${goto 156}${top mem 2}
${color6}${font :size=6}${goto 9}${top name 3}${goto 85}${top pid 3}${goto 120}${top cpu 3}${goto 156}${top mem 3}
${color6}${font :size=6}${goto 9}${top name 4}${goto 85}${top pid 4}${goto 120}${top cpu 4}${goto 156}${top mem 4}
${color6}${font :size=6}${goto 9}${top name 5}${goto 85}${top pid 5}${goto 120}${top cpu 5}${goto 156}${top mem 5}
${color6}${font :size=6}${goto 9}${top name 6}${goto 85}${top pid 6}${goto 120}${top cpu 6}${goto 156}${top mem 6}
${color6}${font :size=6}${goto 9}${top name 7}${goto 85}${top pid 7}${goto 120}${top cpu 7}${goto 156}${top mem 7}
${color6}${font :size=6}${goto 9}${top name 8}${goto 85}${top pid 8}${goto 120}${top cpu 8}${goto 156}${top mem 8}

${voffset -6}${color6}${font hack:size=8}MEMOIRE / HDD / USB ${font}$hr
${color6}ram: ${mem} / ${memmax} ${alignr} ${memperc}%
${color6}swap: ${swap} / ${swapmax} ${alignr} ${swapperc}%
${color6}root: ${fs_used /} / ${fs_size /} ${alignr} ${fs_used_perc /}%
${color6}home: ${fs_used /home} / ${fs_size /home} ${alignr} ${fs_used_perc /home}%
${color6}${voffset -12}${execpi 5 ~/.conky/usb_nowe.sh}

${voffset -20}${color6}${font hack:size=14}Sl@ck the world

 

Bonus:

Le TkMenu ( du collectif 3hg) sur Slackware, au cas où ma douce (ou mon ado) aurait envie de se servir de ma machine lorsque c’est cet OS qui tourne. Ce petit menu leur permettra de ne pas être totalement aux fraises 😀

Je récupère l’archive avec mon petit pote wget

$wget https://framagit.org/3hg/tkmenu/repository/master/archive.tar.gz

Je me déplace dans mon dossier personnel

$cd /home/user

Je décompresse l’archive

$ tar -zxvf archive.tar.gz

Je renomme le dossier décompressé tkmenu (car une fois décompressé, le dossier s’appelle Tkmenu-xyzzzyyxxxx (une suite de chiffres sans importance)) qui se trouve dans mon /home/user et je le déplace dans le dossier Applis (que j’ai créé dans mon dossier /home/user)

J’ajoute le tkmenu au menu openbox. La commande étant le chemin de l’exécutable (/home/user/Applis/tkmenu/tkmenu)

Il vous faudra éditer les fichiers de conf. de TkMenu pour le mettre à votre sauce.. Assez simple à piger

 

Avec le support ici

J’ai passé cette soirée avec pour fond sonore un petit peu de Lee Perry, ça fait du bien de temps en temps

 

 

 

 

 

 

 

Publicités

2 réponses à “Routine de slacker: -Geekons un peu-Installer et configurer Openbox

  1. Bonjour,

    intéressant, personnellement j’ai refait mon système le 1er janvier de cette année, sur une base devuan et uniquement openbox et tint2, même pas de compositeur ni de fond d’écran ni de screensaver, quel bonheur cette légèreté !
    C’est quoi le blême avec tint2 et l’applet de volume de contrôle ? Parce que j’en ai un aussi mais je ne sais pas si c’est le même. Quand je clique dessus, ça bascule muet/non muet mais en fait une fois qu’il est en mut il ne revient jamais en non muet, même si l’icône affiche le contraire. Je suis obligé de passer par pavucontrol.

    Pour les menus je les ai tous essayé et j’ai choisi obmenu-generator (https://github.com/trizen/obmenu-generator/blob/master/obmenu-generator), c’est un script perl qui génère le menu en dynamique et incorpore les nouveaux programmes installés instantanément.

    • ‘lut, de mon côté, je n’arrive pas à inclure d’applet de volume. Pourtant tout est OK dans les fichiers tint2rc et autostart
      En allant faire un tour sur le net, j’m’aperçois que je ne suis pas seul à avoir ce genre de pbs…
      Mais bon, pas le temps de chercher le pourquoi du comment ces derniers temps, donc en attente
      Pour obmenu-generator, ça me ferait un menu surchargé. Je préfère gérer les entrées moi-même 😉

      [EDIT]:j’ai finalement installé pnmixer via sbopkg et ajouté au fichier autostart