My entire .dotfiles is in GitHub. Anything I want to keep common across machines is stored there and either inserted in PATH or symlinked as needed.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Second this, just be mindful not to sync anything sensitive in there.
@Jamie
Using a dotfiles manager makes it a little easier to avoid, even if it's just GNU Stow.
@muddybulldog
Stow is good and I’d recommend it for someone starting out. By the time I found about it I had already written a silly amount of code from scratch to accomplish effectively the same thing.
@muddybulldog
After using a small install script of my own for a while, I switched to yadm. It's nice because it's a shell script, so no need to compile on different architectures/UNIXen.
Thanks for this. Someone else has mentioned this a while back and I completely forgot what it was called. Which is ironic given what the acronym stands for. I’ll give it a second look.
What a novel use for a git repo... I like it.
I use chezmoi
for tracking dotfiles and used to use a fancy Ansible setup. Now, I just occasionally backup a list of explicitly installed packages and track the major changes made to the system in a simple Markdown file.
@andybug
I've been working on using Guix. Theoretically, I love the idea, but there's definitely some learning curve.
@swordsmanluke
I just tar up /home and /etc, install the new system, untar my backup to a directory inside my home directory, and then copy only the stuff I wanted to keep.
I see a fresh install as an opportunity for a new start.
I'm a /home on separate drive/partition kind of guy. I like it just following my installs. Though seeing some using guix/nixos to create a config for my desktop has got me wanting to spend a weekend trying that out.
That's been my approach too, but I've reached ten plus years of God knows what in my dotfiles. It's time for a clean reinstall. 😁
I've been using chezmoi
for dotfile management and have been really happy with it. You can directly import existing files to get started and template out any differences between systems.
The rest, ansible for any sufficiently complex enough setup at the moment. Good for integration work with LDAP, etc if your using that. Again may play around with guix on that front.
I was just thinking yesterday when looking at how NixOS works. The config file seems to be quite reminiscent of an Ansible Playbook. I mean maybe I'm way off the mark, I haven't really dug into Nix much yet.
Guix/nix seem very powerful. The reproducibility is something ansible just isn't built to same level robustness for, which makes them seem very promising to me.
Unfortunately, as always, the best solution does not exist. Everything has its advantages and disadvantages.
For example, I like Chezmoi for managing configuration files. But the tool is only for the configuration files in /home.
Ansible, on the other hand, can be used for / and /home. But already the basic functions are more complex which requires some training time.
The best way is to use nix 🤙🏻