Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 30/01/2010, à 14:53

Jonas

Paquet deb, sauvegarde de l'ancienne configuration

Bonjour à tous

Je suis en train de créer des paquets deb pour les scripts réalisé par l'équipe de mythtv-fr (Pour ceux qui ne connaissent pas mythtv c'est un formidable mediacenter multiposte)

Ces scripts servent à récupérer sur des sites web des informations tels que métadonnées de film, horaire cinéma et autres. Il faut donc indiqué dans les paramètres de mythtv ou se trouvent ces scripts.

Je voudrais bien que mes deb configurent tous seul mythtv puis restaure l'ancienne configuration lors de la désinstallation.

MythTV dispose d'un système en ligne de commande permettant de très simplement récupérer des paramètres de config ou de la modifié. Mon problème est que je ne sais pas où je dois sauvegarder les anciens paramêtres.

Si quelqu'un peux me dire comment ça marche, me donner une piste ou tout simplement m'aider à orienté mes recherche merci smile


Pour poster facilement des images et fichiers sur un forum jetez un coup d'oeil ici

Hors ligne

#2 Le 30/01/2010, à 15:43

yoann21

Re : Paquet deb, sauvegarde de l'ancienne configuration

Salut,
Il fait déjà que ton paquet installe la nouvelles config à un endroit précis.
Par exemple : /opt/mythtv_newconfig/

Ensuite dans le script de postinst de ton paquet :
- Tu déplaces l'ancienne configuration si elle existe dans /opt/mythtv_oldconfig/ par exemple
- Tu copies dans ~ ta config modifié que tu auras stocké dans /opt/mythtv_newconfig/

Dans le script de postrm :
- Suppression de la configuration de mythtv dans ~
- Copies dans ~ de la configuration dans /opt/mythtv_oldconfig
- Suppression des répertoires temporaires que tu t'es servi dans /opt

Par contre quand tu installes un paquet les scripts sont exécutés en root.
Donc $HOME ou ~ correspondent à /root

Il faut donc que tu détectes le chemin du répertoire utilisateur.
Voila les commandes dont je me sert pour déterminer l'utilisateur en cours depuis les scripts :

rep_user=`who | grep 'tty7' | cut -d ' ' -f1`
if [ -z "$rep_user" ]
then
  rep_user=`who | grep ' :0 ' | cut -d ' ' -f1`
  if [ -z "$rep_user" ]
  then
    rep_user=`users | cut -d " " -f1`
  fi
fi
rep_user=/home/$rep_user

Autre chose :
Faits très attention lors de suppression. Tout ce que tu faits est exécuté en root.
Erreur classique et très destructrice :

cd un_repertoire
rm -R *

Si un_repertoire n'existe pas tu vides ton disque en partant de la racine !
Donc mets des liens en dur dans ton rm.

Dernière modification par yoann21 (Le 30/01/2010, à 15:45)

Hors ligne

#3 Le 31/01/2010, à 20:58

Jonas

Re : Paquet deb, sauvegarde de l'ancienne configuration

MythTV ne stock pas la config dans un fichier texte dans home mais dans un base SQL sur un serveur (ça ajoute un peu de piment big_smile).

Ce que je voudrais savoir c'est si le fait de mettre sauver l'ancien config dans "opt" est une norme ou si c'est un emplacement  totallement "arbitraire".

Ayant continué mes recherche j'ai decouvert debconf. Ne serait-il pas plus propore de stocker les informations avec un

bd_set monpaquet/old_clef1 value1
bd_set monpaquet/old_clef1 value2
... (envion 5 clef)

Pour poster facilement des images et fichiers sur un forum jetez un coup d'oeil ici

Hors ligne