I’m wondering if there is a new tool out there that I’m missing out on.

    • yads@lemmy.ca
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      That’s the way I do it, although I have a custom script that generates the symlinks for me. Not sure why I’d need anything more

    • proton_lynx@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      What I really like about chezmoi is how it can retrieve secrets stored on Bitwarden. Your git history is clean of secrets but you can have them referenced on your dotfiles.

      • cd_slash_rmrf@programming.dev
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        it’s so useful! I used to have some terrible setup going with branches for different OSes in my dotfiles, and chezmoi really simplified the whole thing

        • Hexarei@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Indeed, I use my dotfiles across several machines, architectures, and distributions and it’s fantastic

    • Outcide@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Had a homebrew Git setup for ages and recently started using Chezmoi. It’s only been a few weeks, but so far it’s been pretty great!

  • codemonk@programming.dev
    link
    fedilink
    English
    arrow-up
    9
    ·
    1 year ago

    I prefer to keep tooling for that at a minimum. Therefore I use git only. My approach is taken from here: https://www.atlassian.com/git/tutorials/dotfiles The only difference: My git alias is dotfiles not config. I find that to be less confusing. Additionally, I source system-specific configs, where appropriate. These are not stored in dotfiles. There is a small todo section in my readme.

  • Nate Cox@programming.dev
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    I’m all in on nix with home-manager these days. Really seems like an ideal framework for my dotfiles and of all the systems I’ve tried over the years this is the one I’m happiest with.

    Hell of a learning curve, though.

    • philm@programming.dev
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Yep it’s like maintaining a codebase that’s getting increasingly better. It’s a rabbit-hole and a timesink (kind of because you’re trying to get the best out of it, and thus configure likely more) but I think it’s worth it. It gets better overtime as well

  • varsock@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    1 year ago

    i take a Phoenix approach with my dotfiles.

    Once a decade when my computer crashes and burns, from the ashes emerges a blank slate of dotfiles that is purged of all unnecessary hacks that have accumulated. With a tear and a hopeful outlook, I rush to set the settings I am actually dependent on.

    I really need to take more interest in backing up my dotfiles 😭

  • corytheboyd@kbin.social
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    1 year ago

    Tried all the fancy ideas, never stuck with it. I just use git to track changes now and move on with my life. There are like four functions I carry around with me, then whatever path additions and init scripts I pile up. It’s so light it doesn’t really matter when I move to a new machine

  • Gamma@programming.dev
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    1 year ago

    I’ve done symlinks into a separate directory before, but by far my favorite method is to just let ~ be a git repo. It’s maximally simple, no other tooling needed besides git.

    There are a few key steps to making this work well:

    • echo '*' > ~/.gitignore: This way git status isn’t full of untracked files. I can still git add -f what I actually want to track.
    • git branch -m dots: For clarity in my shell prompt.
    • [ -d "$HOME/.local/$(hostname)/bin" ] && PATH=$PATH:$HOME/.local/$(hostname)/bin and similar if there’s config I want to apply only to certain hosts.
    • drdnl@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Pretty happy with nixos these days, after the initial (crazy) learning curve. But I really like the creative simplicity of this idea

      • Gamma@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Stole Forked this idea from Drew Devault.

        I’m looking at NixOS now for my server, and while I understand the host config, I’m curious whether I could integrate this into my config in some way.