Desktop state is neatly organized using freedesktop standards. Since components are so modular, it's trivial to replace or modify any of them using any client program you wish.
Show
![](https://hexbear.net/pictrs/image/3f187f4a-659e-47a1-bd24-17bf10df66ab.png)
This is peak "Year of the Linux Desktop" behavior
Desktop state is neatly organized using freedesktop standards. Since components are so modular, it's trivial to replace or modify any of them using any client program you wish.
This is peak "Year of the Linux Desktop" behavior
Does the base directory specification actually specify that directories in
$XDG_CONFIG_HOME
must use the full namespace & id as their name? I assumed it'd be here but I don't see it mentioned. I understand the idea behind it, to prevent conflicts between programs with the same name, but I've always really hated programs that do that because it's such a pain to remember the full path to what I'm looking for.I don't believe it is part of the spec but as a way of organizing modules it's incredibly useful in case System76 builds out a way to use third-party modules in COSMIC where you'd be able to easily switch between using a third party module or a S76 one without any fear of conflicts. S76 has said they're looking to host a COSMIC extensions store so it's looking like they're engineering around that.
The use of
.local/state
dirs is also really nice since it separates window state from configuration. On KDE Plasma, these values are not separated which doesn't make switching configurations fully reproducible.COSMIC doesn't have any technical debt or backwards compatibility concerns that KDE and GNOME have so we get to see things like this more frequently. All the learned lessons of KDE and GNOME can be readily applied to COSMIC and the fact that it's backed by a hardware manufacturer is literally what all the "Here's what Linux needs to do to succeed" dorks have been saying this whole time.