On Thursday, November 27, 2014 8:00:05 AM UTC+5:30, Serge wrote: > 2014/11/16 Peter Nieman wrote: > > Has anyone ever wondered where all these funny directories like ~/.cache, > > ~/.config, ~/.local or even ~/Desktop (with a capital D) came from that > > appeared in Debian after upgrading to - was it Lenny? Here's an answer: > > http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html > > People often misunderstand what XDG standards were created for. > > Imagine that you're writing some graphical application in those old days > before XDG standards appeared. And you want to put a link to it to the main > menu of your DE/WM. Where would you put it? ~/.gnome2/vfolders/applications? > ~/.kde/share/applnk? Maybe .icewm/menu? Or all of them? What if you want > to autostart it on login? ~/.kde/Autostart? ~/.kde/share/autostart? > ~/.gnome2/autostart? > > The problem arises when MULTIPLE INDEPENDENT apps need SAME files. > So they came together and created XDG standard. It looks like: > [autostart-spec] > system-wide autostart files are placed in $XDG_CONFIG_DIRS/autostart/ > user-specific overrides go to $XDG_CONFIG_HOME/autostart/ > "based on the desktop base directory specification". > [menu-spec] > .menu files are placed in $XDG_CONFIG_DIRS/menus/ > .desktop files are placed in $XDG_DATA_DIRS/applications/ > user overrides go to $XDG_DATA_HOME/applications/ and $XDG_CONFIG_HOME/menus > "according to the desktop base directory specification". > and so on. > > The "Base Directory Specification" itself is just html page to reference, > a base for other XDG specifications, that's why it's called "base". > As its original author said [1]: > > XDG Base Directory spec is intended for use by other specification. > > For example the XDG Menu specification and Autostart specification > > refer to the XDG Base Directory specification instead of reinventing > > their own filesystem locations / hierarchy. > It just gives the meaning to directories, used by *other XDG standards*, > which brought peace and clarity to the mess of desktop environments. > > Those XDG standards were created by "X Desktop Group" only to define > unified directories for COMMON files of multiple X desktop environments, > not for some rogue applications to hide their own private files. > Each of files placed in those directories is extensively documented > by other XDG standards. > > Later some people started to abuse those directories and put there files, > that never supposed to be there. Those people don't really think about > standards or unification. Usually they just enable displaying hidden files > in their file manager, see a lot of dotfiles in a home directory and think > that "this is wrong". They start searching how to "fix" this, find xdg > basedir-spec, and use it as an excuse for moving ~/.appname files, to > ~/.config/appname, or worse, split them among .config, .local, .cache... > They don't think about /etc/xdg, they don't read FHS or other XDG standards, > they don't care about people who have to do 2-4 times more work to find and > migrate settings of selected application to another machine, they just > don't want to see dotfiles. > > But don't blame XDG standard for that, blame people abusing it > to reduce the number of dotfiles in their home directory. > > [1] https://lists.launchpad.net/unity-design/msg02114.html > -- > Serge
I have a question along these lines: Years ago when we used computers, many people used one machine -- centrally administered. Nowadays one person uses many machines 1. Simply multiple hardware 2. Multiple OSes on the same h/w 3. Other more fancy (cloud) usage Just staying with 2. for now and that too only Linux, its a good idea to map the One-me <--> Many OSes to One /home <--> Many 'slashes' (eg Debian on sda5, Debian 32 on sda7 ubuntu on sda6 etc) However there are some issues: if the software-versions in these dont match up then its precisely these XDG files that tread on each others' toes across OSes. One solution that Ive been toying with is as follows: 1. Have one real My-home partition 2. Keep /home as part of the OS-file system, so that each OS can mess around with its own 'XDG's' I wonder if people have tried this (or something similar) and any downsides -- To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/ba47c259-1d40-4203-aace-499d0218f...@googlegroups.com