cinnamon: remove dead packages
Broken since April 2014. Never more than a handful of basic framework packages, had most of its work ahead of it. Almost immediately abandoned, and the maintainer vanished. Close #2132.
This commit is contained in:
parent
07f07f2d30
commit
ad80ae008a
@ -1,448 +0,0 @@
|
|||||||
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/data/org.cinnamon.settings-daemon.plugins.gschema.xml.in.in cinnamon-settings-daemon-2.0.1/data/org.cinnamon.settings-daemon.plugins.gschema.xml.in.in
|
|
||||||
--- cinnamon-settings-daemon-2.0.6.orig/data/org.cinnamon.settings-daemon.plugins.gschema.xml.in.in 2013-11-03 10:50:04.000000000 -0500
|
|
||||||
+++ cinnamon-settings-daemon-2.0.6/data/org.cinnamon.settings-daemon.plugins.gschema.xml.in.in 2013-11-05 15:33:21.112912392 -0500
|
|
||||||
@@ -2,6 +2,7 @@
|
|
||||||
<schema gettext-domain="@GETTEXT_PACKAGE@" id="org.cinnamon.settings-daemon.plugins" path="/org/cinnamon/settings-daemon/plugins/">
|
|
||||||
<child name="a11y-keyboard" schema="org.cinnamon.settings-daemon.plugins.a11y-keyboard"/>
|
|
||||||
<child name="a11y-settings" schema="org.cinnamon.settings-daemon.plugins.a11y-settings"/>
|
|
||||||
+ <child name="automount" schema="org.cinnamon.settings-daemon.plugins.automount"/>
|
|
||||||
<child name="clipboard" schema="org.cinnamon.settings-daemon.plugins.clipboard"/>
|
|
||||||
<child name="color" schema="org.cinnamon.settings-daemon.plugins.color"/>
|
|
||||||
<child name="cursor" schema="org.cinnamon.settings-daemon.plugins.cursor"/>
|
|
||||||
@@ -42,6 +43,18 @@
|
|
||||||
<_summary>Priority to use for this plugin</_summary>
|
|
||||||
<_description>Priority to use for this plugin in cinnamon-settings-daemon startup queue</_description>
|
|
||||||
</key>
|
|
||||||
+ </schema>
|
|
||||||
+ <schema gettext-domain="@GETTEXT_PACKAGE@" id="org.cinnamon.settings-daemon.plugins.automount" path="/org/cinnamon/settings-daemon/plugins/automount/">
|
|
||||||
+ <key name="active" type="b">
|
|
||||||
+ <default>true</default>
|
|
||||||
+ <_summary>Activation of this plugin</_summary>
|
|
||||||
+ <_description>Whether this plugin would be activated by cinnamon-settings-daemon or not</_description>
|
|
||||||
+ </key>
|
|
||||||
+ <key name="priority" type="i">
|
|
||||||
+ <default>97</default>
|
|
||||||
+ <_summary>Priority to use for this plugin</_summary>
|
|
||||||
+ <_description>Priority to use for this plugin in cinnamon-settings-daemon startup queue</_description>
|
|
||||||
+ </key>
|
|
||||||
</schema>
|
|
||||||
<schema gettext-domain="@GETTEXT_PACKAGE@" id="org.cinnamon.settings-daemon.plugins.clipboard" path="/org/cinnamon/settings-daemon/plugins/clipboard/">
|
|
||||||
<key name="active" type="b">
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/automount.cinnamon-settings-plugin.in cinnamon-settings-daemon-2.0.1/plugins/automount/automount.cinnamon-settings-plugin.in
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/automount.cinnamon-settings-plugin.in 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/automount.cinnamon-settings-plugin.in 2013-10-08 22:35:10.771472456 +0200
|
|
||||||
@@ -0,0 +1,8 @@
|
|
||||||
+[Cinnamon Settings Plugin]
|
|
||||||
+Module=automount
|
|
||||||
+IAge=0
|
|
||||||
+_Name=Automount
|
|
||||||
+_Description=Automounter plugin
|
|
||||||
+Authors=Tomas Bzatek
|
|
||||||
+Copyright=Copyright © 2010 Red Hat, Inc.
|
|
||||||
+Website=
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/cinnamon-fallback-mount-helper.c cinnamon-settings-daemon-2.0.1/plugins/automount/cinnamon-fallback-mount-helper.c
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/cinnamon-fallback-mount-helper.c 2013-10-02 16:13:56.000000000 +0200
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/cinnamon-fallback-mount-helper.c 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
@@ -1,65 +0,0 @@
|
|
||||||
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
|
||||||
- *
|
|
||||||
- * Copyright (C) 2010 Red Hat, Inc.
|
|
||||||
- *
|
|
||||||
- * This program 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 program 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 program; if not, write to the Free Software
|
|
||||||
- * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
- *
|
|
||||||
- * Author: Tomas Bzatek <tbzatek@redhat.com>
|
|
||||||
- */
|
|
||||||
-
|
|
||||||
-#include "config.h"
|
|
||||||
-
|
|
||||||
-#include <glib.h>
|
|
||||||
-#include <glib/gi18n.h>
|
|
||||||
-#include <unistd.h>
|
|
||||||
-#include <gtk/gtk.h>
|
|
||||||
-
|
|
||||||
-#include "csd-automount-manager.h"
|
|
||||||
-
|
|
||||||
-int
|
|
||||||
-main (int argc,
|
|
||||||
- char **argv)
|
|
||||||
-{
|
|
||||||
- GMainLoop *loop;
|
|
||||||
- CsdAutomountManager *manager;
|
|
||||||
- GError *error = NULL;
|
|
||||||
-
|
|
||||||
- g_type_init ();
|
|
||||||
- gtk_init (&argc, &argv);
|
|
||||||
-
|
|
||||||
- bindtextdomain (GETTEXT_PACKAGE, CINNAMON_SETTINGS_LOCALEDIR);
|
|
||||||
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
|
|
||||||
- textdomain (GETTEXT_PACKAGE);
|
|
||||||
-
|
|
||||||
- loop = g_main_loop_new (NULL, FALSE);
|
|
||||||
- manager = csd_automount_manager_new ();
|
|
||||||
-
|
|
||||||
- csd_automount_manager_start (manager, &error);
|
|
||||||
-
|
|
||||||
- if (error != NULL) {
|
|
||||||
- g_printerr ("Unable to start the mount manager: %s",
|
|
||||||
- error->message);
|
|
||||||
-
|
|
||||||
- g_error_free (error);
|
|
||||||
- _exit (1);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- g_main_loop_run (loop);
|
|
||||||
-
|
|
||||||
- csd_automount_manager_stop (manager);
|
|
||||||
- g_main_loop_unref (loop);
|
|
||||||
-
|
|
||||||
- return 0;
|
|
||||||
-}
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/cinnamon-fallback-mount-helper.desktop.in.in cinnamon-settings-daemon-2.0.1/plugins/automount/cinnamon-fallback-mount-helper.desktop.in.in
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/cinnamon-fallback-mount-helper.desktop.in.in 2013-10-02 16:13:56.000000000 +0200
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/cinnamon-fallback-mount-helper.desktop.in.in 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
@@ -1,12 +0,0 @@
|
|
||||||
-[Desktop Entry]
|
|
||||||
-_Name=Mount Helper
|
|
||||||
-_Comment=Automount and autorun plugged devices
|
|
||||||
-Exec=@LIBEXECDIR@/cinnamon-fallback-mount-helper
|
|
||||||
-Icon=drive-optical
|
|
||||||
-Terminal=false
|
|
||||||
-Type=Application
|
|
||||||
-Categories=
|
|
||||||
-NoDisplay=true
|
|
||||||
-OnlyShowIn=GNOME;
|
|
||||||
-X-GNOME-Autostart-Notify=true
|
|
||||||
-
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/csd-automount-plugin.c cinnamon-settings-daemon-2.0.1/plugins/automount/csd-automount-plugin.c
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/csd-automount-plugin.c 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/csd-automount-plugin.c 2013-10-08 22:35:10.771472456 +0200
|
|
||||||
@@ -0,0 +1,106 @@
|
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
|
||||||
+ *
|
|
||||||
+ * Copyright (C) 2010 Red Hat, Inc.
|
|
||||||
+ *
|
|
||||||
+ * This program 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 program 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 program; if not, write to the Free Software
|
|
||||||
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
+ *
|
|
||||||
+ * Author: Tomas Bzatek <tbzatek@redhat.com>
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+#include "config.h"
|
|
||||||
+
|
|
||||||
+#include <glib/gi18n-lib.h>
|
|
||||||
+#include <gmodule.h>
|
|
||||||
+
|
|
||||||
+#include "cinnamon-settings-plugin.h"
|
|
||||||
+#include "csd-automount-plugin.h"
|
|
||||||
+#include "csd-automount-manager.h"
|
|
||||||
+
|
|
||||||
+struct CsdAutomountPluginPrivate {
|
|
||||||
+ CsdAutomountManager *manager;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+#define CSD_AUTOMOUNT_PLUGIN_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), CSD_TYPE_AUTOMOUNT_PLUGIN, CsdAutomountPluginPrivate))
|
|
||||||
+
|
|
||||||
+CINNAMON_SETTINGS_PLUGIN_REGISTER (CsdAutomountPlugin, csd_automount_plugin)
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+csd_automount_plugin_init (CsdAutomountPlugin *plugin)
|
|
||||||
+{
|
|
||||||
+ plugin->priv = CSD_AUTOMOUNT_PLUGIN_GET_PRIVATE (plugin);
|
|
||||||
+
|
|
||||||
+ g_debug ("Automount plugin initializing");
|
|
||||||
+
|
|
||||||
+ plugin->priv->manager = csd_automount_manager_new ();
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+csd_automount_plugin_finalize (GObject *object)
|
|
||||||
+{
|
|
||||||
+ CsdAutomountPlugin *plugin;
|
|
||||||
+
|
|
||||||
+ g_return_if_fail (object != NULL);
|
|
||||||
+ g_return_if_fail (CSD_IS_AUTOMOUNT_PLUGIN (object));
|
|
||||||
+
|
|
||||||
+ g_debug ("Automount plugin finalizing");
|
|
||||||
+
|
|
||||||
+ plugin = CSD_AUTOMOUNT_PLUGIN (object);
|
|
||||||
+
|
|
||||||
+ g_return_if_fail (plugin->priv != NULL);
|
|
||||||
+
|
|
||||||
+ if (plugin->priv->manager != NULL) {
|
|
||||||
+ g_object_unref (plugin->priv->manager);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ G_OBJECT_CLASS (csd_automount_plugin_parent_class)->finalize (object);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+impl_activate (CinnamonSettingsPlugin *plugin)
|
|
||||||
+{
|
|
||||||
+ gboolean res;
|
|
||||||
+ GError *error;
|
|
||||||
+
|
|
||||||
+ g_debug ("Activating automount plugin");
|
|
||||||
+
|
|
||||||
+ error = NULL;
|
|
||||||
+ res = csd_automount_manager_start (CSD_AUTOMOUNT_PLUGIN (plugin)->priv->manager, &error);
|
|
||||||
+ if (! res) {
|
|
||||||
+ g_warning ("Unable to start automount manager: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+impl_deactivate (CinnamonSettingsPlugin *plugin)
|
|
||||||
+{
|
|
||||||
+ g_debug ("Deactivating automount plugin");
|
|
||||||
+ csd_automount_manager_stop (CSD_AUTOMOUNT_PLUGIN (plugin)->priv->manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+csd_automount_plugin_class_init (CsdAutomountPluginClass *klass)
|
|
||||||
+{
|
|
||||||
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
|
||||||
+ CinnamonSettingsPluginClass *plugin_class = CINNAMON_SETTINGS_PLUGIN_CLASS (klass);
|
|
||||||
+
|
|
||||||
+ object_class->finalize = csd_automount_plugin_finalize;
|
|
||||||
+
|
|
||||||
+ plugin_class->activate = impl_activate;
|
|
||||||
+ plugin_class->deactivate = impl_deactivate;
|
|
||||||
+
|
|
||||||
+ g_type_class_add_private (klass, sizeof (CsdAutomountPluginPrivate));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/csd-automount-plugin.h cinnamon-settings-daemon-2.0.1/plugins/automount/csd-automount-plugin.h
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/csd-automount-plugin.h 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/csd-automount-plugin.h 2013-10-08 22:35:10.771472456 +0200
|
|
||||||
@@ -0,0 +1,60 @@
|
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
|
||||||
+ *
|
|
||||||
+ * Copyright (C) 2010 Red Hat, Inc.
|
|
||||||
+ *
|
|
||||||
+ * This program 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 program 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 program; if not, write to the Free Software
|
|
||||||
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
+ *
|
|
||||||
+ * Author: Tomas Bzatek <tbzatek@redhat.com>
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+#ifndef __CSD_AUTOMOUNT_PLUGIN_H__
|
|
||||||
+#define __CSD_AUTOMOUNT_PLUGIN_H__
|
|
||||||
+
|
|
||||||
+#include <glib.h>
|
|
||||||
+#include <glib-object.h>
|
|
||||||
+#include <gmodule.h>
|
|
||||||
+
|
|
||||||
+#include "cinnamon-settings-plugin.h"
|
|
||||||
+
|
|
||||||
+G_BEGIN_DECLS
|
|
||||||
+
|
|
||||||
+#define CSD_TYPE_AUTOMOUNT_PLUGIN (csd_automount_plugin_get_type ())
|
|
||||||
+#define CSD_AUTOMOUNT_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), CSD_TYPE_AUTOMOUNT_PLUGIN, CsdAutomountPlugin))
|
|
||||||
+#define CSD_AUTOMOUNT_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), CSD_TYPE_AUTOMOUNT_PLUGIN, CsdAutomountPluginClass))
|
|
||||||
+#define CSD_IS_AUTOMOUNT_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), CSD_TYPE_AUTOMOUNT_PLUGIN))
|
|
||||||
+#define CSD_IS_AUTOMOUNT_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), CSD_TYPE_AUTOMOUNT_PLUGIN))
|
|
||||||
+#define CSD_AUTOMOUNT_PLUGIN_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), CSD_TYPE_AUTOMOUNT_PLUGIN, CsdAutomountPluginClass))
|
|
||||||
+
|
|
||||||
+typedef struct CsdAutomountPluginPrivate CsdAutomountPluginPrivate;
|
|
||||||
+
|
|
||||||
+typedef struct
|
|
||||||
+{
|
|
||||||
+ CinnamonSettingsPlugin parent;
|
|
||||||
+ CsdAutomountPluginPrivate *priv;
|
|
||||||
+} CsdAutomountPlugin;
|
|
||||||
+
|
|
||||||
+typedef struct
|
|
||||||
+{
|
|
||||||
+ CinnamonSettingsPluginClass parent_class;
|
|
||||||
+} CsdAutomountPluginClass;
|
|
||||||
+
|
|
||||||
+GType csd_automount_plugin_get_type (void) G_GNUC_CONST;
|
|
||||||
+
|
|
||||||
+/* All the plugins must implement this function */
|
|
||||||
+G_MODULE_EXPORT GType register_cinnamon_settings_plugin (GTypeModule *module);
|
|
||||||
+
|
|
||||||
+G_END_DECLS
|
|
||||||
+
|
|
||||||
+#endif /* __CSD_AUTOMOUNT_PLUGIN_H__ */
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/Makefile.am cinnamon-settings-daemon-2.0.1/plugins/automount/Makefile.am
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/Makefile.am 2013-10-02 16:13:56.000000000 +0200
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/Makefile.am 2013-10-08 22:48:19.240865461 +0200
|
|
||||||
@@ -1,38 +1,87 @@
|
|
||||||
-libexec_PROGRAMS = cinnamon-fallback-mount-helper
|
|
||||||
+NULL =
|
|
||||||
|
|
||||||
-cinnamon_fallback_mount_helper_SOURCES = \
|
|
||||||
- cinnamon-fallback-mount-helper.c \
|
|
||||||
- csd-automount-manager.c \
|
|
||||||
- csd-automount-manager.h \
|
|
||||||
- csd-autorun.c \
|
|
||||||
- csd-autorun.h
|
|
||||||
+plugin_name = automount
|
|
||||||
|
|
||||||
-cinnamon_fallback_mount_helper_CPPFLAGS = \
|
|
||||||
+libexec_PROGRAMS = csd-test-automount
|
|
||||||
+
|
|
||||||
+csd_test_automount_SOURCES = \
|
|
||||||
+ test-automount.c \
|
|
||||||
+ csd-automount-manager.h \
|
|
||||||
+ csd-automount-manager.c \
|
|
||||||
+ csd-autorun.c \
|
|
||||||
+ csd-autorun.h \
|
|
||||||
+ $(NULL)
|
|
||||||
+
|
|
||||||
+csd_test_automount_CPPFLAGS = \
|
|
||||||
-I$(top_srcdir)/cinnamon-settings-daemon \
|
|
||||||
+ -I$(top_srcdir)/plugins/common \
|
|
||||||
-DCINNAMON_SETTINGS_LOCALEDIR=\""$(datadir)/locale"\" \
|
|
||||||
$(AM_CPPFLAGS)
|
|
||||||
|
|
||||||
-cinnamon_fallback_mount_helper_CFLAGS = \
|
|
||||||
+csd_test_automount_CFLAGS = \
|
|
||||||
+ $(PLUGIN_CFLAGS) \
|
|
||||||
$(SETTINGS_PLUGIN_CFLAGS) \
|
|
||||||
$(SYSTEMD_CFLAGS) \
|
|
||||||
$(AUTOMOUNT_CFLAGS)
|
|
||||||
+ $(AM_CFLAGS)
|
|
||||||
+
|
|
||||||
+csd_test_automount_LDADD = \
|
|
||||||
+ $(top_builddir)/cinnamon-settings-daemon/libcsd.la \
|
|
||||||
+ $(SETTINGS_PLUGIN_LIBS) \
|
|
||||||
+ $(SYSTEMD_LIBS) \
|
|
||||||
+ $(AUTOMOUNT_LIBS) \
|
|
||||||
+ $(NULL)
|
|
||||||
+
|
|
||||||
+plugin_LTLIBRARIES = \
|
|
||||||
+ libautomount.la \
|
|
||||||
+ $(NULL)
|
|
||||||
+
|
|
||||||
+libautomount_la_SOURCES = \
|
|
||||||
+ csd-automount-plugin.h \
|
|
||||||
+ csd-automount-plugin.c \
|
|
||||||
+ csd-automount-manager.h \
|
|
||||||
+ csd-automount-manager.c \
|
|
||||||
+ csd-autorun.c \
|
|
||||||
+ csd-autorun.h \
|
|
||||||
+ $(NULL)
|
|
||||||
+
|
|
||||||
+libautomount_la_CPPFLAGS = \
|
|
||||||
+ -I$(top_srcdir)/cinnamon-settings-daemon \
|
|
||||||
+ -DCINNAMON_SETTINGS_LOCALEDIR=\""$(datadir)/locale"\" \
|
|
||||||
+ $(AM_CPPFLAGS)
|
|
||||||
+
|
|
||||||
+libautomount_la_CFLAGS = \
|
|
||||||
+ $(SETTINGS_PLUGIN_CFLAGS) \
|
|
||||||
+ $(SYSTEMD_CFLAGS) \
|
|
||||||
+ $(AUTOMOUNT_CFLAGS) \
|
|
||||||
+ $(AM_CFLAGS)
|
|
||||||
+
|
|
||||||
+libautomount_la_LDFLAGS = \
|
|
||||||
+ $(CSD_PLUGIN_LDFLAGS) \
|
|
||||||
+ $(NULL)
|
|
||||||
|
|
||||||
-cinnamon_fallback_mount_helper_LDADD = \
|
|
||||||
+libautomount_la_LIBADD = \
|
|
||||||
$(SETTINGS_PLUGIN_LIBS) \
|
|
||||||
$(SYSTEMD_LIBS) \
|
|
||||||
$(AUTOMOUNT_LIBS) \
|
|
||||||
- $(top_builddir)/cinnamon-settings-daemon/libcsd.la
|
|
||||||
+ $(NULL)
|
|
||||||
|
|
||||||
-autostartdir = $(datadir)/applications
|
|
||||||
-autostart_in_files = cinnamon-fallback-mount-helper.desktop.in
|
|
||||||
-autostart_in_in_files = cinnamon-fallback-mount-helper.desktop.in.in
|
|
||||||
-autostart_DATA = $(autostart_in_files:.desktop.in=.desktop)
|
|
||||||
+plugin_in_files = \
|
|
||||||
+ automount.cinnamon-settings-plugin.in \
|
|
||||||
+ $(NULL)
|
|
||||||
|
|
||||||
-$(autostart_in_files): $(autostart_in_in_files)
|
|
||||||
- @sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@
|
|
||||||
+plugin_DATA = $(plugin_in_files:.cinnamon-settings-plugin.in=.cinnamon-settings-plugin)
|
|
||||||
|
|
||||||
-@INTLTOOL_DESKTOP_RULE@
|
|
||||||
+EXTRA_DIST = \
|
|
||||||
+ $(plugin_in_files) \
|
|
||||||
+ $(NULL)
|
|
||||||
|
|
||||||
-EXTRA_DIST = $(autostart_in_in_files)
|
|
||||||
+CLEANFILES = \
|
|
||||||
+ $(plugin_DATA) \
|
|
||||||
+ $(NULL)
|
|
||||||
|
|
||||||
-CLEANFILES = $(autostart_DATA) $(autostart_in_files)
|
|
||||||
+DISTCLEANFILES = \
|
|
||||||
+ $(plugin_DATA) \
|
|
||||||
+ $(NULL)
|
|
||||||
+
|
|
||||||
+@CSD_INTLTOOL_PLUGIN_RULE@
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/plugins/automount/test-automount.c cinnamon-settings-daemon-2.0.1/plugins/automount/test-automount.c
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/plugins/automount/test-automount.c 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/plugins/automount/test-automount.c 2013-10-08 22:42:53.759486525 +0200
|
|
||||||
@@ -0,0 +1,7 @@
|
|
||||||
+#define NEW csd_automount_manager_new
|
|
||||||
+#define START csd_automount_manager_start
|
|
||||||
+#define STOP csd_automount_manager_stop
|
|
||||||
+#define MANAGER CsdAutomountManager
|
|
||||||
+#include "csd-automount-manager.h"
|
|
||||||
+
|
|
||||||
+#include "test-plugin.h"
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/po/POTFILES.in cinnamon-settings-daemon-2.0.1/po/POTFILES.in
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/po/POTFILES.in 2013-10-02 16:13:56.000000000 +0200
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/po/POTFILES.in 2013-10-08 22:35:10.771472456 +0200
|
|
||||||
@@ -18,8 +18,9 @@
|
|
||||||
plugins/a11y-keyboard/csd-a11y-preferences-dialog.c
|
|
||||||
[type: gettext/glade]plugins/a11y-keyboard/csd-a11y-preferences-dialog.ui
|
|
||||||
[type: gettext/ini]plugins/a11y-settings/a11y-settings.cinnamon-settings-plugin.in
|
|
||||||
-plugins/automount/cinnamon-fallback-mount-helper.desktop.in.in
|
|
||||||
+[type: gettext/ini]plugins/automount/automount.cinnamon-settings-plugin.in
|
|
||||||
plugins/automount/csd-automount-manager.c
|
|
||||||
+plugins/automount/csd-automount-plugin.c
|
|
||||||
plugins/automount/csd-autorun.c
|
|
||||||
[type: gettext/ini]plugins/background/background.cinnamon-settings-plugin.in
|
|
||||||
[type: gettext/ini]plugins/clipboard/clipboard.cinnamon-settings-plugin.in
|
|
||||||
diff -Naur cinnamon-settings-daemon-2.0.1.orig/po/POTFILES.skip cinnamon-settings-daemon-2.0.1/po/POTFILES.skip
|
|
||||||
--- cinnamon-settings-daemon-2.0.1.orig/po/POTFILES.skip 2013-10-02 16:13:56.000000000 +0200
|
|
||||||
+++ cinnamon-settings-daemon-2.0.1/po/POTFILES.skip 2013-10-08 22:37:20.224645009 +0200
|
|
||||||
@@ -20,6 +20,5 @@
|
|
||||||
data/org.cinnamon.settings-daemon.plugins.updates.gschema.xml.in
|
|
||||||
data/org.cinnamon.settings-daemon.plugins.xrandr.gschema.xml.in
|
|
||||||
data/org.cinnamon.settings-daemon.plugins.xsettings.gschema.xml.in
|
|
||||||
-plugins/automount/gnome-fallback-mount-helper.desktop.in
|
|
||||||
plugins/power/org.cinnamon.settings-daemon.plugins.power.policy.in
|
|
||||||
plugins/wacom/org.cinnamon.settings-daemon.plugins.wacom.policy.in
|
|
@ -1,41 +0,0 @@
|
|||||||
|
|
||||||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, glib, gettext, gnome_common, cinnamon-desktop, intltool, libxslt, gtk3, libnotify,
|
|
||||||
gnome-menus, libxml2, systemd, upower, cinnamon-settings-daemon, colord, polkit, ibus, libcanberra_gtk3, libpulseaudio, isocodes, kerberos,
|
|
||||||
libxkbfile}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "2.0.9";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "cinnamon-control-center-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/cinnamon-control-center/archive/${version}.tar.gz";
|
|
||||||
sha256 = "0kivqdgsf8w257j2ja6fap0dpvljcnb9gphr3knp7y6ma2d1gfv3";
|
|
||||||
};
|
|
||||||
|
|
||||||
configureFlags = "--enable-systemd --disable-update-mimedb" ;
|
|
||||||
|
|
||||||
patches = [ ./region.patch];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
pkgconfig autoreconfHook
|
|
||||||
glib gettext gnome_common
|
|
||||||
intltool libxslt gtk3 cinnamon-desktop
|
|
||||||
libnotify gnome-menus libxml2 systemd
|
|
||||||
upower cinnamon-settings-daemon colord
|
|
||||||
polkit ibus libcanberra_gtk3 libpulseaudio
|
|
||||||
isocodes kerberos libxkbfile ];
|
|
||||||
|
|
||||||
preBuild = "patchShebangs ./scripts";
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "The cinnamon session files" ;
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,42 +0,0 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, intltool
|
|
||||||
, glib, gobjectIntrospection, gdk_pixbuf, gtk3, gnome_common
|
|
||||||
, xorg, xkeyboard_config
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "2.0.4";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "cinnamon-desktop-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/cinnamon-desktop/archive/${version}.tar.gz";
|
|
||||||
sha256 = "1cywin712558pv58c0cr73m25hfcv5x8pv5frvqjr9gwr2gpi6h3";
|
|
||||||
};
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-I${glib}/include/gio-unix-2.0";
|
|
||||||
|
|
||||||
buildInputs = with xorg; [
|
|
||||||
pkgconfig autoreconfHook intltool
|
|
||||||
glib gobjectIntrospection gdk_pixbuf gtk3 gnome_common
|
|
||||||
xkeyboard_config libxkbfile libX11 libXrandr libXext
|
|
||||||
];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "Library and data for various Cinnamon modules";
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
The libcinnamon-desktop library provides API shared by several applications
|
|
||||||
on the desktop, but that cannot live in the platform for various
|
|
||||||
reasons. There is no API or ABI guarantee, although we are doing our
|
|
||||||
best to provide stability. Documentation for the API is available with
|
|
||||||
gtk-doc.
|
|
||||||
'';
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,49 +0,0 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, glib, gettext, gnome_common, gtk3, dbus_glib
|
|
||||||
, upower, json_glib,intltool, systemd, hicolor_icon_theme, xorg, makeWrapper, cinnamon-desktop }:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "2.0.6";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "cinnamon-session-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/cinnamon-session/archive/${version}.tar.gz";
|
|
||||||
sha256 = "0rs5w7npj3wf3gkk3sfb83awks2h7vjd6cz8mvfgbh6m3grn66l3";
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
configureFlags = "--enable-systemd --disable-gconf" ;
|
|
||||||
|
|
||||||
patches = [ ./remove-sessionmigration.patch ./timeout.patch];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
pkgconfig autoreconfHook
|
|
||||||
glib gettext gnome_common
|
|
||||||
gtk3 dbus_glib upower json_glib
|
|
||||||
intltool systemd xorg.xtrans
|
|
||||||
makeWrapper
|
|
||||||
cinnamon-desktop /*gschemas*/
|
|
||||||
];
|
|
||||||
|
|
||||||
preBuild = "patchShebangs ./scripts";
|
|
||||||
|
|
||||||
|
|
||||||
postFixup = ''
|
|
||||||
rm $out/share/icons/hicolor/icon-theme.cache
|
|
||||||
|
|
||||||
for f in "$out/bin/"*; do
|
|
||||||
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "The cinnamon session files" ;
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,53 +0,0 @@
|
|||||||
|
|
||||||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, glib, gettext, gnome_common, cinnamon-desktop, intltool, gtk3,
|
|
||||||
libnotify, lcms2, libxklavier, libgnomekbd, libcanberra, libpulseaudio, upower, libcanberra_gtk3, colord,
|
|
||||||
systemd, libxslt, docbook_xsl, makeWrapper, gsettings_desktop_schemas}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "2.0.10";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "cinnamon-settings-daemon-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/cinnamon-settings-daemon/archive/${version}.tar.gz";
|
|
||||||
sha256 = "10r75xsngb7ipv9fy07dyfb256bqybzcxbwny60sgjhrksk3v9mg";
|
|
||||||
};
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-I${glib}/include/gio-unix-2.0";
|
|
||||||
|
|
||||||
configureFlags = "--enable-systemd" ;
|
|
||||||
|
|
||||||
patches = [ ./systemd-support.patch ./automount-plugin.patch ./dpms.patch];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
pkgconfig autoreconfHook
|
|
||||||
glib gettext gnome_common
|
|
||||||
intltool gtk3 libnotify lcms2
|
|
||||||
libgnomekbd libxklavier colord
|
|
||||||
libcanberra libpulseaudio upower
|
|
||||||
libcanberra_gtk3 cinnamon-desktop
|
|
||||||
systemd libxslt docbook_xsl makeWrapper
|
|
||||||
gsettings_desktop_schemas
|
|
||||||
];
|
|
||||||
|
|
||||||
preBuild = "patchShebangs ./scripts";
|
|
||||||
|
|
||||||
#ToDo: missing org.cinnamon.gschema.xml, probably not packaged yet
|
|
||||||
postFixup = ''
|
|
||||||
for f in "$out/libexec/"*; do
|
|
||||||
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "The cinnamon session files" ;
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
{ stdenv, fetchurl }:
|
|
||||||
let
|
|
||||||
version = "2.0.3";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "cinnamon-translations-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/cinnamon-translations/archive/${version}.tar.gz";
|
|
||||||
sha256 = "07w3v118xrfp8r4dkbdiyd1vr9ah7f3bm2zw9wag9s8l8x0zfxgc";
|
|
||||||
};
|
|
||||||
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
mkdir -pv $out/share/cinnamon/locale
|
|
||||||
cp -av "mo-export/"* $out/share/cinnamon/locale/
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "Translations files for the Cinnamon desktop" ;
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,42 +0,0 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, python
|
|
||||||
, dbus_glib, cairo, spidermonkey_185, gobjectIntrospection
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version="2.0.0";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "cjs-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/cjs/archive/${version}.tar.gz";
|
|
||||||
sha256 = "16iazd5h2z27v9jxs4a8imwls5c1c690wk7i05r5ds3c3r4nrsig";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
pkgconfig autoreconfHook python
|
|
||||||
dbus_glib cairo spidermonkey_185
|
|
||||||
gobjectIntrospection
|
|
||||||
];
|
|
||||||
|
|
||||||
preBuild = "patchShebangs ./scripts";
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "JavaScript bindings for Cinnamon" ;
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
This module contains JavaScript bindings based on gobject-introspection.
|
|
||||||
|
|
||||||
Because JavaScript is pretty free-form, consistent coding style and unit tests
|
|
||||||
are critical to give it some structure and keep it readable.
|
|
||||||
We propose that all GNOME usage of JavaScript conform to the style guide
|
|
||||||
in doc/Style_Guide.txt to help keep things sane.
|
|
||||||
'';
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
|
|
||||||
-- a/plugins/power/csd-power-manager.c
|
|
||||||
+++ b/plugins/power/csd-power-manager.c
|
|
||||||
@@ -33,6 +33,8 @@
|
|
||||||
#include <libnotify/notify.h>
|
|
||||||
#include <canberra-gtk.h>
|
|
||||||
|
|
||||||
+#include <X11/extensions/dpms.h>
|
|
||||||
+
|
|
||||||
#define GNOME_DESKTOP_USE_UNSTABLE_API
|
|
||||||
#include <libcinnamon-desktop/gnome-rr.h>
|
|
||||||
|
|
||||||
@@ -3967,6 +3790,17 @@ csd_power_manager_start (CsdPowerManager
|
|
||||||
/* set the initial dim time that can adapt for the user */
|
|
||||||
refresh_idle_dim_settings (manager);
|
|
||||||
|
|
||||||
+ /* Make sure that Xorg's DPMS extension never gets in our way. The defaults seem to have changed in Xorg 1.14
|
|
||||||
+ * being "0" by default to being "600" by default
|
|
||||||
+ * https://bugzilla.gnome.org/show_bug.cgi?id=709114
|
|
||||||
+ */
|
|
||||||
+ gdk_error_trap_push ();
|
|
||||||
+ int dummy;
|
|
||||||
+ if (DPMSQueryExtension(GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), &dummy, &dummy)) {
|
|
||||||
+ DPMSSetTimeouts (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), 0, 0, 0);
|
|
||||||
+ }
|
|
||||||
+ gdk_error_trap_pop_ignored ();
|
|
||||||
+
|
|
||||||
manager->priv->xscreensaver_watchdog_timer_id = g_timeout_add_seconds (XSCREENSAVER_WATCHDOG_TIMEOUT,
|
|
||||||
disable_builtin_screensaver,
|
|
||||||
NULL);
|
|
@ -1,41 +0,0 @@
|
|||||||
--- a/src/meta/prefs.h
|
|
||||||
+++ b/src/meta/prefs.h
|
|
||||||
@@ -310,13 +310,13 @@ typedef struct
|
|
||||||
*/
|
|
||||||
GSList *bindings;
|
|
||||||
|
|
||||||
- /** for keybindings that can have shift or not like Alt+Tab */
|
|
||||||
+ /* for keybindings that can have shift or not like Alt+Tab */
|
|
||||||
gboolean add_shift:1;
|
|
||||||
|
|
||||||
- /** for keybindings that apply only to a window */
|
|
||||||
+ /* for keybindings that apply only to a window */
|
|
||||||
gboolean per_window:1;
|
|
||||||
|
|
||||||
- /** for keybindings not added with meta_display_add_keybinding() */
|
|
||||||
+ /* for keybindings not added with meta_display_add_keybinding() */
|
|
||||||
gboolean builtin:1;
|
|
||||||
} MetaKeyPref;
|
|
||||||
|
|
||||||
@@ -339,5 +339,3 @@ CDesktopVisualBellType meta_prefs_get_vi
|
|
||||||
MetaPlacementMode meta_prefs_get_placement_mode (void);
|
|
||||||
|
|
||||||
#endif
|
|
||||||
-
|
|
||||||
-
|
|
||||||
--- a/src/core/workspace.c
|
|
||||||
+++ b/src/core/workspace.c
|
|
||||||
@@ -194,7 +194,7 @@ meta_workspace_new (MetaScreen *screen)
|
|
||||||
return workspace;
|
|
||||||
}
|
|
||||||
|
|
||||||
-/** Foreach function for workspace_free_struts() */
|
|
||||||
+/* Foreach function for workspace_free_struts() */
|
|
||||||
static void
|
|
||||||
free_this (gpointer candidate, gpointer dummy)
|
|
||||||
{
|
|
||||||
@@ -1390,4 +1390,3 @@ meta_workspace_get_screen (MetaWorkspace
|
|
||||||
{
|
|
||||||
return workspace->screen;
|
|
||||||
}
|
|
||||||
-
|
|
File diff suppressed because it is too large
Load Diff
@ -1,47 +0,0 @@
|
|||||||
|
|
||||||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, glib, gettext, gnome_common, gtk3,intltool,
|
|
||||||
cinnamon-desktop, clutter, cogl, zenity, python, gnome_doc_utils, makeWrapper}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "2.0.5";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "muffin-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://github.com/linuxmint/muffin/archive/${version}.tar.gz";
|
|
||||||
sha256 = "1vn7shxwyxsa6dd3zldrnc0095i1y0rq0944n8kak3m85r2pv9c1";
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
configureFlags = "--enable-compile-warnings=minium" ;
|
|
||||||
|
|
||||||
patches = [./gtkdoc.patch];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
pkgconfig autoreconfHook
|
|
||||||
glib gettext gnome_common
|
|
||||||
gtk3 intltool cinnamon-desktop
|
|
||||||
clutter cogl zenity python
|
|
||||||
gnome_doc_utils makeWrapper];
|
|
||||||
|
|
||||||
preBuild = "patchShebangs ./scripts";
|
|
||||||
|
|
||||||
|
|
||||||
postFixup = ''
|
|
||||||
|
|
||||||
for f in "$out/bin/"*; do
|
|
||||||
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://cinnamon.linuxmint.com";
|
|
||||||
description = "The cinnamon session files" ;
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.roelof ];
|
|
||||||
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load Diff
@ -1,19 +0,0 @@
|
|||||||
--- a/cinnamon-session/csm-session-fill.c
|
|
||||||
+++ b/cinnamon-session/csm-session-fill.c
|
|
||||||
@@ -228,15 +228,6 @@
|
|
||||||
load_standard_apps (CsmManager *manager,
|
|
||||||
GKeyFile *keyfile)
|
|
||||||
{
|
|
||||||
- GError *error;
|
|
||||||
-
|
|
||||||
- g_debug ("fill: *** Executing user migration");
|
|
||||||
- error = NULL;
|
|
||||||
- if(!g_spawn_command_line_sync ("session-migration", NULL, NULL, NULL, &error)) {
|
|
||||||
- g_warning ("Error while executing session-migration: %s", error->message);
|
|
||||||
- g_error_free (error);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
g_debug ("fill: *** Adding required components");
|
|
||||||
handle_required_components (keyfile, !csm_manager_get_failsafe (manager),
|
|
||||||
append_required_components_helper, manager);
|
|
||||||
|
|
@ -1,536 +0,0 @@
|
|||||||
|
|
||||||
diff --git a/plugins/media-keys/csd-media-keys-manager.c b/plugins/media-keys/csd-media-keys-manager.c
|
|
||||||
index 02930a3..7c1c519 100644
|
|
||||||
--- a/plugins/media-keys/csd-media-keys-manager.c
|
|
||||||
+++ b/plugins/media-keys/csd-media-keys-manager.c
|
|
||||||
@@ -39,6 +39,7 @@
|
|
||||||
#include <gdk/gdkx.h>
|
|
||||||
#include <gtk/gtk.h>
|
|
||||||
#include <gio/gdesktopappinfo.h>
|
|
||||||
+#include <gio/gunixfdlist.h>
|
|
||||||
|
|
||||||
#ifdef HAVE_GUDEV
|
|
||||||
#include <gudev/gudev.h>
|
|
||||||
@@ -121,6 +122,10 @@ static const gchar kb_introspection_xml[] =
|
|
||||||
#define VOLUME_STEP 5 /* percents for one volume button press */
|
|
||||||
#define MAX_VOLUME 65536.0
|
|
||||||
|
|
||||||
+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
|
|
||||||
+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
|
|
||||||
+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
|
|
||||||
+
|
|
||||||
#define CSD_MEDIA_KEYS_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), CSD_TYPE_MEDIA_KEYS_MANAGER, CsdMediaKeysManagerPrivate))
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
@@ -167,6 +172,10 @@ struct CsdMediaKeysManagerPrivate
|
|
||||||
GDBusProxy *power_screen_proxy;
|
|
||||||
GDBusProxy *power_keyboard_proxy;
|
|
||||||
|
|
||||||
+ /* systemd stuff */
|
|
||||||
+ GDBusProxy *logind_proxy;
|
|
||||||
+ gint inhibit_keys_fd;
|
|
||||||
+
|
|
||||||
/* Multihead stuff */
|
|
||||||
GdkScreen *current_screen;
|
|
||||||
GSList *screens;
|
|
||||||
@@ -2213,6 +2222,11 @@ csd_media_keys_manager_stop (CsdMediaKeysManager *manager)
|
|
||||||
}
|
|
||||||
#endif /* HAVE_GUDEV */
|
|
||||||
|
|
||||||
+ if (priv->logind_proxy) {
|
|
||||||
+ g_object_unref (priv->logind_proxy);
|
|
||||||
+ priv->logind_proxy = NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (priv->settings) {
|
|
||||||
g_object_unref (priv->settings);
|
|
||||||
priv->settings = NULL;
|
|
||||||
@@ -2356,9 +2370,85 @@ csd_media_keys_manager_class_init (CsdMediaKeysManagerClass *klass)
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
+inhibit_done (GObject *source,
|
|
||||||
+ GAsyncResult *result,
|
|
||||||
+ gpointer user_data)
|
|
||||||
+{
|
|
||||||
+ GDBusProxy *proxy = G_DBUS_PROXY (source);
|
|
||||||
+ CsdMediaKeysManager *manager = CSD_MEDIA_KEYS_MANAGER (user_data);
|
|
||||||
+ GError *error = NULL;
|
|
||||||
+ GVariant *res;
|
|
||||||
+ GUnixFDList *fd_list = NULL;
|
|
||||||
+ gint idx;
|
|
||||||
+
|
|
||||||
+ res = g_dbus_proxy_call_with_unix_fd_list_finish (proxy, &fd_list, result, &error);
|
|
||||||
+ if (res == NULL) {
|
|
||||||
+ g_warning ("Unable to inhibit keypresses: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ } else {
|
|
||||||
+ g_variant_get (res, "(h)", &idx);
|
|
||||||
+ manager->priv->inhibit_keys_fd = g_unix_fd_list_get (fd_list, idx, &error);
|
|
||||||
+ if (manager->priv->inhibit_keys_fd == -1) {
|
|
||||||
+ g_warning ("Failed to receive system inhibitor fd: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ }
|
|
||||||
+ g_debug ("System inhibitor fd is %d", manager->priv->inhibit_keys_fd);
|
|
||||||
+ g_object_unref (fd_list);
|
|
||||||
+ g_variant_unref (res);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
csd_media_keys_manager_init (CsdMediaKeysManager *manager)
|
|
||||||
{
|
|
||||||
+ GError *error;
|
|
||||||
+ GDBusConnection *bus;
|
|
||||||
+
|
|
||||||
+ error = NULL;
|
|
||||||
manager->priv = CSD_MEDIA_KEYS_MANAGER_GET_PRIVATE (manager);
|
|
||||||
+
|
|
||||||
+ bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error);
|
|
||||||
+ if (bus == NULL) {
|
|
||||||
+ g_warning ("Failed to connect to system bus: %s",
|
|
||||||
+ error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ manager->priv->logind_proxy =
|
|
||||||
+ g_dbus_proxy_new_sync (bus,
|
|
||||||
+ 0,
|
|
||||||
+ NULL,
|
|
||||||
+ SYSTEMD_DBUS_NAME,
|
|
||||||
+ SYSTEMD_DBUS_PATH,
|
|
||||||
+ SYSTEMD_DBUS_INTERFACE,
|
|
||||||
+ NULL,
|
|
||||||
+ &error);
|
|
||||||
+
|
|
||||||
+ if (manager->priv->logind_proxy == NULL) {
|
|
||||||
+ g_warning ("Failed to connect to systemd: %s",
|
|
||||||
+ error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ g_object_unref (bus);
|
|
||||||
+
|
|
||||||
+ g_debug ("Adding system inhibitors for power keys");
|
|
||||||
+ manager->priv->inhibit_keys_fd = -1;
|
|
||||||
+ g_dbus_proxy_call_with_unix_fd_list (manager->priv->logind_proxy,
|
|
||||||
+ "Inhibit",
|
|
||||||
+ g_variant_new ("(ssss)",
|
|
||||||
+ "handle-power-key:handle-suspend-key:handle-hibernate-key",
|
|
||||||
+ g_get_user_name (),
|
|
||||||
+ "Cinnamon handling keypresses",
|
|
||||||
+ "block"),
|
|
||||||
+ 0,
|
|
||||||
+ G_MAXINT,
|
|
||||||
+ NULL,
|
|
||||||
+ NULL,
|
|
||||||
+ inhibit_done,
|
|
||||||
+ manager);
|
|
||||||
+
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
@@ -2375,6 +2465,8 @@ csd_media_keys_manager_finalize (GObject *object)
|
|
||||||
|
|
||||||
if (media_keys_manager->priv->start_idle_id != 0)
|
|
||||||
g_source_remove (media_keys_manager->priv->start_idle_id);
|
|
||||||
+ if (media_keys_manager->priv->inhibit_keys_fd != -1)
|
|
||||||
+ close (media_keys_manager->priv->inhibit_keys_fd);
|
|
||||||
|
|
||||||
G_OBJECT_CLASS (csd_media_keys_manager_parent_class)->finalize (object);
|
|
||||||
}
|
|
||||||
diff --git a/plugins/power/csd-power-manager.c b/plugins/power/csd-power-manager.c
|
|
||||||
index b54cb5b..b9c5429 100644
|
|
||||||
--- a/plugins/power/csd-power-manager.c
|
|
||||||
+++ b/plugins/power/csd-power-manager.c
|
|
||||||
@@ -32,6 +32,7 @@
|
|
||||||
#include <libupower-glib/upower.h>
|
|
||||||
#include <libnotify/notify.h>
|
|
||||||
#include <canberra-gtk.h>
|
|
||||||
+#include <gio/gunixfdlist.h>
|
|
||||||
|
|
||||||
#include <X11/extensions/dpms.h>
|
|
||||||
|
|
||||||
@@ -79,6 +80,10 @@
|
|
||||||
#define CSD_POWER_MANAGER_CRITICAL_ALERT_TIMEOUT 5 /* seconds */
|
|
||||||
#define CSD_POWER_MANAGER_LID_CLOSE_SAFETY_TIMEOUT 30 /* seconds */
|
|
||||||
|
|
||||||
+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
|
|
||||||
+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
|
|
||||||
+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
|
|
||||||
+
|
|
||||||
/* Keep this in sync with gnome-shell */
|
|
||||||
#define SCREENSAVER_FADE_TIME 10 /* seconds */
|
|
||||||
|
|
||||||
@@ -203,6 +208,13 @@ struct CsdPowerManagerPrivate
|
|
||||||
GtkStatusIcon *status_icon;
|
|
||||||
guint xscreensaver_watchdog_timer_id;
|
|
||||||
gboolean is_virtual_machine;
|
|
||||||
+
|
|
||||||
+ /* systemd stuff */
|
|
||||||
+ GDBusProxy *logind_proxy;
|
|
||||||
+ gint inhibit_lid_switch_fd;
|
|
||||||
+ gboolean inhibit_lid_switch_taken;
|
|
||||||
+ gint inhibit_suspend_fd;
|
|
||||||
+ gboolean inhibit_suspend_taken;
|
|
||||||
};
|
|
||||||
|
|
||||||
enum {
|
|
||||||
@@ -3350,30 +3362,6 @@ lock_screensaver (CsdPowerManager *manager)
|
|
||||||
if (!do_lock)
|
|
||||||
return;
|
|
||||||
|
|
||||||
- /* connect to the screensaver first */
|
|
||||||
- g_dbus_proxy_new_for_bus (G_BUS_TYPE_SESSION,
|
|
||||||
- G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
|
|
||||||
- NULL,
|
|
||||||
- GS_DBUS_NAME,
|
|
||||||
- GS_DBUS_PATH,
|
|
||||||
- GS_DBUS_INTERFACE,
|
|
||||||
- NULL,
|
|
||||||
- sleep_cb_screensaver_proxy_ready_cb,
|
|
||||||
- manager);
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-static void
|
|
||||||
-upower_notify_sleep_cb (UpClient *client,
|
|
||||||
- UpSleepKind sleep_kind,
|
|
||||||
- CsdPowerManager *manager)
|
|
||||||
-{
|
|
||||||
- gboolean do_lock;
|
|
||||||
-
|
|
||||||
- do_lock = g_settings_get_boolean (manager->priv->settings,
|
|
||||||
- "lock-on-suspend");
|
|
||||||
- if (!do_lock)
|
|
||||||
- return;
|
|
||||||
-
|
|
||||||
/* connect to the screensaver first */
|
|
||||||
g_dbus_proxy_new_for_bus (G_BUS_TYPE_SESSION,
|
|
||||||
G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
|
|
||||||
@@ -3384,46 +3372,6 @@ upower_notify_sleep_cb (UpClient *client,
|
|
||||||
NULL,
|
|
||||||
sleep_cb_screensaver_proxy_ready_cb,
|
|
||||||
manager);
|
|
||||||
-
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-static void
|
|
||||||
-upower_notify_resume_cb (UpClient *client,
|
|
||||||
- UpSleepKind sleep_kind,
|
|
||||||
- CsdPowerManager *manager)
|
|
||||||
-{
|
|
||||||
- gboolean ret;
|
|
||||||
- GError *error = NULL;
|
|
||||||
-
|
|
||||||
- /* this displays the unlock dialogue so the user doesn't have
|
|
||||||
- * to move the mouse or press any key before the window comes up */
|
|
||||||
- if (manager->priv->screensaver_proxy != NULL) {
|
|
||||||
- g_dbus_proxy_call (manager->priv->screensaver_proxy,
|
|
||||||
- "SimulateUserActivity",
|
|
||||||
- NULL,
|
|
||||||
- G_DBUS_CALL_FLAGS_NONE,
|
|
||||||
- -1, NULL, NULL, NULL);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- if (manager->priv->screensaver_proxy != NULL) {
|
|
||||||
- g_object_unref (manager->priv->screensaver_proxy);
|
|
||||||
- manager->priv->screensaver_proxy = NULL;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- /* close existing notifications on resume, the system power
|
|
||||||
- * state is probably different now */
|
|
||||||
- notify_close_if_showing (manager->priv->notification_low);
|
|
||||||
- notify_close_if_showing (manager->priv->notification_discharging);
|
|
||||||
-
|
|
||||||
- /* ensure we turn the panel back on after resume */
|
|
||||||
- ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
|
|
||||||
- GNOME_RR_DPMS_ON,
|
|
||||||
- &error);
|
|
||||||
- if (!ret) {
|
|
||||||
- g_warning ("failed to turn the panel on after resume: %s",
|
|
||||||
- error->message);
|
|
||||||
- g_error_free (error);
|
|
||||||
- }
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
@@ -3582,6 +3530,219 @@ disable_builtin_screensaver (gpointer unused)
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
+static void
|
|
||||||
+inhibit_lid_switch_done (GObject *source,
|
|
||||||
+ GAsyncResult *result,
|
|
||||||
+ gpointer user_data)
|
|
||||||
+{
|
|
||||||
+ GDBusProxy *proxy = G_DBUS_PROXY (source);
|
|
||||||
+ CsdPowerManager *manager = CSD_POWER_MANAGER (user_data);
|
|
||||||
+ GError *error = NULL;
|
|
||||||
+ GVariant *res;
|
|
||||||
+ GUnixFDList *fd_list = NULL;
|
|
||||||
+ gint idx;
|
|
||||||
+
|
|
||||||
+ res = g_dbus_proxy_call_with_unix_fd_list_finish (proxy, &fd_list, result, &error);
|
|
||||||
+ if (res == NULL) {
|
|
||||||
+ g_warning ("Unable to inhibit lid switch: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ } else {
|
|
||||||
+ g_variant_get (res, "(h)", &idx);
|
|
||||||
+ manager->priv->inhibit_lid_switch_fd = g_unix_fd_list_get (fd_list, idx, &error);
|
|
||||||
+ if (manager->priv->inhibit_lid_switch_fd == -1) {
|
|
||||||
+ g_warning ("Failed to receive system inhibitor fd: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ }
|
|
||||||
+ g_debug ("System inhibitor fd is %d", manager->priv->inhibit_lid_switch_fd);
|
|
||||||
+ g_object_unref (fd_list);
|
|
||||||
+ g_variant_unref (res);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+inhibit_lid_switch (CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ GVariant *params;
|
|
||||||
+
|
|
||||||
+ if (manager->priv->inhibit_lid_switch_taken) {
|
|
||||||
+ g_debug ("already inhibited lid-switch");
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ g_debug ("Adding lid switch system inhibitor");
|
|
||||||
+ manager->priv->inhibit_lid_switch_taken = TRUE;
|
|
||||||
+
|
|
||||||
+ params = g_variant_new ("(ssss)",
|
|
||||||
+ "handle-lid-switch",
|
|
||||||
+ g_get_user_name (),
|
|
||||||
+ "Multiple displays attached",
|
|
||||||
+ "block");
|
|
||||||
+ g_dbus_proxy_call_with_unix_fd_list (manager->priv->logind_proxy,
|
|
||||||
+ "Inhibit",
|
|
||||||
+ params,
|
|
||||||
+ 0,
|
|
||||||
+ G_MAXINT,
|
|
||||||
+ NULL,
|
|
||||||
+ NULL,
|
|
||||||
+ inhibit_lid_switch_done,
|
|
||||||
+ manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+inhibit_suspend_done (GObject *source,
|
|
||||||
+ GAsyncResult *result,
|
|
||||||
+ gpointer user_data)
|
|
||||||
+{
|
|
||||||
+ GDBusProxy *proxy = G_DBUS_PROXY (source);
|
|
||||||
+ CsdPowerManager *manager = CSD_POWER_MANAGER (user_data);
|
|
||||||
+ GError *error = NULL;
|
|
||||||
+ GVariant *res;
|
|
||||||
+ GUnixFDList *fd_list = NULL;
|
|
||||||
+ gint idx;
|
|
||||||
+
|
|
||||||
+ res = g_dbus_proxy_call_with_unix_fd_list_finish (proxy, &fd_list, result, &error);
|
|
||||||
+ if (res == NULL) {
|
|
||||||
+ g_warning ("Unable to inhibit suspend: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ } else {
|
|
||||||
+ g_variant_get (res, "(h)", &idx);
|
|
||||||
+ manager->priv->inhibit_suspend_fd = g_unix_fd_list_get (fd_list, idx, &error);
|
|
||||||
+ if (manager->priv->inhibit_suspend_fd == -1) {
|
|
||||||
+ g_warning ("Failed to receive system inhibitor fd: %s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ }
|
|
||||||
+ g_debug ("System inhibitor fd is %d", manager->priv->inhibit_suspend_fd);
|
|
||||||
+ g_object_unref (fd_list);
|
|
||||||
+ g_variant_unref (res);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/* We take a delay inhibitor here, which causes logind to send a
|
|
||||||
+ * PrepareToSleep signal, which gives us a chance to lock the screen
|
|
||||||
+ * and do some other preparations.
|
|
||||||
+ */
|
|
||||||
+static void
|
|
||||||
+inhibit_suspend (CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ if (manager->priv->inhibit_suspend_taken) {
|
|
||||||
+ g_debug ("already inhibited lid-switch");
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ g_debug ("Adding suspend delay inhibitor");
|
|
||||||
+ manager->priv->inhibit_suspend_taken = TRUE;
|
|
||||||
+ g_dbus_proxy_call_with_unix_fd_list (manager->priv->logind_proxy,
|
|
||||||
+ "Inhibit",
|
|
||||||
+ g_variant_new ("(ssss)",
|
|
||||||
+ "sleep",
|
|
||||||
+ g_get_user_name (),
|
|
||||||
+ "Cinnamon needs to lock the screen",
|
|
||||||
+ "delay"),
|
|
||||||
+ 0,
|
|
||||||
+ G_MAXINT,
|
|
||||||
+ NULL,
|
|
||||||
+ NULL,
|
|
||||||
+ inhibit_suspend_done,
|
|
||||||
+ manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+uninhibit_suspend (CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ if (manager->priv->inhibit_suspend_fd == -1) {
|
|
||||||
+ g_debug ("no suspend delay inhibitor");
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ g_debug ("Removing suspend delay inhibitor");
|
|
||||||
+ close (manager->priv->inhibit_suspend_fd);
|
|
||||||
+ manager->priv->inhibit_suspend_fd = -1;
|
|
||||||
+ manager->priv->inhibit_suspend_taken = FALSE;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+handle_suspend_actions (CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ gboolean do_lock;
|
|
||||||
+
|
|
||||||
+ do_lock = g_settings_get_boolean (manager->priv->settings,
|
|
||||||
+ "lock-on-suspend");
|
|
||||||
+ if (do_lock)
|
|
||||||
+ lock_screensaver (manager);
|
|
||||||
+
|
|
||||||
+ /* lift the delay inhibit, so logind can proceed */
|
|
||||||
+ uninhibit_suspend (manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+handle_resume_actions (CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ gboolean ret;
|
|
||||||
+ GError *error = NULL;
|
|
||||||
+
|
|
||||||
+ /* this displays the unlock dialogue so the user doesn't have
|
|
||||||
+ * to move the mouse or press any key before the window comes up */
|
|
||||||
+ g_dbus_connection_call (manager->priv->connection,
|
|
||||||
+ GS_DBUS_NAME,
|
|
||||||
+ GS_DBUS_PATH,
|
|
||||||
+ GS_DBUS_INTERFACE,
|
|
||||||
+ "SimulateUserActivity",
|
|
||||||
+ NULL, NULL,
|
|
||||||
+ G_DBUS_CALL_FLAGS_NONE, -1,
|
|
||||||
+ NULL, NULL, NULL);
|
|
||||||
+
|
|
||||||
+ /* close existing notifications on resume, the system power
|
|
||||||
+ * state is probably different now */
|
|
||||||
+ notify_close_if_showing (manager->priv->notification_low);
|
|
||||||
+ notify_close_if_showing (manager->priv->notification_discharging);
|
|
||||||
+
|
|
||||||
+ /* ensure we turn the panel back on after resume */
|
|
||||||
+ ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
|
|
||||||
+ GNOME_RR_DPMS_ON,
|
|
||||||
+ &error);
|
|
||||||
+ if (!ret) {
|
|
||||||
+ g_warning ("failed to turn the panel on after resume: %s",
|
|
||||||
+ error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ /* set up the delay again */
|
|
||||||
+ inhibit_suspend (manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+upower_notify_sleep_cb (UpClient *client,
|
|
||||||
+ UpSleepKind sleep_kind,
|
|
||||||
+ CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ handle_suspend_actions (manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+upower_notify_resume_cb (UpClient *client,
|
|
||||||
+ UpSleepKind sleep_kind,
|
|
||||||
+ CsdPowerManager *manager)
|
|
||||||
+{
|
|
||||||
+ handle_resume_actions (manager);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static void
|
|
||||||
+logind_proxy_signal_cb (GDBusProxy *proxy,
|
|
||||||
+ const gchar *sender_name,
|
|
||||||
+ const gchar *signal_name,
|
|
||||||
+ GVariant *parameters,
|
|
||||||
+ gpointer user_data)
|
|
||||||
+{
|
|
||||||
+ CsdPowerManager *manager = CSD_POWER_MANAGER (user_data);
|
|
||||||
+ gboolean is_about_to_suspend;
|
|
||||||
+
|
|
||||||
+ if (g_strcmp0 (signal_name, "PrepareForSleep") != 0)
|
|
||||||
+ return;
|
|
||||||
+ g_variant_get (parameters, "(b)", &is_about_to_suspend);
|
|
||||||
+ if (is_about_to_suspend) {
|
|
||||||
+ handle_suspend_actions (manager);
|
|
||||||
+ } else {
|
|
||||||
+ handle_resume_actions (manager);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
static gboolean
|
|
||||||
is_hardware_a_virtual_machine (void)
|
|
||||||
{
|
|
||||||
@@ -3647,6 +3808,26 @@ csd_power_manager_start (CsdPowerManager *manager,
|
|
||||||
if (manager->priv->x11_screen == NULL)
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
+ /* Set up the logind proxy */
|
|
||||||
+ manager->priv->logind_proxy =
|
|
||||||
+ g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
|
|
||||||
+ 0,
|
|
||||||
+ NULL,
|
|
||||||
+ SYSTEMD_DBUS_NAME,
|
|
||||||
+ SYSTEMD_DBUS_PATH,
|
|
||||||
+ SYSTEMD_DBUS_INTERFACE,
|
|
||||||
+ NULL,
|
|
||||||
+ error);
|
|
||||||
+ g_signal_connect (manager->priv->logind_proxy, "g-signal",
|
|
||||||
+ G_CALLBACK (logind_proxy_signal_cb),
|
|
||||||
+ manager);
|
|
||||||
+
|
|
||||||
+ /* Set up a delay inhibitor to be informed about suspend attempts */
|
|
||||||
+ inhibit_suspend (manager);
|
|
||||||
+
|
|
||||||
+ /* Disable logind's lid handling while g-s-d is active */
|
|
||||||
+ inhibit_lid_switch (manager);
|
|
||||||
+
|
|
||||||
/* track the active session */
|
|
||||||
manager->priv->session = cinnamon_settings_session_new ();
|
|
||||||
g_signal_connect (manager->priv->session, "notify::state",
|
|
||||||
@@ -3856,6 +4037,22 @@ csd_power_manager_stop (CsdPowerManager *manager)
|
|
||||||
manager->priv->up_client = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (manager->priv->inhibit_lid_switch_fd != -1) {
|
|
||||||
+ close (manager->priv->inhibit_lid_switch_fd);
|
|
||||||
+ manager->priv->inhibit_lid_switch_fd = -1;
|
|
||||||
+ manager->priv->inhibit_lid_switch_taken = FALSE;
|
|
||||||
+ }
|
|
||||||
+ if (manager->priv->inhibit_suspend_fd != -1) {
|
|
||||||
+ close (manager->priv->inhibit_suspend_fd);
|
|
||||||
+ manager->priv->inhibit_suspend_fd = -1;
|
|
||||||
+ manager->priv->inhibit_suspend_taken = FALSE;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (manager->priv->logind_proxy != NULL) {
|
|
||||||
+ g_object_unref (manager->priv->logind_proxy);
|
|
||||||
+ manager->priv->logind_proxy = NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (manager->priv->x11_screen != NULL) {
|
|
||||||
g_object_unref (manager->priv->x11_screen);
|
|
||||||
manager->priv->x11_screen = NULL;
|
|
||||||
@@ -3928,6 +4125,8 @@ static void
|
|
||||||
csd_power_manager_init (CsdPowerManager *manager)
|
|
||||||
{
|
|
||||||
manager->priv = CSD_POWER_MANAGER_GET_PRIVATE (manager);
|
|
||||||
+ manager->priv->inhibit_lid_switch_fd = -1;
|
|
||||||
+ manager->priv->inhibit_suspend_fd = -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
@ -1,26 +0,0 @@
|
|||||||
diff -u -r cinnamon-session-3.4.2/cinnamon-session/csm-session-fill.c cinnamon-session-3.4.2-timeout/cinnamon-session/csm-session-fill.c
|
|
||||||
--- cinnamon-session-3.4.2/cinnamon-session/csm-session-fill.c 2012-02-02 15:33:01.000000000 +0100
|
|
||||||
+++ cinnamon-session-3.4.2-timeout/cinnamon-session/csm-session-fill.c 2012-06-10 02:39:46.184348462 +0200
|
|
||||||
@@ -36,7 +36,7 @@
|
|
||||||
#define CSM_KEYFILE_DEFAULT_PROVIDER_PREFIX "DefaultProvider"
|
|
||||||
|
|
||||||
/* See https://bugzilla.gnome.org/show_bug.cgi?id=641992 for discussion */
|
|
||||||
-#define CSM_RUNNABLE_HELPER_TIMEOUT 3000 /* ms */
|
|
||||||
+#define CSM_RUNNABLE_HELPER_TIMEOUT 10000 /* ms */
|
|
||||||
|
|
||||||
typedef void (*GsmFillHandleProvider) (const char *provides,
|
|
||||||
const char *default_provider,
|
|
||||||
diff -u -r cinnamon-session-3.4.2/tools/cinnamon-session-check-accelerated.c
|
|
||||||
cinnamon-session-3.4.2-timeout/tools/cinnamon-session-check-accelerated.c
|
|
||||||
--- cinnamon-session-3.4.2/tools/cinnamon-session-check-accelerated.c 2011-03-22 21:31:43.000000000 +0100
|
|
||||||
+++ cinnamon-session-3.4.2-timeout/tools/cinnamon-session-check-accelerated.c 2012-06-10 02:42:08.013218006 +0200
|
|
||||||
@@ -30,7 +30,7 @@
|
|
||||||
#include <X11/Xatom.h>
|
|
||||||
|
|
||||||
/* Wait up to this long for a running check to finish */
|
|
||||||
-#define PROPERTY_CHANGE_TIMEOUT 5000
|
|
||||||
+#define PROPERTY_CHANGE_TIMEOUT 12000
|
|
||||||
|
|
||||||
/* Values used for the _GNOME_SESSION_ACCELERATED root window property */
|
|
||||||
#define NO_ACCEL 0
|
|
||||||
|
|
@ -14491,25 +14491,6 @@ let
|
|||||||
|
|
||||||
### DESKTOP ENVIRONMENTS
|
### DESKTOP ENVIRONMENTS
|
||||||
|
|
||||||
cinnamon = recurseIntoAttrs rec {
|
|
||||||
callPackage = newScope pkgs.cinnamon;
|
|
||||||
inherit (gnome3) gnome_common libgnomekbd gnome-menus zenity;
|
|
||||||
|
|
||||||
muffin = callPackage ../desktops/cinnamon/muffin.nix { } ;
|
|
||||||
|
|
||||||
cinnamon-control-center = callPackage ../desktops/cinnamon/cinnamon-control-center.nix{ };
|
|
||||||
|
|
||||||
cinnamon-settings-daemon = callPackage ../desktops/cinnamon/cinnamon-settings-daemon.nix{ };
|
|
||||||
|
|
||||||
cinnamon-session = callPackage ../desktops/cinnamon/cinnamon-session.nix{ } ;
|
|
||||||
|
|
||||||
cinnamon-desktop = callPackage ../desktops/cinnamon/cinnamon-desktop.nix { };
|
|
||||||
|
|
||||||
cinnamon-translations = callPackage ../desktops/cinnamon/cinnamon-translations.nix { };
|
|
||||||
|
|
||||||
cjs = callPackage ../desktops/cinnamon/cjs.nix { };
|
|
||||||
};
|
|
||||||
|
|
||||||
clearlooks-phenix = callPackage ../misc/themes/gtk3/clearlooks-phenix { };
|
clearlooks-phenix = callPackage ../misc/themes/gtk3/clearlooks-phenix { };
|
||||||
|
|
||||||
enlightenment = callPackage ../desktops/enlightenment { };
|
enlightenment = callPackage ../desktops/enlightenment { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user