aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2011-05-31 16:59:14 -0500
committerTed Gould <ted@gould.cx>2011-05-31 16:59:14 -0500
commit9b9d8e12052e8df83f544287f2105d14f996a6ce (patch)
tree3efaf4d97492ab68ff920e81abc50d86256aa01d
parentf133202143adf833bc8f6de78826a1325932a13e (diff)
parent9258cd855aef371fb1e83796271e1635e50be673 (diff)
downloadayatana-indicator-session-9b9d8e12052e8df83f544287f2105d14f996a6ce.tar.gz
ayatana-indicator-session-9b9d8e12052e8df83f544287f2105d14f996a6ce.tar.bz2
ayatana-indicator-session-9b9d8e12052e8df83f544287f2105d14f996a6ce.zip
Adding in support for switching to the classic session
-rw-r--r--configure.ac1
-rw-r--r--data/Makefile.am4
-rw-r--r--data/extra-sessions/Makefile.am33
-rw-r--r--data/extra-sessions/classic-desktop.desktop.in.in6
-rwxr-xr-xdata/extra-sessions/classic-desktop.sh5
-rw-r--r--po/POTFILES.in1
6 files changed, 49 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index a882555..04f9cd5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -147,6 +147,7 @@ data/icons/32x32/status/Makefile
data/icons/scalable/Makefile
data/icons/scalable/actions/Makefile
data/icons/scalable/status/Makefile
+data/extra-sessions/Makefile
po/Makefile.in
])
diff --git a/data/Makefile.am b/data/Makefile.am
index f452897..1f522d7 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,4 +1,6 @@
-SUBDIRS = icons
+SUBDIRS = \
+ icons \
+ extra-sessions
dbus_servicesdir = $(DBUSSERVICEDIR)
service_in_files = indicator-session.service.in
diff --git a/data/extra-sessions/Makefile.am b/data/extra-sessions/Makefile.am
new file mode 100644
index 0000000..ca9ba8e
--- /dev/null
+++ b/data/extra-sessions/Makefile.am
@@ -0,0 +1,33 @@
+
+###################################
+# The files that are actually here
+###################################
+
+extra_guests_desktop_in_in_files = \
+ classic-desktop.desktop.in.in
+extra_guests_sh_files = \
+ classic-desktop.sh
+
+###################################
+# Rules to make things work
+###################################
+
+extra_guestsdir = $(datadir)/indicators/session/applications/
+extra_guests_desktop_files = \
+ $(extra_guests_desktop_in_in_files:.desktop.in.in=.desktop)
+
+@INTLTOOL_DESKTOP_RULE@
+
+%.desktop.in: %.desktop.in.in
+ sed -e "s|\@guestdir\@|$(extra_guestsdir)|" $< > $@
+
+extra_guests_DATA = \
+ $(extra_guests_desktop_files) \
+ $(extra_guests_sh_files)
+
+EXTRA_DIST = \
+ $(extra_guests_desktop_in_in_files) \
+ $(extra_guests_sh_files)
+
+CLEANFILES = \
+ $(extra_guests_desktop_files)
diff --git a/data/extra-sessions/classic-desktop.desktop.in.in b/data/extra-sessions/classic-desktop.desktop.in.in
new file mode 100644
index 0000000..d7ca3da
--- /dev/null
+++ b/data/extra-sessions/classic-desktop.desktop.in.in
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Version=1.0
+_Name=Classic Guest Session
+_Comment=Start a guest session using the classic desktop
+Exec=@guestdir@/test.sh
+Type=Application
diff --git a/data/extra-sessions/classic-desktop.sh b/data/extra-sessions/classic-desktop.sh
new file mode 100755
index 0000000..fea8787
--- /dev/null
+++ b/data/extra-sessions/classic-desktop.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+export GDMSESSION=gnome-classic
+
+/usr/share/gdm/guest-session/guest-session-launch --lock
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 3a8bad7..c2256c1 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,5 +1,6 @@
[encoding: UTF-8]
data/indicator-session.schemas.in
+data/extra-sessions/classic-desktop.desktop.in.in
src/gconf-helper.c
src/lock-helper.c
src/gtk-logout-helper.c