[bluetile] more MATE porting

Jens Petersen petersen at fedoraproject.org
Tue Apr 2 03:40:19 UTC 2013


commit 31fa547c2a8d5146290739064a305a6da6dabc32
Author: Jens Petersen <petersen at redhat.com>
Date:   Tue Apr 2 12:38:37 2013 +0900

    more MATE porting
    
    - gnome-mate-session is now mate-bluetile-session
    - use mate-terminal instead of gnome-terminal
    - use xdg-open instead of gnome-open
    - do not build broken upstream gnome-bluetile-session
    - drop ICCCM takeTopFocus workaround
    
    still need to port XMonad.Config.GNOME

 bluetile-0.6-mate-session.patch                   |   16 -----
 bluetile-0.6-mate.patch                           |   74 +++++++++++++++++++++
 bluetile-0.6-nolonger-workaround-ICCCMFocus.patch |   19 +++++
 bluetile.spec                                     |   27 +++++---
 gnome-bluetile-session => mate-bluetile-session   |    0
 5 files changed, 110 insertions(+), 26 deletions(-)
---
diff --git a/bluetile-0.6-mate.patch b/bluetile-0.6-mate.patch
new file mode 100644
index 0000000..9eb5586
--- /dev/null
+++ b/bluetile-0.6-mate.patch
@@ -0,0 +1,74 @@
+diff -up bluetile-0.6/bluetile.cabal~ bluetile-0.6/bluetile.cabal
+--- bluetile-0.6/bluetile.cabal~	2013-03-22 10:42:35.436781897 +0900
++++ bluetile-0.6/bluetile.cabal	2013-04-02 12:08:32.625262101 +0900
+@@ -56,7 +56,7 @@ Executable bluetile
+     Ghc-Options:       -fno-warn-unused-do-bind
+ 
+ Executable gnome-bluetile-session
+-  Buildable:         True
++  Buildable:         False
+   Hs-Source-Dirs:    gnome-bluetile-session
+   Main-is:           GnomeBluetileSession.hs
+   Build-Depends:     base>=3, base<5, filepath, unix
+diff -up bluetile-0.6/bluetiledock/BluetileDock.hs~ bluetile-0.6/bluetiledock/BluetileDock.hs
+--- bluetile-0.6/bluetiledock/BluetileDock.hs~	2011-11-27 07:55:01.000000000 +0900
++++ bluetile-0.6/bluetiledock/BluetileDock.hs	2013-04-02 12:01:08.217186380 +0900
+@@ -147,7 +147,7 @@ main = do
+     onClicked configBtn $ do
+         home <- getEnv "HOME"
+         let userConfig = home </> ".bluetilerc"
+-        spawnPipe $ "gnome-open " ++ userConfig
++        spawnPipe $ "xdg-open " ++ userConfig
+         return ()
+ 
+     -- quit button
+diff -up bluetile-0.6/etc/bluetilerc~ bluetile-0.6/etc/bluetilerc
+--- bluetile-0.6/etc/bluetilerc~	2011-11-27 07:55:01.000000000 +0900
++++ bluetile-0.6/etc/bluetilerc	2013-04-02 12:19:21.756381888 +0900
+@@ -8,7 +8,7 @@
+ 
+ # global options (Mod4 is usually the logo key)
+ default_modifier: Mod4
+-terminal: gnome-terminal
++terminal: mate-terminal
+ start_dock: true
+ 
+ # theme
+diff -up bluetile-0.6/gnome-bluetile-session/GnomeBluetileSession.hs~ bluetile-0.6/gnome-bluetile-session/GnomeBluetileSession.hs
+--- bluetile-0.6/gnome-bluetile-session/GnomeBluetileSession.hs~	2011-11-27 07:55:01.000000000 +0900
++++ bluetile-0.6/gnome-bluetile-session/GnomeBluetileSession.hs	2013-04-02 12:18:40.492374497 +0900
+@@ -21,4 +21,4 @@ main :: IO ()
+ main = do
+     binDir <- getBinDir
+     setEnv "WINDOW_MANAGER" (binDir </> "bluetile") True
+-    executeFile "gnome-session" True [] Nothing
++    executeFile "mate-session" True [] Nothing
+diff -up bluetile-0.6/misc/bluetile.desktop~ bluetile-0.6/misc/bluetile.desktop
+--- bluetile-0.6/misc/bluetile.desktop~	2011-11-27 07:55:01.000000000 +0900
++++ bluetile-0.6/misc/bluetile.desktop	2013-04-02 12:17:17.763359603 +0900
+@@ -4,7 +4,7 @@ Encoding=UTF-8
+ Name=Bluetile
+ Exec=bluetile
+ NoDisplay=true
+-X-GNOME-WMName=bluetile
+-X-GNOME-Autostart-Phase=WindowManager
+-X-GNOME-Provides=windowmanager
+-X-GNOME-Autostart-Notify=true
++X-MATE-WMName=bluetile
++X-MATE-Autostart-Phase=WindowManager
++X-MATE-Provides=windowmanager
++X-MATE-Autostart-Notify=true
+--- bluetile-0.6/misc/gnome-bluetile-session.desktop~	2011-11-27 07:55:01.000000000 +0900
++++ bluetile-0.6/misc/gnome-bluetile-session.desktop	2013-03-22 10:25:39.783080341 +0900
+@@ -1,8 +1,8 @@
+ [Desktop Entry]
+ Encoding=UTF-8
+-Name=GNOME + Bluetile
++Name=MATE + Bluetile
+ Comment=Tiling window manager
+-TryExec=/usr/bin/gnome-session
+-Exec=gnome-bluetile-session
++TryExec=/usr/bin/mate-session
++Exec=mate-bluetile-session
+ Icon=bluetile.png
+ Type=XSession
diff --git a/bluetile-0.6-nolonger-workaround-ICCCMFocus.patch b/bluetile-0.6-nolonger-workaround-ICCCMFocus.patch
new file mode 100644
index 0000000..03d94ae
--- /dev/null
+++ b/bluetile-0.6-nolonger-workaround-ICCCMFocus.patch
@@ -0,0 +1,19 @@
+--- bluetile-0.6/src/Config.hs~	2011-11-27 07:55:01.000000000 +0900
++++ bluetile-0.6/src/Config.hs	2013-04-02 12:27:50.516471304 +0900
+@@ -42,7 +42,6 @@
+ 
+ import XMonad.Hooks.CurrentWorkspaceOnTop
+ import XMonad.Hooks.EwmhDesktops
+-import XMonad.Hooks.ICCCMFocus
+ import XMonad.Hooks.ManageDocks
+ import XMonad.Hooks.ManageHelpers
+ import XMonad.Hooks.Minimize
+@@ -190,7 +189,7 @@
+           startupHook = ewmhDesktopsStartup,
+           manageHook = bluetileManageHook,
+           layoutHook = bluetileLayoutHook bluetileTheme,
+-          logHook = currentWorkspaceOnTop >> ewmhDesktopsLogHook >> takeTopFocus,
++          logHook = currentWorkspaceOnTop >> ewmhDesktopsLogHook,
+           handleEventHook = ewmhDesktopsEventHook
+                                 `mappend` fullscreenEventHook
+                                 `mappend` minimizeEventHook
diff --git a/bluetile.spec b/bluetile.spec
index b0f0bd4..d78fa68 100644
--- a/bluetile.spec
+++ b/bluetile.spec
@@ -6,15 +6,16 @@
 
 Name:           bluetile
 Version:        0.6
-Release:        14%{?dist}
+Release:        15%{?dist}
 Summary:        Tiling window manager for GNOME
 
 License:        BSD
 URL:            http://hackage.haskell.org/package/%{name}
 Source0:        http://hackage.haskell.org/packages/archive/%{name}/%{version}/%{name}-%{version}.tar.gz
-Source1:        gnome-bluetile-session
+Source1:        mate-bluetile-session
 Patch1:         bluetile-0.6-Cabal-version.patch
-Patch2:         bluetile-0.6-mate-session.patch
+Patch2:         bluetile-0.6-mate.patch
+Patch3:         bluetile-0.6-nolonger-workaround-ICCCMFocus.patch
 
 BuildRequires:  ghc-Cabal-devel
 BuildRequires:  ghc-rpm-macros
@@ -37,9 +38,9 @@ BuildRequires:  ghc-xmonad-devel
 BuildRequires:  ghc-xmonad-contrib-devel
 # End cabal-rpm deps
 BuildRequires:  desktop-file-utils
-# bluetiledock uses gnome-open
-Requires:       libgnome
-Requires:       gnome-terminal
+# bluetiledock uses xdg-open
+Requires:       xdg-utils
+Requires:       mate-terminal
 
 %description
 Bluetile is a tiling window manager for Linux, designed to integrate with
@@ -54,6 +55,7 @@ conventions and providing both mouse and keyboard access for all features.
 %setup -q
 %patch1 -p1 -b .orig
 %patch2 -p1 -b .orig
+%patch3 -p1 -b .orig
 
 
 %build
@@ -67,9 +69,7 @@ install -p -m 0644 -D misc/%{name}-session.desktop %{buildroot}%{_datadir}/xsess
 desktop-file-install --dir=%{buildroot}%{_datadir}/applications misc/%{name}.desktop
 
 install -p -m 0644 -D misc/gnome-bluetile-session.desktop %{buildroot}%{_datadir}/xsessions/
-# replace gnome-bluetile-session with script
-rm %{buildroot}%{_bindir}/gnome-%{name}-session
-install -p -m 0755 %{SOURCE1} %{buildroot}%{_bindir}/gnome-%{name}-session
+install -p -m 0755 %{SOURCE1} %{buildroot}%{_bindir}/mate-%{name}-session
 
 mkdir -p %{buildroot}%{_mandir}/man1
 install -p -m 0644 man/bluetile.1 %{buildroot}%{_mandir}/man1
@@ -78,7 +78,7 @@ install -p -m 0644 man/bluetile.1 %{buildroot}%{_mandir}/man1
 %files
 %doc LICENSE
 %attr(755,root,root) %{_bindir}/%{name}
-%attr(755,root,root) %{_bindir}/gnome-%{name}-session
+%attr(755,root,root) %{_bindir}/mate-%{name}-session
 %{_libexecdir}/%{name}*
 %{_datadir}/applications/%{name}.desktop
 %{_datadir}/xsessions/*%{name}*.desktop
@@ -87,6 +87,13 @@ install -p -m 0644 man/bluetile.1 %{buildroot}%{_mandir}/man1
 
 
 %changelog
+* Tue Apr  2 2013 Jens Petersen <petersen at redhat.com> - 0.6-15
+- gnome-mate-session is now mate-bluetile-session
+- use mate-terminal instead of gnome-terminal
+- use xdg-open instead of gnome-open
+- do not build broken upstream gnome-bluetile-session
+- drop ICCCM takeTopFocus workaround
+
 * Fri Mar 22 2013 Jens Petersen <petersen at redhat.com> - 0.6-14
 - use mate-session instead of gnome-session (#872590)
 
diff --git a/gnome-bluetile-session b/mate-bluetile-session
similarity index 100%
rename from gnome-bluetile-session
rename to mate-bluetile-session


More information about the scm-commits mailing list