this post was submitted on 24 Jun 2023
29 points (100.0% liked)

Linux

1259 readers
60 users here now

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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Hey guys! Is there a way for me to force apps to treat e.g. $HOME/.config/ as their default directory to look for settings? I want to clear up my home directory because its getting quite messy and I don't even have that many packages installed yet.

Also, any way that would be easy and efficient for use with git for the purpose of backing up my dotfiles.

Thanks!

top 15 comments
sorted by: hot top controversial new old
[–] hschen@sopuli.xyz 11 points 1 year ago* (last edited 1 year ago)

https://wiki.archlinux.org/title/XDG_Base_Directory#Support, the situation is crap tbh and alot of devs refuse to even give you the option of switching to XDG standards for some reason. I started using flatpaks for most of my programs just to escape this.

I do know XDG standards are messy for devs to implement but at least have everything in .config or .local instead of spewing it across my home folder

[–] KindaABigDyl@programming.dev 11 points 1 year ago* (last edited 1 year ago)

No. Some applications won't change even if you'd make the PR for them, simply because they don't want to change legacy features.

For instance, the bash maintainers have refused to put .bashrc into .config/ and to even allow the option to move it.

xdg ninja can help move some stuff out of your home dir tho

[–] doomkernel@sopuli.xyz 9 points 1 year ago

There this program call xdg-ninja which tells you how to change the settings of various packages that live in $HOME.

Is not a perfect though because you'll have to do all changes manually but its the best I can think about. Hope its helps!

[–] dannym@lemmy.escapebigtech.info 8 points 1 year ago (1 children)

$XDG_CONFIG_HOME not every application respects it, but a lot do

[–] Dirk@lemmy.ml 3 points 1 year ago (1 children)
[–] SigHunter@feddit.de 2 points 1 year ago

No because Op's question is, what about those who do not confine to xdg config home?

[–] underisk@lemmy.ml 7 points 1 year ago

From my experience there's no simple way to do it. It's something you'll have to handle on a per-app basis as there's no standard that is followed universally. Here's a website with links to resources on various methods people use.

[–] sqraw@lemmy.ca 6 points 1 year ago (1 children)

Might be worth looking into immutable distros (nix, guix) and their home management systems, or containerised apps (flatpak, where you can inject config). A lot of tools are hardcoded to non standard locations so it's kind of a losing battle by default. A similar strategy would be to use permissions or mount certain folders as read only.

[–] Sharmat 4 points 1 year ago* (last edited 1 year ago)

Adding VanillaOS as well, saw it a few days ago and it seems like a pretty decent immutable distro too.

[–] yingleheimerschitz@lemmy.ml 4 points 1 year ago

the existing comments point out excellent solutions, but no one has mentioned boxxy (https://github.com/queer/boxxy) yet

[–] TootSweet@latte.isnot.coffee 4 points 1 year ago

One option might be to run certain of your apps in Docker. There are ways to go about running even graphical apps in Docker. And with Docker, you can tell it to mount /home//.config/someapp on the host to /home//.someapp in the container.

[–] stepan@lemmy.fmhy.ml 1 points 1 year ago

This tool can help you with certain programs that requires some extra steps to use .config/

[–] pruneaue@lemmy.blahaj.zone 1 points 1 year ago (1 children)

Xdg-ninja that was mentioned by other people is probably the best for the main issue.
For the git stuff, look into bare git repos. Iirc distrotube has a good video explaining the concept

[–] promitheas@iusearchlinux.fyi 3 points 1 year ago

I decided to go with chezmoi because of its simplicity and multi-machine design from the get-go. It seems the best option for me atm

[–] bOt@zerobytes.monster 1 points 1 year ago

Couldn't determine subreddit. Try requesting with both the url (https://old.reddit.com/r/whatever) and title (/r/whatever).

load more comments
view more: next ›