Script OEM

Dans ce forum, vous pouvez vous exprimer librement de vos souhaits pour améliorer les services de l'association
Avatar de l’utilisateur
Otyugh
Messages : 63
Inscription : 28 déc. 2024 18:35
Contact :

Script OEM

Message par Otyugh »

Salut,
voilà une suggestion de système pour préparer les ordis :

Code : Tout sélectionner

#prérequis
sudo -i
apt install dialog

#mise en place
wget "https://salsa.debian.org/otyugh/livebuild-ez/-/raw/main/recipe/df/chroot/usr/share/dfiso/oem.sh?ref_type=heads&inline=false" -O /usr/local/bin/eom.sh
chmod +x /usr/local/bin/eom.sh

#lancement au prochaine démarrage
eom.sh setup
Et c'est tout ! Au prochain démarrage on demande demande identifiant, mot de passe, et autologin ou pas.
Normalement on a déjà mangé les gros bugs évidents avec wardidi, y avait quelques exceptions auquel il fallait penser :)

S'il y a une piste à explorer c'est si on peut pas trouver plus sexy que dialog (qui est très... Très années 1990, mais fonctionnel ~)
Dernière modification par Otyugh le 06 févr. 2025 03:53, modifié 1 fois.
Avatar de l’utilisateur
lann
Site Admin
Messages : 42
Inscription : 28 déc. 2024 11:51
Localisation : Queven
Contact :

Re: Scirpt OEM

Message par lann »

Je vais intégrer le script sur la distribution LMDE.
Je vais diminuer la partition du /home pour que ça rentre dans n'importe quel disque dur. (500 Go ce n'est pas bon)
Je vais cloner le disque et tester tout ça sur un ordi donné par Linux Quimper.
Puis agrandir la partition /home avec la place restante sur le disque

Par la suite, il faudrait que j'arrive à mettre le clone sur la clé Ventoy.
Mais je vais au plus simple pour l'instant
Avatar de l’utilisateur
Otyugh
Messages : 63
Inscription : 28 déc. 2024 18:35
Contact :

Re: Scirpt OEM

Message par Otyugh »

Pis sachant qu'en parallèle j'ai une DFiso "presque fonctionnelle" 100% automatisé avec ce script dedans ET un home séparé.
Et aussi une distro spéciale pourfendeuse de SSD et HDD que je viens de finir ce soir.

Quoiqu'il en soit j'avoue que je me vois plutôt utiliser mint LMDE dans un premier temps de toute façon (moins de risque de gros oublis à posteriori).

J'intégrerai bien "rustdesk" pour des dépannages à distance, mais faut voir si ça touche vraiment notre public (quand j'ai ma casquette de dépanneur, c'est un gros confort de pas passer 20min au tel à essayer de leur faire installer le truc :lol: ). - Mais justement une liste des dépanneurs (pour les urgences) et des GULL du coin serait un truc qu'on devrait fournir avec l'ordi.
Avatar de l’utilisateur
lann
Site Admin
Messages : 42
Inscription : 28 déc. 2024 11:51
Localisation : Queven
Contact :

Re: Script OEM

Message par lann »

Je viens de tester le script : tout fonctionne sauf les dossiers marques-pages dans l'explorateur de fichiers Nemo.

Les liens sont dans le fichier /home/user/.config/gtk-3.0/bookmarks

Il faudrait modifier ces liens à la fin du changement du nom et mot de passe
Avatar de l’utilisateur
Otyugh
Messages : 63
Inscription : 28 déc. 2024 18:35
Contact :

Re: Script OEM

Message par Otyugh »

Oui,facile ! (bien vu)

Par contre ( :oops: si confirmé :oops: ) je viens de voir un truc (ou ça vient de ma clé ?) que j'ai du kernels panic au second boot, si tu peux confirmer vérifier en démarrant ton installation :D (si oui j'ai ma ptite idée de correction évidente, il est pas impossible que update-grub se comporte pas comme attendu d'une session lancée via init=.. )

Si non c'est que ma clé :< (mais dans tous les cas je vais faire un truc plus KISS en évitant de passer par update-grub ; juste un sed qui modifie la ligne qu'il dans un seul fichier ça sera très bien)
Avatar de l’utilisateur
lann
Site Admin
Messages : 42
Inscription : 28 déc. 2024 11:51
Localisation : Queven
Contact :

Re: Script OEM

Message par lann »

Non pas de kernel panic au demarrage
Avatar de l’utilisateur
Otyugh
Messages : 63
Inscription : 28 déc. 2024 18:35
Contact :

Re: Script OEM

Message par Otyugh »

Ouf ! :mrgreen:
Mis à jour !
Juste ajouté

Code : Tout sélectionner

sed -ri "s|(/home/)$OLDNAME|\1$NEWNAME|" "/home/$NEWNAME/.config/gtk-3.0/bookmarks"
Par contre faudrait creuser mieux voir si y a d'autres occurrences de chemin hardcodés comme ça.
On peut les lister en faisant :

Code : Tout sélectionner

grep -lre "$HOME" $HOME
Sinon on peut lancer un sed sur touuuuus les fichiers du /home, y en a pas beaucoup au début, mais c'est un peu brutal :o
Avatar de l’utilisateur
lann
Site Admin
Messages : 42
Inscription : 28 déc. 2024 11:51
Localisation : Queven
Contact :

Re: Script OEM

Message par lann »

Voila ce qu'il me reste lorsque je change de nom de connection et je lance la commande

Code : Tout sélectionner

grep -r --color libre . 

Code : Tout sélectionner

./.config/pix/history.xbel:  <bookmark href="file:///home/libre/Images" added="2024-12-06T16:27:23.158686Z" modified="2024-12-06T16:27:23.158692Z" visited="2024-12-06T16:27:23.158687Z">
./.config/gtk-3.0/bookmarks:file:///home/libre/Documents
./.config/gtk-3.0/bookmarks:file:///home/libre/Musique
./.config/gtk-3.0/bookmarks:file:///home/libre/Images
./.config/gtk-3.0/bookmarks:file:///home/libre/Vid%C3%A9os
./.config/gtk-3.0/bookmarks:file:///home/libre/T%C3%A9l%C3%A9chargements
./.xsession-errors.old:dbus-update-activation-environment: setting XAUTHORITY=/home/libre/.Xauthority
./.xsession-errors.old:localuser:libre being added to access control list
./.xsession-errors.old:dbus-update-activation-environment: setting USER=libre
./.xsession-errors.old:dbus-update-activation-environment: setting HOME=/home/libre
./.xsession-errors.old:dbus-update-activation-environment: setting LOGNAME=libre
./.xsession-errors.old:dbus-update-activation-environment: setting XAUTHORITY=/home/libre/.Xauthority
./.xsession-errors.old:dbus-update-activation-environment: setting XDG_GREETER_DATA_DIR=/var/lib/lightdm/data/libre
./.xsession-errors.old:dbus-update-activation-environment: setting PWD=/home/libre
./.xsession-errors.old:dbus-update-activation-environment: setting XDG_DATA_DIRS=/usr/share/gnome:/home/libre/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
./.mozilla/firefox/t1cuxfll.default-release/pkcs11.txt:parameters=configdir='sql:/home/libre/.mozilla/firefox/t1cuxfll.default-release' certPrefix='' keyPrefix='' secmod='secmod.db' flags=optimizeSpace updatedir='' updateCertPrefix='' updateKeyPrefix='' updateid='' updateTokenDescription='' 
./.thunderbird/lkfqzr5r.default-default/pkcs11.txt:parameters=configdir='sql:/home/libre/.thunderbird/lkfqzr5r.default-default' certPrefix='' keyPrefix='' secmod='secmod.db' flags=optimizeSpace updatedir='' updateCertPrefix='' updateKeyPrefix='' updateid='' updateTokenDescription='' 
On peut enlever les erreurs DBUS et l'historique de pix (première ligne)

Voilà ce qu'il me semble intéressant à modifier :

Code : Tout sélectionner

./.config/gtk-3.0/bookmarks:file:///home/libre/Documents
./.config/gtk-3.0/bookmarks:file:///home/libre/Musique
./.config/gtk-3.0/bookmarks:file:///home/libre/Images
./.config/gtk-3.0/bookmarks:file:///home/libre/Vid%C3%A9os
./.config/gtk-3.0/bookmarks:file:///home/libre/T%C3%A9l%C3%A9chargements
./.mozilla/firefox/t1cuxfll.default-release/pkcs11.txt:parameters=configdir='sql:/home/libre/.mozilla/firefox/t1cuxfll.default-release' certPrefix='' keyPrefix='' secmod='secmod.db' flags=optimizeSpace updatedir='' updateCertPrefix='' updateKeyPrefix='' updateid='' updateTokenDescription='' 
./.thunderbird/lkfqzr5r.default-default/pkcs11.txt:parameters=configdir='sql:/home/libre/.thunderbird/lkfqzr5r.default-default' certPrefix='' keyPrefix='' secmod='secmod.db' flags=optimizeSpace updatedir='' updateCertPrefix='' updateKeyPrefix='' updateid='' updateTokenDescription='' 
Deuxième chose, essaye de sécuriser la commande à lancer
Je suis resté con 15 minutes. ça fonctionnait pas. J'avais lancé

Code : Tout sélectionner

eom.sh
au lieu de

Code : Tout sélectionner

eom.sh setup
Avatar de l’utilisateur
Otyugh
Messages : 63
Inscription : 28 déc. 2024 18:35
Contact :

Re: Script OEM

Message par Otyugh »

Ok pour la config thunderbird/firefox.
Deuxième chose, essaye de sécuriser la commande à lancer
Je pourrai mettre automatiquement le mode "setup" si une session utilisateur est ouverte ? (je pense qu'on peut profiter du fait que 90% des cas la session graphique est sur tty7 pour assumer des choses, même si c'est pas 100% fiable ~)

...Et dans l'esprit EOM je devrai vider les caches et historiques aussi maintenant que j'y pense, ferait pas de mal.

Code : Tout sélectionner

~/.config/pix/history.xbel
~/.xsession-errors*
~/.bash_history*
~/.cache/
(pas testé encore https://salsa.debian.org/otyugh/livebui ... c0e88f499e )
Avatar de l’utilisateur
lann
Site Admin
Messages : 42
Inscription : 28 déc. 2024 11:51
Localisation : Queven
Contact :

Re: Script OEM

Message par lann »

Y a rien qui te choque ?

Code : Tout sélectionner

sed -ri "s|(/home/)$OLDNAME|\1$NEWNAME|" "/home/$NEWNAME/.config/gtk-3.0/bookmarks"
sed -ri "s|(/home/)$OLDNAME|\1$NEWNAME|" "/home/utilisateur/.mozilla/firefox/"*"/pkcs11.txt"
sed -ri "s|(/home/)$OLDNAME|\1$NEWNAME|" "/home/utilisateur/.thunderbird/"*"/pkcs11.txt"
J'ai fait la modification du code et essayé : tout fonctionne.
J'ai voulu faire un merge request mais il faut 4 jours pour peut être pouvoir s'inscrire. Tu feras un commit pour corriger ton code.

Avec clonezilla, j'ai le clone du disque.
Y' a plus qu'à cloner le disque vers les PC.
Dans la prochaine annonce (télégramme et ouest france), je mettrai qu'il y aura des PC à redistribuer.
Répondre