[SOLVED] Why is the desktop rendered by the file manager?
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
This applies to KDE, GNOME, and Windows. Why is the desktop (wallpaper, icons, some times the taskbar) shown by the file manager ( we have all heard about the reason Nemo was made, and all have had explorer.exe crash at some point)? It just seems like something the window manager should handle.
Why do I have a Desktop Directory?
I assume you are referring to a directory called "Desktop", or something like that, which you have in your home folder?
There are a few places on a GNU/Linux system where user data is stored:
Code:
/etc is for global configurations which will not be changed very often, such as fstab or the network settings. This directory can not be edited by normal users.
/var is for global configuration and data files which are expected to change often, such as log files and high scores for games. Some of the files here are user-writable
/home is for all the individual user data.
All of this is described in the Unix File Hierarchy Standard.
So, your home directory has to contain the information about your desktop, and if it's there, your File Manager will show it.
But why isn't it a hidden directory, like all those personal config files (.bashrc, .vim, .xmonad, etc)?
Why should it be? Having a visible directory makes stuff, like manually tweaking your icons, a lot easier.
If this really bothers you, and you're using KDE, go to System Settings->About Me->Paths and change the name of your Desktop directory to .Desktop (note the dot in front). Then rename the desktop directory to that and you will never have to see it again.
My best guess would be that all of the functionality required for the desktop (launchers, files in that folder, etc.) is essentially the same as that for a file manager, so it followed to have the file manager handle the desktop, rather than writing a whole new application.
At least this situation exists in DEs where the file manager is already in use for other purposes.
Most WMs do not handle the desktop at all, and would probably need extra code the author is not willing to deal with.
In fact, KDE's desktop is not rendered by its file manager, neither in KDE3, nor in KDE4. In KDE3 you had Konqueror as default file manager and kdesktop as desktop app. In KDE4 you have Dolphin as default file manager and plasma-desktop as desktop workspace.
Quote:
It just seems like something the window manager should handle.
Wrong, Window Manager should only Manage Windows, which is what most WMs are actually doing: KWin, XFWM, metacity, compiz, etc.
As for why Windows and GNOME use their file managers to render desktop directory contents... well, it's natural to show files in file manager, and adding a wallpaper to it is almost the only thing you need for having desktop.
The taskbar is rendered by filemanager only in Windows AFAICT. In GNOME you have gnome-panel, in KDE you have kicker(KDE3) or plasma(KDE4), in XFCE you have xfce4-panel, etc. .
Of course there are some examples of mixing functionalities, e.g. fvwm95 which gives you taskbar and manages windows, but this is more an exception than a rule.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.