--- sabayon-2.27.91.orig/debian/sabayon.postinst +++ sabayon-2.27.91/debian/sabayon.postinst @@ -0,0 +1,18 @@ +#!/bin/sh + +set -e + +if [ "$1" = "configure" ] ; then + if ! getent group sabayon-admin >/dev/null; then + groupadd --system sabayon-admin + fi + + if ! getent passwd sabayon-admin >/dev/null; then + useradd --system --home /var/run/sabayon-admin \ + -c "Sabayon user" --gid sabayon-admin sabayon-admin + mkdir -p /var/run/sabayon-admin + chown sabayon-admin:sabayon-admin /var/run/sabayon-admin + fi +fi + +#DEBHELPER# --- sabayon-2.27.91.orig/debian/changelog +++ sabayon-2.27.91/debian/changelog @@ -0,0 +1,446 @@ +sabayon (2.27.91-0ubuntu1) karmic; urgency=low + + * New upstream release + * sabayon-admin user and group now created with --system (LP: 416998) + * Profiles now save file modes + * Crashers fixed in paneldelegate.py + * Bad formatting strings fixed in mozillasource.py + + -- Scott Balneaves Tue, 25 Aug 2009 23:34:31 -0500 + +sabayon (2.27.0-0ubuntu1) karmic; urgency=low + + * New upstream release (LP: #411864) + - Sabayon now uses Xephyr instead of Xnest for its child session. + - Sabayon now passes the DEBUG_WHILE_IN_SABAYON environment variable + untouched to all its child processes. + - For debugging purposes, Sabayon no longer eats the stderr output from its + child processes. + - Fix file monitoring (Sayamindu Dasgupta) - bgo#542604 + - Don't crash if XAUTHLOCALHOSTNAME is not set (Tomas Bzatek) - bgo#576440 + - Use gobject.timeout_add_seconds() if possible (Debarshi Ray) - bgo#564405 + - Fix monitoring and saving of panel applets (Sayamindu Dasgupta, + Federico Mena Quintero) + - Ignore .gvfs in user profiles (Federico Mena Quintero) + - New and updated Translations + * debian/control.in + - build-dep on xserver-xephyr instead of xnest. + - dep on xserver-xephyr instead of xnest. + + -- Christophe Sauthier Tue, 11 Aug 2009 12:56:14 +0200 + +sabayon (2.25.0-0ubuntu1) karmic; urgency=low + + * New upstream release: (LP: #405309) + - Port from gnome-vfs to GIO (Evan Briones, Andre Klapper) - bgo#527541 + - Put XAUTHLOCALHOSTNAME in the child session's environment so + it will run (Michael Meeks) - bnc#471897 + - Ignore .pulse to avoid replicating PulseAudio data (Federico Mena) + - String fixes (Philip Withnall) - bgo#528253 + - New and updated Translations + * debian/watch + - also look for unstable version + * debian/control + - build-dep on python-gobject-dev >= 2.15.0 + - build-dep on python-xdg + + -- Andreas Moog Mon, 27 Jul 2009 15:59:43 +0200 + +sabayon (2.22.1-0ubuntu2) jaunty; urgency=low + + * New change rebuild for python2.6. + + -- Matthias Klose Wed, 25 Feb 2009 12:52:56 +0000 + +sabayon (2.22.1-0ubuntu1) intrepid; urgency=low + + * New upstream version: + Fixes: + - Improve login performance with sabayon running + + -- Sebastien Bacher Tue, 23 Sep 2008 10:25:30 +0200 + +sabayon (2.22.0-0ubuntu4) intrepid; urgency=low + + * Rebuild to get rid of libffi4 (LP: #245376) + + -- Pedro Fragoso Fri, 04 Jul 2008 03:14:47 +0100 + +sabayon (2.22.0-0ubuntu3) hardy; urgency=low + + * whoops, remove accidentially added ./sig file + + -- Oliver Grawert Mon, 21 Apr 2008 21:13:19 +0200 + +sabayon (2.22.0-0ubuntu2) hardy; urgency=low + + * fix .desktop file harder, .desktop.in is generated from .desktop.in.in now + so the added gksu call gets overwritten during build. (LP: #219790) + + -- Oliver Grawert Mon, 21 Apr 2008 20:59:07 +0200 + +sabayon (2.22.0-0ubuntu1) hardy; urgency=low + + * New upstream release (LP: #201232) + - Don't create duplicated files in profile zipfiles (Sayamindu Dasgupta, Federico Mena) + - Fix typos in the mozilla_bookmarks module (Johnny Robeson) + - Updated support for Gentoo (Johnny Robeson) + - Support Bugzilla in .desktop file (Johnny Robeson) + - Back to not using gnomesu in .desktop file (Johnny Robeson) + * debian/patches/01_desktop.patch: Updated + + -- Pedro Fragoso Tue, 11 Mar 2008 23:09:37 +0000 + +sabayon (2.21.0-0ubuntu1) hardy; urgency=low + + * New upstream release (LP: #184703) + * debian/control{.in}; + - Bump to Standards-Version 3.7.3 + - Added Homepage + * debian/patches; + - 02_script-not-executable: dropped, fixed upstream + - 04_ignore_locale_errors: updated + - 05_fix_non_profile_login: updated + + -- Pedro Fragoso Mon, 21 Jan 2008 00:09:18 +0000 + +sabayon (2.20.1-0ubuntu1) gutsy; urgency=low + + * New upstream version + - update of the various debian/patches/ files to match the new revision + + -- Christophe Sauthier Thu, 20 Sep 2007 15:20:13 +0200 + +sabayon (2.19.2-0ubuntu2) gutsy; urgency=low + + * Added an option, -n, --no-profile-error. If set, then no profile existing + returns a 1, failing the login. Default is unset, returning 0 if no + profile exists. + Closes LP: #38410 + + -- Scott Balneaves Fri, 07 Sep 2007 10:05:30 -0500 + +sabayon (2.19.2-0ubuntu1) gutsy; urgency=low + + * New upstream version: + Changes: + - New icon for Sabayon courtesy of Alberto Ruiz and Andreas Nilsson. + - Lots of fixes! + Fixes: + - Fix "--help" for sabayon-apply and sabayon-session + - Run gtk-update-icon-cache + - Add missing imports to the Python files + - Update session paths for openSUSE + - Add some directories to ignore + - Convert filenames to UTF-8 for display + - Typo fixes in strings + - Fix the Categories in the .desktop file + Translators + * debian/patches/03_admin_log_config_crash.patch: + - dropped, fixed with the new version + + -- Sebastien Bacher Thu, 16 Aug 2007 17:11:11 +0200 + +sabayon (2.19.1-0ubuntu2) gutsy; urgency=low + + * debian/patches/03_admin_log_config_crash.patch: Set + admin_log_config_filename earlier (LP: #127165). Import sabayon.config. + * debian/patches/04_ignore_locale_errors.patch: Catch and ignore + exceptions from locale.setlocale. + + -- Colin Watson Fri, 20 Jul 2007 19:17:03 +0100 + +sabayon (2.19.1-0ubuntu1) gutsy; urgency=low + + * New upstream release. + * debian/patches/01_desktop.patch: Updated. + + -- Christoph Maerz Wed, 18 Jul 2007 14:45:08 +0200 + +sabayon (2.18.1-1) unstable; urgency=low + + [ Alan Baghumian ] + * New upstream release (Closes: #416719). + - Many installation and build system fixes, including fixes + for 64-bit platforms + - Better localization + - Temporary fix to work on distributions which don't have the + xdg.DesktopEntry module for Python + - Be as lenient as we used to be while committing the changes + in a profile, instead of aborting immediately + - API reference: http://sayamindu.randomink.org/sabayon_docs/ + - Scripting Sabayon with Python: http://live.gnome.org/PythonSabayon + * Updated 01_desktop.patch + * Updated debian/control + - Added myself as co- maintainer + - Added home page URL + - Added autotools-dev to build-deps + - Dropped adduser from deps + * Updated debian/copyright + - Minor clean-ups + * Updated debian/watch + - Only catch stable releases + * Updated debian/post* scripts + - Used useradd, groupadd and userdel + * Updated debian/rules + - Dropped dh_python call + + [ Loic Minier ] + * Depend on passwd for useradd/userdel and groupadd. + * Fix chown usage in postrm. + * Depend on python-glade2; Ubuntu #43700. + * Wrap build-deps and deps. + + -- Loic Minier Tue, 24 Apr 2007 13:36:33 +0200 + +sabayon (2.12.4-4) unstable; urgency=low + + * Add a get-orig-source target to retrieve the upstream tarball. + * Depend on python-gamin instead of python2.4-gamin. + + -- Loic Minier Fri, 19 Jan 2007 21:25:56 +0100 + +sabayon (2.12.4-3) unstable; urgency=high + + * Depend on gdm; closes: #402607. + * Fix changelog of 2.12.4-2 to mention new patch, 02_script-not-executable. + + -- Loic Minier Sat, 16 Dec 2006 11:10:44 +0100 + +sabayon (2.12.4-2) unstable; urgency=low + + * Upload in unstable (Closes: Bug#315891) + * Add basic manpages for sabayon and sabayon-apply + * New patch, 02_script-not-executable, to make lintian happy with respect to + file permissions in Python scripts with a shebang. + + -- Cédric Delfosse Sun, 19 Nov 2006 15:17:46 +0100 + +sabayon (2.12.4-1) experimental; urgency=low + + * Initial import from Ubuntu. + * Set Cédric Delfosse as Maintainer. + * Update patch 01_desktop to use gksu which might or might not use gksudo; + depend on gksu. + * Bump up Standards-Version to 3.7.2. + * Bump up Debhelper compatibility level to 5. + * Depend on adduser since the postinst creates an user. + * Update FSF address and usptream URL in copyright. + * Include CDBS' utils. + * Cleanups. + * Pass --disabled-password to adduser; delgroup on purge. + * Comply with new Python policy. + - Set Python compatibility level to 2. + - Bump up debhelper build-dep to >= 5.0.37.2. + - Build-depend on python-support (>= 0.3). + - Add XB-Python-Version to sabayon. + - Set XS-Python-Version to >= 2.4. + - Remove now useless *.pyc removal code. + * List copyright holders... + * Add a TODO.Debian with items suggested by Josselin Mouette which we should + check before uploading to unstable. + * Don't ship *.a and *.la files. + + -- Loic Minier Thu, 28 Sep 2006 18:33:04 +0200 + +sabayon (2.12.4-0ubuntu1) edgy; urgency=low + + * New upstream release: + - Features: + - Add support for Frugalware Linux + - Fixes: + - distribute schema + - handle new Xsession path in Fedora Core 5 + - Remove unneeded #! in python files + * debian/control.in: + - Move python2.4-* Depends to python-*. + + -- Daniel Holbach Fri, 28 Jul 2006 00:46:29 +0200 + +sabayon (2.12.3-0ubuntu3) dapper; urgency=low + + * debian/control.in: + - remove duplicate xnest Depends. (Malone: #39106) + + -- Daniel Holbach Fri, 28 Apr 2006 16:40:33 +0200 + +sabayon (2.12.3-0ubuntu2) dapper; urgency=low + + * debian/control.in: + - Depends on python2.4-ldap (Ubuntu: #31882) + + -- Sebastien Bacher Sun, 19 Feb 2006 16:18:44 +0100 + +sabayon (2.12.3-0ubuntu1) dapper; urgency=low + + * New upstream release: + - Detect location of Xnest automatically instead of hardcoding + - Translators: Josep Puigdemont (ca), Lukas Novotny (cs), Adam Weinberger + (en_CA), Francisco Javier F. Serrador (es), Ilkka Tuohela (fi), Ignacio + Casal Quinteiro (gl), Ankit Patel (gu), Gabor Kelemen (hu), Takeshi + AIHANA (ja), Žygimantas Beručka (lt), Kjartan Maraas (nb), Tino Meinen + (nl), Kjartan Maraas (no), Amanpreet Singh Alam (pa), Слободан Д. + Средојевић (sr), Theppitak Karoonboonyanan (th), Clytie Siddall (vi), + Funda Wang (zh_CN), Chao-Hsiung Liao (zh_HK), Chao-Hsiung Liao (zh_TW) + * debian/control.in: + - added xnest to Depends and Build-Depends. + + -- Daniel Holbach Tue, 31 Jan 2006 19:08:18 +0100 + +sabayon (2.12.2-0ubuntu1) dapper; urgency=low + + * New upstream version: + - LDAP support + - Update docs + - Mandriva support + - SUSE support + - Handle file deletes + + -- Sebastien Bacher Thu, 17 Nov 2005 15:02:39 +0100 + +sabayon (2.12.1-0ubuntu1) dapper; urgency=low + + * New upstream version: + The profile format has changed in this version, so old profiles are not + compatible. + . + Features + - New menu item "Enforce Mandatory" lets you change mandatory settings + - Backup files are ignored by default + - Lockdown settings editor, based on Pessulus + - Better handling of panel lauchers + - Removed versioning support. Simplified UI and profile format. + Fixes + - Fix typo in session name replacement + - Handle non-existing mandatory or default gconf dirs + - Make file source apply not be recorded as changes + - Handle // and other comments in strings in mozilla source + - Work with remote X displays + - Fix mozilla source handling of multiple files + Misc + - Find pygtk even if installed in non-default directory + - Better window titles (Ubuntu: #13838) + - Moved ~/.profile_cache to ~/.sabayon/profile_cache + - SABAYON_DEBUG=all now sets a full mask + * debian/patches/02_typo.patch: + - fixed with the new version. + + -- Sebastien Bacher Mon, 7 Nov 2005 11:57:38 -0500 + +sabayon (2.12.0-0ubuntu1) dapper; urgency=low + + * New upstream version: + - Ignore changes to .esd_auth. + - Allow session name to be different between distros. + - Don't modify parent's environ when launching session. + * debian/patches/02_typo.patch: + - fix a typo to the session name. + + -- Sebastien Bacher Thu, 20 Oct 2005 15:34:39 +0200 + +sabayon (2.11.90-0ubuntu5) breezy; urgency=low + + * debian/control.in: + - the package is "Architecture: any" (Ubuntu: #13777). + + -- Sebastien Bacher Sat, 20 Aug 2005 23:35:54 +0200 + +sabayon (2.11.90-0ubuntu4) breezy; urgency=low + + * Rebuild with the new cairo version + + -- Sebastien Bacher Thu, 18 Aug 2005 17:22:54 +0000 + +sabayon (2.11.90-0ubuntu3) breezy; urgency=low + + * debian/control.in: + - fixed the Build-Depends. + + -- Sebastien Bacher Thu, 18 Aug 2005 10:59:37 +0200 + +sabayon (2.11.90-0ubuntu2) breezy; urgency=low + + * debian/control.in: + - fixed the Build-Depends. + + -- Sebastien Bacher Wed, 17 Aug 2005 21:42:36 +0200 + +sabayon (2.11.90-0ubuntu1) breezy; urgency=low + + * New upstream version: + Features: + - Embed the session in a GTK+ window with menu and status bars. + - Move the changes window out of the session. + - No spew of changes at session start with GNOME 2.12. + Fixes + - Allow ignoring changes to specific GConf keys. + - Fix weirdness with window stacking order. + - Support shell style globs in ignore lists. + - Fix issue with sabayon-apply and profile names containing spaces. + - Make closing the save confirm window act like cancel. + - Fix "Clear History" in the details window. + - Prompt for confirmation when closing the details window. + - Correctly parse user's full name from GECOS info. + * debian/control.in: + - updated the Build-Depends. + + -- Sebastien Bacher Tue, 2 Aug 2005 10:28:52 +0200 + +sabayon (0.18-0ubuntu1) breezy; urgency=low + + * New upstream version: + - allow profiles to be downloaded using HTTP. + - allow the users database to be remote too. + - add a dialog for associating profiles with users. + - re-work the layout of the profiles dialog. + - support for Firefox bookmarks. + - actually lookup to apply the profile from the users database. + * debian/README.Debian: + - not required, the new version has a dialog to associate the profiles. + + -- Sebastien Bacher Wed, 18 May 2005 21:23:30 +0200 + +sabayon (0.18-1) breezy; urgency=low + + * New upstream release + + -- Sebastien Bacher Wed, 18 May 2005 21:23:26 +0200 + +sabayon (0.17cvs20050509-0ubuntu4) breezy; urgency=low + + * debian/README.Debian: + - document how use profiles. + * debian/patches/01_desktop.patch: + - fix the entry and the category. + * debian/watch: + - new. + + -- Sebastien Bacher Tue, 10 May 2005 22:05:52 +0200 + +sabayon (0.17cvs20050509-0ubuntu3) breezy; urgency=low + + * debian/control.in: + - updated the Build-Depends. + + -- Sebastien Bacher Tue, 10 May 2005 18:46:51 +0200 + +sabayon (0.17cvs20050509-0ubuntu2) breezy; urgency=low + + * debian/60sabayon_apply: + - apply the profile. + + -- Sebastien Bacher Tue, 10 May 2005 12:33:37 +0200 + +sabayon (0.17cvs20050509-0ubuntu1) breezy; urgency=low + + * CVS package: + - fix a locking issue. + + -- Sebastien Bacher Mon, 9 May 2005 19:22:13 +0200 + +sabayon (0.17-0ubuntu1) breezy; urgency=low + + * Initial version. + + -- Sebastien Bacher Fri, 6 May 2005 16:54:16 +0200 + --- sabayon-2.27.91.orig/debian/sabayon-apply.8 +++ sabayon-2.27.91/debian/sabayon-apply.8 @@ -0,0 +1,18 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH SABAYON 8 "2006-11-21" +.SH NAME +sabayon-apply \- sabayon internal command +.SH DESCRIPTION +This manual page documents briefly the +.B sabayon-apply +command. +.PP +.B sabayon-apply +is a program used internally by +.B sabayon +and you shouldn't have to use it. +.SH OPTIONS +This program has no options. +.SH AUTHOR +This manual page was written by Cedric Delfosse , +for the Debian project (but may be used by others). --- sabayon-2.27.91.orig/debian/TODO.Debian +++ sabayon-2.27.91/debian/TODO.Debian @@ -0,0 +1,2 @@ +* Check whether this complies with Debian's GConf layout. (idea of Joss) +* Rewrite code relying on python-gamin to use gnome-vfs instead. (idea of Joss) --- sabayon-2.27.91.orig/debian/control +++ sabayon-2.27.91/debian/control @@ -0,0 +1,49 @@ +Source: sabayon +Section: gnome +Priority: optional +XSBC-Original-Maintainer: Cédric Delfosse +Maintainer: Ubuntu Desktop Team +Uploaders: Alan Baghumian , Debian GNOME Maintainers +Homepage: http://live.gnome.org/Sabayon +Build-Depends: autotools-dev, + debhelper (>= 5.0.37.2), + cdbs, + gnome-pkg-tools, + python-dev (>= 2.4), + libpango1.0-dev, + libgtk2.0-dev, + python-gtk2-dev, + libxt-dev, + libxml-parser-perl, + xserver-xephyr, + python-support (>= 0.3), + python-gobject-dev (>= 2.15.0), + python-xdg +Standards-Version: 3.8.3 +XS-Python-Version: >= 2.4 + +Package: sabayon +Architecture: any +Depends: ${shlibs:Depends}, + ${python:Depends}, + ${misc:Depends}, + python-gtk2 (>= 2.5.3), + python-gnome2 (>= 2.6.0), + python-gamin, + python-libxml2, + xserver-xephyr, + gconf2 (>= 2.10.0-0ubuntu2), + python-ldap, + gksu, + gdm, + passwd, + python-glade2 +XB-Python-Version: ${python:Versions} +Description: system administration tool to manage GNOME desktop settings + Sabayon provides a sane way to edit GConf defaults and GConf mandatory keys: + the same way you edit your desktop. + . + Sabayon launches profiles in an Xnest window. Any changes you make in the + Xnest window are saved back to the profile file, which can then be applied + to user's accounts. + --- sabayon-2.27.91.orig/debian/pycompat +++ sabayon-2.27.91/debian/pycompat @@ -0,0 +1 @@ +2 --- sabayon-2.27.91.orig/debian/sabayon.manpages +++ sabayon-2.27.91/debian/sabayon.manpages @@ -0,0 +1,3 @@ +debian/sabayon.8 +debian/sabayon-apply.8 + --- sabayon-2.27.91.orig/debian/rules +++ sabayon-2.27.91/debian/rules @@ -0,0 +1,18 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/simple-patchsys.mk +include /usr/share/cdbs/1/class/gnome.mk +include /usr/share/cdbs/1/rules/utils.mk +include /usr/share/gnome-pkg-tools/1/rules/uploaders.mk +-include /usr/share/gnome-pkg-tools/1/rules/gnome-get-source.mk + +DEB_CONFIGURE_EXTRA_FLAGS += \ + --with-prototype-user=sabayon-admin \ + --with-distro=debian + +binary-install/sabayon:: + find debian/sabayon -name '*.a' -exec rm -f '{}' \; + find debian/sabayon -name '*.la' -exec rm -f '{}' \; + dh_pysupport + --- sabayon-2.27.91.orig/debian/sabayon.8 +++ sabayon-2.27.91/debian/sabayon.8 @@ -0,0 +1,13 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH SABAYON 8 "2006-11-21" +.SH NAME +sabayon \- system administration tool to manage GNOME desktop settings +.SH DESCRIPTION +This manual page documents briefly the +.B sabayon +commands. +.SH OPTIONS +This program has no options. +.SH AUTHOR +This manual page was written by Cedric Delfosse , +for the Debian project (but may be used by others). --- sabayon-2.27.91.orig/debian/sabayon.postrm +++ sabayon-2.27.91/debian/sabayon.postrm @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +if [ "$1" = "purge" ] ; then + if [ -x /usr/sbin/userdel ] ; then + userdel -r sabayon-admin || true + fi + if [ -x /usr/sbin/groupdel ] ; then + groupdel sabayon-admin || true + fi +fi + +#DEBHELPER# --- sabayon-2.27.91.orig/debian/watch +++ sabayon-2.27.91/debian/watch @@ -0,0 +1,2 @@ +version=2 +http://ftp.gnome.org/pub/gnome/sources/sabayon/([\d\.]+)/sabayon-([\d\.]+)\.tar\.gz --- sabayon-2.27.91.orig/debian/copyright +++ sabayon-2.27.91/debian/copyright @@ -0,0 +1,32 @@ +This package was debianized by Sebastien Bacher on +Mon, 21 Feb 2005 11:20:18 +0100. + +It was downloaded from http://ftp.gnome.org/pub/GNOME/sources/sabayon/ + +Copyright: + Copyright (C) 2005 Red Hat, Inc. + Copyright (C) 2005 Vincent Untz + Copyright (C) 2004 GNOME Foundation + +Upstream Authors: Daniel Veillard + John Dennis + Mark McLoughlin + +License: + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU General +Public License can be found in `/usr/share/common-licenses/GPL'. --- sabayon-2.27.91.orig/debian/control.in +++ sabayon-2.27.91/debian/control.in @@ -0,0 +1,49 @@ +Source: sabayon +Section: gnome +Priority: optional +XSBC-Original-Maintainer: Cédric Delfosse +Maintainer: Ubuntu Desktop Team +Uploaders: Alan Baghumian , @GNOME_TEAM@ +Homepage: http://live.gnome.org/Sabayon +Build-Depends: autotools-dev, + debhelper (>= 5.0.37.2), + cdbs, + gnome-pkg-tools, + python-dev (>= 2.4), + libpango1.0-dev, + libgtk2.0-dev, + python-gtk2-dev, + libxt-dev, + libxml-parser-perl, + xserver-xephyr, + python-support (>= 0.3), + python-gobject-dev (>= 2.15.0), + python-xdg +Standards-Version: 3.8.3 +XS-Python-Version: >= 2.4 + +Package: sabayon +Architecture: any +Depends: ${shlibs:Depends}, + ${python:Depends}, + ${misc:Depends}, + python-gtk2 (>= 2.5.3), + python-gnome2 (>= 2.6.0), + python-gamin, + python-libxml2, + xserver-xephyr, + gconf2 (>= 2.10.0-0ubuntu2), + python-ldap, + gksu, + gdm, + passwd, + python-glade2 +XB-Python-Version: ${python:Versions} +Description: system administration tool to manage GNOME desktop settings + Sabayon provides a sane way to edit GConf defaults and GConf mandatory keys: + the same way you edit your desktop. + . + Sabayon launches profiles in an Xnest window. Any changes you make in the + Xnest window are saved back to the profile file, which can then be applied + to user's accounts. + --- sabayon-2.27.91.orig/debian/sabayon.install +++ sabayon-2.27.91/debian/sabayon.install @@ -0,0 +1 @@ +debian/60sabayon_apply /etc/X11/Xsession.d --- sabayon-2.27.91.orig/debian/compat +++ sabayon-2.27.91/debian/compat @@ -0,0 +1 @@ +5 --- sabayon-2.27.91.orig/debian/60sabayon_apply +++ sabayon-2.27.91/debian/60sabayon_apply @@ -0,0 +1,9 @@ +# +# Apply the Sabayon profile for the current user (if any) +# + +if [ "x$DISABLE_SABAYON_XINITRC" = "x" ] ; then + if [ -x /usr/sbin/sabayon-apply ] ; then + /usr/sbin/sabayon-apply + fi +fi --- sabayon-2.27.91.orig/debian/patches/05_extract_fix.patch +++ sabayon-2.27.91/debian/patches/05_extract_fix.patch @@ -0,0 +1,23 @@ +diff -Nur -x '*.orig' -x '*~' sabayon-2.27.91/lib/storage.py sabayon-2.27.91.new/lib/storage.py +--- sabayon-2.27.91/lib/storage.py 2009-08-18 13:36:35.000000000 -0500 ++++ sabayon-2.27.91.new/lib/storage.py 2009-08-25 22:29:48.000000000 -0500 +@@ -284,7 +284,8 @@ + os.makedirs (dest_dir) + + # It sucks that we lose file permissions, mtime etc. with ZIP +- file (dest_path, "w").write (zip.read (f)) ++ # file (dest_path, "w").write (zip.read (f)) ++ zip.extract(f, dir) + + def unzip_foreach (path, is_directory, data): + (zip, temp_path) = data +@@ -302,7 +303,8 @@ + os.makedirs (dest_dir) + + # It sucks that we lose file permissions, mtime etc. with ZIP +- file (abs_path, "w").write (zip.read (path)) ++ #file (abs_path, "w").write (zip.read (path)) ++ zip.extract(path, temp_path) + + self.__foreach_all (unzip_foreach, (self.zip, self.temp_path)) + --- sabayon-2.27.91.orig/debian/patches/03_paneldelegate.patch +++ sabayon-2.27.91/debian/patches/03_paneldelegate.patch @@ -0,0 +1,111 @@ +diff -Nur -x '*.orig' -x '*~' sabayon-2.27.91/lib/sources/paneldelegate.py sabayon-2.27.91.new/lib/sources/paneldelegate.py +--- sabayon-2.27.91/lib/sources/paneldelegate.py 2009-08-20 16:02:22.000000000 -0500 ++++ sabayon-2.27.91.new/lib/sources/paneldelegate.py 2009-08-20 19:41:37.000000000 -0500 +@@ -74,63 +74,19 @@ + def __init__ (self, source, delegate, id): + PanelChange.__init__ (self, source, delegate, id) + def get_short_description (self): +- # FIXME: This only works if panel object type is bonobo-applet. Are all applets bonobo-applets ? +- panel_applet = self.delegate.PanelApplet(self.delegate, self.id) +- toplevel_id = panel_applet.toplevel_id +- name = panel_applet.name +- +- panel_toplevel = self.delegate.PanelToplevel(self.delegate, toplevel_id) +- panel_orientation = panel_toplevel.orientation +- +- if panel_orientation == "top": +- return _("Applet %s added to top panel") % name +- elif panel_orientation == "bottom": +- return _("Applet %s added to bottom panel") % name +- elif panel_orientation == "left": +- return _("Applet %s added to left panel") % name +- else: +- return _("Applet %s added to right panel") % name ++ return _("Applet '%s' added" % self.id) + + class PanelAppletRemovedChange (PanelChange): + def __init__ (self, source, delegate, id): + PanelChange.__init__ (self, source, delegate, id) + def get_short_description (self): +- # FIXME: This only works if panel object type is bonobo-applet. Are all applets bonobo-applets ? +- panel_applet = self.delegate.PanelApplet(self.delegate, self.id) +- toplevel_id = panel_applet.toplevel_id +- name = panel_applet.name +- +- panel_toplevel = self.delegate.PanelToplevel(self.delegate, toplevel_id) +- panel_orientation = panel_toplevel.orientation +- +- if panel_orientation == "top": +- return _("Applet %s removed from top panel") % name +- elif panel_orientation == "bottom": +- return _("Applet %s removed from bottom panel") % name +- elif panel_orientation == "left": +- return _("Applet %s removed from left panel") % name +- else: +- return _("Applet %s removed from right panel") % name ++ return _("Applet '%s' removed" % self.id) + + class PanelObjectAddedChange (PanelChange): + def __init__ (self, source, delegate, id): + PanelChange.__init__ (self, source, delegate, id) + def get_short_description (self): +- panel_object = self.delegate.PanelObject(self.delegate, self.id) +- toplevel_id = panel_object.toplevel_id +- name = panel_object.name +- +- panel_toplevel = self.delegate.PanelToplevel(self.delegate, toplevel_id) +- panel_orientation = panel_toplevel.orientation +- +- if panel_orientation == "top": +- return _("%s added to top panel") % name +- elif panel_orientation == "bottom": +- return _("%s added to bottom panel") % name +- elif panel_orientation == "left": +- return _("%s added to left panel") % name +- else: +- return _("%s added to right panel") % name ++ return _("Object '%s' added" % self.id) + + def commit_change (self, mandatory): + # Might have to commit a launcher file +@@ -143,21 +99,7 @@ + def __init__ (self, source, delegate, id): + PanelChange.__init__ (self, source, delegate, id) + def get_short_description (self): +- panel_object = self.delegate.PanelObject(self.delegate, self.id) +- toplevel_id = panel_object.toplevel_id +- name = panel_object.name +- +- panel_toplevel = self.delegate.PanelToplevel(self.delegate, toplevel_id) +- panel_orientation = panel_toplevel.orientation +- +- if panel_orientation == "top": +- return _("%s removed from top panel") % name +- elif panel_orientation == "bottom": +- return _("%s removed from bottom panel") % name +- elif panel_orientation == "left": +- return _("%s removed from left panel") % name +- else: +- return _("%s removed from right panel") % name ++ return _("Object '%s' removed" % self.id) + + def commit_change (self, mandatory): + launcher = self.delegate.get_gconf_client ().get_string (PANEL_KEY_BASE + "/objects/" + self.id + "/launcher_location") +@@ -209,11 +151,12 @@ + toplevel_key_name, self.toplevel_id, + bonobo_iid_key_name, self.bonobo_iid) + +- applet = bonobo.activation.query("iid == '" + self.bonobo_iid + "'" ) +- for i in applet: +- for prop in i.props: +- if prop.name == "name": +- self.name = prop.v.value_string #FIXME: This probably won't return localised names ++ if self.bonobo_iid: ++ applet = bonobo.activation.query("iid == '" + self.bonobo_iid + "'" ) ++ for i in applet: ++ for prop in i.props: ++ if prop.name == "name": ++ self.name = prop.v.value_string #FIXME: This probably won't return localised names + + + --- sabayon-2.27.91.orig/debian/patches/01_desktop.patch +++ sabayon-2.27.91/debian/patches/01_desktop.patch @@ -0,0 +1,12 @@ +diff -Nur -x '*.orig' -x '*~' sabayon-2.22.0/admin-tool/sabayon.desktop.in.in sabayon-2.22.0.new/admin-tool/sabayon.desktop.in.in +--- sabayon-2.22.0/admin-tool/sabayon.desktop.in.in 2008-03-11 21:41:44.000000000 +0100 ++++ sabayon-2.22.0.new/admin-tool/sabayon.desktop.in.in 2008-04-21 20:59:01.000000000 +0200 +@@ -1,7 +1,7 @@ + [Desktop Entry] + _Name=User Profile Editor + _Comment=Establish and Edit Profiles for Users +-Exec=sabayon ++Exec=gksu sabayon + Terminal=false + Type=Application + Icon=sabayon --- sabayon-2.27.91.orig/debian/patches/02_gdk_display.patch +++ sabayon-2.27.91/debian/patches/02_gdk_display.patch @@ -0,0 +1,67 @@ +diff -Nur -x '*.orig' -x '*~' sabayon-2.27.91/lib/protosession.py sabayon-2.27.91.new/lib/protosession.py +--- sabayon-2.27.91/lib/protosession.py 2009-08-18 13:36:35.000000000 -0500 ++++ sabayon-2.27.91.new/lib/protosession.py 2009-08-23 22:54:43.000000000 -0500 +@@ -96,57 +96,20 @@ + + def find_free_display (): + def is_display_free (display_number): +- # First make sure we get CONNREFUSED connecting +- # to port 6000 + display_number +- refused = False +- sock = socket.socket (socket.AF_INET, socket.SOCK_STREAM) + try: +- sock.connect (("127.0.0.1", 6000 + display_number)) +- except socket.error, (err, errstr): +- if err == errno.ECONNREFUSED: +- refused = True +- +- sock.close () +- if not refused: ++ d = gtk.gdk.Display (":%d.0" % display_number) ++ d.close () + return False +- +- # Now make sure either that the lock file doesn't exist or +- # that the server specified in the lock file isn't running +- lock_file = "/tmp/.X%d-lock" % display_number +- if os.path.exists (lock_file): +- f = file (lock_file, "r") +- try: +- pid = int (f.read ()) +- except ValueError: +- return False +- +- process_exists = True +- try: +- os.kill (pid, 0) +- except os.error, (err, errstr): +- if err == errno.ESRCH: +- process_exists = False +- if process_exists: +- return False +- +- os.remove (lock_file) +- +- socket_file = "/tmp/.X11-unix/X%d" % display_number +- if os.path.exists (socket_file): +- os.remove (socket_file) +- +- return True ++ except RuntimeError, e: ++ return True + + display_number = 1 + while display_number < 100: + if is_display_free (display_number): +- break ++ return display_number + display_number += 1 + +- if display_number == 100: +- raise ProtoSessionError, _("Unable to find a free X display") +- +- return display_number ++ raise ProtoSessionError, _("Unable to find a free X display") + + # + # Everything beyond here gets run from sabayon-session --- sabayon-2.27.91.orig/debian/patches/04_mozillasource-dprint.patch +++ sabayon-2.27.91/debian/patches/04_mozillasource-dprint.patch @@ -0,0 +1,102 @@ +diff -Nur -x '*.orig' -x '*~' sabayon-2.27.91/lib/sources/mozillasource.py sabayon-2.27.91.new/lib/sources/mozillasource.py +--- sabayon-2.27.91/lib/sources/mozillasource.py 2009-08-19 13:52:31.000000000 -0500 ++++ sabayon-2.27.91.new/lib/sources/mozillasource.py 2009-08-23 22:49:02.000000000 -0500 +@@ -212,8 +212,7 @@ + # INI File + # + if self.is_ini_file(rel_path): +- dprint(LOG_CHANGE, "%s ini file: %s", +- dirmonitor.event_to_string(change.event), rel_path) ++ dprint(LOG_CHANGE, "%s ini file: %s", dirmonitor.event_to_string(change.event), rel_path) + self.load_profiles_ini() + + # +@@ -221,8 +220,7 @@ + # + profile = self.is_profile_file(rel_path) + if profile: +- dprint(LOG_CHANGE, "%s profile file: %s", +- dirmonitor.event_to_string(change.event), rel_path) ++ dprint(LOG_CHANGE, "%s profile file: %s", dirmonitor.event_to_string(change.event), rel_path) + + profile_file = profile.add_file(rel_path) + profile_file_type = profile_file.get_type() +@@ -406,7 +404,7 @@ + + # -------------------- + if sabayon_pref_rel_path in pref_files: +- dprint(LOG_APPLY, "extracting %s" % sabayon_pref_rel_path) ++ dprint(LOG_APPLY, "extracting %s", sabayon_pref_rel_path) + self.source.storage.extract(sabayon_pref_rel_path, self.home_dir, True) + apply_pref = JavascriptPrefsFile(self.home_dir, sabayon_pref_rel_path) + apply_pref.read() +@@ -414,7 +412,7 @@ + apply_pref = None + + if sabayon_mandatory_pref_rel_path in pref_files: +- dprint(LOG_APPLY, "extracting %s" % sabayon_mandatory_pref_rel_path) ++ dprint(LOG_APPLY, "extracting %s", sabayon_mandatory_pref_rel_path) + self.source.storage.extract(sabayon_mandatory_pref_rel_path, self.home_dir, True) + mandatory_apply_pref = JavascriptPrefsFile(self.home_dir, sabayon_mandatory_pref_rel_path) + mandatory_apply_pref.read() +@@ -424,7 +422,7 @@ + # -------------------- + + if sabayon_bookmark_rel_path in bookmark_files: +- dprint(LOG_APPLY, "extracting %s" % sabayon_bookmark_rel_path) ++ dprint(LOG_APPLY, "extracting %s", sabayon_bookmark_rel_path) + self.source.storage.extract(sabayon_bookmark_rel_path, self.home_dir, True) + apply_bookmark = BookmarksFile(self.home_dir, sabayon_bookmark_rel_path) + apply_bookmark.read() +@@ -432,7 +430,7 @@ + apply_bookmark = None + + if sabayon_mandatory_bookmark_rel_path in bookmark_files: +- dprint(LOG_APPLY, "extracting %s" % sabayon_mandatory_bookmark_rel_path) ++ dprint(LOG_APPLY, "extracting %s", sabayon_mandatory_bookmark_rel_path) + self.source.storage.extract(sabayon_mandatory_bookmark_rel_path, self.home_dir, True) + mandatory_apply_bookmark = BookmarksFile(self.home_dir, sabayon_mandatory_bookmark_rel_path) + mandatory_apply_bookmark.read() +@@ -714,8 +712,7 @@ + type = match.group(1) + key = match.group(2) + value = match.group(3) +- dprint(LOG_PARSE, "(%d:%d) key='%s' value='%s'" % +- (match.start(), match.end(), key, value)) ++ dprint(LOG_PARSE, "(%d:%d) key='%s' value='%s'", (match.start(), match.end(), key, value)) + self.prefs[key] = JavascriptPreference(type, key, value) + start = match.end() + else: +@@ -731,7 +728,7 @@ + keys = self.prefs.keys() + keys.sort() + for key in keys: +- dprint(LOG_, "%s=%s" % (key, self.prefs[key])) ++ dprint(LOG_, "%s=%s", (key, self.prefs[key])) + + + # ------ Class FirefoxProfile ------ +@@ -833,8 +830,7 @@ + + + def read(self): +- dprint(LOG_OPERATION, "FirefoxProfilesIni.read() path = %s", +- self.get_full_path(self.rel_path)) ++ dprint(LOG_OPERATION, "FirefoxProfilesIni.read() path = %s", self.get_full_path(self.rel_path)) + self.profiles = {} + + try: +@@ -1121,11 +1117,11 @@ + + def cat_file(path): + if os.path.isfile(path): +- dprint(LOG_FILE_CONTENTS, "==== %s ====" % path) ++ dprint(LOG_FILE_CONTENTS, "==== %s ====", path) + for line in open(path): + dprint(LOG_FILE_CONTENTS, line.rstrip()) + else: +- dprint(LOG_FILE_CONTENTS, "WARNING, does not exist ==== %s ====" % path) ++ dprint(LOG_FILE_CONTENTS, "WARNING, does not exist ==== %s ====", path) + + +