
J'utilise le script suivant :
Code : Tout sélectionner
cat fire_in_jail_kdocker.sh
#!/bin/bash
#
# Script: fire_in_jail_kdocker.sh
# Auteur: dezix
# Date: 2020-12-08
# Version : 0.1
#
# Fonction: Lancer Firefox avec FireJail et docker avec KDocker
#
# Note: Fournit une icone à KDocker
#
# Usage => Lanceur Pannel XFCE
#
# Lancer Firefox dans un bac à sable (isolation)
firejail firefox-esr https://duckduckgo.com & sleep 7 ;
# attendre (7s) pour laisser le temps à firefox d'ouvrir sa fenêtre
#
# récupération de l'id de la fenêtre
w_id=$(wmctrl -l | egrep -i firefox | cut -b -10) ;
#
# placer la fenêtre (réduite) dans la zone de notification de l'environnement de bureau (xfce-panel)
kdocker -q -w "$w_id" -i /home/dezix/.local/share/icons/HighContrast/scalable/apps-extra/firefox-jail.svg ;
exit
En cours d'exécution de Firefox,
je me rends compte du fait suivant :
Code : Tout sélectionner
$ for pid in $(pgrep fire); do ps -p "$pid" -o comm= ; done
fire_in_jail_kd
firejail
firefox-esr
Note : je ne sais pas pourquoi ps tronque la commande — ce qui peut être très gênant dans un script.
Voyant cela,
j'ai pensé que lancer firefox dans sa propre instance de bash :
Code : Tout sélectionner
#!/bin/bash
bash -c 'firejail firefox-esr https://duckduckgo.com' & sleep 7 ;
w_id=$(wmctrl -l | egrep -i firefox | cut -b -10) ;
kdocker -q -w "$w_id" -i /home/dezix/.local/share/icons/HighContrast/scalable/apps-extra/firefox-jail.svg ;
exit
Alors je pose la question :
Quid de ma commande exit ?
Merci pour vos explications.