summaryrefslogtreecommitdiff
path: root/gnu/packages/display-managers.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/display-managers.scm')
-rw-r--r--gnu/packages/display-managers.scm169
1 files changed, 75 insertions, 94 deletions
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 935563c94c..2df4e6311b 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -69,25 +69,16 @@
(define-public sddm
(package
(name "sddm")
- (version "0.19.0")
+ (version "0.20.0")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/sddm/sddm"
- "/releases/download/v" version "/"
- "sddm-" version ".tar.xz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sddm/sddm")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0hcdysw8ibr66vk8i7v56l0v5ijvhlq67v4460mc2xf2910g2m72"))
- (snippet
- #~(begin
- ;; https://github.com/sddm/sddm/issues/1536
- ;; https://github.com/sddm/sddm/commit/e93bf95c54ad8c2a1604f8d7be05339164b19308
- ;; Commit comes shortly after the 0.19.0 release.
- (use-modules ((guix build utils)))
- (substitute* "src/daemon/XorgDisplayServer.cpp"
- (("m_cookie\\[i\\] = digits\\[dis\\(gen\\)\\]")
- "m_cookie[i] = QLatin1Char(digits[dis(gen)])"))))))
+ "1450zv03d3mbid27986p4mdshw9qf3ar8crl4idybf7khxgan22y"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config qttools-5))
@@ -109,36 +100,39 @@
shadow
wayland))
(arguments
- `(#:configure-flags
- ,#~(list
- ;; This option currently does nothing, but will presumably be enabled
- ;; if/when <https://github.com/sddm/sddm/pull/616> is merged.
- "-DENABLE_WAYLAND=ON"
- "-DENABLE_PAM=ON"
- ;; Both flags are required for elogind support.
- "-DNO_SYSTEMD=ON" "-DUSE_ELOGIND=ON"
- "-DCONFIG_FILE=/etc/sddm.conf"
- ;; Set path to /etc/login.defs.
- ;; An alternative would be to use -DUID_MIN and -DUID_MAX.
- (string-append "-DLOGIN_DEFS_PATH="
- #$(this-package-input "shadow")
- "/etc/login.defs")
- (string-append "-DQT_IMPORTS_DIR="
- #$output "/lib/qt5/qml")
- (string-append "-DCMAKE_INSTALL_SYSCONFDIR="
- #$output "/etc"))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'embed-loginctl-reference
- (lambda _
- (substitute* "CMakeLists.txt"
- (("/usr/bin/loginctl") (which "loginctl")))
- #t)))))
+ (list
+ #:configure-flags
+ #~(list
+ "-DENABLE_WAYLAND=ON"
+ "-DENABLE_PAM=ON"
+ ;; Both flags are required for elogind support.
+ "-DNO_SYSTEMD=ON"
+ "-DUSE_ELOGIND=ON"
+ "-DCONFIG_FILE=/etc/sddm.conf"
+ ;; Set path to /etc/login.defs.
+ ;; An alternative would be to use -DUID_MIN and -DUID_MAX.
+ (string-append "-DLOGIN_DEFS_PATH="
+ #$(this-package-input "shadow")
+ "/etc/login.defs")
+ (string-append "-DCMAKE_CXX_FLAGS=-I"
+ #$(this-package-input
+ "qtdeclarative") "/include/qt5")
+ (string-append "-DQT_IMPORTS_DIR="
+ #$output "/lib/qt5/qml")
+ (string-append "-DCMAKE_INSTALL_SYSCONFDIR="
+ #$output "/etc"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'embed-loginctl-reference
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("/usr/bin/loginctl")
+ (which "loginctl"))))))))
(synopsis "QML based X11 and Wayland display manager")
(description "SDDM is a display manager for X11 and Wayland aiming to be
fast, simple and beautiful. SDDM is themeable and puts no restrictions on the
-user interface design. It uses QtQuick which gives the designer the ability to
-create smooth, animated user interfaces.")
+user interface design. It uses QtQuick which gives the designer the ability
+to create smooth, animated user interfaces.")
(home-page "https://github.com/sddm/sddm")
;; QML files are MIT licensed and images are CC BY 3.0.
(license (list license:gpl2+ license:expat license:cc-by3.0))))
@@ -486,59 +480,46 @@ GTK+, lets you select a desktop session and log in to it.")
(define-public slim
(package
(name "slim")
- (version "1.3.6")
- (source (origin
- (method url-fetch)
- ;; Used to be available from download.berlios.de.
- (uri (string-append
- "mirror://sourceforge/slim.berlios/slim-"
- version ".tar.gz"))
- (sha256
- (base32 "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1"))
- (patches (search-patches "slim-config.patch"
- "slim-reset.patch"
- "slim-login.patch"
- "slim-session.patch"
- "slim-sigusr1.patch"
- "slim-display.patch"))))
+ (version "1.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/slim-fork/slim-" version
+ ".tar.gz"))
+ (sha256
+ (base32 "011jfmksy0kgw4z0y70mc80bm5kmz5i1sgm6krrfj0h00zak22rm"))
+ (patches (search-patches "slim-config.patch"
+ "slim-login.patch"
+ "slim-display.patch"))))
(build-system cmake-build-system)
- (inputs `(("linux-pam" ,linux-pam)
- ("libpng" ,libpng)
- ("libjpeg" ,libjpeg-turbo)
- ("freeglut" ,freeglut)
- ("libxrandr" ,libxrandr)
- ("libxrender" ,libxrender)
- ("freetype" ,freetype)
- ("fontconfig" ,fontconfig)
- ("libx11" ,libx11)
- ("libxft" ,libxft)
- ("libxmu" ,libxmu)
- ("xauth" ,xauth)))
- (native-inputs
- (list pkg-config))
+ (inputs (list fontconfig
+ freeglut
+ freetype
+ libjpeg-turbo
+ libpng
+ libx11
+ libxft
+ libxmu
+ libxrandr
+ libxrender
+ linux-pam
+ xauth))
+ (native-inputs (list pkg-config))
(arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-before 'configure 'set-new-etc-location
- (lambda _
- (substitute* "CMakeLists.txt"
- (("/etc")
- (string-append (assoc-ref %outputs "out") "/etc"))
- (("install.*systemd.*")
- ;; The build system's logic here is: if "Linux", then
- ;; "systemd". Strip that.
- ""))
- #t))
- (add-before 'configure 'fix-0-pointer-comparison
- (lambda _
- (substitute* "panel.cpp"
- (("WinGC < 0") "WinGC == NULL")))))
- #:configure-flags '("-DUSE_PAM=yes"
- "-DUSE_CONSOLEKIT=no")
- #:tests? #f))
-
- ;; This used to be at <http://slim.berlios.de/>.
- (home-page "https://github.com/iwamatsu/slim")
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'configure 'set-new-etc-location
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("/etc")
+ (string-append #$output "/etc"))))))
+ #:configure-flags
+ #~(list "-DUSE_PAM=yes" "-DUSE_CONSOLEKIT=no")
+ #:tests? #f))
+ ;; The original project (https://github.com/iwamatsu/slim) has not been
+ ;; maintained since 2013, so we use slim-fork instead.
+ (home-page "https://slim-fork.sourceforge.io/")
(synopsis "Desktop-independent graphical login manager for X11")
(description
"SLiM is a Desktop-independent graphical login manager for X11, derived