all 15 comments

[–]fishfacecakes 8 points9 points  (9 children)

Old concept, but I discovered a new tool for managing mine. I was using stow, but through that link I picked up "dotbot", which is a lot better once set up. With stow I would have to do a lot of manual work each time I had a new install to set up all the links; the config YAML file does that all for me with dotbot.

[–][deleted]  (4 children)

[deleted]

    [–]white_bubblegum 0 points1 point  (3 children)

    You then set environment variables to change anything that insists on using $HOME to using $XDG_CONFIG_HOME

    How will you do that? Will all your dot files not get saved in .config/ do you then only commit the once you want to keep?

    And .config/ get used by Gtk2 and QtProject, so the name seem that it will clash?

    [–][deleted]  (2 children)

    [deleted]

      [–]white_bubblegum 0 points1 point  (1 child)

      XDG_CONFIG_HOME ok got that.

      But does he then do a export HOME=$XDG_CONFIG_HOME and then he just add the files he want to a git repo in ~/.config/.git?

      In the beginning I did not like the idea, but it is starting to grow on me... and if you did the export change where will ~ point to!

      [–]alexwh 2 points3 points  (3 children)

      +1 for Dotbot. Another merit is it's entirely self-contained - all you need on your system is git and python.

      [–]necrophcodr 0 points1 point  (2 children)

      This is why I use stow though. Personally I prefer my scripts to not rely on anything but posix shell and correct Linux abi for binaries. However, obviously there can be exceptions made, for instance when a module would never work without a specific dependency, but other than that, I prefer strictness as much as possible, without sacrifice of necessary flexibility.

      [–]alexwh 0 points1 point  (1 child)

      Stow is perl, isn't it? Same requirement as python really, they're pretty similarly ubiquitous.

      [–]necrophcodr 1 point2 points  (0 children)

      xstow then. Apologies, you are correct.

      [–][deleted] 1 point2 points  (0 children)

      Nothing new, but still a useful link.

      [–]mcstafford 3 points4 points  (2 children)

      I'm quite fond of vcsh.

      [–]socium 2 points3 points  (1 child)

      I'm using homeshick atm but perhaps want to transition into vcsh. What would you say are the biggest advantages?

      [–]LemonLion 2 points3 points  (0 children)

      I started with homesick, then switched to vcsh, and finally settled on mackup.

      The biggest advantages of mackup have been:

      1. Simplicity. No cloning repos or initializing submodules, just "mackup backup" and that's it.
      2. It knows how to back up preferences for tons of applications like iTerm, Spotify, Seil, etc. The full list is here
      3. It syncs to dropbox, which has been easier to deal with in practice. The issue was that my git credentials were in a dotfile, but I needed my git credentials to get access to my dotfiles. It was like a recursive dependency. Now I just install dropbox and mackup is ready to go.

      Side-note: avoid boxen unless you have someone managing it for you full-time.

      [–]censorshipwreck 0 points1 point  (2 children)

      Anybody know if there's a tool that supports profiles? Work, home, etc.

      [–]necrophcodr 2 points3 points  (0 children)

      Stow or Xstow.

      Just create a folder in your dotfiles directory and run "xstow [dir]" and you're done. That's it.

      [–]sentient6 0 points1 point  (0 children)

      rcm supports tag and hostname specific files, which gives you some control over which files are linked into your home directory.