I’m looking for interesting tools to automate managing packaging and configuring everything automated.
And yeah I know about NixOS but I like to distro hop and experiment so I for now know these:
- Ansible - automating many machines, using different package names as vars and package managers.
- Bash - the most native and compatible scripting language that can be.
- Chezmoi - for dotfiles.
For now that’s it. I’m looking forward for your suggestions!
- Nix, the package manager, is distro-agnostic. Add Home Manager on top of it and you’re good to go; both packages and dotfiles are dealt with. - Hm I see, thanks. A good one when you have it installed on every machine. 
 
- And yeah I know about NixOS but I like to distro hop and experiment - If you know about NixOS, then you probably know this, but Nix, the package manager/the language behind NixOS, is cross-platform. - I daily drive NixOS, but I also use Nix (and home-manager) on my Fedora music laptop, my Ubuntu home file-server, and my work Windows machine (WSL) to install and configure neovim automatically instead of copying a config, installing all the packages, and running check health over and over again until everything is set up. - I just copy my neovim.nix file over (also other things like zsh.nix) and run - home-manager switch- You don’t have to use NixOS to take advantage of its benefits. - It always seemed to me like Nix package manager is not “native” enough or there are some downsides compared to dnf or apt. If that’s not the case I think I’ve got my answer. - deleted by creator 
 
 
- i’ve used Chezmoi for years now pretty successfully. works on my Mac and Linux machines. it probably could be made to work on Windows. i am transitioning to NixOS, but i’ll probably keep using it anyway, since i still have Macs for work (and because they’re great laptops don’t @ me). the only real downside is that it only works for the home folder, so i have to manually control stuff for - /etc, but i generally prefer user configuration for most tools anyway.- i had messed around with Ansible for this in the past, but i didn’t really like it for this use case. it’s been a while tho so it’s hard to say why. - not to pile on, but you might also look at GNU Stow. i decided against it, but it’s there. - obligatory i s’pose: https://github.com/covercash2/dotfiles - Yeah I see everyone saying chezmoi is great. - Ansible seems fine but also complicate many thing not doing something in bash. - GNU Stow seems even more complication than Ansible. - Bash seems the most simplest one. 
 
- flakes and lock files are next level. 
- I’ve tried to move as much as I can into Flatpak. That way I can just copy my - .varfolder, and all my apps are migrated.- For other things like my configs, I use a git repo. 
- deleted by creator 
- I have a custom /etc/profile that loads - /etc/session.d/$HOSTNAME-$USERscripts.
- Most of my files are different across machines because of different themes etc. The only dotfiles I have synced across machines are my - .zshrc,- .gitconfig,- .ideavimrc(not my actual vimrc because it has some machine-specific theming), and- .p10k.zsh. I have them all in a folder synced with syncthing and then I symlink- ~/.zshrcto e.g.- ~/dotfiles/.zshrc.- Chezmoi has an amazing templating feature to address different files on different machines. It’s worth the time to set up. 
 
- I wrote my own program, filetailor. It’s similar to Chezmoi but uses inline comments instead of templates for machine-specific lines. This allows me to make edits directly to my local files and then sync those changes to other machines. - I also use Ansible. 
- deleted by creator 
- I have a Linux setup script that downloads a bunch of config files and sets them up. I also have backups of my zshrc and other configs, and that helps a ton too. I have a Linux scripts repo on GitHub where I toss all my Linux scripts and that’s quite helpful too. 




