LinuxPedia

Wiki libre et indépendant dédié à GNU-Linux et BSD.

Outils pour utilisateurs

Outils du site


util:cli-selector
no way to compare when less than two revisions

Différences

Ci-dessous, les différences entre deux révisions de la page.


util:cli-selector [2018/11/17 12:54] (Version actuelle) – créée - modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +sur la plupart des distributions GNU/Linux, l'identification, la connexion et le lancement de la session graphiques sont des processus contrôlés par une application de type GDM, KDM ou Slim.\\
 +ce wiki vous permettra d'installer plusieurs gestionnaires de fenêtres et de choisir lequel choisir à la connexion.
  
 +===== CLI selector =====
 +**~/.xinitrc** et **~/.(z)profile** : ceux deux fichiers suffisent à obtenir un **sélecteur de session en console**, sans passer par gdm ou slim.\\
 +la méthode est simple: créer autant de ~/.xinitrc* que de sessions désirées, et inclure dans //(z)profile// un sélecteur de fichiers:\\
 +à la fin de votre **~/.(z)profile**, rajouter ces quelques lignes (à adapter selon votre configuration):
 +<code=bash>
 +# Si on est dans une console, et qu'aucune
 +# instance de X n'est détecté, demander si
 +# startx doit être lancé et dans quel wms.
 +if [[ -t 0 && $(tty) =~ /dev/tty ]] && ! pgrep -u $USER startx &> /dev/null; then
 +    echo ""
 +    echo ""
 +    echo "`uname -a`"
 +    echo ""
 +    echo " 1/dwm(default) - 2/fluxbox - 3/compiz - 4/wmfs - 5/noX"
 +    read choix
 +    case $choix in
 +        1)
 +            startx
 +            ;;
 +        2)
 +            startx ~/.xinitrc_flux
 +            ;;
 + 3)
 +            startx ~/.xinitrc_compiz
 +            ;;
 +        4)
 +            startx ~/.xinitrc_wmfs
 +            ;;
 +        5)
 +     clear
 +     echo "if there is a shell ... there is a way"
 +     echo ""
 +     ;;
 + *)
 +     startx
 +     ;;
 +    esac
 +fi
 +</code>
 +dans notre exemple, dwm est lancé depuis ~/.xinitrc pour obtenir une session "par défaut". les autres sessions ont leurs propres ~/.xinitrc_<nom_de_la_session>. pour l'exemple, voici mon ~/.xinitrc par défaut:
 +<code bash xinitrc>
 +#!/bin/bash
 +# ~/.xinitrc by arpinux 2013
 +############################
 +## D-Bus ##-------------------------------------------------------------
 +if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
 +        eval "$(dbus-launch --sh-syntax --exit-with-session)"
 +fi
 +## clean-up conky ##----------------------------------------------------
 +killall conky &
 +killall conkyd &
 +## setup automount -----------------------------------------------------
 +devmon --info-on-mount --exec-on-drive 'rox %d' & 
 +## read ~.Xresources file ##--------------------------------------------
 +xrdb -merge ~/.Xresources
 +## enable snap font ##--------------------------------------------------
 +xset fp+ /usr/share/fonts/artwiz-latin1/
 +xset fp rehash
 +## launch terminal deamon ##--------------------------------------------
 +urxvtd -q -f -o
 +## set cursor ##--------------------------------------------------------
 +xsetroot -cursor_name left_ptr
 +## load ibm-fr keyboard ##----------------------------------------------
 +setxkbmap fr -variant oss
 +## set ctrl_alt_bksp as session-killer ##-------------------------------
 +setxkbmap -option terminate:ctrl_alt_bksp
 +## replace caps_lock by super key ##------------------------------------
 +xmodmap ~/.Xmodmap
 +## launch screensaver ##------------------------------------------------
 +xscreensaver-command -exit
 +xscreensaver -no-splash &
 +## startup wall ##------------------------------------------------------
 +feh --bg-fill /home/arp/pics/walls/devArp_dark_bg.png
 +## set statusbar -------------------------------------------------------
 +sleep 3s && conkyd -q -c .conkyrc_dwm | while true; read line; do xsetroot -name "$line"; done &
 +## launch compiled dwm-session #########################################
 +#exec ck-launch-session /usr/local/bin/dwm
 +## launch legacy dwm ###################################################
 +#exec ck-launch-session /usr/bin/dwm
 +## launch dwm with log file ############################################
 +while true; do exec ck-launch-session /usr/local/bin/dwm 2>~/.dwm.log; done
 +</code>
 +ainsi, après votre login/mot de passe, votre tty vous proposera les différentes sessions accessibles sur votre système. bien sûr, il faudra éditer ce fichier et créer un ~/.xinitrc* si vous désirez ajouter/enlever une session.
util/cli-selector.txt · Dernière modification : 2018/11/17 12:54 de 127.0.0.1