It's changeable so I don't really mind but I hate the XDG default data dirs used by most OSs. Uppercase feels out of place, organizing things based on mine type (ex. "Video") feels wrong, and wtf is a "Desktop".
same, I just delete all these dirs and use ~/downloads for everything. If I need a file for more than a couple of hours, it goes somewhere it makes sense, not to a generic dumpster like "Documents".
Been downloading most things to /tmp for years and it was a great decision.
By the time you've extracted, built a binary, picked out what you wanted and put it somewhere sensible, or just realized it won't do what you need, all that's left over is cruft that gets wiped on the next boot.
Me too. Many distros mount /tmp on ram, so it even helps process things faster, and maybe saves a few writes from ssds. Back when I used an hdd, the diference was brutal.
XDG Base Directory Specification is not new. come on!
https://wiki.archlinux.org/title/XDG_Base_Directory#Hardcoded ๐
What does this mean though? Sure it's not new, but does it make it less of a mess?
The XDG Base Directory Specification is a set of guidelines to tell application developers where they should store their application's config files, cache, etc.
There are many applications that don't follow the guidelines and put their files in a hidden folder directly in your home directory, which is what the guidelines are trying to combat.
Sometimes that folder isn't even hidden, either
Really just disrespectful on the developer's part.
cough cough Zoom. But then, even stuff like yay on Arch has its folder just in plain sight, slapped right into my home directory. Like, why
Doesn't yay use XDG_CACHE_DIR?
Maybe it's because I'm using Endeavour? I'm not sure
It certainly can. try xdg-ninja
.
~/.config
superiority
I would fucking love it if I could put all my configs there, but unfortunately every other CLI tool seems to feel it needs a spot in the home dir instead..
so ya just put so the stuff in there? is there a reason for that specific directory (I'm kinda a noob)
It's used to store configuration files for various applications so they don't clutter up your home directory. For example, you can put your Emacs config files in ~/.config/emacs instead of ~/.emacs.d. Not every program supports it though.
Every project should at least move the default config location to the ./config folder. Even better if they create their own subdirectory in there.
Every tool I build checks three places:
- An env variable (if it exists) which should point to a dir of the users choosing
- ~/.config/tool-name/
- ~/.tool-name
Which imo is how every modern application should work
For number 2, is it hard-coded to ~/.config
or does it read XDG_CONFIG_HOME
? The latter is what it should do, so that the user has the flexibility to move all their configs elsewhere.
It's from $HOME so you would want to use the first option
But it's GTK that var is used by some people
Please follow XDG specs and use $XDG_CONFIG_HOME
instead of $HOME/.config
. $HOME/.config
could be a fallback if $XDG_CONFIG_HOME
isn't set. :)
I agree.
No, they should read XDG variables. I have my configs on another drive.
Fine, it's 23:46. You got me to check my PC. Let's have a look.
ls -A ~/
2FAlist.txt
Applications
aurpkt
.bash_history
.bash_logout
.bash_profile
.bashrc
.cache
.cddb
.cert
Cisco Packet Tracer 8.2.1
.cmake
.config
.cups
Desktop
.dir_colors
Documents
.dosbox
Downloads
dump1090
.dvdcss
.elinks
.face
.face.icon
.fltk
.fonts.conf
.gnupg
.gnuradio
.gphoto
.grc_gnuradio
.gr_fftw_wisdom
.gr_fftw_wisdom.lock
gr-gsm
.gtkrc-2.0
.hplip
.icons
iqtosharp
.java
.kal_fftw_plan
.kde4
.lesshst
.local
.minetest
missaurpkg.png
.mozilla
Music
.openjfx
options.txt
.packettracer
packettracer
Pictures
.pki
pkttheme
Public
.putty
.python_history
qsstv
.qt-dab.ini
.qt-dab-presets.xml
.qt-dab-schedule.ini
.qt-scanList.xml
.rnd
rtl_wmbus
sdr-trunk
SDRTrunk
sdr-trunk-linux-x86_64-v0.5.0-beta6
sdr-trunk-linux-x86_64-v0.5.3
snapcore.png
speedtest-1.2.0
.ssh
.ssr
.steam
.steampath
.steampid
Templates
tmp
Videos
.viminfo
VirtualBox VMs
.wget-hsts
.wine
wmbusmeters
.wxlistlog
.wxtoimg
wxtoimg
.wxtoimglic
.wxtoimgrc
.Xauthority
.Xclients
.xinitrc
.zcompdump
zesarux
.zesaruxrc
.zhistory
.zshrc
Pretty clean, I'd say. At least on this install.
Lies. I see no .porn folder!
we only do homework here
/usr/local/share/porn
Would that not be under ~/Videos
?
Not strictly. Plenty of non-video content. Anything on nhentai for example. Or literotica. Or old.reddit.com/r/nsfwcyoa or old.reddit.com/r/breedingcaptions . Or any games, like Beasts in the Sun
I swear I wasn't this into porn until covid hit, then I spent too much time at home.
A fellow sdr enthusiast!
.config
.config.BAK
.config.BAK2
.config.OLD
.config.bspwm
.config.CWM
.config.JACKAUDIO
.config.LFS1
etc etc
I never share screenshots, my desktop is boring... practical, nothing really fancy.
I just use the defaults lol.
I "spice it up" to look more or less like I want it to and that's it ๐คท ๐.
It's getting better. I recently removed a bunch of AIX and Solaris specific dotfiles/directories that haven't been of use for years.
https://wiki.archlinux.org/title/XDG_Base_Directory
Do that for your tools in /etc/profile.d/01-xdg
, make it executable, restart, done. Just make sure the XDG_*
variables are on top.
Lots of tools ignore xdg, and issues asking to add support get bogged down in backwards compatibility problems. The best they achieve is to introduce yet another env variable to control where the config goes. It's really annoying.
I have a bunch of TOOLX_CONFIG="$XDG_CONFIG_HOME/toolx"
stuff in my bashrc.
Yes? Most workarounds are in the link. If not, please add them.
But sure, some have none.
linuxmemes
Hint: :q!
Sister communities:
- LemmyMemes: Memes
- LemmyShitpost: Anything and everything goes.
- RISA: Star Trek memes and shitposts
Community rules (click to expand)
1. Follow the site-wide rules
- Instance-wide TOS: https://legal.lemmy.world/tos/
- Lemmy code of conduct: https://join-lemmy.org/docs/code_of_conduct.html
2. Be civil
- Understand the difference between a joke and an insult.
- Do not harrass or attack members of the community for any reason.
- Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
- Bigotry will not be tolerated.
- These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
3. Post Linux-related content
- Including Unix and BSD.
- Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of
sudo
in Windows. - No porn. Even if you watch it on a Linux machine.
4. No recent reposts
- Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now. ย
Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't fork-bomb your computer.