diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2014-09-30 13:53:09 +0000 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2014-09-30 13:53:09 +0000 |
commit | 84f7681eca5b28f2382e3a92bac1ae20946b7a3e (patch) | |
tree | dd91ea38c703357bc55d18dfa995af4ae9a2d246 /gnome-extra/cinnamon | |
parent | Version bump. (diff) | |
download | gentoo-2-84f7681eca5b28f2382e3a92bac1ae20946b7a3e.tar.gz gentoo-2-84f7681eca5b28f2382e3a92bac1ae20946b7a3e.tar.bz2 gentoo-2-84f7681eca5b28f2382e3a92bac1ae20946b7a3e.zip |
Version bump, fix system info dialog (bug #523952, thanks to salikov.alexey for reporting). Drop old.
(Portage version: 2.2.14_rc1/cvs/Linux x86_64, signed Manifest commit with key CF0ADD61)
Diffstat (limited to 'gnome-extra/cinnamon')
-rw-r--r-- | gnome-extra/cinnamon/ChangeLog | 16 | ||||
-rw-r--r-- | gnome-extra/cinnamon/cinnamon-2.2.16.ebuild (renamed from gnome-extra/cinnamon/cinnamon-1.8.8.1-r2.ebuild) | 162 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/bluetooth_obex_transfer.patch | 25 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/cinnamon-1.6.1-automagic-gnome-bluetooth.patch | 44 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/cinnamon-1.8.8.1-mozjs17.patch | 36 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/cinnamon-1.8.8.1-optional-networkmanager.patch | 145 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/cinnamon-2.2.16-sbin-lspci.patch | 35 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/idle-dim.patch | 35 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/keyboard_applet.patch | 142 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/menu_editor.patch | 815 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/remove_GC.patch | 124 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/screensaver.patch | 36 |
12 files changed, 122 insertions, 1493 deletions
diff --git a/gnome-extra/cinnamon/ChangeLog b/gnome-extra/cinnamon/ChangeLog index 63bb19665703..3e76764f0bad 100644 --- a/gnome-extra/cinnamon/ChangeLog +++ b/gnome-extra/cinnamon/ChangeLog @@ -1,6 +1,20 @@ # ChangeLog for gnome-extra/cinnamon # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-extra/cinnamon/ChangeLog,v 1.46 2014/09/19 17:11:40 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-extra/cinnamon/ChangeLog,v 1.47 2014/09/30 13:53:09 tetromino Exp $ + +*cinnamon-2.2.16 (30 Sep 2014) + + 30 Sep 2014; Alexandre Rostovtsev <tetromino@gentoo.org> + -cinnamon-1.8.8.1-r2.ebuild, +cinnamon-2.2.16.ebuild, + -files/cinnamon-1.6.1-automagic-gnome-bluetooth.patch, + -files/cinnamon-1.8.8.1-mozjs17.patch, + -files/cinnamon-1.8.8.1-optional-networkmanager.patch, + +files/cinnamon-2.2.16-sbin-lspci.patch, + -files/bluetooth_obex_transfer.patch, -files/idle-dim.patch, + -files/keyboard_applet.patch, -files/menu_editor.patch, + -files/remove_GC.patch, -files/screensaver.patch: + Version bump, fix system info dialog (bug #523952, thanks to salikov.alexey + for reporting). Drop old. 19 Sep 2014; Samuli Suominen <ssuominen@gentoo.org> cinnamon-1.8.8.1-r2.ebuild: diff --git a/gnome-extra/cinnamon/cinnamon-1.8.8.1-r2.ebuild b/gnome-extra/cinnamon/cinnamon-2.2.16.ebuild index 518a7210ef21..3da552029f15 100644 --- a/gnome-extra/cinnamon/cinnamon-1.8.8.1-r2.ebuild +++ b/gnome-extra/cinnamon/cinnamon-2.2.16.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-extra/cinnamon/cinnamon-1.8.8.1-r2.ebuild,v 1.7 2014/09/19 17:11:40 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-extra/cinnamon/cinnamon-2.2.16.ebuild,v 1.1 2014/09/30 13:53:09 tetromino Exp $ EAPI="5" GCONF_DEBUG="no" @@ -16,60 +16,52 @@ HOMEPAGE="http://cinnamon.linuxmint.com/" MY_PV="${PV/_p/-UP}" MY_P="${PN}-${MY_PV}" -SRC_URI="https://github.com/linuxmint/Cinnamon/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz - http://dev.gentoo.org/~pacho/gnome/cinnamon-1.8/gnome-3.8.patch" +SRC_URI="https://github.com/linuxmint/Cinnamon/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz" LICENSE="GPL-2+" SLOT="0" -IUSE="+bluetooth +networkmanager" -KEYWORDS="amd64 x86" - -# gnome-desktop-2.91.2 is needed due to header changes, db82a33 in gnome-desktop -# latest gsettings-desktop-schemas is needed due to commit 602fa1c6 -# latest g-c-c is needed due to https://bugs.gentoo.org/show_bug.cgi?id=360057 -# libXfixes-5.0 needed for pointer barriers -# gnome-menus-3.2.0.1-r1 needed for new 10-xdg-menu-gnome +# bluetooth support dropped due bug #511648 +IUSE="+l10n +networkmanager" #+bluetooth +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +KEYWORDS="~amd64 ~x86" + COMMON_DEPEND=" + app-misc/ca-certificates + dev-libs/dbus-glib >=dev-libs/glib-2.29.10:2 - >=dev-libs/gjs-1.29.18 >=dev-libs/gobject-introspection-0.10.1 - x11-libs/gdk-pixbuf:2[introspection] - >=x11-libs/gtk+-3.0.0:3[introspection] + >=dev-libs/json-glib-0.13.2 + >=dev-libs/libcroco-0.6.2:0.6 + dev-libs/libxml2:2 + gnome-base/gconf:2[introspection] + gnome-base/librsvg + >=gnome-extra/cinnamon-desktop-1.0:0=[introspection] + gnome-extra/cinnamon-menus[introspection] + >=gnome-extra/cjs-1.9.0 >=media-libs/clutter-1.7.5:1.0[introspection] media-libs/cogl:1.0=[introspection] - app-misc/ca-certificates - >=dev-libs/json-glib-0.13.2 - >=gnome-base/gnome-desktop-3.0.0:3=[introspection] >=gnome-base/gsettings-desktop-schemas-2.91.91 - >=media-libs/gstreamer-0.10.16:0.10 - >=media-libs/gst-plugins-base-0.10.16:0.10 + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + media-libs/libcanberra + media-sound/pulseaudio:0=[glib] net-libs/libsoup:2.4[introspection] >=sys-auth/polkit-0.100[introspection] - >=x11-wm/muffin-1.7.4[introspection] - - dev-libs/dbus-glib - dev-libs/libxml2:2 + x11-libs/gdk-pixbuf:2[introspection] + >=x11-libs/gtk+-3.0.0:3[introspection] x11-libs/pango[introspection] - >=dev-libs/libcroco-0.6.2:0.6 - - gnome-base/gconf:2[introspection] - >=gnome-base/gnome-menus-3.2.0.1-r1:3[introspection] - gnome-base/librsvg - media-libs/libcanberra - media-sound/pulseaudio - >=x11-libs/startup-notification-0.11 x11-libs/libX11 >=x11-libs/libXfixes-5.0 - x11-apps/mesa-progs - + >=x11-wm/muffin-1.9.1[introspection] ${PYTHON_DEPS} - - bluetooth? ( >=net-wireless/gnome-bluetooth-3.4:=[introspection] ) networkmanager? ( gnome-base/libgnome-keyring >=net-misc/networkmanager-0.8.999[introspection] ) " +#bluetooth? ( >=net-wireless/gnome-bluetooth-3.1:=[introspection] ) + # Runtime-only deps are probably incomplete and approximate. # Each block: # 2. Introspection stuff + dconf needed via imports.gi.* @@ -83,49 +75,51 @@ COMMON_DEPEND=" # 9. gnome-icon-theme-symbolic needed for various icons # 10. pygobject needed for menu editor # 11. nemo - default file manager, tightly integrated with cinnamon -# 12. timedated or DateTimeMechanism implementation for cinnamon-settings # TODO(lxnay): fix error: libgnome-desktop/gnome-rr-labeler.h: No such file or directory -# =gnome-extra/cinnamon-control-center-1.8* +# note: needs gksu, not gksu-polkit, due to extensive use of --message/-m arg RDEPEND="${COMMON_DEPEND} >=gnome-base/dconf-0.4.1 >=gnome-base/libgnomekbd-2.91.4[introspection] - >=sys-power/upower-pm-utils-0.9.23[introspection] + || ( sys-power/upower[introspection] sys-power/upower-pm-utils[introspection] ) - >=gnome-base/gnome-session-3.8 + gnome-extra/cinnamon-session - >=gnome-base/gnome-settings-daemon-2.91 + gnome-extra/cinnamon-settings-daemon >=sys-apps/accountsservice-0.6.14[introspection] >=app-accessibility/caribou-0.3 + x11-libs/gksu x11-misc/xdg-utils dev-python/dbus-python[${PYTHON_USEDEP}] dev-python/gconf-python:2 - virtual/python-imaging - dev-python/lxml + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + dev-python/pycairo[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/pyinotify[${PYTHON_USEDEP}] + dev-python/pypam[${PYTHON_USEDEP}] + virtual/python-imaging[${PYTHON_USEDEP}] + x11-themes/gnome-themes-standard[gtk] x11-themes/gnome-icon-theme-symbolic - dev-python/pygobject:3[${PYTHON_USEDEP}] - gnome-extra/nemo - gnome-extra/gnome-screensaver - - || ( - app-admin/openrc-settingsd - >=sys-apps/systemd-30 - <gnome-base/gnome-settings-daemon-3.3.5 ) + gnome-extra/cinnamon-control-center + gnome-extra/cinnamon-screensaver + l10n? ( >=gnome-extra/cinnamon-translations-2.2 ) networkmanager? ( + gnome-extra/nm-applet net-misc/mobile-broadband-provider-info sys-libs/timezone-data ) " -# gnome-extra/gnome-screensaver due screensaver patch, otherwise it uses -# cinnamon-screensaver +#bluetooth? ( net-wireless/cinnamon-bluetooth ) DEPEND="${COMMON_DEPEND} + dev-python/polib[${PYTHON_USEDEP}] >=sys-devel/gettext-0.17 virtual/pkgconfig >=dev-util/intltool-0.40 @@ -143,45 +137,34 @@ pkg_setup() { src_prepare() { # Fix GNOME 3.8 support - epatch "${DISTDIR}/gnome-3.8.patch" epatch "${FILESDIR}/background.patch" - epatch "${FILESDIR}/idle-dim.patch" - # https://github.com/linuxmint/Cinnamon/issues/1337 - epatch "${FILESDIR}/keyboard_applet.patch" - epatch "${FILESDIR}/screensaver.patch" - epatch "${FILESDIR}/bluetooth_obex_transfer.patch" - epatch "${FILESDIR}/remove_GC.patch" - epatch "${FILESDIR}/menu_editor.patch" # Fix automagic gnome-bluetooth dep, bug #398145 - epatch "${FILESDIR}/${PN}-1.6.1-automagic-gnome-bluetooth.patch" + epatch "${FILESDIR}/${PN}-2.2.6-automagic-gnome-bluetooth.patch" # Optional NetworkManager, bug #488684 - epatch "${FILESDIR}/${PN}-1.8.8.1-optional-networkmanager.patch" + epatch "${FILESDIR}/${PN}-2.2.6-optional-networkmanager.patch" - # mozjs17 build failure, bug #499980 - epatch "${FILESDIR}/${P}-mozjs17.patch" - - # Gentoo uses /usr/libexec - sed -e "s:/usr/lib/gnome-session/gnome-session-check-accelerated:${EPREFIX}/usr/libexec/gnome-session-check-accelerated:" \ - -i "files/usr/share/gnome-session/sessions/cinnamon.session" || die "sed 1 failed" + # Fix lspci path, https://github.com/linuxmint/Cinnamon/issues/3548 + epatch "${FILESDIR}/${PN}-2.2.16-sbin-lspci.patch" # Gentoo uses /usr/$(get_libdir), not /usr/lib even for python sed -e "s:/usr/lib/:/usr/$(get_libdir)/:" \ -e 's:"/usr/lib":"/usr/'"$(get_libdir)"'":' \ - -i files/usr/bin/cinnamon-menu-editor \ - -i files/usr/bin/cinnamon-settings \ - -i files/usr/lib/cinnamon-menu-editor/cme/config.py \ - -i files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py \ - -i files/usr/lib/cinnamon-settings/cinnamon-settings.py || die "sed 2 failed" + -i files/usr/share/polkit-1/actions/org.cinnamon.settings-users.policy \ + -i files/usr/lib/cinnamon-settings-users/cinnamon-settings-users.py \ + -i files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py \ + -i files/usr/lib/cinnamon-settings/cinnamon-settings.py \ + -i files/usr/lib/cinnamon-settings/modules/cs_backgrounds.py \ + -i files/usr/lib/cinnamon-settings/data/spices/applet-detail.html \ + -i files/usr/lib/cinnamon-settings/bin/*.py \ + -i files/usr/lib/cinnamon-desktop-editor/cinnamon-desktop-editor.py \ + -i files/usr/lib/cinnamon-menu-editor/cme/*.py \ + -i files/usr/bin/* || die "sed failed" if [[ "$(get_libdir)" != lib ]]; then mv files/usr/lib "files/usr/$(get_libdir)" || die "mv failed" fi - if ! use bluetooth; then - rm -rv files/usr/share/cinnamon/applets/bluetooth@cinnamon.org || die - fi - if ! use networkmanager; then rm -rv files/usr/share/cinnamon/applets/network@cinnamon.org || die fi @@ -194,24 +177,21 @@ src_configure() { # Don't error out on warnings gnome2_src_configure \ --disable-jhbuild-wrapper-script \ - $(use_with bluetooth) \ $(use_enable networkmanager) \ --with-ca-certificates="${EPREFIX}/etc/ssl/certs/ca-certificates.crt" \ - BROWSER_PLUGIN_DIR="${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins" + BROWSER_PLUGIN_DIR="${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins" \ + --without-bluetooth + #$(use_with bluetooth) } src_install() { gnome2_src_install - python_optimize "${ED}usr/$(get_libdir)/cinnamon-"{settings,menu-editor} + python_optimize "${ED}usr/$(get_libdir)/cinnamon-"{desktop-editor,json-makepot,launcher,looking-glass,menu-editor,screensaver-lock-dialog,settings,settings-users} # Fix broken shebangs sed -e "s%#!.*python%#!${PYTHON}%" \ - -i "${ED}usr/bin/cinnamon-"{launcher,menu-editor,settings} \ + -i "${ED}usr/bin/cinnamon-"{desktop-editor,json-makepot,launcher,looking-glass,menu-editor,screensaver-lock-dialog,settings,settings-users} \ -i "${ED}usr/$(get_libdir)/cinnamon-settings/cinnamon-settings.py" || die - domenu\ - "${FILESDIR}/cinnamon-screensaver.desktop" \ - "${FILESDIR}/cinnamon2d-screensaver.desktop" - # Required for gnome-shell on hardened/PaX, bug #398941 pax-mark mr "${ED}usr/bin/cinnamon" @@ -222,11 +202,11 @@ src_install() { pkg_postinst() { gnome2_pkg_postinst - if ! has_version '>=media-libs/gst-plugins-good-0.10.23:0.10' || \ - ! has_version 'media-plugins/gst-plugins-vp8:0.10'; then + if ! has_version 'media-libs/gst-plugins-good:1.0' || \ + ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then ewarn "To make use of Cinnamon's built-in screen recording utility," - ewarn "you need to either install >=media-libs/gst-plugins-good-0.10.23:0.10" - ewarn "and media-plugins/gst-plugins-vp8:0.10, or use dconf-editor to change" + ewarn "you need to either install media-libs/gst-plugins-good:1.0" + ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change" ewarn "org.cinnamon.recorder/pipeline to what you want to use." fi @@ -242,7 +222,9 @@ pkg_postinst() { ewarn "open-source drivers." fi - if has_version "media-libs/mesa[video_cards_radeon]"; then + if has_version "media-libs/mesa[video_cards_radeon]" || + has_version "media-libs/mesa[video_cards_r300]" || + has_version "media-libs/mesa[video_cards_r600]"; then elog "Cinnamon is unstable under classic-mode r300/r600 mesa drivers." elog "Make sure that gallium architecture for r300 and r600 drivers is" elog "selected using 'eselect mesa'." diff --git a/gnome-extra/cinnamon/files/bluetooth_obex_transfer.patch b/gnome-extra/cinnamon/files/bluetooth_obex_transfer.patch deleted file mode 100644 index 0e632c48b07c..000000000000 --- a/gnome-extra/cinnamon/files/bluetooth_obex_transfer.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- a/files/usr/share/cinnamon/applets/bluetooth@cinnamon.org/applet.js -+++ b/files/usr/share/cinnamon/applets/bluetooth@cinnamon.org/applet.js -@@ -455,22 +455,6 @@ MyApplet.prototype = { - this._applet.send_to_address(device.bdaddr, device.alias); - })); - } -- if (device.capabilities & GnomeBluetoothApplet.Capabilities.OBEX_FILE_TRANSFER) { -- item.menu.addAction(_("Browse Files..."), Lang.bind(this, function(event) { -- this._applet.browse_address(device.bdaddr, event.get_time(), -- Lang.bind(this, function(applet, result) { -- try { -- applet.browse_address_finish(result); -- } catch (e) { -- this._ensureSource(); -- this._source.notify(new MessageTray.Notification(this._source, -- _("Bluetooth"), -- _("Error browsing device"), -- { body: _("The requested device cannot be browsed, error is '%s'").format(e) })); -- } -- })); -- })); -- } - - switch (device.type) { - case GnomeBluetoothApplet.Type.KEYBOARD: diff --git a/gnome-extra/cinnamon/files/cinnamon-1.6.1-automagic-gnome-bluetooth.patch b/gnome-extra/cinnamon/files/cinnamon-1.6.1-automagic-gnome-bluetooth.patch deleted file mode 100644 index 9a8f5ab444c4..000000000000 --- a/gnome-extra/cinnamon/files/cinnamon-1.6.1-automagic-gnome-bluetooth.patch +++ /dev/null @@ -1,44 +0,0 @@ -From ee11a71f55eb0860fb61f5c250792221387f09bf Mon Sep 17 00:00:00 2001 -From: root <admin@catmur.co.uk> -Date: Sun, 8 Jan 2012 13:55:05 +0000 -Subject: [PATCH] Fix automagic gnome-bluetooth dependency - -https://bugs.gentoo.org/show_bug.cgi?id=398145 - -Ed Catmur 2012-01-08 13:46:22 UTC -libgnome-bluetooth-applet is a private library so they shouldn't be linking -against it anyway. I tried to work out how to tell libtool to add it to rpath -but got totally lost. - -I'll see if I can work out how to fix the automagic gnome-bluetooth dependency -so I can at least merge USE=-bluetooth. ---- - configure.ac | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 69728ed..58c35f9 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -113,6 +113,8 @@ PKG_CHECK_MODULES(GVC, libpulse libpulse-mainloop-glib gobject-2.0) - PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 0.1.7) - - AC_MSG_CHECKING([for bluetooth support]) -+AC_ARG_WITH([bluetooth], AS_HELP_STRING([--without-bluetooth], [Build without gnome-bluetooth library (default: auto)])) -+AS_IF([test "x$with_bluetooth" != "xno"], [ - PKG_CHECK_EXISTS([gnome-bluetooth-1.0 >= 3.1.0], - [BLUETOOTH_DIR=`$PKG_CONFIG --variable=applet_libdir gnome-bluetooth-1.0` - BLUETOOTH_LIBS=`$PKG_CONFIG --variable=applet_libs gnome-bluetooth-1.0` -@@ -125,6 +127,9 @@ PKG_CHECK_EXISTS([gnome-bluetooth-1.0 >= 3.1.0], - [AC_DEFINE([HAVE_BLUETOOTH],[0]) - AC_SUBST([HAVE_BLUETOOTH],[0]) - AC_MSG_RESULT([no])]) -+], [AC_DEFINE([HAVE_BLUETOOTH],[0]) -+ AC_SUBST([HAVE_BLUETOOTH],[0]) -+ AC_MSG_RESULT([no])]) - - MUFFIN_GIR_DIR=`$PKG_CONFIG --variable=girdir libmuffin` - MUFFIN_TYPELIB_DIR=`$PKG_CONFIG --variable=typelibdir libmuffin` --- -1.7.12 - diff --git a/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-mozjs17.patch b/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-mozjs17.patch deleted file mode 100644 index cd29462ef784..000000000000 --- a/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-mozjs17.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 914d7da8baea24b1b31e2bcf982d12996f86694a Mon Sep 17 00:00:00 2001 -From: leigh123linux <leigh123linux@fedoraproject.org> -Date: Tue, 4 Jun 2013 14:02:15 +0200 -Subject: [PATCH] Fix build error so cinnamon compiles with mozjs-17 - -https://mail.gnome.org/archives/desktop-devel-list/2013-March/msg00135.html - -Fixes #2113 ---- - src/cinnamon-global.c | 7 ++----- - 1 file changed, 2 insertions(+), 5 deletions(-) - -diff --git a/src/cinnamon-global.c b/src/cinnamon-global.c -index ab5d5d4..69958d3 100644 ---- a/src/cinnamon-global.c -+++ b/src/cinnamon-global.c -@@ -1237,14 +1237,11 @@ enum - 0, - &target_object)) - { -- char *message; -- gjs_log_exception(context, -- &message); -+ gjs_log_exception(context); - g_set_error(error, - G_IO_ERROR, - G_IO_ERROR_FAILED, -- "%s", message ? message : "(unknown)"); -- g_free(message); -+ "Unable to import %s", target_object_script); - goto out_error; - } - --- -1.8.5.5 - diff --git a/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-optional-networkmanager.patch b/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-optional-networkmanager.patch deleted file mode 100644 index 4acdb9062df8..000000000000 --- a/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-optional-networkmanager.patch +++ /dev/null @@ -1,145 +0,0 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -83,8 +83,40 @@ - gobject-introspection-1.0 >= $GOBJECT_INTROSPECTION_MIN_VERSION - libcanberra - polkit-agent-1 >= $POLKIT_MIN_VERSION xfixes -- libnm-glib libnm-util gnome-keyring-1 - gnome-desktop-3.0 >= GNOME_DESKTOP_MIN_VERSION) -+ -+########################## -+# Check for NetworkManager -+########################## -+NM_MIN_VERSION=0.9 -+AC_ARG_ENABLE(networkmanager, -+ AS_HELP_STRING([--disable-networkmanager], -+ [disable NetworkManager support @<:@default=auto@:>@]),, -+ [enable_networkmanager=auto]) -+ -+if test "x$enable_networkmanager" != "xno"; then -+ PKG_CHECK_MODULES(NETWORKMANAGER, -+ [libnm-glib libnm-util gnome-keyring-1], -+ [have_networkmanager=yes], -+ [have_networkmanager=no]) -+ -+ CINNAMON_CFLAGS="$CINNAMON_CFLAGS $NETWORKMANAGER_CFLAGS" -+ CINNAMON_LIBS="$CINNAMON_LIBS $NETWORKMANAGER_LIBS" -+else -+ have_networkmanager="no (disabled)" -+fi -+ -+if test "x$have_networkmanager" = "xyes"; then -+ AC_DEFINE(HAVE_NETWORKMANAGER, [1], [Define if we have NetworkManager]) -+ AC_SUBST([HAVE_NETWORKMANAGER], [1]) -+else -+ if test "x$enable_networkmanager" = "xyes"; then -+ AC_MSG_ERROR([Couldn't find NetworkManager.]) -+ fi -+ AC_SUBST([HAVE_NETWORKMANAGER], [0]) -+fi -+ -+AM_CONDITIONAL(HAVE_NETWORKMANAGER, test "$have_networkmanager" = "yes") - - PKG_CHECK_MODULES(CINNAMON_PERF_HELPER, gtk+-3.0 gio-2.0) - -@@ -242,3 +274,15 @@ - files/Makefile - ]) - AC_OUTPUT -+ -+echo " -+Build configuration: -+ -+ Prefix: ${prefix} -+ Source code location: ${srcdir} -+ Compiler: ${CC} -+ Compiler Warnings: $enable_compile_warnings -+ -+ Support for NetworkManager: $have_networkmanager -+ Support for GStreamer recording: $build_recorder -+" ---- a/js/misc/config.js.in -+++ b/js/misc/config.js.in -@@ -8,5 +8,7 @@ - const GJS_VERSION = '@GJS_VERSION@'; - /* 1 if gnome-bluetooth is available, 0 otherwise */ - const HAVE_BLUETOOTH = @HAVE_BLUETOOTH@; -+/* 1 if networkmanager is available, 0 otherwise */ -+const HAVE_NETWORKMANAGER = @HAVE_NETWORKMANAGER@; - /* The system TLS CA list */ - const CINNAMON_SYSTEM_CA_FILE = '@CINNAMON_SYSTEM_CA_FILE@'; ---- a/js/ui/main.js -+++ b/js/ui/main.js -@@ -57,6 +57,7 @@ - const AppletManager = imports.ui.appletManager; - const AutomountManager = imports.ui.automountManager; - const AutorunManager = imports.ui.autorunManager; -+const Config = imports.misc.config; - const DeskletManager = imports.ui.deskletManager; - const EndSessionDialog = imports.ui.endSessionDialog; - const PolkitAuthenticationAgent = imports.ui.polkitAuthenticationAgent; -@@ -70,7 +71,7 @@ - const RunDialog = imports.ui.runDialog; - const Layout = imports.ui.layout; - const LookingGlass = imports.ui.lookingGlass; --const NetworkAgent = imports.ui.networkAgent; -+const NetworkAgent = Config.HAVE_NETWORKMANAGER ? imports.ui.networkAgent : null; - const NotificationDaemon = imports.ui.notificationDaemon; - const WindowAttentionHandler = imports.ui.windowAttentionHandler; - const Scripting = imports.ui.scripting; ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -111,9 +111,7 @@ - cinnamon-generic-container.h \ - cinnamon-gtk-embed.h \ - cinnamon-global.h \ -- cinnamon-mobile-providers.h \ - cinnamon-mount-operation.h \ -- cinnamon-network-agent.h \ - cinnamon-perf-log.h \ - cinnamon-screenshot.h \ - cinnamon-screen-grabber.h \ -@@ -125,6 +123,10 @@ - cinnamon-window-tracker.h \ - cinnamon-wm.h \ - cinnamon-xfixes-cursor.h -+ -+if HAVE_NETWORKMANAGER -+cinnamon_public_headers_h += cinnamon-mobile-providers.h cinnamon-network-agent.h -+endif - - libcinnamon_la_SOURCES = \ - $(cinnamon_built_sources) \ -@@ -149,9 +151,7 @@ - cinnamon-generic-container.c \ - cinnamon-gtk-embed.c \ - cinnamon-global.c \ -- cinnamon-mobile-providers.c \ - cinnamon-mount-operation.c \ -- cinnamon-network-agent.c \ - cinnamon-perf-log.c \ - cinnamon-polkit-authentication-agent.h \ - cinnamon-polkit-authentication-agent.c \ -@@ -166,6 +166,10 @@ - cinnamon-wm.c \ - cinnamon-xfixes-cursor.c - -+if HAVE_NETWORKMANAGER -+libcinnamon_la_SOURCES += cinnamon-mobile-providers.c cinnamon-network-agent.c -+endif -+ - libcinnamon_la_gir_sources = \ - $(filter-out %-private.h $(cinnamon_recorder_non_gir_sources), $(cinnamon_public_headers_h) $(libcinnamon_la_SOURCES)) - -@@ -277,7 +281,10 @@ - libcinnamon_la_CPPFLAGS = $(cinnamon_cflags) - - Cinnamon-0.1.gir: libcinnamon.la St-1.0.gir --Cinnamon_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-Muffin.0 Soup-2.4 GMenu-3.0 NetworkManager-1.0 NMClient-1.0 -+Cinnamon_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-Muffin.0 Soup-2.4 GMenu-3.0 -+if HAVE_NETWORKMANAGER -+Cinnamon_0_1_gir_INCLUDES += NetworkManager-1.0 NMClient-1.0 -+endif - Cinnamon_0_1_gir_CFLAGS = $(libcinnamon_la_CPPFLAGS) -I $(srcdir) - Cinnamon_0_1_gir_LIBS = libcinnamon.la - Cinnamon_0_1_gir_FILES = $(libcinnamon_la_gir_sources) diff --git a/gnome-extra/cinnamon/files/cinnamon-2.2.16-sbin-lspci.patch b/gnome-extra/cinnamon/files/cinnamon-2.2.16-sbin-lspci.patch new file mode 100644 index 000000000000..5c9ea66a797f --- /dev/null +++ b/gnome-extra/cinnamon/files/cinnamon-2.2.16-sbin-lspci.patch @@ -0,0 +1,35 @@ +From 973446912684a07204a8b9d40fe23a98f0235a97 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev <tetromino@gentoo.org> +Date: Tue, 30 Sep 2014 09:24:58 -0400 +Subject: [PATCH] cinnamon-settings: append /usr/sbin to PATH before calling + lspci + +Some distros, e.g. Gentoo, install lspci in /usr/sbin +--- + files/usr/lib/cinnamon-settings/modules/cs_info.py | 5 +++ + 1 file changed, 3 insertions(+) + +diff --git a/files/usr/lib/cinnamon-settings/modules/cs_info.py b/files/usr/lib/cinnamon-settings/modules/cs_info.py +index aa5e4da..d50be27 100644 +--- a/files/usr/lib/cinnamon-settings/modules/cs_info.py ++++ b/files/usr/lib/cinnamon-settings/modules/cs_info.py +@@ -31,6 +31,8 @@ def getProcessOut(command): + def getGraphicsInfos(): + cards = {} + count = 0 ++ envpath = os.environ["PATH"] ++ os.environ["PATH"] = envpath + ":/usr/local/sbin:/usr/sbin:/sbin" + for card in getProcessOut(("lspci")): + if not "VGA" in card: + continue +@@ -43,6 +45,7 @@ def getGraphicsInfos(): + if cardName: + cards[count] = (cardName) + count += 1 ++ os.environ["PATH"] = envpath + return cards + + def getDiskSize(): +-- +2.1.1 + diff --git a/gnome-extra/cinnamon/files/idle-dim.patch b/gnome-extra/cinnamon/files/idle-dim.patch deleted file mode 100644 index 85f51238a7a6..000000000000 --- a/gnome-extra/cinnamon/files/idle-dim.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff -Naur linuxmint-Cinnamon-a464dc9.orig/files/usr/share/cinnamon/applets/brightness@cinnamon.org/applet.js linuxmint-Cinnamon-a464dc9/files/usr/share/cinnamon/applets/brightness@cinnamon.org/applet.js ---- linuxmint-Cinnamon-a464dc9.orig/files/usr/share/cinnamon/applets/brightness@cinnamon.org/applet.js 2013-04-30 18:01:56.000000000 +0200 -+++ linuxmint-Cinnamon-a464dc9/files/usr/share/cinnamon/applets/brightness@cinnamon.org/applet.js 2013-05-02 19:32:12.934254811 +0200 -@@ -8,8 +8,7 @@ - - /* constants */ - const DimSettingsSchema = "org.gnome.settings-daemon.plugins.power"; --const DimSettingsAc = "idle-dim-ac"; --const DimSettingsBattery = "idle-dim-battery"; -+const DimSettings = "idle-dim"; - const PowerBusName = 'org.gnome.SettingsDaemon'; - const PowerObjectPath = '/org/gnome/SettingsDaemon/Power'; - -@@ -116,10 +115,8 @@ - - this._settingsMenu = new PopupMenu.PopupSubMenuMenuItem(_("Dimming settings")); - -- let dimSwitchAc = this._buildItem(_("Dim screen on AC power"), DimSettingsSchema, DimSettingsAc); -- this._settingsMenu.menu.addMenuItem(dimSwitchAc); -- let dimSwitchBattery = this._buildItem(_("Dim screen on battery"), DimSettingsSchema, DimSettingsBattery); -- this._settingsMenu.menu.addMenuItem(dimSwitchBattery); -+ let dimSwitch = this._buildItem(_("Dim screen"), DimSettingsSchema, DimSettings); -+ this._settingsMenu.menu.addMenuItem(dimSwitch); - - //initial update. - //We have to wait until dbus calls back to decide whether to display brightness controls. -@@ -146,7 +146,7 @@ - this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem()); - } - -- this.menu.addSettingsAction(_("Settings"), "screen"); -+ this.menu.addSettingsAction(_("Settings"), "screensaver"); - })); - } - catch (e) { diff --git a/gnome-extra/cinnamon/files/keyboard_applet.patch b/gnome-extra/cinnamon/files/keyboard_applet.patch deleted file mode 100644 index 6b36940862f4..000000000000 --- a/gnome-extra/cinnamon/files/keyboard_applet.patch +++ /dev/null @@ -1,142 +0,0 @@ -diff --git a/applet.js b/applet.js ---- a/files/usr/share/cinnamon/applets/keyboard@cinnamon.org/applet.js -+++ b/files/usr/share/cinnamon/applets/keyboard@cinnamon.org/applet.js -@@ -1,9 +1,10 @@ - const Applet = imports.ui.applet; --const Gkbd = imports.gi.Gkbd; - const Lang = imports.lang; --const Cinnamon = imports.gi.Cinnamon; -+const Gio = imports.gi.Gio; -+const GLib = imports.gi.GLib; - const St = imports.gi.St; - const Gtk = imports.gi.Gtk; -+const GnomeDesktop = imports.gi.GnomeDesktop; - const Main = imports.ui.main; - const PopupMenu = imports.ui.popupMenu; - const Util = imports.misc.util; -@@ -15,11 +16,12 @@ - LayoutMenuItem.prototype = { - __proto__: PopupMenu.PopupBaseMenuItem.prototype, - -- _init: function(config, id, indicator, long_name) { -+ _init: function(ipsettings, id, index, indicator, long_name) { - PopupMenu.PopupBaseMenuItem.prototype._init.call(this); - -- this._config = config; -+ this._ipsettings = ipsettings; - this._id = id; -+ this._index = index; - this.label = new St.Label({ text: long_name }); - this.indicator = indicator; - this.addActor(this.label); -@@ -28,7 +30,7 @@ - - activate: function(event) { - PopupMenu.PopupBaseMenuItem.prototype.activate.call(this); -- this._config.lock_group(this._id); -+ this._ipsettings.set_value('current', GLib.Variant.new_uint32(this._index)); - } - }; - -@@ -54,18 +56,18 @@ - this._layoutItems = [ ]; - - this._showFlags = global.settings.get_boolean("keyboard-applet-use-flags"); -- this._config = Gkbd.Configuration.get(); -- this._config.connect('changed', Lang.bind(this, this._syncConfig)); -- this._config.connect('group-changed', Lang.bind(this, this._syncGroup)); -+ this._xkbInfo = new GnomeDesktop.XkbInfo(); -+ this._ipsettings = new Gio.Settings({ schema: 'org.gnome.desktop.input-sources' }); -+ this._ipsettings.connect('changed::sources', Lang.bind(this, this._syncConfig)); -+ this._ipsettings.connect('changed::current', Lang.bind(this, this._syncGroup)); - global.settings.connect('changed::keyboard-applet-use-flags', Lang.bind(this, this._reload_settings)); -- this._config.start_listen(); - - this._syncConfig(); - - this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem()); - this.menu.addAction(_("Show Keyboard Layout"), Lang.bind(this, function() { - Main.overview.hide(); -- Util.spawn(['gkbd-keyboard-display', '-g', String(this._config.get_current_group() + 1)]); -+ Util.spawn(['gkbd-keyboard-display', '-l', this._selectedLayout._id]); - })); - this.menu.addAction(_("Show Character Table"), Lang.bind(this, function() { - Main.overview.hide(); -@@ -98,7 +100,6 @@ - }, - - _reload_settings: function() { -- this._showFlags = global.settings.get_boolean("keyboard-applet-use-flags"); - this._syncConfig(); - }, - -@@ -127,8 +128,8 @@ - _syncConfig: function() { - this._showFlags = global.settings.get_boolean("keyboard-applet-use-flags"); - -- let groups = this._config.get_group_names(); -- if (groups.length > 1) { -+ let sources = this._ipsettings.get_value('sources'); -+ if (sources.n_children() > 1) { - this.actor.show(); - } else { - this.menu.close(); -@@ -141,25 +142,29 @@ - for (let i = 0; i < this._labelActors.length; i++) - this._labelActors[i].destroy(); - -- let short_names = this._adjustGroupNames(this._config.get_short_group_names()); -- - this._selectedLayout = null; - this._layoutItems = [ ]; - this._labelActors = [ ]; -- for (let i = 0; i < groups.length; i++) { -- let icon_name = this._config.get_group_name(i); -+ for (let i = 0; i < sources.n_children(); i++) { -+ let [type, id] = sources.get_child_value(i).deep_unpack(); -+ let displayName = id; -+ let shortName = id; -+ let xkbLayout = id; -+ if (type == 'xkb') { -+ [_exists, displayName, shortName, xkbLayout, _xkbVariant] = this._xkbInfo.get_layout_info(id); -+ } // TODO: errorhandling, handle 'ibus' -+ let icon_name = xkbLayout; // FIXME: Really? - let actor; - if (this._showFlags) - actor = new St.Icon({ icon_name: icon_name, icon_type: St.IconType.FULLCOLOR, style_class: 'popup-menu-icon' }); - else -- actor = new St.Label({ text: short_names[i] }); -- let item = new LayoutMenuItem(this._config, i, actor, groups[i]); -- item._short_group_name = short_names[i]; -+ actor = new St.Label({ text: shortName }); -+ let item = new LayoutMenuItem(this._ipsettings, id, i, actor, displayName); - item._icon_name = icon_name; - this._layoutItems.push(item); - this.menu.addMenuItem(item, i); - -- let shortLabel = new St.Label({ text: short_names[i] }); -+ let shortLabel = new St.Label({ text: shortName }); - this._labelActors.push(shortLabel); - } - -@@ -167,17 +172,17 @@ - }, - - _syncGroup: function() { -- let selected = this._config.get_current_group(); -+ let current = this._ipsettings.get_uint('current'); - - if (this._selectedLayout) { - this._selectedLayout.setShowDot(false); - this._selectedLayout = null; - } - -- let item = this._layoutItems[selected]; -+ let item = this._layoutItems[current]; - item.setShowDot(true); - -- let selectedLabel = this._labelActors[selected]; -+ let selectedLabel = this._labelActors[current]; - - if (this._showFlags) { - this.set_applet_icon_name(item._icon_name); diff --git a/gnome-extra/cinnamon/files/menu_editor.patch b/gnome-extra/cinnamon/files/menu_editor.patch deleted file mode 100644 index e18ee7f48e85..000000000000 --- a/gnome-extra/cinnamon/files/menu_editor.patch +++ /dev/null @@ -1,815 +0,0 @@ -diff --git a/files/usr/bin/cinnamon-launcher-creator b/files/usr/bin/cinnamon-launcher-creator -new file mode 100755 -index 0000000..6f51401 ---- /dev/null -+++ b/files/usr/bin/cinnamon-launcher-creator -@@ -0,0 +1,21 @@ -+#! /usr/bin/python -OOt -+ -+import sys -+sys.path.insert(0,'/usr/lib/cinnamon-menu-editor') -+from cme import ItemEditor, MenuEditor -+ -+def main(): -+ try: -+ from MenuEditor import config -+ datadir = config.pkgdatadir -+ version = config.VERSION -+ except: -+ datadir = '.' -+ version = '0.9' -+ if len(sys.argv) > 1: -+ app = ItemEditor.DesktopLauncherCreator(sys.argv[1]) -+ else: -+ print "Missing path argument for launcher location" -+ -+if __name__ == '__main__': -+ main() -diff --git a/files/usr/lib/cinnamon-menu-editor/cme/ItemEditor.py b/files/usr/lib/cinnamon-menu-editor/cme/ItemEditor.py -new file mode 100644 -index 0000000..80c2acd ---- /dev/null -+++ b/files/usr/lib/cinnamon-menu-editor/cme/ItemEditor.py -@@ -0,0 +1,247 @@ -+# -*- coding: utf-8 -*- -+# Alacarte Menu Editor - Simple fd.o Compliant Menu Editor -+# Copyright (C) 2013 Red Hat, Inc. -+# -+# This library is free software; you can redistribute it and/or -+# modify it under the terms of the GNU Library General Public -+# License as published by the Free Software Foundation; either -+# version 2 of the License, or (at your option) any later version. -+# -+# This library 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 -+# Library General Public License for more details. -+# -+# You should have received a copy of the GNU Library General Public -+# License along with this library; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+ -+import gettext -+import os -+import gi -+from gi.repository import GLib, Gtk -+from cme import config, util -+ -+_ = gettext.gettext -+ -+EXTENSIONS = (".png", ".xpm", ".svg") -+ -+def try_icon_name(filename): -+ # Detect if the user picked an icon, and make -+ # it into an icon name. -+ if not filename.endswith(EXTENSIONS): -+ return filename -+ -+ filename = filename[:-4] -+ -+ theme = Gtk.IconTheme.get_default() -+ resolved_path = None -+ for path in theme.get_search_path(): -+ if filename.startswith(path): -+ resolved_path = filename[len(path):].lstrip(os.sep) -+ break -+ -+ if resolved_path is None: -+ return filename -+ -+ parts = resolved_path.split(os.sep) -+ # icon-theme/size/category/icon -+ if len(parts) != 4: -+ return filename -+ -+ return parts[3] -+ -+def get_icon_string(image): -+ filename = image.props.file -+ if filename is not None: -+ return try_icon_name(filename) -+ -+ return image.props.icon_name -+ -+def strip_extensions(icon): -+ if icon.endswith(EXTENSIONS): -+ return icon[:-4] -+ else: -+ return icon -+ -+def set_icon_string(image, icon): -+ if GLib.path_is_absolute(icon): -+ image.props.file = icon -+ else: -+ image.props.icon_name = strip_extensions(icon) -+ -+DESKTOP_GROUP = GLib.KEY_FILE_DESKTOP_GROUP -+ -+# XXX - replace with a better UI eventually -+class IconPicker(object): -+ def __init__(self, dialog, button, image): -+ self.dialog = dialog -+ self.button = button -+ self.button.connect('clicked', self.pick_icon) -+ self.image = image -+ -+ def pick_icon(self, button): -+ chooser = Gtk.FileChooserDialog(title=_("Choose an icon"), -+ parent=self.dialog, -+ buttons=(Gtk.STOCK_CANCEL, Gtk.ResponseType.REJECT, -+ Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT)) -+ response = chooser.run() -+ if response == Gtk.ResponseType.ACCEPT: -+ self.image.props.file = chooser.get_filename() -+ chooser.destroy() -+ -+class ItemEditor(object): -+ ui_file = None -+ -+ def __init__(self, item_path, parent=None): -+ self.builder = Gtk.Builder() -+ self.builder.add_from_file(self.ui_file) -+ -+ self.dialog = self.builder.get_object('editor') -+ if parent: -+ self.dialog.set_transient_for(parent) -+ self.dialog.connect('response', self.on_response) -+ -+ self.build_ui() -+ -+ self.item_path = item_path -+ self.load() -+ self.resync_validity() -+ -+ def build_ui(self): -+ raise NotImplementedError() -+ -+ def get_keyfile_edits(self): -+ raise NotImplementedError() -+ -+ def set_text(self, ctl, name): -+ try: -+ val = self.keyfile.get_string(DESKTOP_GROUP, name) -+ except GLib.GError: -+ pass -+ else: -+ self.builder.get_object(ctl).set_text(val) -+ -+ def set_check(self, ctl, name): -+ try: -+ val = self.keyfile.get_boolean(DESKTOP_GROUP, name) -+ except GLib.GError: -+ pass -+ else: -+ self.builder.get_object(ctl).set_active(val) -+ -+ def set_icon(self, ctl, name): -+ try: -+ val = self.keyfile.get_string(DESKTOP_GROUP, name) -+ except GLib.GError: -+ pass -+ else: -+ set_icon_string(self.builder.get_object(ctl), val) -+ -+ def load(self): -+ self.keyfile = GLib.KeyFile() -+ try: -+ self.keyfile.load_from_file(self.item_path, util.KEY_FILE_FLAGS) -+ except GLib.GError: -+ pass -+ -+ def save(self): -+ util.fillKeyFile(self.keyfile, self.get_keyfile_edits()) -+ contents, length = self.keyfile.to_data() -+ need_exec = False -+ if ".desktop" not in self.item_path and ".directory" not in self.item_path: -+ need_exec = True -+ self.item_path = os.path.join(self.item_path, (self.builder.get_object('name-entry').get_text() + ".desktop")) -+ with open(self.item_path, 'w') as f: -+ f.write(contents) -+ if need_exec: -+ os.system("chmod a+x " + self.item_path) -+ -+ -+ def run(self): -+ self.dialog.present() -+ -+ def on_response(self, dialog, response): -+ if response == Gtk.ResponseType.OK: -+ self.save() -+ self.dialog.destroy() -+ -+class LauncherEditor(ItemEditor): -+ ui_file = '/usr/lib/cinnamon-menu-editor/launcher-editor.ui' -+ -+ def build_ui(self): -+ self.icon_picker = IconPicker(self.dialog, -+ self.builder.get_object('icon-button'), -+ self.builder.get_object('icon-image')) -+ -+ self.builder.get_object('exec-browse').connect('clicked', self.pick_exec) -+ -+ self.builder.get_object('name-entry').connect('changed', self.resync_validity) -+ self.builder.get_object('exec-entry').connect('changed', self.resync_validity) -+ -+ def resync_validity(self, *args): -+ name_text = self.builder.get_object('name-entry').get_text() -+ exec_text = self.builder.get_object('exec-entry').get_text() -+ valid = (name_text is not None and exec_text is not None) -+ self.builder.get_object('ok').set_sensitive(valid) -+ -+ def load(self): -+ super(LauncherEditor, self).load() -+ self.set_text('name-entry', "Name") -+ self.set_text('exec-entry', "Exec") -+ self.set_text('comment-entry', "Comment") -+ self.set_check('terminal-check', "Terminal") -+ self.set_icon('icon-image', "Icon") -+ -+ def get_keyfile_edits(self): -+ return dict(Name=self.builder.get_object('name-entry').get_text(), -+ Exec=self.builder.get_object('exec-entry').get_text(), -+ Comment=self.builder.get_object('comment-entry').get_text(), -+ Terminal=self.builder.get_object('terminal-check').get_active(), -+ Icon=get_icon_string(self.builder.get_object('icon-image')), -+ Type="Application") -+ -+ def pick_exec(self, button): -+ chooser = Gtk.FileChooserDialog(title=_("Choose a command"), -+ parent=self.dialog, -+ buttons=(Gtk.STOCK_CANCEL, Gtk.ResponseType.REJECT, -+ Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT)) -+ response = chooser.run() -+ if response == Gtk.ResponseType.ACCEPT: -+ self.builder.get_object('exec-entry').set_text(chooser.get_filename()) -+ chooser.destroy() -+ -+class DirectoryEditor(ItemEditor): -+ ui_file = '/usr/lib/cinnamon-menu-editor/directory-editor.ui' -+ -+ def build_ui(self): -+ self.icon_picker = IconPicker(self.dialog, -+ self.builder.get_object('icon-button'), -+ self.builder.get_object('icon-image')) -+ -+ self.builder.get_object('name-entry').connect('changed', self.resync_validity) -+ -+ def resync_validity(self, *args): -+ name_text = self.builder.get_object('name-entry').get_text() -+ valid = (name_text is not None) -+ self.builder.get_object('ok').set_sensitive(valid) -+ -+ def load(self): -+ super(DirectoryEditor, self).load() -+ self.set_text('name-entry', "Name") -+ self.set_text('comment-entry', "Comment") -+ self.set_icon('icon-image', "Icon") -+ -+ def get_keyfile_edits(self): -+ return dict(Name=self.builder.get_object('name-entry').get_text(), -+ Comment=self.builder.get_object('comment-entry').get_text(), -+ Icon=get_icon_string(self.builder.get_object('icon-image')), -+ Type="Directory") -+ -+def DesktopLauncherCreator(path): -+ Gtk.Window.set_default_icon_name('alacarte') -+ editor = LauncherEditor(path, None) -+ editor.dialog.connect('destroy', Gtk.main_quit) -+ editor.dialog.show_all() -+ Gtk.main() -+ -diff --git a/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py b/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py -index 33106a9..735d420 100644 ---- a/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py -+++ b/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py -@@ -22,6 +22,7 @@ import cgi - import os - import gettext - import subprocess -+import shutil - - from cme import config - gettext.bindtextdomain(config.GETTEXT_PACKAGE, config.localedir) -@@ -29,6 +30,7 @@ gettext.textdomain(config.GETTEXT_PACKAGE) - - _ = gettext.gettext - from cme.MenuEditor import MenuEditor -+from cme.ItemEditor import LauncherEditor, DirectoryEditor - from cme import util - - class MainWindow(object): -@@ -58,6 +60,7 @@ class MainWindow(object): - self.cut_copy_buffer = None - self.file_id = None - self.last_tree = None -+ self.main_window = self.tree.get_object('mainwindow') - - def run(self): - self.loadMenus() -@@ -261,8 +264,8 @@ class MainWindow(object): - else: - parent = menus[iter][3] - file_path = os.path.join(util.getUserDirectoryPath(), util.getUniqueFileId('alacarte-made', '.directory')) -- process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ) -- GObject.timeout_add(100, self.waitForNewMenuProcess, process, parent.get_menu_id(), file_path) -+ editor = DirectoryEditor(file_path, self.main_window) -+ editor.run() - - def on_new_item_button_clicked(self, button): - menu_tree = self.tree.get_object('menu_tree') -@@ -274,8 +277,8 @@ class MainWindow(object): - else: - parent = menus[iter][3] - file_path = os.path.join(util.getUserItemPath(), util.getUniqueFileId('alacarte-made', '.desktop')) -- process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ) -- GObject.timeout_add(100, self.waitForNewItemProcess, process, parent.get_menu_id(), file_path) -+ editor = LauncherEditor(file_path, self.main_window) -+ editor.run() - - def on_edit_delete_activate(self, menu): - item_tree = self.tree.get_object('item_tree') -@@ -302,18 +305,17 @@ class MainWindow(object): - if isinstance(item, GMenu.TreeEntry): - file_path = os.path.join(util.getUserItemPath(), item.get_desktop_file_id()) - file_type = 'Item' -+ Editor = LauncherEditor - elif isinstance(item, GMenu.TreeDirectory): - file_path = os.path.join(util.getUserDirectoryPath(), os.path.split(item.get_desktop_file_path())[1]) - file_type = 'Menu' -+ Editor = DirectoryEditor - - if not os.path.isfile(file_path): -- data = open(item.get_desktop_file_path()).read() -- open(file_path, 'w').write(data) -+ shutil.copy(item.get_desktop_file_path(), file_path) - -- if file_path not in self.edit_pool: -- self.edit_pool.append(file_path) -- process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ) -- GObject.timeout_add(100, self.waitForEditProcess, process, file_path) -+ editor = Editor(file_path, self.main_window) -+ editor.run() - - def on_edit_cut_activate(self, menu): - item_tree = self.tree.get_object('item_tree') -diff --git a/files/usr/lib/cinnamon-menu-editor/cme/util.py b/files/usr/lib/cinnamon-menu-editor/cme/util.py -index 237f03b..459c222 100644 ---- a/files/usr/lib/cinnamon-menu-editor/cme/util.py -+++ b/files/usr/lib/cinnamon-menu-editor/cme/util.py -@@ -32,10 +32,10 @@ def fillKeyFile(keyfile, items): - - if isinstance(item, bool): - keyfile.set_boolean(DESKTOP_GROUP, key, item) -- elif isinstance(item, Sequence): -- keyfile.set_string_list(DESKTOP_GROUP, key, item) - elif isinstance(item, basestring): - keyfile.set_string(DESKTOP_GROUP, key, item) -+ elif isinstance(item, Sequence): -+ keyfile.set_string_list(DESKTOP_GROUP, key, item) - - def getNameFromKeyFile(keyfile): - return keyfile.get_string(DESKTOP_GROUP, "Name") -diff --git a/files/usr/lib/cinnamon-menu-editor/directory-editor.ui b/files/usr/lib/cinnamon-menu-editor/directory-editor.ui -new file mode 100644 -index 0000000..9228c49 ---- /dev/null -+++ b/files/usr/lib/cinnamon-menu-editor/directory-editor.ui -@@ -0,0 +1,178 @@ -+<?xml version="1.0" encoding="UTF-8"?> -+<interface> -+ <!-- interface-requires gtk+ 3.0 --> -+ <object class="GtkDialog" id="editor"> -+ <property name="can_focus">False</property> -+ <property name="border_width">4</property> -+ <property name="title" translatable="yes">Directory Properties</property> -+ <property name="modal">True</property> -+ <property name="type_hint">dialog</property> -+ <child internal-child="vbox"> -+ <object class="GtkBox" id="dialog-box"> -+ <property name="can_focus">False</property> -+ <property name="orientation">vertical</property> -+ <property name="spacing">4</property> -+ <child internal-child="action_area"> -+ <object class="GtkButtonBox" id="dialog-action_area"> -+ <property name="can_focus">False</property> -+ <property name="layout_style">end</property> -+ <child> -+ <object class="GtkButton" id="cancel"> -+ <property name="label">gtk-cancel</property> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ <property name="use_stock">True</property> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkButton" id="ok"> -+ <property name="label">gtk-ok</property> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ <property name="use_stock">True</property> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="pack_type">end</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkBox" id="hbox"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="spacing">10</property> -+ <child> -+ <object class="GtkAlignment" id="alignment1"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="yalign">0</property> -+ <property name="yscale">0</property> -+ <child> -+ <object class="GtkButton" id="icon-button"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ <child> -+ <object class="GtkImage" id="icon-image"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="pixel_size">64</property> -+ <property name="icon_name">folder</property> -+ </object> -+ </child> -+ </object> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkGrid" id="grid1"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="row_spacing">6</property> -+ <property name="column_spacing">10</property> -+ <child> -+ <object class="GtkLabel" id="label2"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="label" translatable="yes">Name:</property> -+ <attributes> -+ <attribute name="weight" value="bold"/> -+ </attributes> -+ </object> -+ <packing> -+ <property name="left_attach">0</property> -+ <property name="top_attach">0</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkLabel" id="label4"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="label" translatable="yes">Comment:</property> -+ <attributes> -+ <attribute name="weight" value="bold"/> -+ </attributes> -+ </object> -+ <packing> -+ <property name="left_attach">0</property> -+ <property name="top_attach">1</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkEntry" id="name-entry"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="has_focus">True</property> -+ <property name="invisible_char">●</property> -+ </object> -+ <packing> -+ <property name="left_attach">1</property> -+ <property name="top_attach">0</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkEntry" id="comment-entry"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="invisible_char">●</property> -+ </object> -+ <packing> -+ <property name="left_attach">1</property> -+ <property name="top_attach">1</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">True</property> -+ <property name="fill">True</property> -+ <property name="pack_type">end</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">True</property> -+ <property name="fill">True</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ </child> -+ <action-widgets> -+ <action-widget response="-6">cancel</action-widget> -+ <action-widget response="-5">ok</action-widget> -+ </action-widgets> -+ </object> -+</interface> -\ No newline at end of file -diff --git a/files/usr/lib/cinnamon-menu-editor/launcher-editor.ui b/files/usr/lib/cinnamon-menu-editor/launcher-editor.ui -new file mode 100644 -index 0000000..a643c63 ---- /dev/null -+++ b/files/usr/lib/cinnamon-menu-editor/launcher-editor.ui -@@ -0,0 +1,252 @@ -+<?xml version="1.0" encoding="UTF-8"?> -+<interface> -+ <!-- interface-requires gtk+ 3.0 --> -+ <object class="GtkDialog" id="editor"> -+ <property name="can_focus">False</property> -+ <property name="border_width">4</property> -+ <property name="title" translatable="yes">Launcher Properties</property> -+ <property name="modal">True</property> -+ <property name="type_hint">dialog</property> -+ <child internal-child="vbox"> -+ <object class="GtkBox" id="dialog-box"> -+ <property name="can_focus">False</property> -+ <property name="orientation">vertical</property> -+ <property name="spacing">4</property> -+ <child internal-child="action_area"> -+ <object class="GtkButtonBox" id="dialog-action_area"> -+ <property name="can_focus">False</property> -+ <property name="layout_style">end</property> -+ <child> -+ <object class="GtkButton" id="cancel"> -+ <property name="label">gtk-cancel</property> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ <property name="use_stock">True</property> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkButton" id="ok"> -+ <property name="label">gtk-ok</property> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ <property name="use_stock">True</property> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="pack_type">end</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkBox" id="hbox"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="spacing">10</property> -+ <child> -+ <object class="GtkAlignment" id="alignment1"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="yalign">0</property> -+ <property name="yscale">0</property> -+ <child> -+ <object class="GtkButton" id="icon-button"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ <child> -+ <object class="GtkImage" id="icon-image"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="pixel_size">64</property> -+ <property name="icon_name">gnome-panel-launcher</property> -+ </object> -+ </child> -+ </object> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkGrid" id="grid1"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="row_spacing">6</property> -+ <property name="column_spacing">10</property> -+ <child> -+ <object class="GtkLabel" id="label2"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="label" translatable="yes">Name:</property> -+ <attributes> -+ <attribute name="weight" value="bold"/> -+ </attributes> -+ </object> -+ <packing> -+ <property name="left_attach">0</property> -+ <property name="top_attach">0</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkLabel" id="label3"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="label" translatable="yes">Command:</property> -+ <attributes> -+ <attribute name="weight" value="bold"/> -+ </attributes> -+ </object> -+ <packing> -+ <property name="left_attach">0</property> -+ <property name="top_attach">1</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkLabel" id="label4"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="xalign">1</property> -+ <property name="label" translatable="yes">Comment:</property> -+ <attributes> -+ <attribute name="weight" value="bold"/> -+ </attributes> -+ </object> -+ <packing> -+ <property name="left_attach">0</property> -+ <property name="top_attach">2</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkEntry" id="name-entry"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="has_focus">True</property> -+ <property name="invisible_char">●</property> -+ </object> -+ <packing> -+ <property name="left_attach">1</property> -+ <property name="top_attach">0</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkBox" id="command-box"> -+ <property name="visible">True</property> -+ <property name="can_focus">False</property> -+ <property name="spacing">10</property> -+ <child> -+ <object class="GtkEntry" id="exec-entry"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="invisible_char">●</property> -+ </object> -+ <packing> -+ <property name="expand">True</property> -+ <property name="fill">True</property> -+ <property name="position">0</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkButton" id="exec-browse"> -+ <property name="label" translatable="yes">Browse</property> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">True</property> -+ </object> -+ <packing> -+ <property name="expand">False</property> -+ <property name="fill">True</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ <packing> -+ <property name="left_attach">1</property> -+ <property name="top_attach">1</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkEntry" id="comment-entry"> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="invisible_char">●</property> -+ </object> -+ <packing> -+ <property name="left_attach">1</property> -+ <property name="top_attach">2</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <object class="GtkCheckButton" id="terminal-check"> -+ <property name="label" translatable="yes">Launch in Terminal?</property> -+ <property name="visible">True</property> -+ <property name="can_focus">True</property> -+ <property name="receives_default">False</property> -+ <property name="xalign">0</property> -+ <property name="draw_indicator">True</property> -+ </object> -+ <packing> -+ <property name="left_attach">1</property> -+ <property name="top_attach">3</property> -+ <property name="width">1</property> -+ <property name="height">1</property> -+ </packing> -+ </child> -+ <child> -+ <placeholder/> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">True</property> -+ <property name="fill">True</property> -+ <property name="pack_type">end</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ <packing> -+ <property name="expand">True</property> -+ <property name="fill">True</property> -+ <property name="position">1</property> -+ </packing> -+ </child> -+ </object> -+ </child> -+ <action-widgets> -+ <action-widget response="-6">cancel</action-widget> -+ <action-widget response="-5">ok</action-widget> -+ </action-widgets> -+ </object> -+</interface> -\ No newline at end of file diff --git a/gnome-extra/cinnamon/files/remove_GC.patch b/gnome-extra/cinnamon/files/remove_GC.patch deleted file mode 100644 index 7bd8e45a6a9a..000000000000 --- a/gnome-extra/cinnamon/files/remove_GC.patch +++ /dev/null @@ -1,124 +0,0 @@ ---- a/src/cinnamon-global.c -+++ b/src/cinnamon-global.c -@@ -1399,35 +1399,6 @@ cinnamon_global_reexec_self (CinnamonGlo - g_ptr_array_free (arr, TRUE); - } - --/** -- * cinnamon_global_gc: -- * @global: A #CinnamonGlobal -- * -- * Start a garbage collection process. For more information, see -- * https://developer.mozilla.org/En/JS_GC -- */ --void --cinnamon_global_gc (CinnamonGlobal *global) --{ -- JSContext *context = gjs_context_get_native_context (global->js_context); -- -- JS_GC (context); --} -- --/** -- * cinnamon_global_maybe_gc: -- * @global: A #CinnamonGlobal -- * -- * Start a garbage collection process when it would free up enough memory -- * to be worth the amount of time it would take -- * https://developer.mozilla.org/en/SpiderMonkey/JSAPI_Reference/JS_MaybeGC -- */ --void --cinnamon_global_maybe_gc (CinnamonGlobal *global) --{ -- gjs_context_maybe_gc (global->js_context); --} -- - static void - cinnamon_global_on_gc (GjsContext *context, - CinnamonGlobal *global) -@@ -1768,13 +1768,6 @@ run_leisure_functions (gpointer data) - if (global->work_count > 0) - return FALSE; - -- /* Previously we called gjs_maybe_gc(). However, it simply doesn't -- * trigger often enough. Garbage collection is very fast here, so -- * let's just aggressively GC. This will help avoid both heap -- * fragmentation, and the GC kicking in when we don't want it to. -- */ -- gjs_context_gc (global->js_context); -- - /* No leisure closures, so we are done */ - if (global->leisure_closures == NULL) - return FALSE; ---- a/src/cinnamon-global.h -+++ b/src/cinnamon-global.h -@@ -88,10 +88,6 @@ void cinnamon_global_set_pointer - int y); - - --/* JavaScript utilities */ --void cinnamon_global_gc (CinnamonGlobal *global); --void cinnamon_global_maybe_gc (CinnamonGlobal *global); -- - typedef struct { - guint glibc_uordblks; - - - ---- a/js/perf/core.js -+++ b/js/perf/core.js -@@ -1,5 +1,7 @@ - // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- - -+const System = imports.system; -+ - const Main = imports.ui.main; - const Scripting = imports.ui.scripting; - -@@ -99,7 +101,7 @@ function run() { - Main.overview.hide(); - yield Scripting.waitLeisure(); - -- global.gc(); -+ System.gc(); - yield Scripting.sleep(1000); - Scripting.collectStatistics(); - Scripting.scriptEvent('afterShowHide'); ---- a/js/ui/lookingGlass.js -+++ b/js/ui/lookingGlass.js -@@ -11,6 +11,7 @@ const St = imports.gi.St; - const Cinnamon = imports.gi.Cinnamon; - const Signals = imports.signals; - const Lang = imports.lang; -+const System = imports.system; - - const History = imports.misc.history; - const Extension = imports.ui.extension; -@@ -680,7 +681,7 @@ Memory.prototype = { - - this._gcbutton = new St.Button({ label: 'Full GC', - style_class: 'lg-obj-inspector-button' }); -- this._gcbutton.connect('clicked', Lang.bind(this, function () { global.gc(); this._renderText(); })); -+ this._gcbutton.connect('clicked', Lang.bind(this, function () { System.gc(); this._renderText(); })); - this.actor.add(this._gcbutton, { x_align: St.Align.START, - x_fill: false }); - ---- a/js/ui/lookingGlassDBus.js -+++ b/js/ui/lookingGlassDBus.js -@@ -1,5 +1,7 @@ - // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- - -+const System = imports.system; -+ - const Gio = imports.gi.Gio; - const Main = imports.ui.main; - const Extension = imports.ui.extension; -@@ -99,7 +101,7 @@ CinnamonLookingGlass.prototype = { - }, - - FullGc: function() { -- global.gc(); -+ System.gc(); - }, - - Inspect: function(path) { diff --git a/gnome-extra/cinnamon/files/screensaver.patch b/gnome-extra/cinnamon/files/screensaver.patch deleted file mode 100644 index 1ffb916b9786..000000000000 --- a/gnome-extra/cinnamon/files/screensaver.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- a/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py -+++ b/files/usr/lib/cinnamon-screensaver-lock-dialog/cinnamon-screensaver-lock-dialog.py -@@ -57,9 +57,9 @@ class MainWindow: - def lock_screen(self, data): - message = self.entry.get_text() - if (message != ""): -- os.system("cinnamon-screensaver-command --lock --away-message \"%s\" &" % self.entry.get_text()) -+ os.system("gnome-screensaver-command --lock --away-message \"%s\" &" % self.entry.get_text()) - else: -- os.system("cinnamon-screensaver-command --lock &") -+ os.system("gnome-screensaver-command --lock &") - gtk.main_quit() - - if __name__ == "__main__": ---- a/files/usr/lib/cinnamon-settings/modules/cs_screensaver.py -+++ b/files/usr/lib/cinnamon-settings/modules/cs_screensaver.py -@@ -5,15 +5,15 @@ from SettingsWidgets import * - - class Module: - def __init__(self, content_box): -- keywords = _("screensaver, brightness, lock, password, away, message") -+ keywords = _("screensaver, brightness, lock, password, user, switching") - advanced = False - sidePage = SidePage(_("Screensaver & Lock Settings"), "screensaver.svg", keywords, advanced, content_box) - self.sidePage = sidePage - self.name = "screensaver" - self.category = "prefs" -- if os.path.exists("/usr/bin/cinnamon-screensaver-command"): -- sidePage.add_widget(GSettingsCheckButton(_("Ask for an away message when locking the screen from the menu"), "org.cinnamon.screensaver", "ask-for-away-message", None)) -- sidePage.add_widget(GSettingsEntry(_("Default away message"), "org.cinnamon.screensaver", "default-message", None)) -+ if os.path.exists("/usr/bin/gnome-screensaver-command"): -+ self.sidePage.add_widget(GSettingsCheckButton(_("Ask for password when unlocking"), "org.gnome.desktop.screensaver", "lock-enabled", None)) -+ self.sidePage.add_widget(GSettingsCheckButton(_("Enable user switching"), "org.gnome.desktop.screensaver", "user-switch-enabled", None)) - - widget = content_box.c_manager.get_c_widget("screen") - if widget is not None: |