diff --git a/gnome b/gnome index 637ab62..b39986a 100644 --- a/gnome +++ b/gnome @@ -1,13 +1,14 @@ #!/bin/bash # # This is not the original gnome-session but a start script -# to install some preconfiguration for GNOME2 +# to install some preconfiguration for GNOME # and some variables to check. # # For feedback on this script please use # https://bugzilla.novell.com/ # +# Define directory that we use to store migration state if test "x$XDG_CONFIG_HOME" = "x"; then XDG_CONFIG_HOME="$HOME/.config" fi @@ -19,67 +20,55 @@ else IS_LIVE_IMAGE="no" fi -# openSUSE <= 10.3 and SLED <= 10 modified the user GConf database to change background. -# New openSUSE obsoletes this mechanism by branding and gnome-wp-list. -# We still have to detect old modifications in the user database and remove them. -# This code may disappear after SLED 12. -# -# We also need to fix the case where the user explicitly configured the -# background to what used to be the default background; for openSUSE <= 11.3, -# the filename was specific to each version of openSUSE. -if test "$IS_LIVE_IMAGE" != "yes" -a ! -f "$SUSE_DIR/gnome-11.4-wallpaper-migrated"; then - PICTURE_FILENAME=$(gconftool-2 --get --ignore-schema-defaults /desktop/gnome/background/picture_filename 2>/dev/null) - PICTURE_OPTIONS=$(gconftool-2 --get --ignore-schema-defaults /desktop/gnome/background/picture_options 2>/dev/null) - if test -n "$PICTURE_OPTIONS" -a -n "$PICTURE_FILENAME" -a \ - "$PICTURE_OPTIONS" != "none" -a \ - ! -e "$PICTURE_FILENAME" -a \( \ - "$PICTURE_FILENAME" != "${PICTURE_FILENAME#/usr/share/wallpapers/default}" -o \ - "$PICTURE_FILENAME" = "/usr/share/wallpapers/openSUSE112-1600x1200.png" -o \ - "$PICTURE_FILENAME" = "/usr/share/backgrounds/daft/daft.xml" -o \ - "$PICTURE_FILENAME" = "/usr/share/wallpapers/openSUSE113-1600x1200.jpg" -o \ - "$PICTURE_FILENAME" = "/usr/share/backgrounds/IK/IK.xml" \ - \); then - gconftool-2 --unset /desktop/gnome/background/picture_filename - gconftool-2 --unset /desktop/gnome/background/picture_options - fi - - mkdir -p -m 0700 "$XDG_CONFIG_HOME" - mkdir -p "$SUSE_DIR" - touch "$SUSE_DIR/gnome-11.4-wallpaper-migrated" -fi +# Use gnome-applications.menu instead of applications.menu: its +# structure is more appropriate. +export XDG_MENU_PREFIX=gnome- # Some actions that are specific to the LiveCD if test "$IS_LIVE_IMAGE" = "yes" ; then - # Install the live install desktop icon this way until there is a better - # solution. The actual files reside in gnome2-SuSE the - # /usr/share/applications/YaST2/live-installer.desktop exists on a live - # install system - if [ -e .config/user-dirs.dirs ]; then - . .config/user-dirs.dirs - else - XDG_DESKTOP_DIR="$HOME/Desktop" - fi - mkdir -p $XDG_DESKTOP_DIR - cp -u /usr/share/applications/YaST2/live-installer.desktop $XDG_DESKTOP_DIR/ + ## Make live installer icon more visible. Note that we can't simply put it on + ## the desktop, since the desktop is not managed by nautilus anymore (by + ## default) - # setup live install to not have a lock-enabled screensaver - gconftool-2 --set /apps/gnome-screensaver/lock_enabled --type=bool "false" + if test -f /etc/xdg/menus/${XDG_MENU_PREFIX}applications.menu; then + # Add live installer to the system tools menu (this is nice to have, and also + # required for the favorite app change below) + mkdir -p -m 0700 "${XDG_CONFIG_HOME}" + mkdir "${XDG_CONFIG_HOME}/menus" + cat > "${XDG_CONFIG_HOME}/menus/${XDG_MENU_PREFIX}applications.menu" << EOF + + Applications + /etc/xdg/menus/${XDG_MENU_PREFIX}applications.menu + + System + + YaST2-live-installer.desktop + + + +EOF - # setup live install to not start updater-applet - if [ -e /usr/share/gnome/autostart/gpk-update-icon.desktop ] ; then - mkdir -p ~/.config/autostart - cp /usr/share/gnome/autostart/gpk-update-icon.desktop ~/.config/autostart - echo "X-GNOME-Autostart-enabled=false" >> ~/.config/autostart/gpk-update-icon.desktop + # Add live installer as favorite application to gnome-shell dash + FAVORITES=`gsettings get org.gnome.shell favorite-apps` + if test $? -eq 0; then + FAVORITES=`echo ${FAVORITES} | sed "s:^\[:\['YaST2-live-installer.desktop', :"` + gsettings set org.gnome.shell favorite-apps "${FAVORITES}" + fi + + # FIXME: we need to add a launcher for gnome-panel (fallback mode) fi + + ## Other tweaks + + # setup session to not have a lock-enabled screensaver + gsettings set org.gnome.desktop.screensaver lock-enabled false + # setup session to not care about updates + gsettings set org.gnome.settings-daemon.plugins.updates active false fi # Uncomment after SLED12, remove after SLED14: #rm -f ~/.skel/gnome2-run ~/.skel/gnome2-run-9.2 ~/.skel/sled10-run -# Use gnome-applications.menu instead of applications.menu: its -# structure is more appropriate. -export XDG_MENU_PREFIX=gnome- - # TODO: look for a better fix for 11.1 export SDL_AUDIODRIVER=pulse if test -f /etc/alsa-pulse.conf ; then diff --git a/gnome-session-3.0.2.tar.bz2 b/gnome-session-3.0.2.tar.bz2 deleted file mode 100644 index 7ab9a1c..0000000 --- a/gnome-session-3.0.2.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4801a0cfdf351a1184780cc1c2bdd5cea6cd1ad31505d5fa8de4e56aa766ab96 -size 805690 diff --git a/gnome-session-3.1.3.tar.bz2 b/gnome-session-3.1.3.tar.bz2 new file mode 100644 index 0000000..3dc476a --- /dev/null +++ b/gnome-session-3.1.3.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cdaa1f5edf2f3efad63ca1de3c5ab671e7607370f35afb6ba5259cbeba64b19 +size 811215 diff --git a/gnome-session.changes b/gnome-session.changes index 0a041ab..474db79 100644 --- a/gnome-session.changes +++ b/gnome-session.changes @@ -1,3 +1,70 @@ +------------------------------------------------------------------- +Thu Jul 7 12:42:34 CEST 2011 - vuntz@opensuse.org + +- Update /usr/bin/gnome script for GNOME 3: + + Remove the migration code for the desktop background: this is + based on gconf, and the setting moved to GSettings. Since this + setting is not migrated from gconf anyway, the user will get + the default background. + + Do not copy live-installer.desktop on the desktop anymore: the + desktop is not managed by nautilus by default, so it's useless + to put it there. Instead, create a custom applications.menu to + add the installer to System Tools, and add the installer as + favorite application in gnome-shell. Fix part of bnc#702671. + + Disable the lock setting of the screensaver with GSettings + instead of gconf. + + Disable the check for software updates with GSettings, instead + of disabling an autostart application (that doesn't exist + anymore). + + Generally, this should fix bnc#687778. + +------------------------------------------------------------------- +Mon Jul 4 18:21:36 CEST 2011 - vuntz@opensuse.org + +- Update to version 3.1.3: + + Session Manager + - Fix build warnings + + Capplet + - Fix build warning + + Misc + - Modernize build system a bit + - Remove artificial librsvg dependency + + Updated translations. +- Remove now unneeded pkgconfig(librsvg-2.0) BuildRequires. + +------------------------------------------------------------------- +Sat Jul 2 11:37:00 CEST 2011 - vuntz@opensuse.org + +- Split out default-session and fallback-session subpackages, that + contain the definitions of the upstream default and fallback + sessions for GNOME. They have Requires matching the session + definitions. +- Note that we have a fallback-session Recommends in + default-session, since by definition, the default session could + fallback to the fallback session. We use a Recommends instead of + a Requires, since people might want to remove it. +- Remove gnome-panel, gnome-settings-daemon, metacity, nautilus, + notification-daemon Requires for the main package, as those were + only used to define the GNOME session. Instead, add a Requires on + the default-session subpackage. +- Move the gnome-session-check-accelerated and + gnome-session-check-accelerated-helper tools to the core + subpackage, as session definitions might use those helpers. +- As a side-effect, these changes should fix bnc#697574. + +------------------------------------------------------------------- +Tue Jun 14 14:42:30 CEST 2011 - dimstar@opensuse.org + +- Update to version 3.1.2: + + Fix race condition in idle monitor + + Consistently use Restart and not Reboot + + Fix crashes by not assuming XSMP clients set the SmProgram + property + + Make the acceleration checks refuse to work in zaphod mode + + Update libegg code + + Code cleanups + + Updated translations. + ------------------------------------------------------------------- Tue May 24 09:08:30 CEST 2011 - dimstar@opensuse.org diff --git a/gnome-session.spec b/gnome-session.spec index 6a808b5..18ec7d2 100644 --- a/gnome-session.spec +++ b/gnome-session.spec @@ -18,13 +18,13 @@ Name: gnome-session -Version: 3.0.2 +Version: 3.1.3 Release: 1 License: GPLv2+ Summary: Session Tools for the GNOME Desktop Url: http://www.gnome.org Group: System/GUI/GNOME -Source: %{name}-%{version}.tar.bz2 +Source: http://download.gnome.org/sources/gnome-session/3.1/%{name}-%{version}.tar.bz2 Source1: gnome Source2: gnome.desktop # Temporarly needed until we get upstream to ship the right icon for suspend @@ -52,7 +52,6 @@ BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(ice) -BuildRequires: pkgconfig(librsvg-2.0) BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(upower-glib) BuildRequires: pkgconfig(xau) @@ -61,14 +60,7 @@ BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(xtst) Requires: %{name}-core = %{version} -# Programs that are in the default session (we use Requires since Recommends -# might make it possible for some people to get an empty gnome-session, and -# give the impression that it's broken) -Requires: gnome-panel -Requires: gnome-settings-daemon -Requires: metacity -Requires: nautilus -Requires: notification-daemon +Requires: %{name}-default-session = %{version} Recommends: %{name}-lang Obsoletes: gnome-core # There's no splash anymore, so no branding package. @@ -83,6 +75,30 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build This package provides the basic session tools, like session management functionality, for the GNOME Desktop. +%package default-session +License: GPLv2+ +Summary: Session Manager for GNOME -- Default GNOME Session +Requires: %{name} = %{version} +Requires: gnome-shell +Requires: gnome-settings-daemon +Recommends: %{name}-fallback-session + +%description default-session +This package contains the definition of the default GNOME session. + +%package fallback-session +License: GPLv2+ +Summary: Session Manager for GNOME -- Fallback GNOME Session +Requires: %{name} = %{version} +Requires: gnome-panel +Requires: gnome-settings-daemon +Requires: metacity +Requires: notification-daemon + +%description fallback-session +This package contains the definition of the fallback GNOME session, +which is used when the graphics are not hardware-accelerated. + %package core License: GPLv2+ Summary: Session Manager for GNOME -- Minimal Version @@ -94,9 +110,9 @@ Requires: hicolor-icon-theme %glib2_gsettings_schema_requires %description core -This packages contain a minimal version of gnome-session, that can be used for -specific cases. The gnome-session package is needed for a fully functional -GNOME desktop. +This package contains a minimal version of gnome-session, that can be +used for specific cases. The gnome-session package is needed for a fully +functional GNOME desktop. %lang_package %prep @@ -159,25 +175,30 @@ rm -rf %{buildroot} %files %defattr (-, root, root) %{_bindir}/gnome +%{_datadir}/xsessions/gnome.desktop +# gnome-session-properties %{_bindir}/gnome-session-properties -%{_datadir}/applications/*.desktop -%{_datadir}/xsessions/*.desktop -%{_datadir}/icons/hicolor/*/*/*.* -%exclude %{_datadir}/icons/hicolor/scalable/apps/gnome-session-sleep.svg +%{_datadir}/applications/session-properties.desktop +%{_datadir}/icons/hicolor/*/apps/session-properties.* %{_datadir}/gnome-session/session-properties.ui -%doc %{_mandir}/man1/gnome-session-properties.1* -# Defined sessions (for GNOME only) -%{_datadir}/gnome-session/sessions/gnome-fallback.session +%doc %{_mandir}/man1/gnome-session-properties.1%{?ext_man} + +%files default-session +%defattr (-, root, root) %{_datadir}/gnome-session/sessions/gnome.session -# Helper for the defined sessions -%{_libexecdir}/gnome-session-check-accelerated -%{_libexecdir}/gnome-session-check-accelerated-helper + +%files fallback-session +%defattr (-, root, root) +%{_datadir}/gnome-session/sessions/gnome-fallback.session %files core %defattr (-, root, root) %doc AUTHORS COPYING ChangeLog NEWS README %{_bindir}/gnome-session %{_bindir}/gnome-session-quit +# Helper for the session definitions, to know if hardware is accelerated +%{_libexecdir}/gnome-session-check-accelerated +%{_libexecdir}/gnome-session-check-accelerated-helper %{_datadir}/GConf/gsettings/gnome-session.convert %{_datadir}/glib-2.0/schemas/org.gnome.SessionManager.gschema.xml %dir %{_datadir}/gnome-session