Hello, i would like to know how you manage your dotfiles.

Do you use some gui or tui?

There are many ways i don’t what to do.

Probably im going to do git repo with lazygit. I like tuis. I am managing files on two artix linux systems 1- pc and 2- laptop

  • I don’t… when setting up a new system I just copy what I need from any random machine I have logged into at the time. As I need different config for different systems it doesn’t really make sense to have one perfect config on all either…

    • flatbield ( furrowsofar@beehaw.org ) 
      link
      fedilink
      English
      arrow-up
      10
      ·
      10 months ago

      Besides. What is there to really mange. There are only a few that one are likely to change. Every thing else is in /etc. Besides all of thia is in whole system backups and snapshots anyway.

    • torgeir ( torgeir@lemmy.ml ) 
      link
      fedilink
      arrow-up
      0
      ·
      10 months ago

      I also share this brand of illness.

      As I was reluctant going all in, having kept them in git since 2012, I still keep a few of them in their own separate repository. I load them as a nix flake input, and put the files in the expected place using nixos. Works OK, but adds a bit of a roundtrip if you are experimenting with changes often.

      This also allows me to share some of them to my work machine, which uses nix, and other files on other systems that dont.

      That said, I consider myself all in nix quite some time ago, and have moved more and more of the config over to the nix repo using the nix language for config instead of the input flake config file approach. Iterating on it is much faster this way.

  • mko ( mko@discuss.tchncs.de ) 
    link
    fedilink
    English
    arrow-up
    13
    ·
    10 months ago

    GNU Stow, backed up to a git repo.

    For those who might not see the purpose, it’s for keeping your profiles on different machines in sync, especially if you use the terminal a lot.

  • kehet ( kehet@sopuli.xyz ) 
    link
    fedilink
    arrow-up
    6
    ·
    10 months ago

    I use yadm which is basically git repo with automated path handling and alternate files support. I heard that gnu stow is also a good choice, but I haven’t tried that

  • LiveLM ( LiveLM@lemmy.zip ) 
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    10 months ago

    I use YADM which is a thin wrapper around a bare git repo but still has some creature comforts like per-machine configs and templating.
    Since you still need to interact with Git, I pair it with Lazygit. Love that software, I do everything Git with it now!
    Unfortunately it is a little jank due to the way Lazygit handles bare repos, thankfully there’s a command that sets up the needed Git variables for it to work correctly: yadm enter lazygit

    I send the repo to my own Forgejo instance. Kinda overkill but I was already self-hosting other services so I thought “Fully private Git server just for me? Why not?”

    Now, this is only for managing user level files. For managing system level configs I haven’t setup anything yet.
    YADM has a solution for this but it seems a little jank, maybe I’ll learn Ansible instead, dunno.

  • bbleml ( bbleml@lemmy.ml ) 
    link
    fedilink
    English
    arrow-up
    4
    ·
    10 months ago

    I use home-manager to manage most of my dotfiles and store them in a git repository. Additionally, I just symlink the configurations I’m too lazy to write as home-manager options (yet), which in turn is a decent way to make migrating to home-manager options less upfront.

  • Obin ( Obin@feddit.org ) 
    link
    fedilink
    arrow-up
    3
    ·
    10 months ago

    I’m using VCSH, which allows me to split the home directory into multiple git repos without worrying about symlink consistency (like with GNU stow) or apps that have problems with symlinks.

    The syntax is exactly the same as git, only that I do (for example) vcsh emacs add -p instead of git add -p.

  • tvcvt ( tvcvt@lemmy.ml ) 
    link
    fedilink
    arrow-up
    3
    ·
    10 months ago

    I do a git repo for my dot files with an installer that configures it based on whether I’m using Linux, macOS, or FreeBSD; a server or desktop; and whether I’m in bash or zsh. It also includes a bunch of functions and aliases that I find useful. It’s not always pretty because I also use it as a practical place to try new shell script bits when I have time. I’m hoping to change some things around soon thanks to some ideas from Dave Eddy’s bash course at ysap.sh.

    • eldavi ( eldavi@lemmy.ml ) 
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 months ago

      i used to do this, but couldn’t figure out how to stay on top of the changes introduced by distro’s and updates to the apps; did you figure these out somehow?

      • tvcvt ( tvcvt@lemmy.ml ) 
        link
        fedilink
        arrow-up
        2
        ·
        10 months ago

        I pretty much stick to straight bash and core utils, so it’s not much of a burden. Plus on the Linux side, I mostly stay with Debian and its derivatives, which limits some of the work.

        But really I don’t consider every feature of my dot files to be a finished product. The core stuff is reliable, but if I catch a problem with anything more esoteric or if I see some functionality that looks interesting, it’s a brain teaser I get to tackle.

        • eldavi ( eldavi@lemmy.ml ) 
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 months ago

          I pretty much stick to straight bash and core utils, so it’s not much of a burden…

          this has worked fairly well for me too and i’ve applied this logic to a few desktop environment apps that are seemingly ubiquitous in all of the distros.

          though, i still admire (and sometimes envy) the customizations that people make to their environments.