summaryrefslogtreecommitdiff
path: root/gnu/packages/display-managers.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <ricardo.wurmus@mdc-berlin.de>2017-05-05 17:24:35 +0200
committerRicardo Wurmus <rekado@elephly.net>2017-05-06 11:19:44 +0200
commit4606f3a3efd6a5a01152b3fdf727216bdd3d3b8c (patch)
tree28d3c8ca1fdba977750b042e5c2de9697d1ea139 /gnu/packages/display-managers.scm
parent09270a97d9297e8acf6d9ff224dd1d58e2a4498e (diff)
gnu: Add lightdm.
* gnu/packages/display-managers.scm (lightdm): New variable. Co-authored-by: 宋文武 <iyzsong@gmail.com>
Diffstat (limited to 'gnu/packages/display-managers.scm')
-rw-r--r--gnu/packages/display-managers.scm81
1 files changed, 81 insertions, 0 deletions
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 0a70fd737b..1c3acd15aa 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -2,6 +2,8 @@
;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2017 Sou Bunnbu <iyzsong@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -23,17 +25,22 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system gnu)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages image)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages linux)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg))
@@ -186,6 +193,80 @@ create smooth, animated user interfaces.")
;; QML files are MIT licensed and images are CC BY 3.0.
(license (list license:gpl2+ license:expat license:cc-by3.0))))
+(define-public lightdm
+ (package
+ (name "lightdm")
+ (version "1.22.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://launchpad.net/lightdm/"
+ (version-major+minor version) "/"
+ version "/+download/lightdm-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0a5bvfl2h7r873al6q7c819h0kg564k9fh51rl6489z6lyvazfg4"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:parallel-tests? #f ; fails when run in parallel
+ #:configure-flags
+ (list "--localstatedir=/var")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda _
+ (substitute* "src/shared-data-manager.c"
+ (("/bin/rm") (which "rm")))
+ (substitute* '("data/users.conf"
+ "common/user-list.c")
+ (("/bin/false") (which "false"))
+ (("/usr/sbin/nologin") (which "nologin")))
+ (substitute* "src/seat.c"
+ (("/bin/sh") (which "sh")))
+ #t))
+ (add-after 'unpack 'disable-broken-tests
+ (lambda _
+ (substitute* "tests/Makefile.in"
+ (("test-sessions-gobject ") "")
+ ((" test-sessions-python ") " "))
+ #t))
+ (add-before 'check 'pre-check
+ ;; Run test-suite under a dbus session.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (wrap-program "tests/src/test-python-greeter"
+ `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))
+ `("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH"))))
+
+ ;; Avoid printing locale warnings, which trip up the text
+ ;; matching tests.
+ (unsetenv "LC_ALL")
+ #t)))))
+ (inputs
+ `(("audit" ,audit)
+ ("linux-pam" ,linux-pam)
+ ("util-linux" ,util-linux) ; for sbin/nologin
+ ("libgcrypt" ,libgcrypt)
+ ("libxcb" ,libxcb)))
+ (native-inputs
+ `(("gobject-introspection" ,gobject-introspection)
+ ("pkg-config" ,pkg-config)
+ ("itstool" ,itstool)
+ ("intltool" ,intltool)
+ ;; For tests
+ ("dbus" ,dbus)
+ ("python" ,python-2)
+ ("python-pygobject" ,python2-pygobject)))
+ ;; Required by liblightdm-gobject-1.pc.
+ (propagated-inputs
+ `(("glib" ,glib)
+ ("libx11" ,libx11)
+ ("libxklavier" ,libxklavier)))
+ (home-page "https://www.freedesktop.org/wiki/Software/LightDM/")
+ (synopsis "Lightweight display manager")
+ (description "The Light Display Manager (LightDM) is a cross-desktop
+display manager which supports different greeters.")
+ (license license:gpl3+)))
+
(define-public slim
(package
(name "slim")