chiark / gitweb /
Gnome hacking: Introduce a custom session file.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 14 May 2011 13:21:36 +0000 (14:21 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Sat, 4 Jun 2011 13:21:40 +0000 (14:21 +0100)
The morons behind Gnome have decided that everyone must have a window
manager, and can't understand that someone might have started one up
already.  As a result, they flail about trying to start the abortion
known as Metacity, which immediately exits because E already has the
magic selection.

Kill this absurd behaviour.

dot/mdw.session [new file with mode: 0644]
dot/xinitrc
setup

diff --git a/dot/mdw.session b/dot/mdw.session
new file mode 100644 (file)
index 0000000..f301215
--- /dev/null
@@ -0,0 +1,5 @@
+[GNOME Session]
+Name=[mdw]'s not crap session
+Required=panel;
+Required-panel=gnome-panel
+DefaultApps=gnome-settings-daemon;
index 151b9a4b64e97d8da5e93751c76e03e96b793df8..314136784ef3bf8ef5f6b5c0551c82a3700b7540 100755 (executable)
@@ -144,8 +144,18 @@ start-window-manager () {
 start-clients-local () { :; }
 
 start-clients () {
+
   ## Gnome session.
-  case $vnc in no) run bginit gnome-session ;; esac
+  case "$vnc,$(gnome-session --version 2>&1)" in
+    no,gnome-session\ 2.3[2-9].* | \
+    no,gnome-session\ 2.4[0-9].* | \
+    no,gnome-session\ 2.[1-9][0-9][0-9]*)
+      run bginit gnome-session --session mdw
+      ;;
+    no,*)
+      run bginit gnome-session
+      ;;
+  esac
 
   ## Local clients.
   start-clients-local
diff --git a/setup b/setup
index d1322f506d692050f1bdc4061a476f7924cf4573..3df6067ed0ecf7d7079e44b2419993b813b1e503 100755 (executable)
--- a/setup
+++ b/setup
@@ -151,6 +151,7 @@ dotfiles="
   fonts.conf
   stalonetrayrc
   putty-defaults:.putty/sessions/Default%20Settings
+  mdw.session:.config/gnome-session/sessions/mdw.session
   eterm-theme.cfg:.Eterm/themes/Eterm/theme.cfg
   e-keybindings.cfg:.enlightenment/keybindings.cfg
   evnc-keybindings.cfg:.enlightenment-vnc/keybindings.cfg