On Tue, 2009-09-08 at 17:58 -0400, A. Walton wrote: > I can see where the idea comes from, and it's sane from a syadmin's view, > but from the user's point of view, it's quite evil, especially when it creates > things that cannot be removed (easily or otherwise).
The implementation I have is indeed biased towards the sysadmin, but this is mostly trivial to change (a tweak in the predefined_file_should_override_user_file() function). I'm quite happy to change it to be biased towards users. My idea was this: 1. .desktop files in the directory pointed by /apps/nautilus/desktop/predefined-items-dir are scanned to see if they have an X-XDG-Is-Mandatory key. If they don't have one, they are not mandatory. 2. Those files get shown in users' desktops. 3. If a user says "hide this file", then we do the following. First, copy the .desktop file to ~/Desktop. Second, write a key "X-XDG-Is-Hidden = true" to that file. Files that have that key are not shown (unless you do Show Hidden Files). 4. If a file in the sysadmin dir has the same name as one in ~/Desktop *and* the sysadmin's file is newer than the user's, then the sysadmin's file gets shown again. This lets the sysadmin update his preconfigured files and users will see the changes; they of course have the option of hiding any file again. (3) is unfortunately not implemented yet in my patchset, but it shouldn't be hard to do. One major missing thing from my code is that ou can't drag a mandatory icon to another position. The "drag an icon" machinery sees that the icon comes from a sysadmin-owned directory, and thinks that the file is read-only and cannot be moved. I haven't hunted down exactly how this happens, to see if the "drag an icon" code needs a special case for the desktop directory, or something like that. Federico -- nautilus-list mailing list nautilus-list@gnome.org http://mail.gnome.org/mailman/listinfo/nautilus-list