unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Siniša Biđin" <sinisa@bidin.eu>
To: guix-devel@gnu.org
Subject: [PATCH 12/13] gnu: Add xmonad.
Date: Tue, 18 Aug 2015 22:40:14 +0200	[thread overview]
Message-ID: <1439930415-16938-13-git-send-email-sinisa@bidin.eu> (raw)
In-Reply-To: <1439930415-16938-1-git-send-email-sinisa@bidin.eu>

* gnu/packages/xmonad.scm (xmonad, xmonad.desktop): New variables.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
---
 gnu-system.am           |  1 +
 gnu/packages/xmonad.scm | 78 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 79 insertions(+)
 create mode 100644 gnu/packages/xmonad.scm

diff --git a/gnu-system.am b/gnu-system.am
index 9f46f7b..8148038 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -326,6 +326,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/xfig.scm				\
   gnu/packages/xiph.scm				\
   gnu/packages/xml.scm				\
+  gnu/packages/xmonad.scm			\
   gnu/packages/xnee.scm				\
   gnu/packages/xdisorg.scm			\
   gnu/packages/xorg.scm				\
diff --git a/gnu/packages/xmonad.scm b/gnu/packages/xmonad.scm
new file mode 100644
index 0000000..4d6a099
--- /dev/null
+++ b/gnu/packages/xmonad.scm
@@ -0,0 +1,78 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages xmonad)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix licenses)
+  #:use-module (guix build-system haskell)
+  #:use-module (gnu packages haskell))
+
+(define xmonad.desktop
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://sources.gentoo.org/cgi-bin/viewvc.cgi/"
+          "gentoo-x86/x11-wm/xmonad/files/xmonad.desktop?revision=1.3"))
+    (file-name "xmonad.desktop")
+    (sha256 (base32 "0jx3pqv62hjz0nnfxml2b3qiw2nzslwnva466xh28k23mpissj6s"))))
+
+(define-public xmonad
+  (package
+    (name "xmonad")
+    (version "0.11.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+              "http://hackage.haskell.org/package/xmonad/xmonad-"
+              version
+              ".tar.gz"))
+        (sha256
+         (base32 "1pfjssamiwpwjp1qqkm9m9p9s35pv381m0cwg6jxg0ppglibzq1r"))))
+    (build-system haskell-build-system)
+    (arguments
+     '(#:phases
+       (alist-cons-after
+        'install 'install-xsession
+        (lambda _
+            (let* ((file      (assoc-ref %build-inputs "xmonad.desktop"))
+                   (xsessions (string-append %output "/share/xsessions"))
+                   (target    (string-append xsessions "/xmonad.desktop")))
+              (mkdir-p xsessions)
+              (copy-file file target)))
+        %standard-phases)))
+    (inputs
+     `(("xmonad.desktop" ,xmonad.desktop)))
+    (propagated-inputs
+     `(("ghc-mtl" ,ghc-mtl)
+       ("ghc-utf8-string" ,ghc-utf8-string)
+       ("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
+       ("ghc-x11" ,ghc-x11)))
+    (home-page "http://xmonad.org")
+    (synopsis "A tiling window manager")
+    (description
+      "xmonad is a tiling window manager for X.  Windows are arranged
+automatically to tile the screen without gaps or overlap, maximising screen
+use.  All features of the window manager are accessible from the keyboard: a
+mouse is strictly optional.  xmonad is written and extensible in Haskell.
+ Custom layout algorithms, and other extensions, may be written by the user in
+config files.  Layouts are applied dynamically, and different layouts may be
+used on each workspace.  Xinerama is fully supported, allowing windows to be
+tiled on several screens.")
+    (license bsd-3)))
-- 
2.4.3

  parent reply	other threads:[~2015-08-18 20:40 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-18 20:40 [PATCH 00/13] Add xmonad, xmonad-contrib and dependencies Siniša Biđin
2015-08-18 20:40 ` [PATCH 01/13] gnu: Add ghc-data-default-class Siniša Biđin
2015-08-18 20:40 ` [PATCH 02/13] gnu: Add ghc-data-default-instances-base Siniša Biđin
2015-08-18 20:40 ` [PATCH 03/13] gnu: Add ghc-data-default-instances-containers Siniša Biđin
2015-08-23 21:07   ` Eric Bavier
2015-08-18 20:40 ` [PATCH 04/13] gnu: Add ghc-data-default-instances-old-locale Siniša Biđin
2015-08-18 20:40 ` [PATCH 05/13] gnu: Add ghc-dlist Siniša Biđin
2015-08-18 20:40 ` [PATCH 06/13] gnu: Add ghc-extensible-exceptions Siniša Biđin
2015-08-18 20:40 ` [PATCH 07/13] gnu: Add ghc-data-default-instances-dlist Siniša Biđin
2015-08-23 21:09   ` Eric Bavier
2015-08-18 20:40 ` [PATCH 08/13] gnu: Add ghc-utf8-string Siniša Biđin
2015-08-18 20:40 ` [PATCH 09/13] gnu: Add ghc-data-default Siniša Biđin
2015-08-18 20:40 ` [PATCH 10/13] gnu: Add ghc-x11 Siniša Biđin
2015-08-23 21:11   ` Eric Bavier
2015-08-18 20:40 ` [PATCH 11/13] gnu: Add ghc-x11-xft Siniša Biđin
2015-08-23 21:12   ` Eric Bavier
2015-08-18 20:40 ` Siniša Biđin [this message]
2015-08-23 20:47   ` [PATCH 12/13] gnu: Add xmonad Eric Bavier
2015-08-24  3:00     ` Siniša Biđin
2015-08-31 15:52       ` Ludovic Courtès
2015-08-31 22:02         ` Eric Bavier
2015-09-11  8:38         ` Eric Bavier
2015-09-12 14:05           ` Siniša Biđin
2015-08-18 20:40 ` [PATCH 13/13] gnu: Add ghc-xmonad-contrib Siniša Biđin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1439930415-16938-13-git-send-email-sinisa@bidin.eu \
    --to=sinisa@bidin.eu \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).