Live data from Hacker News

Show HN: boxxy – Control where Linux programs put files, without symlinks

github.com

171–180 of 250 posts

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#171

Hah I was literally just complaining about applications not following the XDG directory spec today. there's a non-exhaustive list of applications on the archwiki [0] that put their config/data in dotfiles in the home directory. surprisingly, there's also lots of pushback from maintainers of projects who don't want to change this, for whatever excuse they can produce. a Reddit thread has some list of issues where the…

The dotfiles and dotfolders directly in the home folder is "the way it was always done", and now some "new kids" came and want changes done to software which has existed before they were even born. People have muscle memory for those folders, some have hardcoded those paths in other scripts, others just don't care, and things stay as they always were. On one hand, it's great to have all the stuff in the same place, o…

If we want to flex gray hairs, the idea that an application should put it's configuration files in dotfiles cluttering the home directory is regarded as a mistake by the people who are responsible for it.

https://web.archive.org/web/20180827160401/https://plus.goog...

Obviously, we are now stuck with dotfiles as a "feature", but that doesn't mean we need to have more of them than necessary. Cluttering the home folder with a disorganized mess of files with different modalities next to eachother is ridiculous, pointless, and a collective waste of time.

Almost all of the apps people are complaining about not following XDG were created long after the XDG base directory specification existed. It's time to move on.

P.S.: it'd be preferable also if it wasn't simply implied that everyone who's been around Linux/UNIX for a couple decades hates change. Churn for the sake of churn is bad, but churn is not all wasted. Standardizing once-disorganized directory hierarchy is certainly not a waste of time.

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#172

Earlier quoted context omitted.

> surprisingly, there's also lots of pushback from maintainers of projects who don't want to change this, for whatever excuse they can produce. There doesn't need to be an "excuse" though. "I don't like it" or "I don't want to do it" is more than enough. They're the ones maintaining the damn things, the least we can do is respect them. They don't really need to justify anything, acting as if they had to is how you ge…

> They're the ones maintaining the damn things, the least we can do is respect them. we don't respect maintainers who leave in buffer overruns or x-site scripting, why should we respect maintainers who don't respect users? yes, they're writing and maintaining, but undoubtedly also using tons of respectful opensource that other maintainers take care of. it's like driving a car ("everybody faster than me is a maniac, e…

> why should we respect maintainers who don't respect users?

Saying that using dotfiles instead of ~/.config means they "don't respect users" is a little dramatic, don't you think? Like it or not, unix has historically treated dotfiles as "hidden" and nobody expects you to get upset that they created a hidden file in your home directory without your consent. It's not really about respect, it's just convention you apparently don't like.

I currently have 60 dotfiles in my home directory and probably deliberately created less than 10 of those. The fact that anyone would be upset by this is news to me and most likely is news to a lot of the developers that created these things: cargo, dbus, docker, gem, gnome, gnupg, gphoto, java, kde, maven, mozilla, osquery, rpm, rustup, ssh, vagrant, vim, vscode, wget, yarn, zoom. Not that "this bad behavior is widespread" is a good excuse, but the point is that I don't think the world is at all in agreement that this is "bad behavior."

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#173

Hah I was literally just complaining about applications not following the XDG directory spec today. there's a non-exhaustive list of applications on the archwiki [0] that put their config/data in dotfiles in the home directory. surprisingly, there's also lots of pushback from maintainers of projects who don't want to change this, for whatever excuse they can produce. a Reddit thread has some list of issues where the…

The dotfiles and dotfolders directly in the home folder is "the way it was always done", and now some "new kids" came and want changes done to software which has existed before they were even born. People have muscle memory for those folders, some have hardcoded those paths in other scripts, others just don't care, and things stay as they always were. On one hand, it's great to have all the stuff in the same place, o…

Considering the spec is 20 years old, having "muscle memory" is a bit of a weak excuse at this point.

Having a couple of directories to clean up is a bit annoying, but they used to stick the config file in your home and then make an application directory so we were already having to deal with multiple locations.

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#175

I hate when applications ignore the XDG spec, but you know what I hate more? the XDG spec! I don't want all my pictures to go in Pictures, all my documents in Documents, etc. I want everything from each project to go in the directory for that project. I don't need it to read my mind, but when I save a document to a new directory and then I want to save a spreadsheet too... I want that new directory to be a top-line c…

Also I hate localized XDG directories. Windows and macOS don't localize real directory name but only Linux does. I run LANG=C xdg-user-dirs-update after I install Linux with my lang

Windows does (did at least)

And macOS has Xxx.localized directories

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#176
post #50

Earlier quoted context omitted.

That brings back memories... of an era of Internet that many here are probably too young to have experienced.

HN is predominately older millennials and genx. This site isn't really making waves among the "kids" and I doubt ever will unfortunately. It's us taking this ship to its end. o7 I would like to see the ages and sign up numbers over the years.

I don't know if it's making waves among the zoomers, but there isn't yet an alternative for zoomers who've entered the tech workforce, is there?

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#178

Earlier quoted context omitted.

That's why that kind of software uses a .programX directory, where everything like that can be put in. Look at ~/.wine for example... config files, whole C drive, everything in one simple folder. Want to upgrade to an alpha version to test something, but don't want to break anything that's now working? Just backup that one single folder. Restore or migrate configuration to another computer? One single folder. Remove…

> Look at ~/.wine for example... config files, whole C drive, everything in one simple folder Except it isn't really. Just a few days ago I tried to purge Wine from my system. Uninstalled through pacman, cleaned up orphaned dependencies. Killed the ./wine folder and various other leftovers too, because depite your claim, there they were, though I didn't commit to memory exactly where and what. Removed some autostart…

Just FYI, in case it is useful for you: Here's the information that you would want for cleaning that up.

https://wiki.winehq.org/FAQ#How_do_I_clean_the_Open_With_Lis...

If you ever want to prevent this integration from happening in the first place, you can do it by editing the registry in a given wine prefix. You can run regedit with the usual command, `wine regedit`, then locate the key:

HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices\winemenubuilder

Set it to empty to disable the integration entirely. Or, just remove the `-a` switch and you will still get desktop icons, just not file associations.

It is unfortunate that it has to be outside of the WINEPREFIX, but there's no way around it, since those various files need to be in their respective locations to reasonably be picked up. (Maybe it could use symlinks instead, but even if it did, they'd need to get cleaned up by something when the target gets deleted.)

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#179

If anyone would like to actually force the non-compliant applications to do the thing correctly, then xdg-ninja is your friend [0]. The script looks at all the dotfiles in the home folder and tells you what environment variables you have to set to make them follow XDG base directory specifications, in the cases where that's not possible it will show you the related GitHub issue or similar bug tracking option with the…

This is fantastic! Thanks for the share. Reminds me of lostfiles for Arch. https://man.archlinux.org/man/community/lostfiles/lostfiles.... Was thinking this would be a useful tool, same as a tool that would show you where environment variables are being set, and which ones override what.

It also has a table of applications docunented https://wiki.archlinux.org/title/XDG_Base_Directory

Re: Show HN: boxxy – Control where Linux programs put files, without symlinks

#180

If anyone would like to actually force the non-compliant applications to do the thing correctly, then xdg-ninja is your friend [0]. The script looks at all the dotfiles in the home folder and tells you what environment variables you have to set to make them follow XDG base directory specifications, in the cases where that's not possible it will show you the related GitHub issue or similar bug tracking option with the…

I have a similar list in my bashrc [0]. I didn't know about xdg-ninja though, thank you!

[0]: https://github.com/evanpurkhiser/dots-personal/blob/main/bas...

Post reply on HN