1736 lines
60 KiB
Bash
Executable File
1736 lines
60 KiB
Bash
Executable File
#!/bin/sh
|
||
################################################################################################
|
||
##
|
||
## Nom: new_post_install.sh
|
||
##
|
||
## Version: 0.02.30
|
||
##
|
||
## Licence: Creative Commons
|
||
##
|
||
## Comportement: Script de post-installation pour une distribution Debian GNU/Linux Sid
|
||
## Les variables en miniscules sont les variables issues de mon template de script shell
|
||
## Pour les variables spécifiques à un script, je les met en MAJUSCULES
|
||
##
|
||
##
|
||
##
|
||
################################################################################################
|
||
##
|
||
## Date de création: 15-02-2012
|
||
##
|
||
## Auteur: Gardouille
|
||
##
|
||
## Dépendances: Je me base sur un ensemble de fichiers seed situés dans un répertoires seed/ pour pré-configurer quelques logiciels:
|
||
## backuppc.seed
|
||
## cups.seed
|
||
## ddclient.seed
|
||
## hddtemp.seed
|
||
## keyboard.seed
|
||
## locales.seed
|
||
## rcs.seed
|
||
## restart_no_asking.seed
|
||
## samba.seed
|
||
## sun-java6-jre.seed
|
||
## x11-common.seed
|
||
##
|
||
## Dernière modifications:
|
||
## 2015-09-03
|
||
## - Add asr-manpages, knocd, lynx, rofi, urlview rxvt-unicode-256color pkg
|
||
## 2015-09-02
|
||
## - Add sudo pkg and add the standard user to the sudo group
|
||
## - New name for Debian multimedia keyring pkg: deb-multimedia-keyring
|
||
## - Create multiple sources.list files
|
||
## - Create multiple preferences files
|
||
## - Add iceowl-extension pkg, the new way to manage calendar (lightning) with Thunderbird/Icedove
|
||
## 2014-12-24 -
|
||
## - Ajout de xbacklight
|
||
## 2014-12-08 -
|
||
## - Ajout de mat, dwb
|
||
## 2014-05-19 -
|
||
## - Ajout de luakit
|
||
## 2014-04-28 -
|
||
## - Ajout de multitail
|
||
## 2014-01-09 -
|
||
## - Ajout de knockd et pidgin-otr
|
||
## 2013-11-27 -
|
||
## - Ajout de i3lock comme screensaver
|
||
## 2013-11-23 -
|
||
## - Ajout de weechat-curses comme client irc à la place de irssi
|
||
## - Ajout de git - ifscheme - openvpn - midori (à la place de chromium) - wmctrl -
|
||
## - Suppression de sun-java6-jre qui n'est plus supporté
|
||
## 2013-06-28 - 0.03.29
|
||
## - ajout des paquets: libreoffice-pdfimport fonts-linuxlibertine
|
||
## 2013-06-20 - 0.03.28
|
||
## - Ajout de l'installation du paquet wakeonlan
|
||
## 2013-05-27 - 0.03.27
|
||
## - Remplacement de locate par mlocate qui en est sa nouvelle implémentation
|
||
## 2013-02-27 - 0.02.27
|
||
## - Ajout du paquet moreutils
|
||
## 2012-11-12 - 0.11.12
|
||
## - Ajout du paquet redshift pour régler la chaleur de l'écran
|
||
## - + l'application graphique gtk-redshift
|
||
## 2012-09-06
|
||
## - Ajout du paquet dnsutils
|
||
## 2012-08-09 - 0.8.09
|
||
## - Ajout du téléchargement et de l'installation de neap
|
||
## 2012-08-07 - 0.8.07
|
||
## - Ajout du paquet postfix pour remplacer exim4
|
||
## 2012-06-29 - 0.6.29
|
||
## - Ajout du paquet wpasupplicant qui avait été oublié ...
|
||
## - Ajout de la dépendance lsof pour vérifier les redirections des sorties
|
||
## 2012-06-22 - 0.6.22
|
||
## - Ajout du thème gtk2 cleanice
|
||
## 2012-05-01 - 0.5.01
|
||
## - Remplacement de firmware-brcm80211 au profit de broadcom-sta-dkms
|
||
## 2012-04-23 - 0.4.23
|
||
## - Remplacement de comix par son fork mcomix (comix a été abandonné)
|
||
## 2012-04-19 - 0.4.19
|
||
## - Ajout du paquet vlock
|
||
## 2012-04-11 - 0.4.11
|
||
## - Ajout du paquet mumble
|
||
## 2012-04-06 - 0.4.6
|
||
## - Ajout de sun-java6-jre (nécessaire pour le vnc dans firefox :'( )
|
||
## 2012-04-04 - 0.4.4:
|
||
## - Ajout du paquet alsa-utils
|
||
## 2012-04-03 - 0.4.1:
|
||
## - Ajout du paquet mirage (visionneuse image)
|
||
## - Ajout du paquet keychain (clef ssh/passphrase)
|
||
## 2012-03-30 - 0.3.3:
|
||
## - Ajout du paquet ntp
|
||
## 2012-03-28 - 0.3.2:
|
||
## - Ajout du pack de langue fr pour icedove et iceweasel
|
||
## - Ajout d'un fichier ~/.xinitrc pour la configuration d'Openbox
|
||
## - Ajout des parties: Outils système (graphique), Carte graphique (nvidia), wifi (broadcom)
|
||
## 2012-03-23 - 0.3.1:
|
||
## - Ajout de vim et tmux dans la partie Outils systèmes
|
||
## - Ajout des parties: serveur graphique, openbox, outils bureautique (graphique+shell)
|
||
## - Ajout des parties: Multimédia (graphique+shell), internet (graphique+shell)
|
||
## 2012-02-17 - 0.1.2:
|
||
## - Suppression du pager most car less une fois bien configuré (lesspipe) fait mieux
|
||
## - Changement de la valeur pour le lancement de apt-listchanges en fonction du niveau
|
||
## de debug choisi (affichage des modifications lors de la maj d'un paquet)
|
||
## 2012-02-16 - 0.1.1:
|
||
## - Ajout d'une variable propre à ucf (Update Configuration File) qui permet d'utiliser
|
||
## automatiquement le fichier de configuration déjà en place plutôt que le fichier
|
||
## proposé par la maj du paquet
|
||
## - Ajout d'un fichier seed (pré-configuration) pour autoriser le redémarrage automatique
|
||
## de service si maj à partir d'aptitude
|
||
## - Utilisation de dd à la place de read pour la fonction d'attente
|
||
## - Ajout d'une fonction pour pré-charger la configuration d'un paquet (seed).
|
||
## 2012-02-15 - 0.1:
|
||
## - Reprise du script original pour l'alléger et le compléter
|
||
## - Ajout d'une fonction qui attend l'appui sur une touche
|
||
# **********************************************************************************************
|
||
# **********************************************************************************************
|
||
## À Modifier:
|
||
## - Supprimer apt-listbugs (commenter /etc/apt/apt.conf.d/10apt-listbugs)?
|
||
## - Exporter des variables le temps de l'installation pour l'automatisation
|
||
## - Ajouter un warning si pas de dossier seed dans le répertoire d'install ?
|
||
## - Ajouter un warning pour prévenir qu'il est nécessaire d'effectuer des modifications (ddclient, )
|
||
## - Ajouter la purge de tous les fichiers de configuration inutiles
|
||
## - aptitude purge '~c'
|
||
## - Essayer de configurer xclip pour tmux
|
||
##
|
||
################################################################################################
|
||
|
||
## Vérification que le script est bien lancé en root
|
||
if [ "${USER}" = "root" ]; then
|
||
echo "Lancement du script"
|
||
else
|
||
echo "/!\\ Le script nécessite d'être root /!\\"
|
||
exit 1
|
||
fi
|
||
|
||
|
||
|
||
# **********************************************************************************************
|
||
#
|
||
# Variables globales
|
||
#
|
||
# -----------------------------------------------------------
|
||
#
|
||
## Choix du mode d'exécution du script: (cf fonction def_debug)
|
||
## Niveau 0
|
||
# Exécution automatique avec normalement aucune interaction avec l'utilisateur et peu de log
|
||
## Niveau 1 et 2
|
||
# Exécution automatique avec un peu plus d'information dans les logs
|
||
## Niveau 3
|
||
# Exécution manuelle avec tous les logs
|
||
## Niveau 4
|
||
# Reprise du niveau 3 sur la sortie standard
|
||
## Niveau 5
|
||
# Exécution automatique avecla sortie standard
|
||
## Niveau 6
|
||
# Mode debug
|
||
mode_debug=5
|
||
|
||
## Utilisateur principal du système:
|
||
UTILISATEUR="jegardai"
|
||
|
||
## Nom de la version Debian souhaitée
|
||
VERSION_NAME="sid"
|
||
|
||
## Architecture de la distribution
|
||
ARCH=""
|
||
|
||
## Emplacement du script
|
||
INSTALL_DIR=$(pwd)
|
||
|
||
## Options d'aptitude en fonction du niveau de debug
|
||
OPTIONS=""
|
||
|
||
# Fin des variables globales
|
||
# -----------------------------------------------------------
|
||
# **********************************************************************************************
|
||
|
||
|
||
# **********************************************************************************************
|
||
#
|
||
# Fichiers globaux
|
||
#
|
||
# -----------------------------------------------------------
|
||
#
|
||
## Répertoire de log
|
||
log_dir="/home/${UTILISATEUR}/log/`date +"%d"-"%m"-"%y"`"
|
||
|
||
# !! Pour utiliser un répertoire de log, décommenter la ligne suivante:
|
||
#mkdir -p $log_dir
|
||
|
||
if [ -d ${log_dir} ]; then
|
||
## Fichier de log placé dans le répertoire de log
|
||
fichier_log="${log_dir}/new_post_install.sh.log"
|
||
## Fichier de erreur placé dans le répertoire de log
|
||
fichier_erreur="${log_dir}/new_post_install.sh.err"
|
||
else
|
||
## Fichier de log "normal"
|
||
fichier_log="new_post_install.sh.log"
|
||
## Fichier de erreur "normal"
|
||
fichier_erreur="new_post_install.sh.err"
|
||
fi
|
||
|
||
## Fichier qui reprend toutes les informations pour l'utilisateur à la suite de l'installation.
|
||
INFORMATION="information.txt"
|
||
|
||
# Fin des fichiers globaux
|
||
# -----------------------------------------------------------
|
||
# **********************************************************************************************
|
||
|
||
|
||
# **********************************************************************************************
|
||
#
|
||
# Fonctions globales
|
||
#
|
||
# -----------------------------------------------------------
|
||
## Fonction d'affichage en fonction du mode debug choisi
|
||
echod() { [ "${mode_debug}" -ge 5 ] && echo "\n(DEBUG) $*" ; }
|
||
echok() { [ "${mode_debug}" -ge 3 ] && echo "(ok) $*" ; }
|
||
echoi() { [ "${mode_debug}" -ge 2 ] && echo "(ii) $*" ; }
|
||
echow() { [ "${mode_debug}" -ge 1 ] && echo "(!!) $*" ; }
|
||
echnk() { [ "${mode_debug}" -ge 0 ] && echo "(EE) $*" ; }
|
||
|
||
|
||
## Redirection de la sortie standard (stdout) vers le fichier de log
|
||
redirect_stdout()
|
||
{
|
||
# On test si le descripteur de fichier 6 existe déjà
|
||
if [ ! "$(lsof -a -p $$ -d6 | grep 6)" ]; then # Si stdout n'est pas déjà redirigé
|
||
# Sauvegarder la valeur de stdout dans le descripteur de fichier 6
|
||
exec 6>&1
|
||
|
||
# stdout remplacé par le fichier de log
|
||
exec > ${fichier_log}
|
||
echok "stdout redirigé"
|
||
else
|
||
echow "stdout déjà redirigé ..."
|
||
fi
|
||
}
|
||
|
||
## Restauration de stdout
|
||
restore_stdout()
|
||
{
|
||
# Test si le descripteur de fichier 6 existe
|
||
if [ "$(lsof -a -p $$ -d6 | grep 6)" ]; then
|
||
echok "Restauration de stdout et fermeture du descripteur de fichier 6"
|
||
# Restaurer stdout et fermer le descripteur de fichier #6
|
||
exec 1>&6 6>&-
|
||
else
|
||
echoi "Le descripteur de fichier 6 n'existe pas. stdout est normalement en place"
|
||
fi
|
||
}
|
||
|
||
## Redirection de la sortie d'erreur standard (stderr) vers le fichier d'erreur
|
||
redirect_stderr()
|
||
{
|
||
# On test si le descripteur de fichier 7 existe déjà
|
||
if [ ! "$(lsof -a -p $$ -d7 | grep 7)" ]; then
|
||
# Sauvegarder la valeur de stderr dans le descripteur de fichier 7
|
||
exec 7>&2
|
||
|
||
# stderr remplacé par le fichier d'erreur
|
||
exec 2> ${fichier_erreur}
|
||
echok "stderr redirigé"
|
||
else
|
||
echow "stderr déjà redirigé"
|
||
fi
|
||
}
|
||
|
||
## Restauration de stderr
|
||
restore_stderr()
|
||
{
|
||
# Test si le descripteur de fichier 7 existe
|
||
if [ "$(lsof -a -p $$ -d7 | grep 7)" ]; then
|
||
echok "Restauration de stderr et fermeture du descripteur de fichier 7"
|
||
# Restaurer stderr et fermer le descripteur de fichier #7
|
||
exec 2>&7 7>&-
|
||
else
|
||
echoi "Le descripteur de fichier 7 n'existe pas. stderr est normalement en place"
|
||
fi
|
||
}
|
||
|
||
|
||
## Fonction de vérification du code retour de la commande précédemment exécutée
|
||
# Affiche un message relatif au code retour, et peut sortir du script.
|
||
# - Prototype : check_output "MESSAGE_RELATIF_À_LA_COMMANDE"
|
||
check_output()
|
||
{
|
||
## Vérification du code retour de la dernière commande
|
||
case "${?}" in
|
||
0 ) ## Si 0, tout s'est bien passé
|
||
echok "${1}\n"
|
||
> "${fichier_erreur}" ## On vide le fichier d'erreur qui aurait pu récupérer des warnings ou autre
|
||
# Appel de la fonction d'attente (appui sur une touche)
|
||
attente
|
||
;; ## Pas d'erreur
|
||
* ) ## Si différent de 0
|
||
## On affiche le message relatif à l'erreur
|
||
echnk "Erreur lors de: -> ${1} <-"
|
||
echoi "Voir le fichier ${fichier_erreur} pour plus d'information."
|
||
## Et on arrête le script avec un code retour 1
|
||
echnk "/!\\ Arrêt du script /!\\ "
|
||
exit 1;
|
||
;;
|
||
esac
|
||
}
|
||
|
||
## Fonction qui crée les fichiers passés en paramètres
|
||
## Si les fichiers existent déjà, ils sont supprimés puis recrées
|
||
## Prototype: create_file $1 [$2 $3 ... $x]
|
||
## $1: nom du premier fichier à créer
|
||
create_file()
|
||
{
|
||
# Parcourir tous les arguments et les crée si nécessaire
|
||
for fichier in $*; do
|
||
if [ -f ${fichier} ]; then
|
||
rm -f ${fichier}
|
||
touch ${fichier}
|
||
check_output "Suppression puis création du fichier ${fichier}"
|
||
else
|
||
touch ${fichier}
|
||
check_output "Création du fichier ${fichier}"
|
||
fi
|
||
done
|
||
}
|
||
|
||
## Fonction qui permet de redéfinir les fichiers de log
|
||
# Prototype: change_log_file $1
|
||
# $1: nouveau nom du fichier de log
|
||
change_log_file()
|
||
{
|
||
# Restauration des sorties standard
|
||
restore_stdout
|
||
restore_stdin
|
||
|
||
# Redéfinition des fichiers de logs pour mieux correspondre à l'action en cours
|
||
if [ -d ${log_dir} ]; then
|
||
## Fichier de log placé dans le répertoire de log
|
||
fichier_log="${log_dir}/${1}.log"
|
||
## Fichier de erreur placé dans le répertoire de log
|
||
fichier_erreur="${log_dir}/${1}.err"
|
||
else
|
||
## Fichier de log "normal"
|
||
fichier_log="${1}.log"
|
||
## Fichier de erreur "normal"
|
||
fichier_erreur="${1}.err"
|
||
fi
|
||
|
||
# Création des fichiers de logs
|
||
create_file ${fichier_log} ${fichier_erreur}
|
||
|
||
# Rediriger les sorties standard
|
||
redirect_stdout
|
||
redirect_stderr
|
||
}
|
||
|
||
## Fonction d'attente
|
||
# Attend l'appui sur une touche si le mode debug le permet
|
||
# Prototype: attente
|
||
attente()
|
||
{
|
||
if [ "${mode_debug}" -ge 6 ]; then
|
||
echod "Appuyer sur la touche 'Entrée' pour continuer ..."
|
||
#read -s -n1 /dev/null 2> /dev/null
|
||
dd bs=1 count=1 > /dev/null 2>&1
|
||
# Le problème avec la commande `read` est que les différents shell (sh, bash, zsh, ...) en ont une implémentation
|
||
# différente. L'utilisation de `dd` est en revanche fonctionnelle partout.
|
||
fi
|
||
}
|
||
|
||
## Définition du niveau de debug
|
||
## Prototype: def_debug $1
|
||
## $1: valeur comprise entre 0 et 2 pour déterminer le niveau de debug
|
||
## Niveau 0
|
||
# Exécution automatique avec normalement aucune interaction avec l'utilisateur et peu de log
|
||
## Niveau 1 et 2
|
||
# Exécution automatique avec un peu plus d'information dans les logs
|
||
## Niveau 3
|
||
# Exécution automatique avec tous les logs
|
||
## Niveau 4
|
||
# Reprise du niveau 3 sur la sortie standard
|
||
## Niveau 5
|
||
# Mode debug
|
||
def_debug()
|
||
{
|
||
case "${1}" in
|
||
0) ## Niveau minimum avec le minimum de contenu dans les fichiers de logs
|
||
# La sortie standard sera redirigée dans un fichier de log
|
||
redirect_stdout
|
||
# La sortie d'erreur sera redirigée dans un fichier d'erreur
|
||
redirect_stderr
|
||
# Aptitude en tout automatique
|
||
OPTIONS="-y"
|
||
# Ne pas afficher les changements sur les paquets lors des mises à jour
|
||
sed -i 's/pager$/none/' /etc/apt/listchanges.conf
|
||
;;
|
||
1) ## Niveau bas avec seulement les erreurs et les warnings dans les logs
|
||
redirect_stdout
|
||
redirect_stderr
|
||
# Aptitude en tout automatique
|
||
OPTIONS="-y"
|
||
# Ne pas afficher les changements sur les paquets lors des mises à jour
|
||
sed -i 's/pager$/none/' /etc/apt/listchanges.conf
|
||
;;
|
||
2) ## Niveau intermédiaire avec les erreurs, les warnings et les informations
|
||
redirect_stdout
|
||
redirect_stderr
|
||
# Pas d'options pour aptitude
|
||
OPTIONS="-y"
|
||
# Ne pas afficher les changements sur les paquets lors des mises à jour
|
||
sed -i 's/pager$/none/' /etc/apt/listchanges.conf
|
||
;;
|
||
3) ## Niveau moyen avec presque tous les echos (sauf DEBUG)
|
||
redirect_stdout
|
||
redirect_stderr
|
||
# Pas d'options pour aptitude
|
||
OPTIONS=""
|
||
;;
|
||
4) ## Niveau élevé avec presque tous les echos (sauf DEBUG) sur la sortie standard
|
||
redirect_stderr
|
||
# Pas d'options pour aptitude
|
||
OPTIONS=""
|
||
;;
|
||
5)
|
||
OPTIONS="-y"
|
||
# Ne pas afficher les changements sur les paquets lors des mises à jour
|
||
sed -i 's/pager$/none/' /etc/apt/listchanges.conf
|
||
;;
|
||
6) ## Niveau debug avec tous les echos et les sorties non redirigées
|
||
# Pas d'options pour aptitude
|
||
OPTIONS=""
|
||
echo "Mode debug"
|
||
attente
|
||
;;
|
||
*) ## Niveau non pris en compte
|
||
echo "Erreur, le niveau choisi (${1}) n'est pas géré"
|
||
esac
|
||
}
|
||
|
||
## Fonction d'installation
|
||
# Récupère la liste des paquets à installer et le type de ces paquets.
|
||
# Prototype: aptins "DESCRIPTION_PAQUET" paquet1 paquet2 ... paquetX
|
||
# Les options sont définies en fonctions du niveau de debug
|
||
# Utilisation de la fonction check_output pour vérifier que tout s'est bien passé
|
||
aptins()
|
||
{
|
||
## On récupère la description
|
||
DESCR_PAQUET="${1}"
|
||
## Décale la liste des paramètres, $2 devient $1, ... Permet de supprimer la description des paquet.
|
||
shift
|
||
## Installation de la liste des paquets passées en paramètre
|
||
aptitude ${OPTIONS} install $*
|
||
## Vérification que tout s'est bien passé
|
||
check_output "${DESCR_PAQUET}"
|
||
## Nettoie les paquets téléchargés
|
||
aptitude clean
|
||
|
||
}
|
||
|
||
## Fonction qui récupère l'architecture de la distribution
|
||
architecture()
|
||
{
|
||
ARCHI=$(uname -r)
|
||
|
||
if [ `uname -r | grep amd64` ]; then
|
||
ARCH="64"
|
||
elif [ `uname -r | grep 86` ]; then
|
||
ARCH="86"
|
||
else
|
||
echow "architecture inconnue: ${ARCHI}"
|
||
fi
|
||
}
|
||
|
||
## Fonction qui vérifie la présence d'un fichier seed pour l'argument passé en paramètre.
|
||
# Si ce fichier existe, il sera donc appliqué.
|
||
# Prototype: preconfig "NOM_PAQUET"
|
||
preconfig()
|
||
{
|
||
if [ -f ${INSTALL_DIR}/seed/${1}.seed ]; then
|
||
debconf-set-selections ${INSTALL_DIR}/seed/${1}.seed
|
||
check_output "Préconfiguration de ${1}"
|
||
else
|
||
echow "Il n'existe aucun fichier seed pour ${1}."
|
||
fi
|
||
}
|
||
|
||
# Fin des fonctions globales
|
||
# -----------------------------------------------------------
|
||
# **********************************************************************************************
|
||
|
||
|
||
|
||
# **********************************************************************************************
|
||
#
|
||
# Programme principale
|
||
#
|
||
# -----------------------------------------------------------
|
||
|
||
# Création des fichiers de logs
|
||
create_file ${fichier_log} ${fichier_erreur} ${INFORMATION}
|
||
|
||
# Définition du niveau de debug
|
||
def_debug ${mode_debug}
|
||
|
||
# Définition de l'architecture
|
||
architecture
|
||
|
||
|
||
|
||
|
||
###########################################################
|
||
## Configuration de Aptitude
|
||
###########################################################
|
||
###### Pré-configuration
|
||
|
||
## Chargement de la configuration pour ne pas avoir de messages lorsqu'un service a besoin
|
||
## de redémarrer après une mise à jour
|
||
preconfig restart_no_asking
|
||
|
||
## Définition de paramètres
|
||
cat > /etc/apt/apt.conf.d/00configperso << EOF
|
||
// Agrandir la taille du cache d'Apt
|
||
APT::Cache-Limit 100000000;
|
||
// Version de Debian par défaut Unstable
|
||
APT::Default-Release "unstable";
|
||
EOF
|
||
|
||
## Sauvegarde du fichier sources.list
|
||
#mv /etc/apt/sources.list{,.backup}
|
||
test -f /etc/apt/sources.list && mv /etc/apt/sources.list /etc/apt/sources.list.backup
|
||
|
||
## New sources.list files
|
||
# Debian Sid
|
||
cat > /etc/apt/sources.list.d/sid.list << EOF
|
||
## Unstable : Official Repo
|
||
deb http://ftp.fr.debian.org/debian/ sid main contrib non-free
|
||
deb-src http://ftp.fr.debian.org/debian/ sid main contrib non-free
|
||
|
||
## Unstable : Dépôts multimédia
|
||
deb http://www.deb-multimedia.org sid main non-free
|
||
deb-src http://www.deb-multimedia.org sid main non-free
|
||
EOF
|
||
|
||
# Debian Experimental
|
||
cat > /etc/apt/sources.list.d/experimental.list << EOF
|
||
## Experimental : Official Repo
|
||
deb http://ftp.fr.debian.org/debian/ experimental main contrib non-free
|
||
deb-src http://ftp.fr.debian.org/debian/ experimental main contrib non-free
|
||
EOF
|
||
|
||
# Debian Stretch
|
||
cat > /etc/apt/sources.list.d/stretch.list << EOF
|
||
## Stretch - Testing : Official Repo
|
||
deb http://ftp.fr.debian.org/debian/ stretch main contrib non-free
|
||
deb-src http://ftp.fr.debian.org/debian/ stretch main contrib non-free
|
||
EOF
|
||
|
||
# Debian Jessie
|
||
cat > /etc/apt/sources.list.d/jessie.list << EOF
|
||
## Jessie - Stable : Official Repo
|
||
deb http://ftp.fr.debian.org/debian/ jessie main contrib non-free
|
||
deb-src http://ftp.fr.debian.org/debian/ jessie main contrib non-free
|
||
|
||
# Backports
|
||
deb http://ftp.debian.org/debian/ jessie-backports main contrib non-free
|
||
deb-src http://ftp.debian.org/debian/ jessie-backports main contrib non-free
|
||
EOF
|
||
|
||
# Debian Wheezy
|
||
cat > /etc/apt/sources.list.d/wheezy.list << EOF
|
||
## Wheezy - Stable : Official Repo
|
||
deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free
|
||
deb-src http://ftp.fr.debian.org/debian/ wheezy main contrib non-free
|
||
|
||
# Backports
|
||
deb http://ftp.debian.org/debian/ wheezy-backports main contrib non-free
|
||
deb-src http://ftp.debian.org/debian/ wheezy-backports main contrib non-free
|
||
EOF
|
||
|
||
|
||
## Fichier de preferences
|
||
# Backup previous preferences file
|
||
test -f /etc/apt/preferences && mv /etc/apt/preferences /etc/apt/preferences.bkp
|
||
|
||
# Default preferences
|
||
cat > /etc/apt/preferences.d/default << EOF
|
||
#### Fichier généré à partir du script de post-installation
|
||
|
||
Explanation: Paquet de la branche main de Sid (Unstable)
|
||
Package: *
|
||
Pin: release o=Debian,a=unstable,n=sid,l=Debian,c=main
|
||
Pin-Priority: 900
|
||
|
||
Explanation: Paquet de la branche contrib de Sid (Unstable)
|
||
Package: *
|
||
Pin: release o=Debian,a=unstable,n=sid,l=Debian,c=contrib
|
||
Pin-Priority: 900
|
||
|
||
Explanation: Paquet de la branche non-free de Sid (Unstable)
|
||
Package: *
|
||
Pin: release o=Debian,a=unstable,n=sid,l=Debian,c=non-free
|
||
Pin-Priority: 900
|
||
|
||
Explanation: Ensemble des paquets venant d'Experimental
|
||
Package: *
|
||
Pin: release o=Debian,a=experimental,n=experimental,l=Debian
|
||
Pin-Priority: 10
|
||
|
||
Explanation: Ensemble des paquets venant de Stretch (Testing)
|
||
Package: *
|
||
Pin: release o=Debian,a=testing,n=stretch,l=Debian
|
||
Pin-Priority: 310
|
||
|
||
Explanation: Ensemble des paquets venant de Jessie (Stable)
|
||
Package: *
|
||
Pin: release o=Debian,a=stable,n=jessie,l=Debian
|
||
Pin-Priority: 210
|
||
|
||
Explanation: Backports Jessie (Stable)
|
||
Package: *
|
||
Pin: release o=Debian Backports,a=jessie-backports,n=jessie-backports,l=Debian Backports
|
||
Pin-Priority: 210
|
||
|
||
Explanation: Ensemble des paquets venant de Wheezy (Oldstable)
|
||
Package: *
|
||
Pin: release o=Debian,a=oldstable,n=wheezy,l=Debian
|
||
Pin-Priority: 110
|
||
|
||
Explanation: Backports Wheezy (Oldstable)
|
||
Package: *
|
||
Pin: release o=Debian Backports,a=wheezy-backports,n=wheezy-backports,l=Debian Backports
|
||
Pin-Priority: 110
|
||
EOF
|
||
|
||
# Iceweasel preferences
|
||
cat > /etc/apt/preferences.d/iceweasel << EOF
|
||
Explanation: Version expérimentale d'Iceweasel
|
||
Explanation: xulrunner et libmozjs à incrémenter en fonction des versions
|
||
Package: iceweasel iceweasel-l10n-fr xulrunner-40 libmozjs40d
|
||
Pin: release o=Debian,a=experimental,n=experimental,l=Debian
|
||
Pin-Priority: 1001
|
||
EOF
|
||
|
||
# Icedove preferences
|
||
cat > /etc/apt/preferences.d/icedove << EOF
|
||
Explanation: Version expérimentale d'Icedove
|
||
Package: icedove icedove-l10n-fr iceowl-extension
|
||
Pin: release o=Debian,a=experimental,n=experimental,l=Debian
|
||
Pin-Priority: 1001
|
||
EOF
|
||
|
||
aptitude update
|
||
check_output "Première mise à jour des dépôts"
|
||
|
||
## Installation de la clé pour le dépôt multimédia
|
||
# Restauration des sorties standard pour pouvoir confirmer l'installation de la clé
|
||
restore_stdout
|
||
restore_stderr
|
||
aptitude install deb-multimedia-keyring
|
||
|
||
# Restauration des sorties en fonction du niveau de debug choisi
|
||
def_debug ${mode_debug}
|
||
|
||
aptitude update
|
||
check_output "Mise à jour des dépôts"
|
||
|
||
restore_stdout
|
||
restore_stderr
|
||
# Variable pour forcer à garder les anciens fichiers de configuration si de nouveaux sont présent avec une maj
|
||
export UCF_FORCE_CONFFOLD=1
|
||
|
||
aptitude -y full-upgrade
|
||
check_output "Mise à jour du système"
|
||
def_debug ${mode_debug}
|
||
|
||
|
||
###########################################################
|
||
## Prérequis
|
||
## Liste: debconf-utils - lsof
|
||
###########################################################
|
||
###### Pré-configuration
|
||
preconfig locales
|
||
preconfig keyboard
|
||
|
||
###### Installation
|
||
aptins "Prérequis" debconf-utils lsof
|
||
|
||
# Pour la description de debconf-utils, voir la partie "Outils d'administration"
|
||
|
||
|
||
|
||
###########################################################
|
||
## Serveur graphique
|
||
## Liste: mesa-utils - xorg
|
||
###########################################################
|
||
###### Pré-configuration
|
||
preconfig x11-common
|
||
|
||
###### Installation
|
||
aptins "Serveur graphique" mesa-utils xorg
|
||
|
||
###### Post-configuration
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Serveur Graphique======
|
||
Voici la liste des paquets installés :
|
||
|
||
+mesa-utils : Fournis divers utilitaires pour le serveur graphique
|
||
--Vérifier que l'accélération graphique est active:
|
||
# glxinfo | grep rendering
|
||
|
||
+xorg : Serveur graphique
|
||
--Si le serveur graphique n'a pas les bons droits, il faut lancer la commande :
|
||
# dpkg-reconfigure x11-common
|
||
#Et sélectionner \"N'importe qui\"
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Environnement graphique
|
||
## Liste: alsa-utils - fbpanel - gsimplecal - herbstluftwm - i3lock - lxappearance - nitrogen - obconf - obmenu - openbox - redshift - gtk-redshift - tint2 - wmctrl - xbacklight
|
||
## Hors dépôt: neap
|
||
## Désactivé: openbox
|
||
###########################################################
|
||
###### Installation
|
||
#aptins "Environnement herbstluftwm" alsa-utils fbpanel gsimplecal gtk2-engines-cleanice herbstluftwm i3lock lxappearance nitrogen obconf obmenu redshift gtk-redshift tint2 wmctrl xbacklight
|
||
|
||
## Téléchargement et installation de neap
|
||
#wget http://neap.googlecode.com/files/neap_0.7.1_all.deb -O neap.deb
|
||
#dpkg -i neap.deb
|
||
|
||
###### Post-configuration
|
||
# Création d'un fichier ~/.xinitrc pour pouvoir lancer openbox à partir de startx
|
||
cat >> /home/"${UTILISATEUR}"/.xinitrc << EOF
|
||
exec openbox-session
|
||
EOF
|
||
|
||
###### Informations pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Environnement graphique Openbox======
|
||
Voici la liste des paquets installés :
|
||
|
||
+alsa-utils : Utilitaire pour utiliser et configurer ALSA (son)
|
||
|
||
+fbpanel : Permet d'obtenir: panel/barre des taches/lançeur d'applications/...
|
||
|
||
+gsimplecal : Un calendrier graphique très léger
|
||
|
||
+gtk2-engines-cleanice : plusieurs thème gtk, dont celui que j'utilise aux couleurs de Debian
|
||
|
||
+herbstluftwm: tilling window manager
|
||
|
||
+i3lock : Screensaver léger.
|
||
-- Exemple de commande:
|
||
i3lock -c 000000 --pointer win -d
|
||
|
||
+lxappearance : Application pour changer facilement de thème gtk
|
||
|
||
+neap : Petit utilitaire très léger et discret qui permet de voir simple
|
||
le bureau sur lequel on se trouve actuellement. Se lance dans le systray
|
||
|
||
+nitrogen : Application légère pour mettre un fond d'écran et le mémoriser
|
||
|
||
+obconf : Gestionnaire des préférences du gestionnaire de fenêtre Openbox
|
||
|
||
+obmenu : Permet d'obtenir un menu graphique sur le bureau d'Openbox
|
||
|
||
+openbox : Gestionnaire de bureaux très léger
|
||
--Pour la configuration des fenêtres d'openbox, on peut utiliser:
|
||
# obxprop | grep "^_OB_APP"
|
||
--Pour la configuration des touches et de la souris, utiliser l'outils:
|
||
# xev
|
||
|
||
+redshift : Petit soft qui permet de régler la "chaleur" de l'écran en fonction de la période de la journée.
|
||
--Fichier de configuration dans ~/.config/redshift.conf
|
||
--Il également une petite application graphique (gtk-redshift) qui se lance en zone de notification
|
||
|
||
+tint2 : Permet d'obtenir: panel/barre des taches/...
|
||
|
||
+wmctrl : Outils en ligne de commande qui peut communiquer avec les fenêtres de X
|
||
|
||
+xbacklight : Utilitaire qui permet de régler le rétro-éclairage de l'écran (fonctionne également avec les touches fonctions des constructeurs).
|
||
|
||
++Applications nécessitant encore gnome:
|
||
+gestionnaire de son (gnome-sound-applet)
|
||
+gestionnaire de démarrage (gdm3)
|
||
+gestionnaire de fichiers (nautilus)
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Gnome
|
||
## Liste: gdm3 - gnome-control-center - nautilus -
|
||
## Désactivé: gdm3 - gnome-control-center
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Gnome" nautilus
|
||
|
||
###### Informations pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Environnement graphique Openbox======
|
||
Voici la liste des paquets installés :
|
||
|
||
+gdm3 : Gestionnaire de démarrage de l'environnement graphique (À REMPLACER)
|
||
|
||
+gnome-control-center : Propose plusieurs applet dont un gestionnaire de volume (TROUVER MIEUX ...)
|
||
|
||
+nautilus : Gestionnaire de fichiers (À REMPLACER mais avec gestion des onglets)
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils de compilation
|
||
## Liste: build-essential - binutils - cpp - gcc - g++ - make - python-xpyb
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Outils de compilation" build-essential binutils cpp gcc g++ make
|
||
|
||
|
||
###########################################################
|
||
## Outils d'administration (ligne de commande)
|
||
## Liste: acpitool - alien - apt-file - apt-listbugs - apt-rdepends - apt-show-source - apt-show-versions - dctrl-tools - debconf-utils - debian-goodies - git - git-svn - gpm - hddtemp - htop - ifscheme - mlocate - lsof - mercurial - module-assistant - ncdu - netdiscover - netselect-apt - nmap - ntp - parted - pastebinit - tcpdump - tree - sysv-rc-conf
|
||
###########################################################
|
||
###### Pré-configuration
|
||
preconfig hddtemp
|
||
|
||
###### Installation
|
||
aptins "Outils d'administration (ligne de commande)" acpitool alien apt-file apt-listbugs apt-rdepends apt-show-source apt-show-versions dctrl-tools debconf-utils debian-goodies dnsutils git git-svn gpm hddtemp htop ifscheme mlocate mercurial module-assistant ncdu netdiscover netselect-apt nmap ntp parted pastebinit tcpdump tree sysv-rc-conf
|
||
|
||
|
||
|
||
###### Post-configuration
|
||
## Mise à jour de la base de données de apt-file
|
||
apt-file update
|
||
|
||
## Mise à jour de l'index des fichiers/répertoires
|
||
updatedb
|
||
|
||
## NTP
|
||
# On commente les serveurs ntp définis par défaut
|
||
sed -i "s/^server/#server/g" /etc/ntp.conf
|
||
# Ajout du serveur qui sera utilisé (strate 1 fr)
|
||
cat >> /etc/ntp.conf << EOF
|
||
|
||
# Serveur de strate 1 fourni par l'observatoire astronomique de Paris (obspm)
|
||
# http://syrte.obspm.fr/informatique/ntp_infos.php
|
||
server ntp-p1.obspm.fr
|
||
EOF
|
||
# On redémarre le service ntp pour appliquer les changements
|
||
systemctl restart ntp
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils d'administration (ligne de commande) ======
|
||
Voici la liste des paquets installés :
|
||
|
||
+acpitool : pour obtenir la configuration ACPI
|
||
|
||
+alien : Convertisseur de paquet {.rpm,.slp,.pkg,.tgz} -> .deb
|
||
--Conversion en .deb :
|
||
# alien -d paquet.ext
|
||
--Installation directement un paquet :
|
||
# alien -i paquet.ext
|
||
|
||
+apt-file : permet de trouver de quel paquet provient un programme.
|
||
-- Mise à jour de la base de données:
|
||
# apt-file update
|
||
-- Rechercher la provenance d'un programme:
|
||
# apt-file search /usr/bin/ntfs-3g | most
|
||
|
||
+apt-listbugs : Liste les bugs critiques listés sur bugs.debian.org à propos des paquets
|
||
# apt-listbugs -s all -S pending list NOM_DU_PAQUET
|
||
|
||
+apt-rdepends : Énumère de manière récursive toutes les dépendances d'un paquet
|
||
--Dépendances d'un paquet :
|
||
# apt-rdepends vim-tiny
|
||
--Liste des paquets dont dépend un autre paquet :
|
||
# apt-rdepends -r liblayout-java
|
||
--Sortir un graphe des dépendances :
|
||
# apt-rdepends -d iceweasel|dot -Tsvg > iceweaseldep.svg
|
||
|
||
+apt-show-source : Afficher les informations des paquets source
|
||
|
||
+apt-show-versions : Donne la version installée du paquet passé en paramètre
|
||
-- version ls
|
||
-- "version" est un alias vers apt-show-versions
|
||
|
||
+dctrl-tools: procure le programme "grep-status" qui permet (entre autre) de lister les fichiers de configurations inutiles (programme supprimé mais pas les fichiers de config):
|
||
# grep-status -n -sPackage -FStatus config-files
|
||
|
||
+debconf-utils : Ensemble d'utilitaire pour debconf qui permet entre autre de précharger la configuration des paquets Debian
|
||
|
||
+debian-goodies : fournis un ensemble de programmes utiles
|
||
-- checkrestart : permet de déterminer les services à redémarrer après une maj par exemple
|
||
-- dpigs : liste les paquets qui prennent le plus de place
|
||
|
||
+dnsutils : fournis divers clients liés au dns:
|
||
-- dig : Interroge le DNS de différentes manières
|
||
-- nslookup : ancienne manière de procéder
|
||
-- ...
|
||
|
||
+git : Système de gestion de version
|
||
|
||
+git-svn : Ajoute la possibilité de gérer des dépôts SVN avec Git.
|
||
|
||
+gpm : permet d'avoir le curseur de la souris dans les consoles tty
|
||
|
||
+hddtemp : pour obtenir la température des disques dur.
|
||
# hddtemp /dev/sda
|
||
--Une interface web est également disponible: 127.0.0.1:7634
|
||
|
||
+htop : gestionnaire de processus (top) interactif
|
||
|
||
+ifscheme : Gestion simplifiée de plusieurs profiles réseaux (pratique notamment pour le wifi).
|
||
|
||
+mlocate : permet de rechercher rapidement un fichier à partir de la base de données de tous les fichiers.
|
||
--Pour mettre à jour la base de données :
|
||
# updatedb
|
||
--Pour rechercher :
|
||
# locate toto.sh
|
||
|
||
+lsof : Permet de lister les fichiers ouverts, mais également des informations sur les processus utilisants tel ou tel répertoire
|
||
--Lister les processus utilisant un répertoire:
|
||
lsof /media/data
|
||
--Également utiliser pour déterminer si un descripteur de fichier (redirection de sortie de ce script) est ouvert:
|
||
--- la sortie standart (0) ici:
|
||
lsof -a -p $$ -d0 | grep 0
|
||
|
||
+mercurial : Gestionnaire de version
|
||
|
||
+module-assistant : Permet de créer facilement des modules pour le système
|
||
|
||
+ncdu : interface rapide et facile pour l'utilitaire du
|
||
|
||
+netdiscover : Scanner réseau. Exemple d'utilisation:
|
||
# netdiscover -r 192.168.1.0/24 -P
|
||
|
||
+netselect-apt : Trouve les dépôts les plus rapide pour une release
|
||
--Utilisation (Remplacer <release> par stable, testing, unstable, experiment, woody, sarge ou sid)
|
||
# netselect-apt -n <release>
|
||
|
||
+nmap : utilitaire d'exploration de réseau et d'audit sécurité
|
||
|
||
+ntp : Démon de protocole de temps réseau pour maintenir à système à l'heure
|
||
|
||
+parted : Éditeur de partitions en ligne de commande
|
||
|
||
+pastebinit : Envoie le résultat d'une commande directement sur une page dédiée
|
||
--Exemple :
|
||
ls -al /dev | pastebinit -
|
||
--Ou encore :
|
||
pastebinit - < <(ls -al /dev)
|
||
|
||
+tcpdump : pour écouter tout ce qui se passe sur une interface réseau
|
||
|
||
+tree : Affiche une arborescence indentée du répertoire
|
||
|
||
+sysv-rc-conf : Terminal GUI qui permet de choisir les logiciels qui démarrent sur les différents runlevel
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils de sécurité
|
||
## Liste: ddclient
|
||
###########################################################
|
||
###### Pré-configuration
|
||
# Chargement d'un fichier preseed
|
||
preconfig ddclient
|
||
|
||
###### Installation
|
||
aptins "Outils de sécurité" ddclient
|
||
|
||
###### Post-configuration
|
||
# On vérifie que ddclient se lance bien en démon
|
||
sed -i "s/false/true/g" /etc/default/ddclient
|
||
|
||
# Fichier de configuration type
|
||
cat >> "/etc/ddclient.conf.ovh" << EOF
|
||
## Fichier de configuration pour un dyndns chez OVH
|
||
|
||
daemon=600 # Vérification toutes les 600 secondes
|
||
syslog=yes # Enregistrer les logs de mise à jour dans syslog
|
||
mail=root # Envoyer tous les messages par mail à root
|
||
mail-failure=root # Envoyer les messages d'erreur de mise à jour à root
|
||
pid=/var/run/ddclient.pid # Enregistrement du PID dans un fichier
|
||
cache=/tmp/ddclient.cache # Fichier de cache
|
||
|
||
### Choisir l'une des options suivante pour déterminer l'adresse IP publique:
|
||
|
||
## À partir de l'interface réseau (si connection directe)
|
||
#use=if, if=eth0
|
||
|
||
## À partir d'un server
|
||
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
|
||
|
||
## À partir de la page de status d'un routeur/firewall linksys
|
||
#use=linksys, fw=linksys, fw-login=admin, fw-password=admin
|
||
|
||
## À partir de la page de status d'un firewall
|
||
#fw-login=admin, fw-password=XXXXXX
|
||
#use=fw, fw=192.168.1.254/status.htm, fw-skip='IP Address'
|
||
|
||
|
||
## Entrer les mots de passe et identifiants OVH DynDns:
|
||
|
||
login=YOUR-LOGIN # Le nom d'utilisateur OVH DynDns
|
||
password=YOUR-PASSWORD # Le mot de passe du DynDns d'OVH
|
||
|
||
## Cette section n'a pas besoin de changement sauf si il y a besoin de mettre un serveur proxy par défaut
|
||
## ou si il faut contourner le serveur proxy (car il interfère avec les mises à jour)
|
||
|
||
protocol=dyndns2 # protocole par défaut
|
||
server=www.ovh.com # serveur par défaut
|
||
#server=members.dyndns.org:8245 # serveur pardéfaut (pour contourner le proxy)
|
||
#proxy=fasthttp.sympatico.ca:80 # proxy par défaut
|
||
|
||
|
||
## Options par défaut pour les Hôtes DNS Dynamique/Statique
|
||
|
||
#mx= # Un hôte MX par défaut (laisser indéfini par défaut)
|
||
#backupmx=NO # L'hôte MX est le principal MX? (laisser indéfini par défaut)
|
||
#wildcard=YES # Ajouter un alias CNAME?
|
||
|
||
##L'hôte DynDNS à mettre à jour
|
||
VOTRE.DOMAINE.COM
|
||
|
||
## L'hôte static DNS à mettre à jour
|
||
#static=yes, votre-hote-static.dyndns.org,autre-hote-static.dyndns.org
|
||
|
||
## Hôte DNS personnalisé à mettre à jour
|
||
#custom=yes, votre-domaine.top-level,autre-domaine.top-level
|
||
|
||
EOF
|
||
|
||
## Changement des droits sur le fichier de configuration
|
||
chmod 600 /etc/ddclient.conf.ovh
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils de sécurité======
|
||
Voici le détail des paquets installés :
|
||
|
||
+ddclient : Mise à jour d'un dns dynamique. Il est nécessaire de modifier des valeurs dans le fichier de configuration /etc/ddclient.conf.ovh
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils système (shell)
|
||
# Liste: backuppc - bsdmainutils - colordiff - cpio - ethtool - exuberant-ctags - iperf - genisoimage - knockd - lzip - moreutils - multitail - mr - ntfs-3g - openvpn - pmount - rsyslog - screen - sudo - tmux - unrar - unzip - urlview - vim-nox - vim-doc - vim-scripts - vlock - wakeonlan - zsh - zip
|
||
###########################################################
|
||
###### Pré-configuration
|
||
# Chargement d'un fichier preseed
|
||
preconfig backuppc
|
||
|
||
###### Installation
|
||
aptins "Outils système (shell)" backuppc bsdmainutils colordiff cpio ethtool iperf genisoimage knockd lzip moreutils multitail mr ntfs-3g openvpn pmount rsyslog screen sudo tmux unrar unzip urlview vim-nox vim-doc vim-scripts vlock wakeonlan zsh zip
|
||
|
||
adduser ${UTILISATEUR} sudo
|
||
|
||
###### Post-configuration
|
||
# sysklogd par défaut sur la console tty9
|
||
# On décommente les lignes nécessaires dans le fichier de configuration
|
||
sed -i '/#daemon,mail.\*;/{:label;/^$/q;s/^#//;n;s/^#//;t label;}' /etc/rsyslog.conf
|
||
sed -i 's/tty8/tty9/' /etc/rsyslog.conf
|
||
|
||
# vim-nox comme éditeur par défaut pour la ligne de commande
|
||
update-alternatives --set editor /usr/bin/vim.nox
|
||
|
||
# Suppression de vim-tiny (la purge se fera à la fin du script)
|
||
aptitude remove vim-tiny
|
||
|
||
## Changement du shell par défaut pour les utilisateurs
|
||
# Root
|
||
chsh -s /bin/zsh
|
||
rm -f ~/.bash* ~/.profile
|
||
# Pour les utilisateurs déjà existants:
|
||
#usermod -s /bin/zsh "${UTILISATEUR}"
|
||
chsh -s /bin/zsh "${UTILISATEUR}"
|
||
# Pour les nouveaux utilisateurs
|
||
sed -i "s;/bin/bash;/bin/zsh;" /etc/adduser.conf
|
||
mkdir /home/"${UTILISATEUR}"/.zsh
|
||
chown "${UTILISATEUR}":"${UTILISATEUR}" /home/"${UTILISATEUR}"/.zsh
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils systèmes (shell)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+backuppc : Outils de sauvegarde/restauration (totale et incrémentielle) disposant en plus d'une interface web
|
||
--Permet également de sauvegarder des machines distantes
|
||
|
||
+bsdmainutils : Fournit un ensemble d'outils de base d'un système bsd. Fournit par exemple column.
|
||
|
||
+colordiff : permet d'ajouter de la couleur à la commande diff
|
||
|
||
+cpio : prise en charge des archives au format cpio.
|
||
|
||
+ethtool : Permet d'afficher des informations et d'interagir avec les cartes réseaux.
|
||
--Exemple:
|
||
# ethtool eth0
|
||
--Désactiver le wol:
|
||
# ethtool -s eth0 wol d
|
||
--Changer la vitesse de sa carte réseau:
|
||
# ethtool -s eth0 autoneg off speed 1000
|
||
--Note: ces modifications ne survivent normalement pas à un redémarrage
|
||
|
||
+exuberant-ctags : Permet de créer un index de tag pour des définitions de code source.
|
||
-À utiliser avec vim
|
||
|
||
+iperf : Permet de mesurer la bande passante entre deux machines (doit-être installé sur les 2).
|
||
--Sur le serveur:
|
||
# iperf -s
|
||
--Sur le client:
|
||
# iperf -c IP_SERVEUR
|
||
|
||
+genisoimage : permet de créer une image iso à partir d'un répertoire
|
||
--Exemple:
|
||
# genisoimage -R -r -J -oliet-long --hide-rr-moved -iso-level 4 -V \"Label de l\'iso\" -o test.iso /home/test/new_iso
|
||
|
||
+knockd : Permet d'exécuter des commandes si une série de ports spécifique est contacté depuis l'extérieur.
|
||
|
||
+lzip : prise en charge des archives au format lzip (algo basé sur lzma).
|
||
|
||
+moreutils : Fournit quelques petits programmes utiles:
|
||
--vidir: Édition du contenu d'un répertoire (renommage de fichiers, ...)
|
||
|
||
+multitail : Permet de suivre un fichier de manière similaire à Tail mais avec plus de fonctionnalité (ncurses, splits, commandes, ...)
|
||
# multitail -sw 20,155,10 -sn 2,2 -ke "64 bytes from " -l "ping 8.8.4.4" -ke "64 bytes from " -l "ping 8.8.8.8" --mark-change /var/log/messages -I /var/log/mail.log -I /var/log/syslog -wh 15 -ci green /var/log/dpkg.log -ci red -I /var/log/apache2/error.log -ke "64 bytes from " -l "ping 208.67.222.222"
|
||
|
||
+mr: Un outil pour gérer plusieurs type de dépôts de gestionnaires de versions (Git, svn, …).
|
||
|
||
+ntfs-3g : permet la prise en charge des partitions ntfs.
|
||
--Pour formater une partition ntfs :
|
||
# mkntfs /dev/partition
|
||
|
||
+openvpn : Permet de se connecter à un vpn pour communiquer avec d'autres machines en "privé"
|
||
|
||
+pmount : permet à l'utilisateur normal de monter des périphériques
|
||
|
||
+rsyslog : monitoring en continu sur la console tty9 (ctrl+alt+F9)
|
||
|
||
+screen : mutliplexeur de terminaux
|
||
--Plus d'info :
|
||
http://doc.xubuntu-fr.org/screen
|
||
|
||
+sudo : outil qui permet de lancer des commandes avec des droits supplémentaires ou en tant qu'un autre utilisateur à condition d'avoir les privilèges suffisants.
|
||
# sudo ls /root
|
||
|
||
+tmux : multiplexeur de terminaux
|
||
--Ressemble beaucoup à screen, mais offre une configuration plus facile
|
||
|
||
+unrar : permet la prise en charge du format de compression rar
|
||
--Plus d'info :
|
||
$ man unrar
|
||
|
||
+unzip : permet la prise en charge du format de compression zip
|
||
--Plus d'info :
|
||
$ man unzip
|
||
|
||
+urlview : Extrait des adresses depuis la ligne de commandes puis propose de manière simple de les lancer via le navigateur par défaut.
|
||
--Il est possible d'associer un raccourcis clavier dans Tmux pour qu'il appelle directement urlview pour analyser son contenu:
|
||
- bind-key u capture-pane \; save-buffer ~/.tmux/.tmux-buffer \; new-window -n "urlview" '$SHELL -c "urlview < ~/.tmux/.tmux-buffer"'
|
||
|
||
+vim-nox : version amélioré du célèbre éditeur en ligne de commande: VI
|
||
--Remplace vim-tiny et peut-être défini comme éditeur par défaut
|
||
-vim-doc : Documentation de vim
|
||
-vim-scripts : Ensemble de greffons (voir http://www.vim.org/scripts/ pour plus d'informations)
|
||
|
||
+vlock : Permet de verrouiller le terminal courant. Dans mon cas, c'est tmux qui est verrouillé au bout d'un certain temps
|
||
d'inactivité.
|
||
|
||
+wakeonlan : Permet de réveiller une machine du réseau à partir de son adresse MAC.
|
||
-wakeonlan XX:FF:DD:SS:QQ:ZE
|
||
|
||
+zsh : un interpréteur de commandes comme peut l'être bash ou sh mais beaucoup plus performant et avec plus de fonctionnalités
|
||
|
||
+zip : permet de compresser dans une archive zip à partir du shell
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils systèmes (graphique)
|
||
## Liste: etherape - file-roller - gparted - gprename - rofi - roxterm - scrot - suckless-tools - terminator - rxvt-unicode-256color
|
||
###########################################################
|
||
###### Pré-configuration
|
||
# Chargement d'un fichier preseed
|
||
#preconfig
|
||
|
||
###### Installation
|
||
aptins "Outils système (graphique)" etherape file-roller gparted gprename rofi roxterm scrot suckless-tools terminator
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Outils systèmes (graphique)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+etherape : Outil de surveillance de réseau
|
||
|
||
+file-roller : Permet d'extraire le contenu d'une archive à partir du menu contextuel (clic droit)
|
||
|
||
+gparted : Éditeur de partitions
|
||
|
||
+gprename : permet de renommer des fichiers en masse à partir d'une interface graphique
|
||
|
||
+ rofi : Lanceur d'applications, menu ssh, …, remplaçant de dmenu.
|
||
|
||
+roxterm : Un émulateur de terminal graphique très soft (écris en C), même plus soft que Terminator qu'il remplacera certainement à termes. Toutes fois il n'est actuellement pas possible d'utiliser la touche "Tab" dans les raccourcis claviers ...
|
||
|
||
+scrot : (SCReen shOT) un utilitaire de capture d'écran en ligne de commande
|
||
-Prendre une impression dans 6 sec :
|
||
# scrot -c -d 6 scrot.png
|
||
|
||
+suckless-tools : fournis quelques outils pratiques comme dmenu (lanceur d'applications ultra soft avec une bonne auto-complétion), sselp (récupérer le texte sélectionné à la souris), ... Plus d'info:
|
||
--http://www.generation-linux.fr/index.php?post/2009/03/12/Dmenu-%3A-un-lanceur-simple-et-efficace
|
||
--http://www.debian-fr.org/lanceurs-avec-ls-et-dmenu-t21294.html
|
||
|
||
+terminator : Un émulateur de terminal graphique plus évolué que gnome-terminal
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Carte graphiqua
|
||
## Suport: nvidia -
|
||
## Liste: nvidia-glx nvidia-kernel-dkms nvidia-settings nvidia-xconfig
|
||
###########################################################
|
||
###### Installation
|
||
if [ "$(lspci | grep -i nvidia)" ]; then
|
||
###### Pré-configuration
|
||
module-assistant prepare
|
||
module-assistant clean nvidia-kernel
|
||
module-assistant auto-install -i nvidia-kernel-source
|
||
|
||
###### Installation
|
||
aptins "Pilotes NVidia" nvidia-glx nvidia-kernel-dkms nvidia-settings nvidia-xconfig
|
||
|
||
## Post-configuration
|
||
nvidia-xconfig --no-logo
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Pilotes NVidia======
|
||
Voici la liste des paquets installés :
|
||
|
||
+nvidia-glx : Fournis le nvidia-kernel-295.33
|
||
|
||
+nvidia-kernel-dkms :Fournis les sources du module noyau nvidia DKMS
|
||
|
||
+nvidia-settings : Outils pour configurer le driver NVIDIA
|
||
|
||
+nvidia-xconfig : Outils de configuration de X pour NVIDIA
|
||
EOF
|
||
|
||
fi
|
||
|
||
|
||
###########################################################
|
||
## Carte réseau
|
||
## Support : carte wifi BCM43
|
||
## Liste: broadcom-sta-dkms - ifscheme - wireless-tools
|
||
## Suppression de firmware-brcm80211 le temps de vérifier si il est nécessaire avec une nouvelle installation
|
||
###########################################################
|
||
if [ "$(lspci | grep -i BCM43)" ]; then
|
||
###### Installation
|
||
#aptins "Outils gestion wifi" firmware-brcm80211 ifscheme wireless-tools wpasupplicant
|
||
aptins "Outils gestion wifi" linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms ifscheme wireless-tools wpasupplicant
|
||
|
||
###### Post-configuration
|
||
# Décharger les modules qui peuvent créer des conflits
|
||
modprobe -r b44 b43 b43legacy ssb brcmsmac
|
||
# Charger le bon module
|
||
modprobe wl
|
||
# Vérification du bon fonctionnement avec:
|
||
#iwconfig
|
||
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Pilote wiki BCM43======
|
||
|
||
Voici la liste des paquets installés :
|
||
|
||
+broadcom-sta-dkms : Source DKMS pour les drivers wifi des cartes Broadcom.
|
||
-Plus d'informations:
|
||
-- http://wiki.debian.org/wl#Wheezy
|
||
|
||
+ifscheme : permet de définir différentes configuration réseau (ethernet ou wlan) parmis lesquelles
|
||
il sera possible de switcher, facilitant ainsi le changement de réseau sans-fil sans gui.
|
||
--Avec le bon fichier de configuration (gestion de plusieurs profils sur wlan0), pour se connecter au réseau wifi_de_toto, il faudra par exemple faire:
|
||
$ ifdown wlan0
|
||
$ ifscheme toto
|
||
$ ifup wlan0
|
||
-Plus d'infos:
|
||
-- http://b.twidi.com/index.php/2006/03/27/55-un-portable-plusieurs-reseaux-sous-linux-debian-ubuntu
|
||
-- http://www.alwayssunny.com/blog/?p=30
|
||
|
||
+wireless-tools : contient des outils pour agir sur les interfaces sans fil
|
||
|
||
+wpasupplicant : gestion des clients wpa et wpa2
|
||
|
||
EOF
|
||
|
||
fi
|
||
|
||
|
||
|
||
###########################################################
|
||
## Partage réseau
|
||
## Liste: keychain - knockd - nfs client - nfs server - samba - ssh
|
||
###########################################################
|
||
###### Pré-configuration
|
||
preconfig samba
|
||
|
||
###### Installation
|
||
aptins "Partage réseau" keychain knockd nfs-common nfs-kernel-server openssh-server samba
|
||
|
||
###### Post-configuration
|
||
## keychain
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Partage réseau======
|
||
Voici la liste des paquets installés :
|
||
|
||
+keychain :
|
||
|
||
+knockd : utilitaire pour percuter des séquences de ports
|
||
|
||
+nfs : Partage réseau avec des clients Linux
|
||
|
||
+openssh-server : Permet l'accès à distance de l'ordinateur (prise de contrôle ou partage de données)
|
||
|
||
+samba : Partage réseau avec des clients windows
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils internet (shell)
|
||
## Liste: axel - finch - irssi - postfix - weechat-curses
|
||
## Désactivé: irssi
|
||
###########################################################
|
||
###### Pré-configuration
|
||
# Chargement d'un fichier preseed
|
||
#preconfig
|
||
|
||
###### Installation
|
||
aptins "Outils internet (shell)" axel finch postfix weechat-curses
|
||
|
||
###### Post-configuration
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils internet (shell)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+axel : Gestionnaire de téléchargement de lien direct download. Équivalent de wget
|
||
|
||
+finch : Interface ncurse pour Pidgin
|
||
|
||
+irssi : Client IRC
|
||
|
||
+postfix : Agent d'envoi d'email
|
||
|
||
+weechat: Client IRC
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils internet (graphique)
|
||
## Liste : dwb - filezilla - flashplugin-nonfree - flashplugin-nonfree-extrasound - icedove - icedove-l10n-fr - iceowl-extension - iceweasel (experimental) - iceweasel-l10n-fr - luakit - midori - pidgin - pidgin-otr - pidgin-microblog - rdesktop - sun-java6-jre - transmission - tsclient - xvnc4viewer -
|
||
## Désactivé: sun-java6-jre
|
||
###########################################################
|
||
###### Pré-configuration
|
||
# Chargement d'un fichier preseed
|
||
#preconfig sun-java6-jre
|
||
|
||
###### Installation
|
||
aptins "Outils internet (graphique)" dwb filezilla flashplugin-nonfree flashplugin-nonfree-extrasound icedove icedove-l10n-fr iceowl-extension iceweasel iceweasel-l10n-fr luakit midori pidgin pidgin-otr pidgin-microblog rdesktop transmission tsclient xvnc4viewer
|
||
|
||
###### Installation manuelle
|
||
#### Teamviewer
|
||
#teamviewer="teamviewer.deb"
|
||
### Téléchargement
|
||
#if [ "${ARCH}" = 64 ] # Pour un système 64 bits
|
||
#then
|
||
#axel http://www.teamviewer.com/download/teamviewer_linux_x64.deb -o "${teamviewer}" > /dev/null 2> "${fichier_erreur}"
|
||
#elif [ "${ARCH}" -eq 86 ] # Pour un système 32 bits
|
||
#then
|
||
#axel http://www.teamviewer.com/download/teamviewer_linux.deb -o "${teamviewer}" > /dev/null 2> "${fichier_erreur}"
|
||
#fi
|
||
### Installation
|
||
#if [ "$?" = 0 ]; then # Si le téléchargement s'est bien déroulé
|
||
#dpkg -i "${teamviewer}" > /dev/null
|
||
#rm -f "${teamviewer}"
|
||
#else
|
||
#echow "Erreur lors du téléchargement du paquet teamviewer. Voir le fichier configuration.tmp pour plus de détails."
|
||
#fi
|
||
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils internet (shell)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+chromium-browser : navigateur open-source qui sert également de base pour google chrome.
|
||
-chromium-l10n : pack de langue
|
||
|
||
+dwb : navigateur léger en c/gtk.
|
||
+filezilla : client FTP graphique
|
||
|
||
+flashplugin-nonfree : Plugin flashplayer
|
||
-flashplugin-nonfree-extrasound : Extension du plugin pour gérer le son
|
||
|
||
+icedove : gestionnaire de mails et flux rss
|
||
-icedove-l10n-fr : Pack de langue fr
|
||
|
||
+iceowl : nouvelle extension qui permet de gérer les calendriers dans Icedove/Thunderbird. Remplace Lightning.
|
||
|
||
+iceweasel (experimental) : Équivalent de firefox pour Debian
|
||
-iceweasel-l10n-fr : pack de langue fr
|
||
|
||
+luakit : navigateur internet léger en Lua.
|
||
|
||
+mat : supprimer les métadonnées des fichiers (avant mise en ligne par exemple …)
|
||
-- dispose également d'une interface graphique:
|
||
% mat-gui
|
||
|
||
+pidgin : Client messagerie graphique
|
||
|
||
+pidgin-microblog : plugin pour pidgin qui permet d'utiliser les réseaux sociaux (twitter, facebook, ...)
|
||
--Plus d'informations disponible sur : http://developer.pidgin.im/wiki/Using%20Finch
|
||
|
||
+rdesktop : Client RDP pour Windows Terminal Server
|
||
|
||
+sun-java6-jre : Fournit les fichiers nécessaires pour l'accès vnc dans firefox
|
||
|
||
+teamviewer : Accès à distance et partage de bureau multi-os
|
||
|
||
+transmission : Client bittorent (graphique et commande)
|
||
--Lancement du daemon :
|
||
$ transmission-daemon -g ~/.config/transmission
|
||
--Liste les torrents en cours de téléchargement :
|
||
$ transmission-remote
|
||
--Ajouter un torrent :
|
||
$ transmission-remote -a torrent-file
|
||
|
||
+tsclient : Interface graphique pour rdesktop (RDP, X, ...)
|
||
|
||
+xvnc4viewer : Permet l'accès VNC à des serveurs VNC
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils bureautique (shell)
|
||
## Liste: cups - devtodo - graphviz - imagemagick - imagemagick-doc - odt2txt - pdftk - texlive - texlive-latex-extra - vim-latexsuite
|
||
###########################################################
|
||
###### Pré-configuration
|
||
# Chargement d'un fichier preseed
|
||
preconfig cups
|
||
|
||
###### Installation
|
||
aptins "Outils bureautique shell" cups devtodo graphviz imagemagick imagemagick-doc odt2txt pdftk texlive texlive-latex-extra vim-latexsuite
|
||
|
||
###### Post-configuration
|
||
# Ajout de l'utilisateur dans le groupe lpadmin
|
||
adduser "${UTILISATEUR}" lpadmin > /dev/null 2> "${fichier_erreur}"
|
||
# Redémarrage de cups
|
||
/etc/init.d/cups restart
|
||
# cups nécessite une installation de samba !!!
|
||
|
||
# Activation de vim-latexsuite
|
||
#vim-addons install latex-suite
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils bureautique (shell)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+cups : Système commun d'impression
|
||
|
||
+devtodo : Gestionnaire de liste de chose à faire qui sont stockés dans un simple fichier .todo
|
||
|
||
+graphviz : Ensemble complet pour tracer des graphes
|
||
|
||
+imagemagick : Programme avancé de manipulation d'image
|
||
-imagemagick-doc : Documentation d'imagemagick
|
||
|
||
+odt2txt : Convertisseur simple de fichier format odt au format texte.
|
||
--Utiliser notamment avec lesspipe
|
||
|
||
+pdftk : Outils pour la manipulation de fichiers pdf
|
||
|
||
+texlive : Une sélection de paquets pour la distribution Tex Live
|
||
-texlive-latex-extra : Supplément de paquet
|
||
|
||
+vim-latexsuite : Permet de voir, éditer et compiler des documents tex directement depuis vim
|
||
--Activation de vim-latexsuite
|
||
vim-addons install latex-suite
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils bureautique (graphique)
|
||
## Liste : evince - gcalctool - gedit - freeplane - key-mon - libreoffice - libreoffice-l10n-fr - libreoffice-help-fr - libreoffice-pdfimport - fonts-linuxlibertine - planner - verbiste - verbiste-gnome - xclip
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Outils bureautique graphique" evince gcalctool gedit freeplane key-mon libreoffice libreoffice-l10n-fr libreoffice-help-fr libreoffice-pdfimport fonts-linuxlibertine planner verbiste verbiste-gnome xclip
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Outils bureautique (graphique)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+evince : visionneuse de pdf
|
||
|
||
+gcalctool : Calculatrice graphique
|
||
|
||
+gedit : Éditeur de texte assez complet avec une gestion de plugins
|
||
|
||
+freeplane : Programme Java pour créer/éditer des mind maps (carte heuristique)
|
||
|
||
+key-mon : Petit outils graphique qui affiche dans une fenêtre les touches tapées
|
||
--Très pratique pour la réalisation de tuto vidéo
|
||
|
||
+libreoffice : La très classique et complète suite bureautique
|
||
-libreoffice-l10n-fr : pack français
|
||
-libreoffice-help-fr : aide francaise
|
||
-libreoffice-pdfimport : import de pdf (très très réussi)
|
||
-fonts-linuxlibertine : ajoute la police libertine
|
||
|
||
+planner : Gestionnaire de projet supportant les diagrammes de Gantt
|
||
|
||
+verbiste : Programme qui permet de configurer les verbes (français et italien)
|
||
-verbiste-gnome : Interface graphique pour gnome
|
||
|
||
+xclip : Permet de copier dans le presse-papier graphique un texte sélectionné à partir de la ligne de commande
|
||
--Utilisé dans mon fichier .vimrc
|
||
--Essayer de faire de même avec tmux
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils multimédia (shell)
|
||
## Liste: avinfo - eyed3 - ffmpeg - lynx - mirage - moc - w32codecs
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Outils multimédia (shell)" avinfo eyed3 ffmpeg lynx mirage moc w32codecs
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Outils multimédia (shell)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+avinfo : Fournit des informations sur des fichiers vidéo au format AVI, OGG, OGM, MPEG, ou MKV.
|
||
|
||
+eyed3 : Fournit des informations/tags sur les fichiers mp3
|
||
|
||
+ffmpeg : Contient divers outils pour la manipulation de fichiers audio
|
||
|
||
+lynx : Navigateur web léger en mode texte
|
||
|
||
+mirage : Une visionneuse d'image légère en gtk+ pour remplacer eog
|
||
|
||
+moc : Pour Music On Console - Logiciel qui permet d'écouter de la musique à partir d'une console
|
||
|
||
+w32codecs : Contient certains codecs vidéo non natif par mplayer
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Outils multimédia (graphique)
|
||
## Liste: audacity - mcomix - easytag - gimp - inkscape - mkvtoolnix-gui - mumble - smplayer - rhythmbox - vlc
|
||
## Désactivé: mcomix
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Outils multimédia (graphique)" audacity easytag gimp inkscape mkvtoolnix-gui mumble smplayer rhythmbox vlc
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Outils multimédia (graphique)======
|
||
Voici la liste des paquets installés :
|
||
|
||
+audacity : Logiciel d'édition audio. Utiliser avi2wav pour récupérer la piste audio d'une vidéo.
|
||
|
||
+mcomix : Lecteur de scan (comic, manga, ...)
|
||
|
||
+easytag : permet de modifier les tags des fichiers audio
|
||
|
||
+gimp : Éditeur d'image
|
||
|
||
+inkscape : Logiciel de dessin vectoriel
|
||
--Il est également possible de modifier un fichier .pdf
|
||
|
||
+mkvtoolnix-gui : permet d'éditer les fichiers mkv
|
||
|
||
+mumble : Client VoIP à faible latence
|
||
|
||
+smplayer : Lecteur vidéo
|
||
|
||
+rhythmbox : Lecteur de musique
|
||
|
||
+vlc : Lecteur vidéo
|
||
|
||
|
||
|
||
EOF
|
||
|
||
|
||
|
||
###########################################################
|
||
## Jeux
|
||
## Liste: teeworlds - teeworlds-server
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Jeux =)" teeworlds teeworlds-server
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Jeux======
|
||
Voici la liste des paquets installés :
|
||
|
||
+teeworlds : Petit jeu libre de fps ressemblant à worms.
|
||
|
||
+teeworlds-server : Serveur de jeu pour teeworlds
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Inutiles donc nécessaires
|
||
## Liste: asr-manpages - cmatrix - cowsay - fortunes - funny-manpages - linuxlogo - sl
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Paquets inutiles" asr-manpages cmatrix cowsay fortunes funny-manpages linuxlogo sl
|
||
|
||
###### Information pour l'utilisateur final
|
||
cat >> "${INFORMATION}" << EOF
|
||
|
||
======Instructions Paquets inutiles======
|
||
Voici la liste des paquets installés :
|
||
|
||
+asr-manpages : Pages de manuel de alt.sysadmin.recovery.
|
||
-- Liste des man disponibles:
|
||
# dpkg -L asr-manpages
|
||
|
||
+cmatrix: affiche la matrice dans un terminal
|
||
|
||
+cowsay : Fait parler différents personnages en ligne de commande
|
||
--Essayer la commande :
|
||
# bonjour
|
||
--chez moi, bonjour est un alias vers : 'echo Bonjour $USER, nous sommes le `date +"%A %e %B %Y"`, et il est : `date +"%H"` h `date +"%M"` | cowsay -f $(/bin/ls /usr/share/cowsay/cows -1 | head -n $(expr $$$(date +%s) % $(ls /usr/share/cowsay/cows | wc -w) + 1) | tail -n 1)'
|
||
|
||
+fortunes : Collection de phrases françaises
|
||
|
||
+funny-manpages : Un ensemble de pages de manuel humoristiques, exemple: rtfm, baby, celibacy, party, condom, flame, ...
|
||
|
||
+linuxlogo : Permet d'afficher un logo avec quelques informations sur le système. Exemple:
|
||
$ linux_logo -f -d
|
||
|
||
+sl : affiche une animation si on tape sl à la place de ls
|
||
|
||
EOF
|
||
|
||
|
||
###########################################################
|
||
## Pages de manuel
|
||
## Liste: aptitude-doc-fr manpages-fr manpages-fr-dev manpages-fr-extra
|
||
###########################################################
|
||
###### Installation
|
||
aptins "Pages de manuel" aptitude-doc-fr manpages-fr manpages-fr-dev manpages-fr-extra
|
||
|
||
|
||
# Suppression
|
||
## xscreensaver semble s'installé automatiquement
|
||
aptitude remove xscreensaver xscreensaver-data
|
||
aptitude purge '~c'
|
||
|
||
|
||
|
||
## Suppression du bip system/buzzer
|
||
echo "blacklist pcspkr" > /etc/modprobe.d/blacklist
|
||
#xset b off
|
||
|
||
|
||
|
||
# Restauration des sorties standard
|
||
restore_stdout
|
||
restore_stderr
|
||
|
||
# Supprime le fichier d'erreur si il est vide
|
||
[ -s ${fichier_erreur} ] && echo "Fichier erreur non vide" || rm ${fichier_erreur}
|
||
# Supprime le fichier d'log si il est vide
|
||
[ -s ${fichier_log} ] && echo "Fichier log non vide" || rm ${fichier_log}
|
||
|
||
|
||
exit 0
|
||
# Fin de la boucle principale
|
||
# -----------------------------------------------------------
|
||
# **********************************************************************************************
|
||
|
||
|