That's why you put your config files in a git repository
linuxmemes
I use Arch btw
Sister communities:
- LemmyMemes: Memes
- LemmyShitpost: Anything and everything goes.
- RISA: Star Trek memes and shitposts
Community rules
- Follow the site-wide rules and code of conduct
- Be civil
- Post Linux-related content
- No recent reposts
Please report posts and comments that break these rules!
Sounds like Nixos with extra steps
What do you mean? My NixOS config files are in a git repository
Even the system files like those in /etc ?
Of course there is. Love it.
No. I only set up /etc/fstab and /etc/ssh/sshd_config once and they will never change.
Package manager: This package contains an updated sshd_config file, would you like to replace your existing file with the package maintainer's updated file?
Me, every time: LOL, no
Shit, thanks for reminding me. I needed to take care of some pacdiff files
You could set up btrfs snapshots, too. Of course, don't forget to take a snapshot before you break your configs.
BAK IN MY DAY 👵👴
Yep I still add .bak to mine
Evolution:
- config.json
- config.json.bak
- config.json.bak.old
- config.json.bak.old2
- config.json.bak.old3.stillworks
- config.json.bak.old3.stillworks.DONTUSETHIS
- config.json_(redownloaded_from_source)
Sigh...
git revert HEAD
echo \*.json.\* >> .gitignore
git commit
config.conf
config.conf.backup
config.conf.testing
config.conf.old
config.conf.default
config.conf.example
- config.json.almost
- config.json.broken
- config.json.shouldwork
.
.
.
(sigh...)
True story... happens all the time.
Gmail says sending myfile.zip is not allowed.
Change it to myfile.zip.txt and everything is fine.
It may be due to their processing.
Better base64 -w 0 myfile.zip > myfile.zip.txt
If it works though ¯\_(ツ)_/¯
Speaking of which, nowadays KDE hides files with these extensions for some reason
It's just a playful thing dolphins do 😊.
Rename to .old
Bam file is gone.
??? Confused look.
The heck?
Ctrl + h
Oh there it is!
I never really have hidden files off, so I wasn't even aware dolphin does this lol
I absolutely despise the idea of "hidden" files. I don't understand the purpose of not showing them.
It's useful to hide clutter. It's easier to look at the file you care about when the file~
, file.old
, .file.swp
, #file#
, file,v
, etc. aren't in the way.
An old manager of mine's backup solution was a cronjob that appended .old to every file then made a copy of the most recent one. So he had: file, file.old, file.old.old, file.old.old.old, ...
.bkp_YYYYMMDD for me
Ah, yes, I also add dates sometimes, very helpful 👍.
And then wonder "wtf did I change them 🤔".
Config files need git nowadays.
Is there a tool to version your configs? I use chezmoi for my dotfiles but that doesn't help system configs
Etckeeper
Fuck it. What's the worst that could happen?
Oh.
I like adding a backup function to .profile that can take a file or list of files as an argument and make a copy with a date suffix on the file name, and same date additional backups just add a character like ~ at the end. It's in version control, but if I'm testing a change it's just faster to restore the file from a copy in the same place.
i so agree. i have a script that copies all file arguments into the directory .backups/YYYY-mm-DD-HHMM/
... handy for risky git operations too.
Obligatory note that /etc/profile
and ~/.profile
are only run by login shells, and many terminal emulators do not execute a login shell by default.
Unfortunately, there is no standard secondary place* that all shells execute, so check your chosen shell's manual for what it does run on startup and put your functions into one of those. Preferably one that goes in your homedir.
Alternatively have that file source ~/.profile
assuming that won't cause an infinite loop.
* And not even a primary if you count *csh
, but if you use those you have other problems.
Bet the world would be a happier place if we had cartoon physics
*~
But you should really have a backup system. And often you should have a version control system too.
Use etc-keeper, saves everything in a git repo and integrates with a bunch of package managers. Been using it for decades it feels like now.