--- xmonad-0.8.1.orig/debian/rules +++ xmonad-0.8.1/debian/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/hlibrary.mk + +install/xmonad:: + dh_installwm + cp dist-ghc6/build/xmonad/xmonad debian/xmonad/usr/bin/xmonad + uudecode debian/xmonad.png.uuencode -o debian/xmonad/usr/share/icons/xmonad.png + install -D -m 0644 debian/xmonad-session.desktop debian/xmonad/usr/share/xsessions/xmonad.desktop + install -D -m 0644 debian/xmonad.desktop debian/xmonad/usr/share/applications/xmonad.desktop --- xmonad-0.8.1.orig/debian/xmonad.dirs +++ xmonad-0.8.1/debian/xmonad.dirs @@ -0,0 +1,2 @@ +/usr/bin +usr/share/icons --- xmonad-0.8.1.orig/debian/xmonad.wm +++ xmonad-0.8.1/debian/xmonad.wm @@ -0,0 +1 @@ +/usr/bin/xmonad --- xmonad-0.8.1.orig/debian/watch +++ xmonad-0.8.1/debian/watch @@ -0,0 +1,3 @@ +version=3 +http://hackage.haskell.org/packages/archive/xmonad/([\d.]+)/xmonad-([\d.]+).tar.gz + --- xmonad-0.8.1.orig/debian/control +++ xmonad-0.8.1/debian/control @@ -0,0 +1,105 @@ +Source: xmonad +Section: haskell +Priority: optional +Maintainer: Joachim Breitner +Standards-Version: 3.8.2 +Build-Depends: debhelper (>= 7), haskell-devscripts (>= 0.6.15+nmu1), cdbs, haddock (>= 2.4.1-4), hscolour, ghc6 (>= 6.10.1+dfsg1-13), ghc6-prof, ghc6-doc, libx11-dev, libxinerama-dev, sharutils, libghc6-x11-dev (>= 1.4.5-2), libghc6-x11-doc, libghc6-x11-prof, libghc6-mtl-dev (>= 1.1.0.2-6), libghc6-mtl-doc, libghc6-mtl-prof +Homepage: http://xmonad.org/ + +Package: xmonad +Section: x11 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, x11-utils +Recommends: libghc6-xmonad-dev, libghc6-xmonad-doc +Conflicts: xmonad-rebuild +Replaces: xmonad-rebuild +Suggests: dmenu +Description: A lightweight X11 window manager + Haskell. Windows are managed using automatic layout algorithms, + which can be dynamically reconfigured. At any time windows are + arranged so as to maximise the use of screen real estate. All + features of the window manager are accessible purely from the + keyboard: a mouse is entirely optional. Xmonad is configured in + Haskell, and custom layout algorithms may be implemented by the user + in config files. A principle of Xmonad is predictability: the user + should know in advance precisely the window arrangement that will + result from any action. + . + This package comes pre-configured with the default configuration. If + you want to build your custom-configured version, make sure that + libghc6-xmonad-dev is installed and put your configuration in + ~/.xmonad/xmonad.hs + +Package: libghc6-xmonad-dev +Section: haskell +Architecture: any +Depends: ${haskell:Depends}, ${shlibs:Depends}, ${misc:Depends}, libx11-dev, libxinerama-dev +Recommends: libghc6-xmonad-contrib-dev +Suggests: libghc6-xmonad-doc +Description: A lightweight X11 window manager + This package provides a library for the Haskell programming language. + See http://www.haskell.org/ for more information on Haskell. + . + Xmonad is a minimalist tiling window manager for X, written in + Haskell. Windows are managed using automatic layout algorithms, + which can be dynamically reconfigured. At any time windows are + arranged so as to maximise the use of screen real estate. All + features of the window manager are accessible purely from the + keyboard: a mouse is entirely optional. Xmonad is configured in + Haskell, and custom layout algorithms may be implemented by the user + in config files. A principle of Xmonad is predictability: the user + should know in advance precisely the window arrangement that will + result from any action. + . + This package is what you need to build your custom configured xmonad + binary. + +Package: libghc6-xmonad-prof +Section: haskell +Architecture: any +Depends: ${haskell:Depends}, ${misc:Depends}, libghc6-xmonad-dev (= ${binary:Version}) +Suggests: libghc6-xmonad-doc +Description: A lightweight X11 window manager; profiling libraries + This package provides a library for the Haskell programming language, + compiled for profiling. + See http://www.haskell.org/ for more information on Haskell. + . + Xmonad is a minimalist tiling window manager for X, written in + Haskell. Windows are managed using automatic layout algorithms, + which can be dynamically reconfigured. At any time windows are + arranged so as to maximise the use of screen real estate. All + features of the window manager are accessible purely from the + keyboard: a mouse is entirely optional. Xmonad is configured in + Haskell, and custom layout algorithms may be implemented by the user + in config files. A principle of Xmonad is predictability: the user + should know in advance precisely the window arrangement that will + result from any action. + . + This package is what you need to profile your custom configured xmonad + binary. + +Package: libghc6-xmonad-doc +Recommends: ghc6-doc, libghc6-x11-doc, libghc6-mtl-doc, libghc6-xmonad-contrib-doc +Section: doc +Architecture: all +Depends: ${haskell:Depends}, ${shlibs:Depends}, ${misc:Depends} +Suggests: libghc6-xmonad-dev +Description: A lightweight X11 window manager; documentation + This package provides the documentation for a library for the Haskell + programming language. + See http://www.haskell.org/ for more information on Haskell. + . + Xmonad is a minimalist tiling window manager for X, written in + Haskell. Windows are managed using automatic layout algorithms, + which can be dynamically reconfigured. At any time windows are + arranged so as to maximise the use of screen real estate. All + features of the window manager are accessible purely from the + keyboard: a mouse is entirely optional. Xmonad is configured in + Haskell, and custom layout algorithms may be implemented by the user + in config files. A principle of Xmonad is predictability: the user + should know in advance precisely the window arrangement that will + result from any action. + . + This package contains the documentation for building your custom + configured xmonad binary as well as example configuration files. + --- xmonad-0.8.1.orig/debian/xmonad-session.desktop +++ xmonad-0.8.1/debian/xmonad-session.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=XMonad +Comment=Leightweight tiling window manager +Exec=xmonad +Icon=xmonad.png +Type=XSession --- xmonad-0.8.1.orig/debian/xmonad.png.uuencode +++ xmonad-0.8.1/debian/xmonad.png.uuencode @@ -0,0 +1,64 @@ +begin 644 xmonad.png +MB5!.1PT*&@H````-24A$4@```"\```!)"`8```"MBG_K````!'-"250("`@( +M?`ADB`````EP2%ES```-UP``#=````!ET15AT4V]F='=A_,PPSP^""B(B. +M"`1YB(@87S$UV8=LW&0WV]0TBK)6'JO5EG5]5I=46A_U418?D39FM=9.TQJM +M(FJZ*1;Q435&U)T.KDH175\5'&"&89CWS/WUC^D@(_?<>7!QO\GY@_N[O]_Y +MW'._]]R3N0<)$1$`Z'0ZY.?GP^UV@T\S9\[$N7/G()%(>.-BJK6U%Y2VL4JF@T^GZDL46$>'RYQL;'>O_L'%0H%-!H-9#(9;[+5:D5Q<3$XCA,9VZN6EA8F.`!D967U@0.O +MP0/`M&G34%Y>SBQP[=HU[-NW;Y"8`V4RF01]/GSX<&1E9?D=\[.-3RZ7"S-F +MS(!.I^,M%!45!:U6.Z!8N.(X#I>XB)B?$_SG=R9&0D +M-!H-(B,C>8O9;#:4E)2(9I_FYF8F.`!D9V([)7'X\'%BQ=A-IMYXQ$1$9@S9PZO&&V>./`#(9#)H-!HH%`K>N,/A +M0'%Q,3P>3XC87MV_?Y\)#@`3)TYD@@,!X`$@)R<'FS=O9L8;&QM165D9J,P` +M=75UH;6UE1F/CX_'^/'C!6L(VL8GC\>#V;-GX\:-&[QQN5R.;[[Y!CDY.8%* +M]=5K:&B`Q6+AC4=$1"`_/Q_1T=&"=0*.O*^81J.!4JGDC3N=3A05%3'71:_K +MVV^_98(#P*1)DP*"`T'"`]ZWV_;MVYGQV[=O8]>N70'K='1TX-&C1\QX0D(" +MTM+2@F(*RC8^<1R'=]YY!U>O7N6-R^5RW+QY$Y,G3^:-N]UN-#0TP&JU\L9E +M,AGR\_.A4JF"X@EZY`'OF^[(D2/,XDZG$\7%Q7"Y7+SQIJ8F)C@`Y.;F!@T. +MA`@/`.GIZ8+VT&JUV+%CQX#C[>WM>/+D"3,O,3$1J:FI(;&$9!N?B`ASYLS! +MI4N7>..1D9%H;&S$E"E3`'C72N?/GX?=;F>>GY^?CZBHJ)`X0AYY`)!()#AR +MY`CS!>)RN5!45-1G'YU.QP0'@,F3)X<,#H0)#P"IJ:FHJJIBQIN:FK!UZU:\ +M>/$"SYX]8YXW9LP8)"-R60R5%55,>'D?_]] +MYO(CD,(>>9\.'S[,NUP%O%/CGCU[F"^OO+R\L,$!$>#'C1N'O7OW,N-/GS[% +M\>/'!QP?.W8LDI*2!M7WH.$!H+2T%!]^^"$S7EM;BP``X=.@0A@\?SAOC.`[5U=5]L\^4*5,@E\L'W:=H\&JU&A]__#$S_OSYY7)2=G2T([FM9 +M65EDL]G$Z%8<^'7KU@4%[FMKUZX5H]O!PU^_?IUD,EE(\%*IE*Y>O?K]PCN= +M3LK(R`@)W-WO?'/SRY7NYW_HD3)P3/+RLK>S/P#0T-@G;)S@?9*3DZFGIT<\^,6+%PO>[LV;-P?5 +MF4\U-36"]98M6R8._-FS9P7M,G7JU*#L\KH6+EPH>`%U=76#@S>93#1FS!A! +MN]R[=R]D<"*O?1(3$YFUDY*2J+N[.WQXH;D9`&W;MBTL<)].G3HE6+^DI"0\ +M^)J:&D&[3)\^/2R[O*Y%BQ8)7L#77W\=&KS!8!"<$:*BHNC^_?N#!B<*;!^U +M6DU&HS%X^'GSY@F.QLZ=.T4!]ZFVME:POR5+E@0'?_3H4<%",V?.%!764"E4E%+2\N0P'=U=='HT:.9?8\>/9JZNKK8\!]] +M])'@U5=65@X)N$^G3Y\6[+^PL)`?7J/1"";.FC5K2,%]^N233P0Y:FMK_>'; +MVMHH+BZ.F1`='4VMK:UO!#Z0?1(3$ZFSL_,5_`@H,`+?_#@0<$39\^>_4;!?0JT&#QQX@3)VMK:4%96!I;6KU_/C`VE]N_? +MC_3T=!#CPXU>KP?1PB)%?26+9L)J[)8SC^\J>@GP4_$1%YVMO(NG$-&>.CR.]. +M)$23M>(+XKHZF5?/F;K)MF,+&=5Q?KF&V$@*YGER_>NB?UX(S6]YX'G93M8O +MUI%QI,K_(D:]1=8MFXCKYE^:$A%Q/2:R[=HV\")\S].+_XH.S_L1F3KTL._] +M$HX_'`#UV]0CB8F%_)W(X>/,&/<^[=5HR+YPW`+H[.Y4 +10 Oct 2007. All of the Debian packaging scripts are released +into the public domain. + +Upstream Author: Spencer Janssen + +Copyright: Spencer Janssen 2007, 2008 + Don Stewart 2007, 2008 + +BSD licenced. Copies can be found in /usr/share/common-licenses/BSD on +Debian systems. + +xmonad can be found on http://xmonad.org/ and +http://hackage.haskell.org/cgi-bin/hackage-scripts/package/xmonad + + + --- xmonad-0.8.1.orig/debian/compat +++ xmonad-0.8.1/debian/compat @@ -0,0 +1 @@ +7 --- xmonad-0.8.1.orig/debian/README.Debian +++ xmonad-0.8.1/debian/README.Debian @@ -0,0 +1,40 @@ +xmonad packages for debian +========================== + +The packages for debian are split as follows: + +* xmonad + This package contains only the xmonad binary (with it’s man page) in the + default configuration. You do not have to install the haskell compiler to + use this package, but you also cannot reconfigure it to your needs. To do + that, you need the libghc6-xmonad-dev package. If that is installed, xmonad + will detect your configuration when you start it and compile a custom + executable in ~/.xmonad transparently. + +* libghc6-xmonad-dev + This package contains the actual xmonad library, which you need to compile + your custom configuration. + +* libghc6-xmonad-contrib-dev + A lot of features are distributed in the xmonad extension library. To use them, + you need this package. + +* libghc6-xmonad-doc + This package contains the documentation for xmonad, including an example + configuration file. + +* libghc6-xmonad-configuration-doc + The documentation for the extensions, and more information on developing + xmonad extensions. + +* libghc6-xmonad-prof and libghc6-xmonad-contrib-prof + Profiling information. You’ll know when you need it. + +The most interesting pieces of documentation are probably: + - /usr/share/doc/libghc6-xmonad-contrib-doc/html/XMonad-Doc-Configuring.html + - /usr/share/doc/libghc6-xmonad-contrib-doc/html/XMonad-Doc-Extending.html +in the package libghc6-xmonad-contrib-doc. + + +Joachim Breitner + --- xmonad-0.8.1.orig/debian/libghc6-xmonad-doc.docs +++ xmonad-0.8.1/debian/libghc6-xmonad-doc.docs @@ -0,0 +1,2 @@ +CONFIG +TODO --- xmonad-0.8.1.orig/debian/xmonad.manpages +++ xmonad-0.8.1/debian/xmonad.manpages @@ -0,0 +1 @@ +man/xmonad.1 --- xmonad-0.8.1.orig/debian/xmonad.desktop +++ xmonad-0.8.1/debian/xmonad.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Type=Application +Encoding=UTF-8 +Name=Xmonad +Exec=xmonad +NoDisplay=true +X-GNOME-WMName=Xmonad +X-GNOME-Autostart-Phase=WindowManager +X-GNOME-Provides=windowmanager +X-GNOME-Autostart-Notify=true + --- xmonad-0.8.1.orig/debian/changelog +++ xmonad-0.8.1/debian/changelog @@ -0,0 +1,188 @@ +xmonad (0.8.1-5) unstable; urgency=low + + * Suggest dmenu, not pdmenu (Closes: #536327) + * Unconditionally remove .hi and .o before building, to provide smooth + upgrades from older ghc6 versions (Closes: #531893) + * Bump standards version + + -- Joachim Breitner Mon, 20 Jul 2009 23:19:13 +0200 + +xmonad (0.8.1-4) unstable; urgency=low + + * Remove are not installed. No (Closes: #517949) + * Improve misleading 1st paragraph of long description ("xmonad" is not a + library)", thanks to Stefano Zacchiroli (Closes: #524200) + * Bump debhelper level to 7 and add dh_installwm to debian/rules to fix + "xmonad does not install x-window-manager alternative" (Closes: #530458) + * Add ghc6-doc, libghc6-x11-doc and libghc6-mtl-doc to the Recommends of + libghc6-xmonad-doc. + * Change section to haskell + * Bump standards version, no change + * Suggest pdmenu (Closes: #512493) + + -- Joachim Breitner Tue, 26 May 2009 10:49:54 +0200 + +xmonad (0.8.1-3) unstable; urgency=low + + * Rebuilt with ghc6 with arch-independent .haddock files + + -- Joachim Breitner Sat, 28 Feb 2009 12:03:32 +0100 + +xmonad (0.8.1-2) unstable; urgency=low + + * Fix binary-arch target + + -- Joachim Breitner Tue, 24 Feb 2009 14:47:36 +0100 + +xmonad (0.8.1-1) unstable; urgency=low + + * New upstream release (no changes, only ghc-6.10 compatibility) + Closes: #516448 + * Added debian/watch + * Use kaol’s cdbs script in haskell-devscripts + * Update years in debian/copyright + * Include .desktop file in /usr/share/applications (Closes: #516397), thanks + to Magnus Therning + + -- Joachim Breitner Mon, 23 Feb 2009 18:45:13 +0100 + +xmonad (0.8-1) unstable; urgency=low + + * New upstream release + + -- Joachim Breitner Sat, 06 Sep 2008 11:50:18 +0200 + +xmonad (0.7-2) unstable; urgency=low + + * Rebuild against new haskell-x11 (Closes: #486610, xinerama support) + * Update standards version (no change) + * Add Homepage: field + + -- Joachim Breitner Thu, 03 Jul 2008 17:23:14 +0200 + +xmonad (0.7-1) unstable; urgency=low + + * xmonad needs to depend on x11-utils, for xmessage dialog + boxes (Closes: #470114) + * New upstream release + * Remove VCS headers, darcs was to unreliable for me. + + -- Joachim Breitner Sun, 30 Mar 2008 23:14:13 +0200 + +xmonad (0.6-3) unstable; urgency=low + + * Update build-dependencies + + -- Joachim Breitner Thu, 06 Mar 2008 19:33:06 +0100 + +xmonad (0.6-2) unstable; urgency=low + + * Start to use update-haskell-control for tighter dependencies + + -- Joachim Breitner Wed, 05 Mar 2008 14:13:09 +0100 + +xmonad (0.6-1) unstable; urgency=low + + * Upload to debian (closes: 460727) + * This makes xmonad-rebuild obsolete, as that functionality is provided by + upstream now. + * Depends on the haskell-x11 version that was NMU’ed and uploaded to 7-days + delayed, if anyone is wondering. + + -- Joachim Breitner Mon, 04 Feb 2008 18:15:05 +0100 + +xmonad (0.6-0.nomeata1) UNRELEASED; urgency=low + + * New upstream version + + -- Joachim Breitner Mon, 28 Jan 2008 18:06:13 +0100 + +xmonad (0.5-0.nomeata4) UNRELEASED; urgency=low + + * Build against ghc6.8 + + -- Joachim Breitner Thu, 17 Jan 2008 00:13:09 +0100 + +xmonad (0.5-0.nomeata3) UNRELEASED; urgency=low + + * Explicitly depend on X11 >= 1.4.1 + + -- Joachim Breitner Sun, 30 Dec 2007 14:28:29 +0100 + +xmonad (0.5-0.nomeata2) UNRELEASED; urgency=low + + * Install desktop file and register as a window manager + + -- Joachim Breitner Tue, 25 Dec 2007 16:15:14 +0100 + +xmonad (0.5-0.nomeata1) UNRELEASED; urgency=low + + * New upstream version, test release + See README.Debian for information on the various packages. + + -- Joachim Breitner Tue, 11 Dec 2007 12:42:34 +0100 + +xmonad (0.4-6) unstable; urgency=low + + * xmonad-rebuild needs to depend on libxinerama-dev (Closes: #451990) + sorry for forgetting about that + + -- Joachim Breitner Mon, 19 Nov 2007 19:28:11 +0100 + +xmonad (0.4-5) unstable; urgency=low + + * FTBFS: /usr/bin/ld: cannot find -lXinerama (Closes: #450449) + Thanks to Lucas Nussbaum for doing good QA work. + + -- Joachim Breitner Thu, 08 Nov 2007 16:15:01 +0100 + +xmonad (0.4-4) unstable; urgency=low + + * Add upstream url to copyright file + + -- Joachim Breitner Mon, 29 Oct 2007 18:37:30 +0100 + +xmonad (0.4-3) unstable; urgency=low + + * Support for extensions in /usr/share/xmonad/extensions/ + + -- Joachim Breitner Sun, 28 Oct 2007 12:58:24 +0100 + +xmonad (0.4-2) unstable; urgency=low + + * Add Vcs-Darcs headers + * change terminal name to x-terminal-emulator + * and mplayer float app (Closes: #447966) + + -- Joachim Breitner Thu, 25 Oct 2007 12:21:08 +0200 + +xmonad (0.4-1) unstable; urgency=low + + * New upstream release + + -- Joachim Breitner Thu, 18 Oct 2007 15:43:57 +0200 + +xmonad (0.3-0.4) UNRELEASED; urgency=low + + * Use Config.hs instead of config.hs for xmonad-rebuild + + -- Joachim Breitner Sun, 07 Oct 2007 20:44:09 +0200 + +xmonad (0.3-0.3) UNRELEASED; urgency=low + + * Register as a proper window manager (desktop file for gdm, + alternatives handling) + + -- Joachim Breitner Sun, 07 Oct 2007 16:37:34 +0200 + +xmonad (0.3-0.2) UNRELEASED; urgency=low + + * Support for user-compiled xmonad binary in /home/jojo/.xmonad/xmonad + + -- Joachim Breitner Sun, 07 Oct 2007 14:55:22 +0200 + +xmonad (0.3-0.1) UNRELEASED; urgency=low + + * Initial release. (Closes: #429226) + + -- Joachim Breitner Sun, 07 Oct 2007 13:55:30 +0200 --- xmonad-0.8.1.orig/XMonad/Config.hs +++ xmonad-0.8.1/XMonad/Config.hs @@ -154,7 +154,7 @@ -- | The preferred terminal program, which is used in a binding below and by -- certain contrib modules. terminal :: String -terminal = "xterm" +terminal = "x-terminal-emulator" -- | Whether focus follows the mouse pointer. focusFollowsMouse :: Bool --- xmonad-0.8.1.orig/XMonad/Core.hs +++ xmonad-0.8.1/XMonad/Core.hs @@ -33,7 +33,7 @@ import XMonad.StackSet hiding (modify) import Prelude hiding ( catch ) -import Control.Exception (catch, bracket, throw, Exception(ExitException)) +import Control.Exception (try, catch, bracket, throw, Exception(ExitException)) import Control.Applicative import Control.Monad.State import Control.Monad.Reader @@ -390,10 +390,16 @@ base = dir ++ "/" ++ "xmonad" err = base ++ ".errors" src = base ++ ".hs" + hi = base ++ ".hi" + o = base ++ ".o" srcT <- getModTime src binT <- getModTime bin if (force || srcT > binT) then do + -- remove old interface files, just in case ghc6 was upgraded and doesn + -- like the new ones. Ignore any errors while doing so. + try $ removeFile hi + try $ removeFile o status <- bracket (openFile err WriteMode) hClose $ \h -> do waitForProcess =<< runProcess "ghc" ["--make", "xmonad.hs", "-i", "-no-recomp", "-v0", "-o",binn] (Just dir) Nothing Nothing Nothing (Just h)