summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2015-02-27 08:45:58 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2015-02-27 08:45:58 +0000
commit1c8689adb00f1c58fd7b905a67229f04c17de1af (patch)
treebb53d83c72760a5b57852df59d439483d70f8eaf /x11-wm
parentRolled out an intermediate patchset tarball until the one from _AxS_ is avail... (diff)
downloadgentoo-2-1c8689adb00f1c58fd7b905a67229f04c17de1af.tar.gz
gentoo-2-1c8689adb00f1c58fd7b905a67229f04c17de1af.tar.bz2
gentoo-2-1c8689adb00f1c58fd7b905a67229f04c17de1af.zip
x11-wm/xmonad: fix sample (thanks to NP-Hardass)
(Portage version: 2.2.17/cvs/Linux x86_64, signed Manifest commit with key 611FF3AA)
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/xmonad/ChangeLog11
-rw-r--r--x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch14
-rw-r--r--x11-wm/xmonad/files/xmonad-0.11-sample.patch74
-rw-r--r--x11-wm/xmonad/files/xmonad-check-repeat.patch40
-rw-r--r--x11-wm/xmonad/metadata.xml4
-rw-r--r--x11-wm/xmonad/xmonad-0.11-r3.ebuild80
6 files changed, 218 insertions, 5 deletions
diff --git a/x11-wm/xmonad/ChangeLog b/x11-wm/xmonad/ChangeLog
index d5ea0d24242d..c0617e5cce72 100644
--- a/x11-wm/xmonad/ChangeLog
+++ b/x11-wm/xmonad/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for x11-wm/xmonad
-# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-wm/xmonad/ChangeLog,v 1.36 2014/05/11 07:02:24 slyfox Exp $
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/xmonad/ChangeLog,v 1.37 2015/02/27 08:45:58 slyfox Exp $
+
+*xmonad-0.11-r3 (27 Feb 2015)
+
+ 27 Feb 2015; Sergei Trofimovich <slyfox@gentoo.org>
+ +files/xmonad-0.11-ghc-7.10.patch, +files/xmonad-0.11-sample.patch,
+ +files/xmonad-check-repeat.patch, +xmonad-0.11-r3.ebuild, metadata.xml:
+ x11-wm/xmonad: fix sample (thanks to NP-Hardass)
11 May 2014; Sergei Trofimovich <slyfox@gentoo.org> -xmonad-0.10.ebuild,
-xmonad-0.11.ebuild:
diff --git a/x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch b/x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch
new file mode 100644
index 000000000000..e92a31ec7044
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch
@@ -0,0 +1,14 @@
+Fri May 2 06:57:43 BST 2014 Adam Vogt <vogt.adam@gmail.com>
+ * derive Applicative instance for Query
+diff -rN -u old-xmonad/XMonad/Core.hs new-xmonad/XMonad/Core.hs
+--- old-xmonad/XMonad/Core.hs 2015-01-08 21:40:45.320979242 +0000
++++ new-xmonad/XMonad/Core.hs 2015-01-08 21:40:45.367979193 +0000
+@@ -155,7 +155,7 @@
+
+ type ManageHook = Query (Endo WindowSet)
+ newtype Query a = Query (ReaderT Window X a)
+- deriving (Functor, Monad, MonadReader Window, MonadIO)
++ deriving (Functor, Applicative, Monad, MonadReader Window, MonadIO)
+
+ runQuery :: Query a -> Window -> X a
+ runQuery (Query m) w = runReaderT m w
diff --git a/x11-wm/xmonad/files/xmonad-0.11-sample.patch b/x11-wm/xmonad/files/xmonad-0.11-sample.patch
new file mode 100644
index 000000000000..0780af8c18d4
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad-0.11-sample.patch
@@ -0,0 +1,74 @@
+Sun Jan 6 17:42:54 GMT 2013 Daniel Wagner <daniel@wagner-home.com>
+ * define the "help" string in the sample configuration bundled with xmonad
+diff -rN -u old-xmonad/man/xmonad.hs new-xmonad/man/xmonad.hs
+--- old-xmonad/man/xmonad.hs 2015-02-27 08:38:26.993365307 +0000
++++ new-xmonad/man/xmonad.hs 2015-02-27 08:38:27.046365303 +0000
+@@ -280,3 +280,54 @@
+ logHook = myLogHook,
+ startupHook = myStartupHook
+ }
++
++-- | Finally, a copy of the default bindings in simple textual tabular format.
++help :: String
++help = unlines ["The default modifier key is 'alt'. Default keybindings:",
++ "",
++ "-- launching and killing programs",
++ "mod-Shift-Enter Launch xterminal",
++ "mod-p Launch dmenu",
++ "mod-Shift-p Launch gmrun",
++ "mod-Shift-c Close/kill the focused window",
++ "mod-Space Rotate through the available layout algorithms",
++ "mod-Shift-Space Reset the layouts on the current workSpace to default",
++ "mod-n Resize/refresh viewed windows to the correct size",
++ "",
++ "-- move focus up or down the window stack",
++ "mod-Tab Move focus to the next window",
++ "mod-Shift-Tab Move focus to the previous window",
++ "mod-j Move focus to the next window",
++ "mod-k Move focus to the previous window",
++ "mod-m Move focus to the master window",
++ "",
++ "-- modifying the window order",
++ "mod-Return Swap the focused window and the master window",
++ "mod-Shift-j Swap the focused window with the next window",
++ "mod-Shift-k Swap the focused window with the previous window",
++ "",
++ "-- resizing the master/slave ratio",
++ "mod-h Shrink the master area",
++ "mod-l Expand the master area",
++ "",
++ "-- floating layer support",
++ "mod-t Push window back into tiling; unfloat and re-tile it",
++ "",
++ "-- increase or decrease number of windows in the master area",
++ "mod-comma (mod-,) Increment the number of windows in the master area",
++ "mod-period (mod-.) Deincrement the number of windows in the master area",
++ "",
++ "-- quit, or restart",
++ "mod-Shift-q Quit xmonad",
++ "mod-q Restart xmonad",
++ "mod-[1..9] Switch to workSpace N",
++ "",
++ "-- Workspaces & screens",
++ "mod-Shift-[1..9] Move client to workspace N",
++ "mod-{w,e,r} Switch to physical/Xinerama screens 1, 2, or 3",
++ "mod-Shift-{w,e,r} Move client to screen 1, 2, or 3",
++ "",
++ "-- Mouse bindings: default actions bound to mouse events",
++ "mod-button1 Set the window to floating mode and move by dragging",
++ "mod-button2 Raise the window to the top of the stack",
++ "mod-button3 Set the window to floating mode and resize by dragging"]
+Sun Jan 6 17:44:14 GMT 2013 Daniel Wagner <daniel@wagner-home.com>
+ * use "modm" instead of "modMask" in the sample config
+diff -rN -u old-xmonad/man/xmonad.hs new-xmonad/man/xmonad.hs
+--- old-xmonad/man/xmonad.hs 2015-02-27 08:39:59.280358012 +0000
++++ new-xmonad/man/xmonad.hs 2015-02-27 08:39:59.333358007 +0000
+@@ -129,7 +129,7 @@
+ , ((modm , xK_q ), spawn "xmonad --recompile; xmonad --restart")
+
+ -- Run xmessage with a summary of the default keybindings (useful for beginners)
+- , ((modMask .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -"))
++ , ((modm .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -"))
+ ]
+ ++
+
diff --git a/x11-wm/xmonad/files/xmonad-check-repeat.patch b/x11-wm/xmonad/files/xmonad-check-repeat.patch
new file mode 100644
index 000000000000..9b30cb5ece31
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad-check-repeat.patch
@@ -0,0 +1,40 @@
+--- xmonad//XMonad/Core.hs 2010-09-05 05:11:42.000000000 +0400
++++ xmonad//XMonad/Core.hs 2010-09-18 07:59:14.000000000 +0400
+@@ -65,6 +65,7 @@
+ , waitingUnmap :: !(M.Map Window Int) -- ^ the number of expected UnmapEvents
+ , dragging :: !(Maybe (Position -> Position -> X (), X ()))
+ , numberlockMask :: !KeyMask -- ^ The numlock modifier
++ , keyPressed :: !KeyCode -- ^ keycode of the key being pressed if any
+ , extensibleState :: !(M.Map String (Either String StateExtension))
+ -- ^ stores custom state information.
+ --
+--- xmonad//XMonad/Main.hsc 2010-09-05 05:11:42.000000000 +0400
++++ xmonad//XMonad/Main.hsc 2010-09-18 08:03:11.000000000 +0400
+@@ -129,6 +129,7 @@
+ , mapped = S.empty
+ , waitingUnmap = M.empty
+ , dragging = Nothing
++ , keyPressed = 0
+ , extensibleState = extState
+ }
+ allocaXEvent $ \e ->
+@@ -190,10 +191,15 @@
+ -- run window manager command
+ handle (KeyEvent {ev_event_type = t, ev_state = m, ev_keycode = code})
+ | t == keyPress = withDisplay $ \dpy -> do
+- s <- io $ keycodeToKeysym dpy code 0
+- mClean <- cleanMask m
+- ks <- asks keyActions
+- userCodeDef () $ whenJust (M.lookup (mClean, s) ks) id
++ kp <- gets keyPressed
++ if kp /= code then do
++ modify $ \s -> s { keyPressed = code }
++ s <- io $ keycodeToKeysym dpy code 0
++ mClean <- cleanMask m
++ ks <- asks keyActions
++ userCodeDef () $ whenJust (M.lookup (mClean, s) ks) id
++ else return ()
++ | t == keyRelease = modify $ \s -> s { keyPressed = 0 }
+
+ -- manage a new window
+ handle (MapRequestEvent {ev_window = w}) = withDisplay $ \dpy -> do
diff --git a/x11-wm/xmonad/metadata.xml b/x11-wm/xmonad/metadata.xml
index b671a21949a7..c5471239194d 100644
--- a/x11-wm/xmonad/metadata.xml
+++ b/x11-wm/xmonad/metadata.xml
@@ -2,12 +2,10 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>haskell</herd>
- <maintainer>
- <email>haskell@gentoo.org</email>
- </maintainer>
<use>
<flag name='default-term'>Pull terminal specified in default xmonad config
to be a bit less hostile by default.</flag>
+ <flag name="no-autorepeat-keys">Allow ignoring of keyboard autorepeat.</flag>
</use>
<longdescription>
xmonad is a tiling window manager for X. Windows are arranged
diff --git a/x11-wm/xmonad/xmonad-0.11-r3.ebuild b/x11-wm/xmonad/xmonad-0.11-r3.ebuild
new file mode 100644
index 000000000000..85243c316985
--- /dev/null
+++ b/x11-wm/xmonad/xmonad-0.11-r3.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/xmonad/xmonad-0.11-r3.ebuild,v 1.1 2015/02/27 08:45:58 slyfox Exp $
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.1
+
+CABAL_FEATURES="bin lib profile haddock hscolour hoogle"
+inherit haskell-cabal
+
+DESCRIPTION="A tiling window manager"
+HOMEPAGE="http://xmonad.org"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc64 ~sparc ~x86"
+IUSE="+default-term no-autorepeat-keys"
+
+RDEPEND="dev-haskell/extensible-exceptions:=[profile?]
+ dev-haskell/mtl:=[profile?]
+ >=dev-haskell/utf8-string-0.3:=[profile?]
+ >=dev-haskell/x11-1.5:=[profile?]
+ <dev-haskell/x11-1.7:=[profile?]
+ >=dev-lang/ghc-6.10.4:="
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.6"
+PDEPEND="default-term? ( x11-terms/xterm )
+ x11-apps/xmessage
+"
+
+SAMPLE_CONFIG="xmonad.hs"
+SAMPLE_CONFIG_LOC="man"
+
+src_prepare() {
+ epatch "$FILESDIR"/${P}-ghc-7.10.patch
+ epatch "$FILESDIR"/${P}-sample.patch
+ use no-autorepeat-keys && epatch "$FILESDIR"/${PN}-check-repeat.patch
+
+ cabal_chdeps \
+ "utf8-string >= 0.3 && < 0.4" "utf8-string >= 0.3 && < 1.1"
+
+ # allow user patches
+ epatch_user
+}
+
+src_install() {
+ cabal_src_install
+
+ echo -e "#!/bin/sh\n/usr/bin/xmonad" > "${T}/${PN}"
+ exeinto /etc/X11/Sessions
+ doexe "${T}/${PN}"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ doman man/xmonad.1
+ dohtml man/xmonad.1.html
+
+ dodoc CONFIG README
+}
+
+pkg_postinst() {
+ ghc-package_pkg_postinst
+
+ elog "A sample ${SAMPLE_CONFIG} configuration file can be found here:"
+ elog " /usr/share/${PF}/ghc-$(ghc-version)/${SAMPLE_CONFIG_LOC}/${SAMPLE_CONFIG}"
+ elog "The parameters in this file are the defaults used by xmonad."
+ elog "To customize xmonad, copy this file to:"
+ elog " ~/.xmonad/${SAMPLE_CONFIG}"
+ elog "After editing, use 'mod-q' to dynamically restart xmonad "
+ elog "(where the 'mod' key defaults to 'Alt')."
+ elog ""
+ elog "Read the README or man page for more information, and to see "
+ elog "other possible configurations go to:"
+ elog " http://haskell.org/haskellwiki/Xmonad/Config_archive"
+ elog "Please note that many of these configurations will require the "
+ elog "x11-wm/xmonad-contrib package to be installed."
+}