Différences

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

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
tutoriel:changer_arriere_plan_gdm [Le 10/06/2019, 20:53]
zococo [Un script pour automatiser la modification de l'écran de connexion]
tutoriel:changer_arriere_plan_gdm [Le 03/02/2020, 21:14]
84.101.133.214 [Un script pour automatiser la modification de l'écran de connexion]
Ligne 54: Ligne 54:
 |  [[:​18.04]] ​ | /​etc/​alternatives/​gdm3.css ​ |   | |  [[:​18.04]] ​ | /​etc/​alternatives/​gdm3.css ​ |   |
 |  [[:​18.10]] ​ | /​etc/​alternatives/​gdm3.css ​ |   | |  [[:​18.10]] ​ | /​etc/​alternatives/​gdm3.css ​ |   |
-|  [[:​19.04]] ​ | /​etc/​alternatives/​gdm3.css ​ | Ce fichier est également accessible par un lien symbolique dans le répertoire /​usr/​share/​gnome-shell/​theme/ ​ |+|  [[:​19.04]] ​ | /​etc/​alternatives/​gdm3.css ​ | Ce fichier est également accessible par un lien symbolique dans le répertoire /​usr/​share/​gnome-shell/​theme/ voire /​usr/​share/​gnome-shell/​theme/​Yaru/  |
 |  [[:​19.04]] ​ | /​usr/​share/​gnome-shell/​theme/​gnome-shell.css | Selon les versions et les configurations,​ il faudra soit modifier ce fichier, soit le fichier gdm3.css. Testez les deux options. ​  | |  [[:​19.04]] ​ | /​usr/​share/​gnome-shell/​theme/​gnome-shell.css | Selon les versions et les configurations,​ il faudra soit modifier ce fichier, soit le fichier gdm3.css. Testez les deux options. ​  |
  
Ligne 79: Ligne 79:
  
 ==== Un script pour automatiser la modification de l'​écran de connexion ==== ==== Un script pour automatiser la modification de l'​écran de connexion ====
-Un ubuntero belge propose sur son [[http://​c-nergy.be/​blog/?​p=11556|site]] en anglais un script permettant d'​automatiser ces modifications en mode graphique. Le script utilise le paquet [[:zenity|zenity]] pour fonctionner.+Un ubuntero belge propose sur son [[http://​c-nergy.be/​blog/?​p=11556|site]] en anglais un script permettant d'​automatiser ces modifications en mode graphique. Le script utilise le paquet [[:yad|yad]] pour fonctionner.
 <​code>​ <​code>​
 +#!/bin/bash
 + lesFichiersCss=( "/​etc/​alternatives/​gdm3.css"​ "/​usr/​share/​gnome-shell/​theme/​gdm3.css" ​ "/​usr/​share/​gnome-shell/​theme/​Yaru/​gnome-shell.css"​ "/​usr/​share/​gnome-shell/​theme/​gnome-shell.css"​ )
 + repDestImageDeFond="/​usr/​share/​backgrounds/"​
 +
 + if [[ "​${repDestImageDeFond:​ -1}" != "/"​ ]]; then #​ Chemin doit se terminer par /
 + repDestImageDeFond="​$repDestImageDeFond""/"​
 + fi
 +
 ################################################################​ ################################################################​
 # Script_Name : Modification-fond-d-ecran-Gdm-1.0.sh # Script_Name : Modification-fond-d-ecran-Gdm-1.0.sh
 # Description : Personnalisation du fond d'​écran de la fenêtre de connexion de GDM sur Ubuntu 19.04 # Description : Personnalisation du fond d'​écran de la fenêtre de connexion de GDM sur Ubuntu 19.04
-# Date : December 2017+# Date : December 2017 - revu juillet 2019
 # écrit par : Griffon (traduit en français et un peu revu lors de sa publication sur le site ubuntu-fr.org) # écrit par : Griffon (traduit en français et un peu revu lors de sa publication sur le site ubuntu-fr.org)
 # Web Site :​http://​www.c-nergy.be - http://​www.c-nergy.be/​blog # Web Site :​http://​www.c-nergy.be - http://​www.c-nergy.be/​blog
Ligne 96: Ligne 104:
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
  
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"+/bin/echo -e "​\e[1;​32m###########################################################​\e[0m"
 /bin/echo -e "​\e[1;​32mModification-fond-d-ecran-Gdm-1.0.sh\e[0m"​ /bin/echo -e "​\e[1;​32mModification-fond-d-ecran-Gdm-1.0.sh\e[0m"​
-/bin/echo -e "​\e[1;​32mwritten by Griffon - December 2017 - Version 1.0 - Modification-fond-d-ecran-Gdm-1.0.sh\e[0m"​+/bin/echo -e "​\e[1;​32m"​$(basename "​$0"​)"​\e[0m"​ 
 +/bin/echo -e "​\e[1;​32mwritten by Griffon - December 2017 - Version 1.0 - modifié juillet 2019 - Modification-fond-d-ecran-Gdm-1.0.sh\e[0m"​
 /bin/echo -e "​\e[1;​32mTraduit en français et un peu revu lors de sa publication sur le site ubuntu-fr.org\e[0m"​ /bin/echo -e "​\e[1;​32mTraduit en français et un peu revu lors de sa publication sur le site ubuntu-fr.org\e[0m"​
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"+/bin/echo -e "​\e[1;​32m###########################################################​\e[0m"
 echo echo
  
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
-# Étape 1 - Vérification de la présence du paquet zenity+# Étape 1 - Vérification de la présence du paquet ​yad (zenity ​utilisé dans le script initial, yad est un "​fork"​ plus puissant)
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
-if [[ $(dpkg -s zenity ​2>&null  | grep Status | cut -d' ' -f4) != "​installed"​ ]] +## ce n'est pas possible ## 
-  ​zenity ​--error --title="​Installez le paquet ​zenity" --text="​Le paquet <b>zenity</b> est nécessaire au bon fonctionnement de ce script.\n\nInstallez le paquet par <​b>​sudo apt-get install ​zenity</​b>​\n\nArrêt du traitement" ​--width=400+## si yad n'est pas installé,​ 
 +if [[ $(dpkg -s yad 2>/dev/null | grep Status | cut -d' ' -f4) != "​installed"​ ]] 
 +then 
 +## alors il n'est pas possible de l'​utiliser pour envoyer un message ! 
 +  ​yad --image=error --title="​Installez le paquet ​yad" --text="​Le paquet <b>yad</b> est nécessaire au bon fonctionnement de ce script.\n\nInstallez le paquet par <​b>​sudo apt-get install ​yad</​b>​\n\nArrêt du traitement. Erreur 10." 
   exit 10;   exit 10;
 fi fi
 +
 +#​---------------------------------------------------#​
 +# Étape 2 - Choix du fichier css à modifier
 +#​---------------------------------------------------#​
 + # Index des fichiers
 + NombreDeFichiersPotentiels="​${#​lesFichiersCss[@]}"​
 + if [[ "​$NombreDeFichiersPotentiels"​ -gt "​0"​ ]]; then
 + listeIndexFichiersPotentiels="​0"​
 + compteur=1 ​
 + while [[ "​$compteur"​ -lt "​$NombreDeFichiersPotentiels"​ ]]; do 
 + listeIndexFichiersPotentiels="​$listeIndexFichiersPotentiels""​ ""​$compteur";​
 + let "​compteur++"; ​
 + done;
 + else
 + yad --image=error --title="​Aucun fichier à modifier"​ --text="​Aucun chemin de fichier css n'a été indiqué.\nArrêt du traitement.\nErreur 20." 2>/​dev/​null
 + exit 20;
 + fi
 +
 + #​ Constitution de la liste des éléments à afficher par yad
 + ResultatAnalyse=""​
 + for i in $listeIndexFichiersPotentiels;​ do
 +
 + if [[ -f "​${lesFichiersCss[$i]}"​ ]]; then
 + Present["​$i"​]="​0"​
 + if [[ -L "​${lesFichiersCss[$i]}"​ ]]; then
 + FichierLien["​$i"​]="​0"​
 + else
 + FichierLien["​$i"​]="​1"​
 + fi
 + else
 + Present["​$i"​]="​1"​
 + FichierLien["​$i"​]="​1"​
 + fi
 +
 + if [[ "​$ResultatAnalyse"​ == ""​ ]]; then
 + ResultatAnalyse="​False ${lesFichiersCss[$i]} £${Present[$i]}£ £${FichierLien[$i]}£"​
 + else
 + ResultatAnalyse="​$ResultatAnalyse False ${lesFichiersCss[$i]} £${Present[$i]}£ £${FichierLien[$i]}£"​
 + fi
 + done
 +
 + ResultatAnalyse=$(echo "​$ResultatAnalyse"​ | sed '​s/​£1£/​Non/​g;​s/​£0£/​Oui/​g'​)
 +
 + #​ Affichage de la fenêtre de choix
 + Selection=$(yad --title="​Fichier CSS à modifier"​ --width 800 --height 200 --text-align="​center"​ --list --radiolist --column="​Sélectionné"​ --column="​Fichier"​ --column="​Présent sur le disque"​ --column="​Fichier lien" $ResultatAnalyse 2>/​dev/​null)
 +
 + # Abandon par l'​utilisateur #############​
 + retour="​$?"​
 + if [[ "​$retour"​ == "​1"​ ]] || [[ "​$retour"​ == "​252"​ ]] ; then
 + echo "​Arrêt. Traitement terminé. Erreur 30.";
 + yad --image=error --title="​Abandon"​ --text="​Vous avez abandonné.\nArrêt du traitement.\nErreur 30." 2>/​dev/​null
 + exit 30 ;
 + fi
 + ###########################################​
 +
 + LeFichierCSS=$(echo "​$Selection"​ | cut -d'​|'​ -f2)
 + echo "Le fichier $LeFichierCSS sera modifié"​
 +
 + #​ Contrôle de sécurité. Est-ce que le fichier existe ?
 + if [[ ! -e "​$LeFichierCSS"​ ]]; then 
 + echo "​Erreur dans le nom du fichier. $LeFichierCSS n'​existe pas. Arrêt du traitement. Erreur 40."
 + yad --image=error --title="​Abandon"​ --text="​$LeFichierCSS n'​existe pas.\nArrêt du traitement.\nErreur 40." 2>/​dev/​null
 + exit 40 ;
 + fi
 +
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
 # Étape 2 - Choix de l'​image retenue.... ​ # Étape 2 - Choix de l'​image retenue.... ​
Ligne 115: Ligne 194:
  
 echo echo
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"+/bin/echo -e "​\e[1;​32m###########################################################​\e[0m"
 /bin/echo -e "​\e[1;​32mChoix du fond d'​écran...En cours\e[0m"​ /bin/echo -e "​\e[1;​32mChoix du fond d'​écran...En cours\e[0m"​
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"+/bin/echo -e "​\e[1;​32m###########################################################​\e[0m"
 echo echo
  
-pix=$(zenity ​--file-selection ​--title="​Choisissez le nouveau fond d'​écran de la fenêtre de connexion"​)+ ImageDeFondOriginelle=$(yad --file --title="​Choisissez le nouveau fond d'​écran de la fenêtre de connexion" ​--filename="​$HOME/​.local/​share/​backgrounds/​*"​ 2>/​dev/​null)
  
-get just name of the file  + # Abandon par l'​utilisateur ############​
-fname=$(basename ​$pix)+ retour="$?" 
 + if [[ "$retour"​ == "​1"​ ]] || [[ "​$retour"​ == "​252"​ ]] ; then 
 + echo "​Arrêt. Traitement terminé. Erreur 50.";​ 
 + yad --image=error --title="​Abandon"​ --text="​Vous avez abandonné.\nArrêt du traitement.\nErreur 50." 2>/​dev/​null 
 + exit 50 ; 
 + fi
  
-echo $fname+ echo "Le fond d'​écran choisi est : ""​$ImageDeFondOriginelle"​ 
 + 
 + ###########################################​  
 + 
 + # Récupération du nom court du fichier 
 + NomImageDeFond=$(basename $ImageDeFondOriginelle) 
 + NomImageDeFond="​${NomImageDeFond%${NomImageDeFond:​ -4}}"​ 
 + NomImageDeFond="​${NomImageDeFond%640x480}"​ 
 + NomImageDeFond="​$NomImageDeFond""​640x480.png"​ 
 + 
 + if [[ -e "​$repDestImageDeFond$NomImageDeFond"​ ]]; then # Si une image du même nom existe déjà dans le répertoire de destination 
 + echo "​$repDestImageDeFond$NomImageDeFond existe déjà."​ 
 + index=0 
 + while [[ -e "​$repDestImageDeFond$NomPropose"​ ]]; do   
 + NomPropose=$(basename $ImageDeFondOriginelle) 
 + NomPropose="​${NomPropose%${NomPropose:​ -4}}"​ 
 + NomPropose="​${NomPropose%640x480}"​ 
 + NomPropose="​$NomPropose""​640x480_""​$index""​.png"​ 
 + let "​index++"​ 
 + done 
 + 
 + yad --image=important --text="​Saisie incorrecte. Une image à ce nom existe déjà. Acceptez vous le nom suivant ? : \nEn cliquant sur <​connserver>​ l'​image existante sera utilisée en lieu et place de celle que vous avez sélectionnée à l'​étape précédente<​b>​$NomPropose</​b>"​ --title="​Modification du nom du fichier image" --width=500 --button="​Annuler"​\!gtk-no:​1 --button="​Conserver":​2 --button="​Accepter le nouveau nom"​\!gtk-ok:​0 2>/​dev/​null 
 + # Abandon par l'​utilisateur #############​ 
 + retour="​$?"​ 
 + if [[ "​$retour"​ == "​1"​ ]] || [[ "​$retour"​ == "​252"​ ]] ; then 
 + echo "​Arrêt. Traitement terminé. Erreur 60.";​ 
 + yad --image=error --title="​Abandon"​ --text="​Vous avez abandonné.\nArrêt du traitement.\nErreur 60." 2>/​dev/​null 
 + exit 60 ; 
 + ###########################################​ 
 + 
 + elif [[ "​$retour"​ == "​0"​ ]] ; then # On n'​utilise pas une image existante 
 + NomImageDeFond="​$NomPropose"​ 
 + 
 + elif [[ "​$retour"​ != "​2"​ ]] ; then #​ autre cas -> pb 
 + echo "​Erreur yad. Erreur 70." 
 + yad --image=error --title="​Erreur"​ --text="​Yad a rencontré un problème.\nArrêt du traitement.\nErreur 70." 2>/​dev/​null 
 + exit 70 ; 
 + fi 
 + 
 + NomCompletImageDeFond="​$repDestImageDeFond$NomImageDeFond"​ 
 +  
 + fi 
 + 
 + #​ Contrôle de sécurité. Est-ce que le fichier existe ? 
 + if [[ ! -e "​$ImageDeFondOriginelle"​ ]]; then  
 + echo "​Erreur dans le nom du fichier. $ImageDeFondOriginelle n'​existe pas. Arrêt du traitement. Erreur 80." 
 + yad --image=error --title="​Le fichier n'​existe pas" --text="​$ImageDeFondOriginelle n'​existe pas.\nArrêt du traitement.\nErreur 80." 2>/​dev/​null 
 + exit 80 ; 
 + fi
  
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
-# Étape 3 - Copie du fichier dans le répertoire /​usr/​share/​background+# Étape 3 - Copie du fichier ​image dans le répertoire /​usr/​share/​background ​($repDestImageDeFond) 
 +# Je convertis en 640x480, c'est probablement inutile
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
  
-echo + if [[ "​$retour"​ != "​2"​ ]]; then #​ Evidemment si on utilise une image déjà présente, on saute l'​étape 3 
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"​ + 
-/bin/echo -e "​\e[1;​32mCopie du fichier dans le répertoire ​/​usr/​share/​background....En cours\e[0m"​ + echo 
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"​ + /bin/echo -e "​\e[1;​32m###########################################################​\e[0m"​ 
-echo+ /bin/echo -e "​\e[1;​32mCopie du fichier dans le répertoire ​$repDestImage...En cours\e[0m"​ 
 + /bin/echo -e "​\e[1;​32m###########################################################​\e[0m"​ 
 + echo
  
-while [[ -"/usr/share/​backgrounds/​$pix"​do+ sudo convert -geometry 640x480 "​$ImageDeFondOriginelle"​ "​$NomCompletImageDeFond"​ 
 + if [[ "​$?"​ != "​0"​ ]]; then 
 + echo "​Erreur convert. Erreur 90." 
 + yad ​--image=error --title="Erreur"​ --text="​Convert a rencontré un problème.\nArrêt du traitement.\nErreur 90." 2>/dev/null 
 +   exit 90 ; 
 + fi
  
-done + echo "​Conversion de $ImageDeFondOriginelle en $NomCompletImageDeFond"​
-sudo cp $pix /​usr/​share/​backgrounds/​+
  
 + fi
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
 # Étape 4 - Mise à jour du fichier css # Étape 4 - Mise à jour du fichier css
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
  
-echo + echo 
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"​ + /bin/echo -e "​\e[1;​32m###########################################################​\e[0m"​ 
-/bin/echo -e "​\e[1;​32mMise à jour du fichier ​gdm3.css....En cours\e[0m"​ + /bin/echo -e "​\e[1;​32mMise à jour du fichier ​$LeFichierCSS....En cours\e[0m"​ 
-/bin/echo -e "​\e[1;​32m!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\e[0m"​ + /bin/echo -e "​\e[1;​32m###########################################################​\e[0m"​ 
-echo+ echo
  
-if [[ ! -e "/​etc/​alternatives/​gdm3.css.anc" ]]; then   # ​ Conservation de toutes les versions du fichier modifié + if [[ ! -e "$LeFichierCSS""​.anc" ]]; then   # ​ Conservation de toutes les versions du fichier modifié 
-   ​sudo cp /​etc/​alternatives/​gdm3.css ​ /etc/alternatives/​gdm3.css.anc + sudo cp "​$LeFichierCSS" ​ "​$LeFichierCSS""​.anc"​ 
-else + if [[ "​$?"​ != "​0"​ ]]; then 
-   ​i=0 + echo "​Erreur cp. Erreur 100."​ 
-   ​while [[ ! -e "/​etc/​alternatives/​gdm3.css.anc$i"​ ]]; do + yad --image=error --title="​Erreur"​ --text="​cp a rencontré un problème.\nArrêt du traitement.\nErreur 100." 2>/dev/null 
-     ​let "​i+=1"​ +   exit 100 ; 
-   ​done + fi 
-fi + echo "​Création du fichier de sauvegarde ""​$LeFichierCSS""​.anc" 
-sudo sed -i "/#​lockDialogGroup/​a background: #2c001e url(file:///​usr/​share/​backgrounds/${fname});​\nbackground-repeat:​ no-repeat;​\nbackground-size:​ cover;​\nbackground-position:​ center;\n}\nGriffonToDel" /etc/alternatives/​gdm3.css  ​ + else 
-sudo sed -i '/GriffonToDel/,+2d' /etc/alternatives/​gdm3.css ​+ i=0 
 + while [[ ! -e "$LeFichierCSS""​.anc""​$i" ]]; do 
 + let "​i+=1"​ 
 + done 
 + sudo cp "​$LeFichierCSS" ​ "​$LeFichierCSS""​.anc""​$i"​ 
 + if [[ "​$?"​ != "​0"​ ]]; then 
 + echo "​Erreur cp. Erreur 110."​ 
 + yad --image=error --title="​Erreur"​ --text="​cp a rencontré un problème.\nArrêt du traitement.\nErreur 110." 2>/​dev/​null 
 +   exit 110 ; 
 + fi 
 + echo "​Création du fichier de sauvegarde ""​$LeFichierCSS""​.anc""​$i"​ 
 + fi 
 + 
 + sudo sed -i "/#​lockDialogGroup/​a background: #2c001e url(file://​${NomCompletImageDeFond});​\nbackground-repeat:​ no-repeat;​\nbackground-size:​ cover;​\nbackground-position:​ center;\n}\nTexteAEffacerParLeScript" ​"​$LeFichierCSS"​ 
 + if [[ "​$?"​ != "​0"​ ]]; then 
 + echo "​Erreur sed. Erreur 120."​ 
 + yad --image=error --title="​Erreur"​ --text="​sed a rencontré un problème.\nArrêt du traitement.\nErreur 120." 2>/dev/null 
 +   exit 120 ; 
 + fi 
 + sudo sed -i '/TexteAEffacerParLeScript/,​+2d' ​"​$LeFichierCSS"​ 
 + if [[ "​$?"​ != "​0"​ ]]; then 
 + echo "​Erreur sed. Erreur 130."​ 
 + yad --image=error --title="​Erreur"​ --text="​sed a rencontré un problème.\nArrêt du traitement.\nErreur 120." 2>/dev/null 
 +   exit 130 ; 
 + fi
  
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
-# Étape 5 - Inviter ​l'​utilisateur à réinitialiser le système+# Étape 5 - Invite de l'​utilisateur à réinitialiser le système
 #​---------------------------------------------------#​ #​---------------------------------------------------#​
  
-echo + echo 
-echo "Vous devez redémarrer votre appareil pour voir les effets de la mise à jour....:​-)"​ + echo "Vous devez redémarrer votre appareil pour voir les effets de la mise à jour....:​-)"​ 
-echo+ echo 
 +  
 + 
 + yad --text "Il faut redémarrer votre session pour prendre en compte vos modifications.\nVoulez vous : " --button="​Ne rien faire"​\!gtk-no:​1 --button="​Redémarrer":​2 --button="​Fermer la session":​0 2>/​dev/​null 
 + retour="​$?"​ 
 + case "​$retour"​ in 
 + "​0"​ ) 
 + pkill -9 -u "​$USER"​ 
 + ;; 
 + "​2"​ ) 
 + sudo reboot 
 + esac 
 + 
 +exit 0; 
 </​code>​ </​code>​
 Une copie de sauvegarde du fichier sauvegardé est réalisée. Une copie de sauvegarde du fichier sauvegardé est réalisée.
Ligne 183: Ligne 361:
 Pour extraire le thème par défaut, vous pouvez utiliser le script ''​extractgst.sh''​ suivant : Pour extraire le thème par défaut, vous pouvez utiliser le script ''​extractgst.sh''​ suivant :
  
-<file bash>#​!/​bin/​sh+<code bash>#​!/​bin/​bash 
 +  
 +rsrc='​gnome-shell-theme.gresource'​ 
 +gst="/​usr/​share/​gnome-shell/​$rsrc"​
  
-workdir=${HOME}/​shell-theme +workdir="$HOME/​shell-theme/​theme" 
-if [ ! -d ${workdir}/​theme ​]; then +xmlFile="​$workdir/$rsrc.xml"
-  mkdir -p ${workdir}/theme +
-fi +
-gst=/​usr/​share/​gnome-shell/​gnome-shell-theme.gresource+
  
-for r in `gresource list $gst`; do +test -d "$workdir"​ || mkdir -p "​$workdir"​ 
-        gresource extract $gst $>​$workdir/​${r#\/org\/gnome\/shell/} + 
-done</file>+cat <<eof >"​$xmlFile"​  
 +<?xml version="​1.0"​ encoding="​UTF-8"?>​ 
 +<​gresources>​ 
 +  <​gresource prefix="/​org/​gnome/​shell/​theme">​ 
 +eof 
 + 
 +while read -r file 
 +do 
 +    ​filename="​${file##​*/​}"​ 
 +    echo " ​ <​file>​$filename</​file>"​ >>"​$xmlFile"​ 
 +    ​gresource extract ​"$gst" "$file" ​>"$workdir/$filename"​ 
 +done < <​(gresource list "​$gst"​) 
 + 
 +cat <<eof >>"​$xmlFile"​ 
 +  </gresource>​ 
 +</gresources>​ 
 +eof 
 +</code>
  
 Exécutez ce script. Exécutez ce script.
Ligne 207: Ligne 402:
 === Le fichier XML === === Le fichier XML ===
  
-Ensuite ​vous devez créer, toujours dans ce répertoire,​ le fichier ''​gnome-shell-theme.gresource.xml'' ​avec le contenu suivant :+Ensuite, toujours dans ce répertoire, ​vous pouvez vérifier que le fichier ''​gnome-shell-theme.gresource.xml'' ​correspond au contenu suivant :
  
 <​code><?​xml version="​1.0"​ encoding="​UTF-8"?>​ <​code><?​xml version="​1.0"​ encoding="​UTF-8"?>​
Ligne 268: Ligne 463:
 === Compiler === === Compiler ===
  
-Enfin, ouvrez un terminal pour recompiler votre thème avec les commandes suivantes :+Enfin, ouvrez un terminal pour recompiler votre thème avec les commandes suivantes ​(libglib2.0-dev doit être installé) ​:
 <​code>​cd ~/​shell-theme/​theme/​ <​code>​cd ~/​shell-theme/​theme/​
 glib-compile-resources gnome-shell-theme.gresource.xml</​code>​ glib-compile-resources gnome-shell-theme.gresource.xml</​code>​
  • tutoriel/changer_arriere_plan_gdm.txt
  • Dernière modification: Le 03/05/2023, 23:35
  • par Coeur Noir