You are not logged in.
Right after installing Arch, I install git, clone my dotfiles repo and symlink my dotfiles to these locations:
~/ (i.e. $HOME)
~/.config/ (i.e. $XDG_CONFIG_HOME)
~/.local/
~/.local/share/ (i.e. $XDG_DATA_HOME)
~/.local/share/applications/
After that, I start installing packages.
Almost every program (package) reads my custom configs for that program and successfully applies them.
The problem is with these 4 programs:
- GIMP
- FileZilla
- Thunar
- htop
as well as with MIME apps - my configs get overwritten.
So far I've been making the corresponding config files immutable, which looks like this:
# ================= DOTFILES FUNCTIONS =================
make_some_files_immutable() {
sudo -S chattr +i "$DOTFILES_DIR/.config/Thunar/accels.scm"
sudo -S chattr +i "$DOTFILES_DIR/.config/filezilla/filezilla.xml"
sudo -S chattr +i "$DOTFILES_DIR/.config/htop/htoprc"
sudo -S chattr +i "$DOTFILES_DIR/.config/mimeapps.list"
re='^[0-9.]+$'
for dir in $(ls "$DOTFILES_DIR/.config/GIMP"); do
if [[ $dir =~ $re ]] ; then
sudo -S chattr +i "$DOTFILES_DIR/.config/GIMP/$dir/menurc"
fi
done
}This is not comfortable, since:
[1] When I need to change some configuration directly in config file, I need to make the file mutable, edit it, and make it immutable again.
[2] When I need to change some configuration by using program's GUI, not only do I need to perform the procedure at [1], but also right after I make config file mutable, the program overwrites the config file in more places than needed (within that file), and then I need to find the line(s) with the needed changes (which are applied by using GUI) in config file, close the program, git restore the file, then manually apply the change directly in the config file, and make it immutable again (i.e. the procedure at [1]).
[3] I need my custom configuration to exist in a newest config file of a program, not in some frozen (by making the file immutable) version of it. If some certain configuration is redundant in the newest version of a program, I will happily accept that. If that configuration is now written in a different way in the config file, I will happily accept that too, and adapt accordingly, committing the updated config file to Git.
What could be other possible solutions to this
?
Last edited by riddle00 (2022-11-01 19:55:48)
Vim is not just an editor (...); it is for all intents and purposes a universal design pattern. -- Jason Ryan
Offline