this post was submitted on 03 Feb 2024
990 points (98.3% liked)

linuxmemes

20463 readers
135 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] Kalcifer 164 points 6 months ago (1 children)

Firefox has an issue that's been open for 20 years regarding implementing the XDG Base Directory Specification.

[–] [email protected] 52 points 6 months ago (4 children)

Firefox is the biggest offender for me. ~/.mozilla instead of something sane like ~/.config/firefox

[–] uuhhhhmmmm 66 points 6 months ago

Even worse, Thunderbird doesn't save data in ~/.mozilla/thunderbird, but in ~/.thunderbird.

[–] [email protected] 5 points 6 months ago

At least Thunderbird configs are stored in ~/.config/.mozilla/thunderbird. Right? Right...?

load more comments (2 replies)
[–] [email protected] 86 points 6 months ago (4 children)

my favourite part is Steam throwing in a symlink, a broken symlink, and a directory of 4 files and 7 more symlinks that all point to a more reasonable point in ~/.local/share/steam/

[–] [email protected] 25 points 6 months ago (2 children)

Which indirectly led to this wild as fuck bug that nuked some poor user's data.

https://youtu.be/qzZLvw2AdvM?si=FznMm9CQxD-da9S6

[–] [email protected] 7 points 6 months ago

Here is an alternative Piped link(s):

https://piped.video/qzZLvw2AdvM?si=FznMm9CQxD-da9S6

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source; check me out at GitHub.

load more comments (1 replies)
[–] [email protected] 15 points 6 months ago* (last edited 6 months ago) (1 children)

Haha you just reminded me of that damn flashing broken steam sym link in my home folder, it's been there for years and I've yet to investigate or do anything about it.

[–] [email protected] 15 points 6 months ago

It's there for ancient compatibility reasons and recreated when steam starts, iirc. I've looked a bit into removing it last year but didn't get far

[–] [email protected] 6 points 6 months ago (2 children)

lol that's great. Does flatpak Steam do that too? I can't see anything from Steam directly in my home directory, and I use the flatpak version.

[–] [email protected] 51 points 6 months ago* (last edited 6 months ago) (1 children)

Flatpak itself violates the xdg base dir spec by making ~/.var

load more comments (1 replies)
[–] [email protected] 10 points 6 months ago (2 children)

Flatpaks can't just access your home directory.

load more comments (2 replies)
load more comments (1 replies)
[–] [email protected] 77 points 6 months ago (1 children)
[–] [email protected] 42 points 6 months ago (1 children)

Ninja can't help if the program does not want to cooperate :(

[–] [email protected] 13 points 6 months ago

You can use a wrapper script on PATH that launches the app in a fake home wherever you want.

[–] [email protected] 59 points 6 months ago* (last edited 6 months ago) (1 children)

It's one thing when they have legacy hardcode mountains preventing a standardisation, but I really dislike developers who just disagree with the standard and take away the choice as well and justify it with some made up problems with that standard.

https://github.com/minetest/minetest/issues/864

https://bugzilla.mozilla.org/show_bug.cgi?id=735285

etc...

Archlinux Wiki even has an article about those.

https://wiki.archlinux.org/title/XDG_Base_Directory#Hardcoded

[–] [email protected] 28 points 6 months ago (1 children)

who would win?

dozens of conflicting standards on where to store files over years of poorly enforced linux development practice

vs

some symlink bois


for real tho, I discovered gnu-stow the other day and it looks like the ideal solution for this sorta stuff

[–] [email protected] 4 points 6 months ago (1 children)

vs. user choice via variable.

[–] [email protected] 7 points 6 months ago (1 children)

"Am I out of touch?
No, it is the users who are wrong!"

load more comments (1 replies)
[–] [email protected] 47 points 6 months ago (5 children)

Haven't used much of Linux before, can someone explain the joke?

[–] [email protected] 95 points 6 months ago (3 children)

The Windows equivilent would be instead of putting application data in the AppData folder, it throws it in Documents, My Games, or just in the home folder directly.

[–] funkless_eck 78 points 6 months ago (9 children)

ah so like every fucking game and it's save files for some reason?

[–] [email protected] 23 points 6 months ago

Better, it could be literally anywhere and there's nothing you can do about it. Also symlinks practically look like regular folders and files to most apps.

[–] [email protected] 5 points 6 months ago* (last edited 6 months ago)

That's why i prefer to use Wine for games. Just change the symlinks in C:/users/ to somewhere sane, like .local/Games//save. Guess you could also use the variables in .config/user-dirs.dirs while creating the prefix, but i haven't tested that yet.

load more comments (7 replies)
[–] [email protected] 35 points 6 months ago

... or just imagine all of it being thrown on the Desktop (the bare user directory is rarely visited in Windows)

[–] [email protected] 9 points 6 months ago

Hahahaha oh man I know exactly what you're talking about too 😭 hate when they do that

[–] [email protected] 61 points 6 months ago

Most software on Linux is configured to place their config files in ~/.config. Some others, like the ones in the pic, just dump them directly into your home folder.

[–] [email protected] 48 points 6 months ago* (last edited 6 months ago)

Yes.

Many applications have configuration files. Historically these files were placed in your home directory aka "on the floor". The variable mentioned defines a directory where these files should go. Many applications ignore this.

A non-linux version of this meme might go,

"Here is the pizza you ordered"

"Great, could you put it in my hands"

"Lol (throws pizza on floor)"

[–] [email protected] 39 points 6 months ago* (last edited 6 months ago)

$XDG_CONFIG_HOME is an environment variable that programs can (and should) read to determine the location for storing dotfiles (config files, kind of). Not reading (or caring about) the environment variable, and not adhering to the default of /home/username/.config/ results in them ending up in the home directory.

load more comments (1 replies)
[–] [email protected] 29 points 6 months ago* (last edited 6 months ago)

Meanwhile kde scattering everything in .config/

Image

[–] [email protected] 26 points 6 months ago* (last edited 6 months ago) (1 children)

If plasma could put all their damn files inside a "plasma" folder that'd be great too.

load more comments (1 replies)
[–] [email protected] 25 points 6 months ago (2 children)

In theory this issue can be solved with LD_PRELOAD trick. E.g. redirect all/most/some fopen calls to "$HOME" to some other directory. But before I try to tackle it myself: is there already a similar solution like that?

[–] [email protected] 4 points 6 months ago (1 children)

You could probably do it with bubblewrap or something equivalent. Here's someone asking about this exact thing:

https://unix.stackexchange.com/questions/651788/redirect-single-file-or-directory-using-bubblewrap

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 24 points 6 months ago* (last edited 6 months ago) (1 children)

I love you all very much but just please be aware that "the floor" is literally where the files are supposed to go, according to the spec. I don't like it, you don't like it, nobody likes it. But that's why it's happening.

Relevant section quoted for the lazy:

User specific configuration files for applications are stored in the user's home directory in a file that starts with the '.' character (a "dot file"). If an application needs to create more than one dot file then they should be placed in a subdirectory with a name starting with a '.' character, (a "dot directory"). In this case the configuration files should not start with the '.' character.

[–] [email protected] 25 points 6 months ago (4 children)

You know everything on that site was written in 2004 or earlier, right? That hasn't been the relevant spec for a long, long time now. We use xdg for that now. Configs go in xdg_config_home.

load more comments (4 replies)
[–] [email protected] 17 points 6 months ago* (last edited 6 months ago) (1 children)

i understand the linux side of the joke but can someone explain what this meme format means? /gen

is this pizza guy known for chucking pizzas?

[–] Classy 14 points 6 months ago (3 children)

They probably just found an image of a pizza delivery guy and fitted it for the meme. I am not aware of any memes of pizza throwers other than Walter White

[–] [email protected] 11 points 6 months ago

i am the one who yeets

load more comments (2 replies)
[–] [email protected] 7 points 6 months ago

Set your config directory to be your home directory and outplay those apps

[–] [email protected] 4 points 6 months ago

Don't forget Flatpak.

load more comments
view more: next ›