Slashdot Mirror


Linux Distros with CVS/RCS for Config Files?

bergeron76 asks: "Does anyone know of a Linux distributions or modifications to a Linux d system that implement a CVS[like] structure for control over system configuration files (/etc, /usr/etc, and so on)? Personally, I'd love to see a distro that featured a native CVS/RCS control mechanism for editing system configuration files. Does anything like this currently exist? If not, is anyone working in this direction?"

7 of 36 comments (clear)

  1. Gentoo does this. by djcapelis · · Score: 3, Informative

    Gentoo offers several choices in managing the configuration files in /etc, one of these options is the dispatch-conf script which keeps all changes in RCS. This is mostly for updating... so it's not everything, but it's definately a strong start and you could likely use the same system to keep track of your own modifications.

    --
    I touch computers in naughty places
    1. Re:Gentoo does this. by jnana · · Score: 2, Informative

      Yes, dispatch-conf in combination with RCS is great. You can use it to manage config updates for whatever config files you want. You just need to put anything other than /etc in the CONFIG_PROTECT variable. Another great thing about dispatch-conf is that it can be easily configured to auto-update the configuration files if only CVS headers are different, or there are no differences but whitespace and comments. Definitely a big quantum leap above etc-update.

  2. Nothing is stopping you from doing this. by Feztaa · · Score: 4, Informative

    Just go into your /etc/, do a 'mkdir RCS', and then start checking your config files in and out of RCS to edit them. There's no code anywhere in linux that says 'if there's a directory I don't recognize, then crash spectacularly', so just adding the RCS directory itself isn't going to adversely affect anything.

    That's actually a really good idea, too, I'm not sure why I never thought of it myself...

    1. Re:Nothing is stopping you from doing this. by Atzanteol · · Score: 4, Informative

      There's no code anywhere in linux that says 'if there's a directory I don't recognize, then crash spectacularly'

      I beg to differ... I had an issue just last week where I tried checking /etc into a CVS repository. It turns out that /etc/devfs.d/ doesn't like *anything* in it that doesn't belong (like a CVS directory). This caused /dev to be very slim upon a reboot, and things like 'hda' et al were missing.

      Now, I'm not sure if this is purely a Gentoo issue or not (I'm not terribly familiar with devfs), but it's something to remember. Back up /etc/ before doing ANYTHING! lesson learned... :-)

      --
      "Ignorance more frequently begets confidence than does knowledge"

      - Charles Darwin
    2. Re:Nothing is stopping you from doing this. by Atzanteol · · Score: 2, Informative

      Well, from what I hear devfs is broken, but I think for different reasons. I doubt the kernel dev's put 'if(extra files) { die; }' in their code. It's probably something like 'for each file in dir; do something ; done', where each file is supposed to 'mean something'. Thus if a file (or directory) in the dir is 'configured wrong', bad things happen.

      It really messed me up for a couple days though, I'll tell ya that.

      --
      "Ignorance more frequently begets confidence than does knowledge"

      - Charles Darwin
  3. Yes, Gentoo... by andrewdk · · Score: 2, Informative

    YEs, Gentoo can do this. Just emerge rcs, make an /etc/config-archive dir, setup /etc/dispatch-conf.conf, and just do dispatch-conf in place of etc-update.

  4. cfengine by bandix · · Score: 2, Informative

    You'll spend years fooling around with RCS and CVS for configuration versioning before realizing that what you really need is cfengine. CVS or svn for source code, cfengine for configuration. Cut to the chase:

    http://www.cfengine.org/

    --
    Brandon D. Valentine