Hello community, here is the log from the commit of package sabayon checked in at Wed May 17 19:02:02 CEST 2006. -------- --- GNOME/sabayon/sabayon.changes 2006-05-15 19:58:24.000000000 +0200 +++ sabayon/sabayon.changes 2006-05-17 08:30:49.000000000 +0200 @@ -1,0 +2,7 @@ +Wed May 17 08:30:32 CEST 2006 - hpj@suse.de + +- Added patch to reset Sabayon's GConf key overrides before + (optinally) applying a profile and logging the user in. Fixes + Novell bug #173929. + +------------------------------------------------------------------- New: ---- sabayon-2.12.3-reset-gconf-keys.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sabayon.spec ++++++ --- /var/tmp/diff_new_pack.JsRCec/_old 2006-05-17 19:01:57.000000000 +0200 +++ /var/tmp/diff_new_pack.JsRCec/_new 2006-05-17 19:01:57.000000000 +0200 @@ -12,7 +12,7 @@ Name: sabayon Version: 2.12.3 -Release: 21 +Release: 22 Summary: Tool to maintain user profiles in a GNOME desktop Group: System/GUI/GNOME License: GPL @@ -47,6 +47,7 @@ Patch6: sabayon-2.12.3-desktop-file.patch Patch7: sabayon-2.12.3-ooo-support.patch Patch8: sabayon-2.12.3-gnomevfs-monitoring.patch +Patch9: sabayon-2.12.3-reset-gconf-keys.patch %description Sabayon is a tool to help system administrators and users change and @@ -89,6 +90,7 @@ %patch6 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 %build rename no nb po/no.* @@ -229,6 +231,10 @@ %{python_sitelib}/%{name}/lockdown %changelog -n sabayon +* Wed May 17 2006 - hpj@suse.de +- Added patch to reset Sabayon's GConf key overrides before + (optinally) applying a profile and logging the user in. Fixes + Novell bug #173929. * Mon May 15 2006 - sbrabec@suse.cz - Do not own gconf files reserved for sysadmin (#167282). * Wed May 03 2006 - hpj@suse.de ++++++ sabayon-2.12.3-reset-gconf-keys.patch ++++++ diff -Nurp sabayon-2.12.3-pre/admin-tool/sabayon-apply sabayon-2.12.3-work/admin-tool/sabayon-apply --- sabayon-2.12.3-pre/admin-tool/sabayon-apply 2005-10-27 08:06:58.000000000 -0500 +++ sabayon-2.12.3-work/admin-tool/sabayon-apply 2006-05-17 01:14:13.000000000 -0500 @@ -19,7 +19,9 @@ # if __name__ == '__main__': + import os import sys + import shutil from sabayon import util from sabayon import userdb @@ -32,8 +34,18 @@ if __name__ == '__main__': is_sabayon_session = True sys.argv = sys.argv[:1] + sys.argv[2:] + user_name = util.get_user_name () + + if userdb.get_database().is_sabayon_controlled (user_name): + try: + shutil.rmtree (os.path.join (util.get_home_dir (), ".gconf.xml.defaults")) + shutil.rmtree (os.path.join (util.get_home_dir (), ".gconf.xml.mandatory")) + os.mkdir (os.path.join (util.get_home_dir (), ".gconf.xml.defaults")) + os.mkdir (os.path.join (util.get_home_dir (), ".gconf.xml.mandatory")) + except: + pass + if len (sys.argv) == 1: - user_name = util.get_user_name () profile_name = userdb.get_database().get_profile (user_name) if not profile_name: sys.stderr.write (_("No profile for user '%s' found\n") % user_name) diff -Nurp sabayon-2.12.3-pre/lib/userdb.py sabayon-2.12.3-work/lib/userdb.py --- sabayon-2.12.3-pre/lib/userdb.py 2005-11-10 11:03:50.000000000 -0600 +++ sabayon-2.12.3-work/lib/userdb.py 2006-05-17 01:16:34.000000000 -0500 @@ -437,6 +437,26 @@ class UserDatabase: # TODO: also list remote profiles as found in self.doc return list + def is_sabayon_controlled (self, username): + """Return True if user's configuration was ever under Sabayon's + control. + """ + profile = self.__ldap_query ("profilemap", {"u":username, "h":socket.getfqdn()}) + + if profile: + return True + + try: + query = "/profiles/user[@name='%s']" % username + user = self.doc.xpathEval(query)[0] + except: + return False + + if user: + return True + + return False + def get_users (self): """Return the list of users on the system. These should be real users - i.e. should not include system users ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun...
participants (1)
-
root@suse.de