I have a multiple user linux system. Well actually a couple of them. They are running different distros which are arch-based, debian-based and fedora-based.
I want to globally use non-executable components not available via my system's package manager. Such as themes, icons, cursors, wallpapers and sounds.
Some of them are my own original work that I manage in git repos. Others are downloaded as packages/collections. If there is a git repo available I prefer to clone because it can theoretically be updated by pulling. And sometimes I make my own forks or branches of other people's work. So it's really a mix.
I want to keep these in a totally separate area where no package manager will go. So that it is portable and can be backed up / copied between systems without confusion. Which is why I don't want to use /usr/local
.
I also want to be able to add/edit in this area without su
to root
. So that I can easily modify or add items which then can be accessed by all users. Also a reason to avoid /usr/local
I tried making a directory like /home/shared/themes
then symlinking ~/.themes
in different users to that. It sometimes worked OK but I ran into permissions issues. Git really didn't seem to like sharing repos between users. I can live with only using a single user to edit the repos but it didn't like having permissions recursively changed to even allow access.
Is there a way to tell linux to look in a custom location for these resources for every user on the system? I also still want it to look in the normal places so I can use the package managers when possible.
fonts - once solved
On one install, I found a way to add a system-wide custom font directory though I am not able to recall how that was done. I believe it had to do with xorg or x11 config files. I can't seem to find in my shell histories how it was done but I will look some more. I do recall the method was highly specific to fonts and didn't appear to be transferable to other resources.
You can use ACLs to fixup permissions, so the actual permissions may get weird but the ACLs will still allow the access despite the mess of user/groups of who edited the file last.