this post was submitted on 28 Apr 2026
298 points (99.3% liked)

Linux

13493 readers
900 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
 

If you are using a rolling release distro like Arch, you might have noticed that your home directory now has a new member, a new folder called "Projects".

For as long as I remember, Linux has always had a set of default folders under the home directory. Usually they are Documents, Music, Pictures, Videos and Downloads. Templates, Desktop and Public folders are also there.

Now we have a new addition in the form of "Projects".

you are viewing a single comment's thread
view the rest of the comments
[–] thedeadwalking4242@lemmy.world 22 points 2 days ago (2 children)

Honestly I say just let the user decide what goes in their home directory. I always get annoyed at all the random garbage in there. There should be a specific place that is user owned that isn't filled with cruft and configuration files

[–] RamenJunkie@midwest.social 4 points 2 days ago (2 children)

Yeah, I have essentially never used these folders unless a program sticks something there by default (mostly pictures).

[–] oatscoop@midwest.social 1 points 1 day ago (1 children)

I just save everything to ~/Desktop anyway.

[–] SkaveRat@discuss.tchncs.de 3 points 1 day ago (1 children)

A thing I started doing years ago, to combat trashing to ~/Desktop or ~/Downloads:

Set /tmp as your default download directory.

At least for me, almost everything I download is just ephemeral and would collect dust

Putting it there causes it to be cleaned up on the next reboot. No more piles of junk on the desktop (the virtual one at least. Don't ask about my physical desktop)

[–] sneezycat@sopuli.xyz 2 points 1 day ago (1 children)

That's a good idea until you download a 10GB file and you wonder why you're out of RAM :P

I use /tmp as a temp folder for yt-dlp (it is faster than an HDD when adding metadata and subs to the video), and I've ran out of RAM before by downloading a video too big... Silly me, my laptop only has 8GB.

[–] SkaveRat@discuss.tchncs.de 3 points 1 day ago (1 children)

True, but only if you use ramfs for tmp, which not all distros do

[–] frongt@lemmy.zip 0 points 20 hours ago (1 children)

If you don't, then it's not going to be cleaned up on reboot.

[–] SkaveRat@discuss.tchncs.de 1 points 20 hours ago

I don't have it as ramfs and it gets cleaned up perfectly fine. never had a system where it doesn't

[–] EddoWagt@feddit.nl 1 points 2 days ago

I relocated the default folders that are useful to another drive, I pretty much don't use the home folder at all apart from some random github pulls or some shit

[–] TheV2@programming.dev 0 points 1 day ago (1 children)

The user does decide, XDG user directories are optional and configurable. Since they are already established, user-friendly distros / desktop environments already pre-install them.

And what speaks against just using a new directory within your home directory as your "specific place that is user owned that isn't filed with cruft and configuration files"?

[–] thedeadwalking4242@lemmy.world 2 points 1 day ago (1 children)

It's only optional and configurable if it's respected. Which often times it's not due to convention.

And I do already actually, it's just weird that I have to.

It's 100% one of those carry overs from earlier days of computing and Linux not having great standards only great conventions. Like /bin vs /usr/bin

[–] TheV2@programming.dev 0 points 11 hours ago

Could you elaborate how the configuration might not be respected? Do you mean that you've often encountered applications that save files to hard-coded paths and do not even let you change the destination path?

If you ask me, that's just bad software design. If the software is open-source, there is the option to request the developers to read the actual path of the respective well know directory from the XDG environment variables or allow configuration.