- set -uo pipefail
- mkdir -p immédiat sur log_dir avant tout appel à log()
- log() : garde sur argument vide
- ls remplacé par find + sort (robuste aux espaces et à la locale)
- list_files() : helper mutualisé pour les 5 listings
- Condition inutile sur files_local-share-doc supprimée
- Fichier source manquant → error() au lieu d'être ignoré silencieusement
- Section "Résumé des DOC" supprimée (code mort depuis 2023)
- Commentaires numérotés obsolètes supprimés
- Indentation homogénéisée (4 espaces)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- set -uo pipefail : variables non définies et erreurs de pipe détectées
- grep -qF : chaîne fixe (le '.' des chemins n'est plus un wildcard regex)
- cp sans pipe : erreurs de copie détectées et remontées via error()
- add_to_bashrc() : idempotent, évite les doublons dans ~/.bashrc
- Validation des noms de fichiers : rejet des traversées de chemin (../)
- Vérification du répertoire de travail en début de script
- Suppression des commentaires de refactoring (#Point X)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- log_dir créé avant tout appel à log() (mkdir -p immédiat)
- mapfile remplace cat + for non-quoté (word-splitting sur noms de fichiers)
- $destination (locale) remplace $destination_dir (globale) dans le message final
- source ~/.bashrc supprimé (sans effet dans un sous-shell)
- create_dir retiré des blocs appelants (déjà appelé dans process_deployment_files)
- purge_old_logs : deux find fusionnés en un seul pattern asl-*.log
- blocs répétitifs remplacés par des tableaux parallèles + boucle
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CC-BY-SA est conçue pour les œuvres créatives, pas pour le code.
EUPL v1.2 : copyleft, rédigée en français, compatible GPL, reconnue
légalement dans l'UE. README mis à jour (licence + chemins XDG).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Logs déplacés vers $XDG_STATE_HOME/scripts-bash (au lieu de ~/log ou ~/logs)
- Liste d'installation déplacée vers $XDG_DATA_HOME/scripts-bash/uninstall-list
- updateall : hosts → $XDG_CONFIG_HOME/updateall/hosts, stats → $XDG_STATE_HOME/updateall/stats
- generate_playlist : config → $XDG_CONFIG_HOME/generate-playlist
- random_music_player, play_tophaire : config via $XDG_CONFIG_HOME
- trierPhotos.php : logs via $XDG_STATE_HOME
- Toutes les variables XDG avec fallback (~/.local/state, ~/.local/share, ~/.config)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Nouveau script d'audit des fichiers .desktop : détecte les exécutables
manquants, apps cachées, icônes introuvables et erreurs de syntaxe
(via desktop-file-validate). Documentation man incluse.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- man pages déplacées dans local/share/man/man1/ (man cherche dans man<section>/)
- docs déplacées dans local/share/doc/scripts-bash/ (un sous-dossier par package)
- old-bin/ supprimé (fichiers obsolètes → historique git)
- .config/prep.sh parasite supprimé
- 'liste des scripts.base' renommé en 'liste-des-scripts.base' (pas d'espace)
- prep.sh et install.sh mis à jour pour les nouveaux chemins
- Serveurs ON affichés en premier (tri ON>OFF puis alphabétique)
- Affichage user@hostname dans la liste
- Panneau preview fzf : hostname/user/port/identityfile par host
- --ansi pour les couleurs ON (vert) / OFF (rouge)
- Champ status caché (|ON|OFF|) pour logique propre sans regex sur ANSI
- exec ssh remplace le process shell (pas de fork inutile)
- Passage à -P 20 pour les parcs avec beaucoup de serveurs
- read -r et printf à la place de echo -e