Forum Linux.général Gestion de dotfiles et « fragments » de fichiers

Posté par . Licence CC by-sa.
Tags : aucun
1
9
juil.
2018

Bonjour,

Je souhaite versionner mes dotfiles sur un repo git ; jusqu'ici j'avais mon répertoire à la racine de mon home mais je compte utiliser stow, comme expliqué sur ce lien - je pense d'ailleurs faire un journal si cela aide d'autres personnes.

Il y a un petit problème que je n'arrive pas à régler : ces configurations seront partagées entre plusieurs PC, beaucoup seront identique, quelques-unes seront identique à 99% avec 2/3 lignes qui diffèrent.
Par exemple mon gestionnaire de fenêtre (awesome) à le même comportement, mais le thème que j'utilise change entre deux machines.
Pour contourner ça, j'ai pensé faire un paquet stow awesome-data-laptop et awesome-data-pc par exemple, qui contiennent chacun le même fichier theme.lua que le fichier principal du paquet awesome va charger.

Ce n'est pas idéal mais ça peut marcher à condition de se rappeler de cette dépendance. Par contre comment faire quand un fichier de configuration ne gère pas le chargement d'autres fichiers ? Est-ce qu'il existe un mécanisme qui permet d'avoir deux « fragments » de fichiers sous git mais que le système n'exporte qu'un fichier au vu de l'application ?
J'ai aussi pensé aux hooks sous git pour automatiquement appliquer le commit sur un autre fichier mais là aussi ce n'est pas idéal.

  • # banches

    Posté par . Évalué à 2.

    J'ai eu ce problème il y a peu, avant de ne passer qu'à une seule machine dans un souci de simplification. J'avais une branche master pour tout ce qui est commun, et de là une branche par machine. Ça marchouillait plutôt bien.

    En tout cas, +1 pour stow / git.

    • [^] # Re: banches

      Posté par . Évalué à 1.

      J'y ai pensé mais ce n'est pas vraiment pratique, si je veux reporter des modifications sur un des fichiers communs je dois faire un cherry-pick pour autant de branche que nécessaire, et encore si je n'oublie pas de le faire.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.