package desktop pour machines ubuntu type

Objectifs

L'objectif général est de proposer un package générique permettant d'unifier la configuration logicielle des postes clients de l'auf, tout en tenant compte des spécificités de chaque site. Et que les configurations soient strictement identiques et reproductibles d'une installation à l'autre. Le but final serait que les opérations suivantes suffisent pour installer une nouvelle machine :

et strictement rien de plus.

Les objectifs secondaires sont
  • N'avoir dans les paquets aucune configuration propre à un site en particulier. Les infos propres au site (clefs ssh, sudoers, par exemple) devront être prises sur le réseau, au moment de l'installation.

  • Pour les postes fixes, avoir un modèle de poste "type" unique avec le maximum de paramétrages possibles via le serveur dhcp, pour avoir une machine la plus universelle possible, utilisable dans les salles de formation, pour le personnel du CNF même sur une autre branche du réseau, etc.
  • Aucune donnée utilisateur ne doit être présente sur la machine elle-même : en cas de panne, on doit pouvoir échanger la machine avec une autre immédiatement, afin que l'utilisateur puisse continuer à travailler sans se préoccuper de la durée de la réparation.
  • Pour les portables : avoir une configuration la plus proche possible des postes fixes, en tenant compte du fait que ces machines ne seront pas toujours connectées au réseau auf (par exemple, l'authentification réseau ne sera pas possible). Idéalemement, un changement de mot de passe sur http://auth.auf devrait toutefois provoquer un changement du mot de passe local de l'utilisateur.

  • Toute personne travaillant à l'AuF doit pouvoir se connecter sur n'importe quel poste de n'importe quelle implantation avec son adresse prénom.nom@auf.org et son login "intranet". Premier objectif : valable en afrique de l'ouest d'ici juin 2008.

  • Toute personne abonné dans un CNF doit pouvoir se connecter avec son login@xx.refer.org dans n'importe quelle implantation de l'auf à condition que son abonnement soit à jour. (ouiii, je sais, déjà un peu plus dur). Valable pour l'afrique de l'ouest dès octobre 2008.

  • Toute personne pouvant se connecter doit pouvoir retrouver son environnement et ses fichiers tels qu'ils sont dans son implantation d'origine (personnel AUF ou abonné d'un CNF) : objectif : heuuuu oui, je sais, ça va pas être simple. Disons 2012 ?
  • Présentation de la nouvelle version, à partir de Ubuntu Hardy

    Découpage

    Fonctionnalité de auf-desktop

    Fonctionnalité de auf-laptop

    Comment l'utiliser sous gutsy et feisty

    sources.list à configurer avant d'installer les packages

    # (vous devez remplacer les lignes ci-dessous par votre propre miroir)
    deb http://ubuntu.refer.sn/ubuntu/ gutsy main restricted universe multiverse
    deb http://ubuntu.refer.sn/ubuntu/ gutsy-updates main restricted universe multiverse
    deb http://ubuntu.refer.sn/ubuntu/ gutsy-security main restricted universe multiverse
    
    # paquets auf-desktop
    deb http://apt.sn.auf.org/ubuntu gutsy main

    url de la clef pour apt.sn.auf.org : http://apt.sn.auf.org/clef-equipe-sysadmin-dakar.asc

    dhcp

            option nfs-server code 201 = ip-address;
            option ntp-servers <le-serveur-ntp>;
            option nfs-server <le-serveur-nfs>;

    auf-base-conf@configuration:racine.tar.gz

    root@www-dakar:/home/auf-base-conf# tar ztf racine.tar.gz 
    ./
    ./etc/
    ./etc/ssh/
    ./etc/ssh/sshd_config
    ./etc/ssh/ssh_host_dsa_key.pub # pour éviter d'avoir des warning de chgt de clef a chaque réinstallation)
    ./etc/ssh/ssh_host_rsa_key.pub
    ./etc/ssh/ssh_host_dsa_key
    ./etc/ssh/ssh_host_rsa_key
    ./etc/sysctl.conf          # pour net/ipv4/icmp_echo_ignore_broadcasts=1, afin de savoir quelles machines sont présentes sur le réseau)
    ./etc/sudoers              # configurer avec un group %admindesktop différents des admins serveurs, suivant la taille de l'équipe
    ./etc/apt/
    ./etc/apt/sources.list
    ./etc/libnss-mysql.cfg     # voir la doc de GUIA
    ./etc/libnss-mysql-root.cfg # 
    ./root/
    ./root/.ssh/
    ./root/.ssh/known_hosts
    ./root/.ssh/authorized_keys # pour dsh centralisé
    ./root/.ssh/id_dsa          # pour telechargement regulier de ce fichier 
    ./root/.ssh/id_dsa.pub      # la clef publique à copier dans auf-base-conf@configuration:.ssh/authorized_keys
    ./root/hook                 # commande à executer aprés desarchivage : (ssh|nscd) restart, par exemple

    ainsi, les paquets ne comportent *aucune* information locale au site de Dakar.

    nfs

    - seront montées automatique toutes les partitions exporté du serveur nfs dont le nom commence par "/home" (à la racine de la machine) ou celle qui contiennent le mot "/local" (sur /usr/local) - concernant le montage nfs automatique (/etc/auto.master), lorsque la question est posée, durant l'installation : "garder la version actuelle" pour conserver la configuration apportée par le paquet auf-base-conf

    Liste des paquets et dépendances entre eux

    Generer un joli graphe de manière totomatique ? (voir si un debjoligraphdedependance n'existe pas déjà)

    Détail du contenu des paquets

    auf-base

    Dépendance sur les logiciels "utiles" : cf http://trac.sn.auf.org/auf-desktop/browser/auf-base/debian/control

    auf-base-conf

    pour les confs de base des softs à installer :

    quoi

    statut

    acceptation auto de la licence java

    pas ok

    réponse auto pour plugin flash

    pas ok

    auf-auth-mysql

    auth-dhcp-conf

    nom

    statut

    ntp

    ok

    nis

    ok

    nfs

    en cours

    problèmes et questions restant à résoudre

    Action suivante

    Contributions

    function mygconf() {

    }

    # sur le menu de déconnexion : # on supprime le bouton "changer d'utilisateur" : mygconf --type boolean --set /desktop/gnome/lockdown/disable_user_switching true # on supprime le vérouillage d'écran (à faire uniquement sur postes publics ?) : mygconf --type boolean --set /desktop/gnome/lockdown/disable_lock_screen true # ni hibernation, ni suspension : mygconf --type boolean --set /apps/gnome-power-manager/can_hibernate false mygconf --type boolean --set /apps/gnome-power-manager/can_suspend false

    # des icônes sur le bureau ("mes documents" et la corbeille) mygconf --type boolean --set /apps/nautilus/desktop/home_icon_visible true mygconf --type boolean --set /apps/nautilus/desktop/trash_icon_visible true mygconf --type string --set /apps/nautilus/preferences/default_folder_viewer "list_view"

    # optimisations (enfin... c'est un grand mot...) mygconf --type boolean --set /desktop/gnome/thumbnailers/disable_all true mygconf --type boolean --set /desktop/gnome/sound/event_sounds false mygconf --type string --set /desktop/gnome/background/picture_filename "" mygconf --type string --set /desktop/gnome/background/color_shading_type "solid" mygconf --type string --set /desktop/gnome/background/primary_color "#000000"

    # utilisation de metacity par défaut (et pas compiz qui est apparement le défaut sur gutsy) # (attention : je n'ai pas testé...) mygconf --type string --set /desktop/gnome/applications/window_manager "/usr/bin/metacity"

    # affichage correct des polices sur écran LCD (pas testé non plus...) mygconf --type string --set /desktop/gnome/font_rendering/antialiasing "rgba" mygconf --type string --set /desktop/gnome/font_rendering/hinting "full" }}}