Script de post-installation pour ubuntu

Voici un script bash dont je me sers lorsque je dois installer une série de paquets après une installation ou réinstallation toute fraiche d’Ubuntu. Ce script est assez simpliste, il installe simplement des paquets les uns après les autres préalablement enregistrés dans une liste. Pour l’écrire je me suis inspiré des nombreux autres scripts du même genre existant sur le web.

Comme tous ces scripts, il est bien entendu adapté à mon utilisation d’ubuntu. La première chose à faire pour l’adapter à vous est de supprimer les paquets qui ne vous intéressent pas et de rajouter les votre. Je ne prétend pas donner ici la liste des paquets indispensable.

Je vous met également en garde, étant donné que ce script doit être lancé avec les droits administrateur il est préférable de le comprendre avant de l’exécuter car il pourrait endommager votre machine.

#!/bin/bash
 
# Germain Vallverdu
# 15 Avril 2011
# <germain.vallverdu@univ-pau.fr>
 
# ----------------------------------------------------------------------------------------
# paquets disponnibles dans les dépots ubuntu
# ----------------------------------------------------------------------------------------
compilateur="build-essential gcc gfortran"
 
python="idle python-qt4 python-numpy python-scipy python-matplotlib pymol bpython python-profiler"
 
editeur="vim-gnome jabref poedit"
 
sciences="grace gnuplot gperiodic gchempaint mpich2"
 
video="vlc mozilla-plugin-vlc libdvdread4 ubuntu-restricted-extras cheese" 
 
son="audacity banshee-extension-alarm banshee-extension-jamendo tuxguitar"
 
graphisme="gimp inkscape povray"
 
latex="texlive texlive-lang-french texlive-latex-extra aspell-fr lyx"
 
divers="filezilla compizconfig-settings-manager acroread pdfsam conky"
 
# paquets à installer
paquets="$compilateur $python $editeur $sciences $video $son $graphisme $latex $divers"
 
# ----------------------------------------------------------------------------------------
# Options de apt-get pour l'installation des paquets
# ----------------------------------------------------------------------------------------
options="--auto-remove --yes -q"
 
# ----------------------------------------------------------------------------------------
# Test des droits administrateur
# ----------------------------------------------------------------------------------------
if [ $USER != "root" -o $UID != 0 ]
then
  echo "Ce script doit être exécuté en tant qu'administrateur (root)."
  echo "Placez sudo devant votre commande :"
  echo "sudo $0"
  echo "Abandon"
  exit 1
fi
 
echo "Assurez-vous d'avoir lu et compris le script avant de l'exécuter."
echo -n "Êtes-vous sûr de savoir ce que vous faites ? (o/n) "
read rep
if [ $rep != "o" ] && [ $rep != "oui" ] && 
   [ $rep != "y" ] && [ $rep != "yes" ]
then
  echo "Pour lire le script, entrez la commande suivante :"
  echo "gedit $0 &"
  exit 1
fi
 
# version d'ubuntu
version=`lsb_release -cs`
echo "* Ajout des dépots pour Ubuntu $version"
 
# ----------------------------------------------------------------------------------------
# ajouts de dépots
# ----------------------------------------------------------------------------------------
 
# partenaires
echo -e "\n* Canonical partners"
cp -v /etc/apt/sources.list /etc/apt/sources.list.bak
echo "sed \"s/# deb http\:\/\/archive.canonical.com/deb http\:\/\/archive.canonical.com/\" /etc/apt/sources.list > sources.list.new"
sed "s/# deb http\:\/\/archive.canonical.com/deb http\:\/\/archive.canonical.com/" /etc/apt/sources.list > sources.list.new
cp -v sources.list.new /etc/apt/sources.list
 
# medibuntu
echo -e "\n* Medibuntu"
wget http://www.medibuntu.org/sources.list.d/${version}.list --output-document=/etc/apt/sources.list.d/medibuntu.list
wget -q http://packages.medibuntu.org/medibuntu-key.gpg -O- | sudo apt-key add -
apt-get -q update
apt-get --yes -q --allow-unauthenticated install medibuntu-keyring
 
codecs="non-free-codecs libdvdcss2"
 
# virtual box
echo "deb http://download.virtualbox.org/virtualbox/debian $version contrib" | sudo tee -a /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 98AB5139 
virtualbox=" virtualbox"
 
# wine
add-apt-repository ppa:ubuntu-wine/ppa
wine=" wine1.3"
 
paquets="$codecs $paquets $virtualbox $wine"
 
# ----------------------------------------------------------------------------------------
# mise à jour des sources de logiciels
# ----------------------------------------------------------------------------------------
echo -e "\napt-get -q clean"
apt-get -q clean
echo -e "\napt-get -q update"
apt-get -q update
echo -e "\napt-get -q --yes upgrade"
apt-get -q --yes upgrade
 
# ----------------------------------------------------------------------------------------
# installation des paquets
# ----------------------------------------------------------------------------------------
for paquet in $paquets
do
    echo -e "\n----------------------------------------------------------------"
    echo " INSTALLATION DE : $paquet"
    echo -e "----------------------------------------------------------------\n"
    apt-get $options install $paquet
done
 
# ----------------------------------------------------------------------------------------
# parametrage de libdvdread4
# ----------------------------------------------------------------------------------------
echo -e "\n----------------------------------------------------------------"
echo " parametrage de libdvdread4"
echo -e "----------------------------------------------------------------\n"
echo -e "/usr/share/doc/libdvdread4/install-css.sh\n"
/usr/share/doc/libdvdread4/install-css.sh
 
# ----------------------------------------------------------------------------------------
# nettoyage
# ----------------------------------------------------------------------------------------
echo -e "\n----------------------------------------------------------------"
echo " PURGE : apt-get -q --yes autoremove"
echo -e "----------------------------------------------------------------\n"
apt-get -q --yes autoremove

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

7 + 1 =