guix/gnu/packages/display-managers.scm

182 lines
7.1 KiB
Scheme
Raw Normal View History

;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;;
;;; 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 display-managers)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system cmake)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#: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 qt)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg))
(define-public greenisland
(package
(name "greenisland")
(version "0.8.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/greenisland/greenisland"
"/releases/download/v" version "/"
"greenisland-" version ".tar.xz"))
(sha256
(base32
"1c9rlq7fqrsd5nb37anjvnp9xspqjz1kc0fvydv5xdy3abg8mw40"))))
(build-system cmake-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("dbus" ,dbus)
("glib:bin" ,glib "bin")
("pkg-config" ,pkg-config)
("xorg-server" ,xorg-server)))
(inputs
`(("elogind" ,elogind)
("eudev" ,eudev)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("glib" ,glib)
("libdrm" ,libdrm)
("libinput" ,libinput-minimal)
("libxcursor" ,libxcursor)
("libxkbcommon" ,libxkbcommon)
("libx11" ,libx11)
("mesa" ,mesa)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)
("xcb-util-cursor" ,xcb-util-cursor)))
(arguments
`(#:configure-flags
(list (string-append "-DPLUGIN_INSTALL_DIR="
(assoc-ref %outputs "out") "/plugins")
(string-append "-DQML_INSTALL_DIR="
(assoc-ref %outputs "out") "/qml"))
#:modules ((guix build cmake-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%cmake-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-udev-tests
(lambda _ ; FIXME: Build env doesn't contain /dev/sda
(substitute* "tests/auto/platform/tst_udev.cpp"
(("QVERIFY") "// QVERIFY")
(("QCOMPARE") "// QCOMPARE"))))
(replace 'check
(lambda _
(setenv "DBUS_FATAL_WARNINGS" "0")
(zero? (system* "dbus-launch" "ctest" "."))))
(add-before 'check 'check-setup
(lambda _
(setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output
(setenv "QT_QPA_PLATFORM" "offscreen")
(setenv "XDG_RUNTIME_DIR" (getcwd))
#t))
(add-after 'install 'wrap-programs
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-qt-program out "greenisland")
(wrap-qt-program out "greenisland-launcher")
(wrap-qt-program out "greenisland-screencaster")
(wrap-qt-program out "greenisland-wayland-scanner")
#t))))))
(synopsis "QtQuick Wayland compositor and shell for desktop and mobile")
(description "Green Island provides a full blown Wayland compositor for
QtQuick as well as pluggable hardware abstraction, extensions, tools and a
Qt-style API for Wayland clients.")
(home-page "http://hawaiios.org")
;; Choice of license at the user's opinion.
(license (list license:gpl2 license:gpl3 license:lgpl2.1 license:lgpl3))))
(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"))
gnu: packages: Use 'search-patches' everywhere. * gnu/packages/abiword.scm: Use 'search-patches' for 'patches' field. * gnu/packages/acl.scm: Likewise. * gnu/packages/admin.scm: Likewise. * gnu/packages/algebra.scm: Likewise. * gnu/packages/animation.scm: Likewise. * gnu/packages/apr.scm: Likewise. * gnu/packages/audacity.scm: Likewise. * gnu/packages/audio.scm: Likewise. * gnu/packages/autotools.scm: Likewise. * gnu/packages/avahi.scm: Likewise. * gnu/packages/backup.scm: Likewise. * gnu/packages/base.scm: Likewise. * gnu/packages/bash.scm: Likewise. * gnu/packages/bioinformatics.scm: Likewise. * gnu/packages/cdrom.scm: Likewise. * gnu/packages/ci.scm: Likewise. * gnu/packages/cmake.scm: Likewise. * gnu/packages/cpio.scm: Likewise. * gnu/packages/cross-base.scm: Likewise. * gnu/packages/dico.scm: Likewise. * gnu/packages/doxygen.scm: Likewise. * gnu/packages/ebook.scm: Likewise. * gnu/packages/elf.scm: Likewise. * gnu/packages/emacs.scm: Likewise. * gnu/packages/engineering.scm: Likewise. * gnu/packages/firmware.scm: Likewise. * gnu/packages/flashing-tools.scm: Likewise. * gnu/packages/fltk.scm: Likewise. * gnu/packages/ftp.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/gawk.scm: Likewise. * gnu/packages/gcc.scm: Likewise. * gnu/packages/gd.scm: Likewise. * gnu/packages/ghostscript.scm: Likewise. * gnu/packages/glib.scm: Likewise. * gnu/packages/gnome.scm: Likewise. * gnu/packages/gnucash.scm: Likewise. * gnu/packages/gnunet.scm: Likewise. * gnu/packages/gnupg.scm: Likewise. * gnu/packages/gnuzilla.scm: Likewise. * gnu/packages/graphics.scm: Likewise. * gnu/packages/grub.scm: Likewise. * gnu/packages/gtk.scm: Likewise. * gnu/packages/guile.scm: Likewise. * gnu/packages/icu4c.scm: Likewise. * gnu/packages/idutils.scm: Likewise. * gnu/packages/image.scm: Likewise. * gnu/packages/imagemagick.scm: Likewise. * gnu/packages/irc.scm: Likewise. * gnu/packages/ldc.scm: Likewise. * gnu/packages/libcanberra.scm: Likewise. * gnu/packages/libevent.scm: Likewise. * gnu/packages/libreoffice.scm: Likewise. * gnu/packages/libunwind.scm: Likewise. * gnu/packages/libusb.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/lirc.scm: Likewise. * gnu/packages/llvm.scm: Likewise. * gnu/packages/lsh.scm: Likewise. * gnu/packages/lua.scm: Likewise. * gnu/packages/lxqt.scm: Likewise. * gnu/packages/mail.scm: Likewise. * gnu/packages/maths.scm: Likewise. * gnu/packages/mcrypt.scm: Likewise. * gnu/packages/messaging.scm: Likewise. * gnu/packages/mit-krb5.scm: Likewise. * gnu/packages/mp3.scm: Likewise. * gnu/packages/multiprecision.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/ninja.scm: Likewise. * gnu/packages/nvi.scm: Likewise. * gnu/packages/ocaml.scm: Likewise. * gnu/packages/orpheus.scm: Likewise. * gnu/packages/ots.scm: Likewise. * gnu/packages/parallel.scm: Likewise. * gnu/packages/patchutils.scm: Likewise. * gnu/packages/pcre.scm: Likewise. * gnu/packages/pdf.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/plotutils.scm: Likewise. * gnu/packages/polkit.scm: Likewise. * gnu/packages/pulseaudio.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/qemu.scm: Likewise. * gnu/packages/qt.scm: Likewise. * gnu/packages/ratpoison.scm: Likewise. * gnu/packages/rdf.scm: Likewise. * gnu/packages/readline.scm: Likewise. * gnu/packages/rush.scm: Likewise. * gnu/packages/scheme.scm: Likewise. * gnu/packages/screen.scm: Likewise. * gnu/packages/sdl.scm: Likewise. * gnu/packages/slim.scm: Likewise. * gnu/packages/ssh.scm: Likewise. * gnu/packages/tcl.scm: Likewise. * gnu/packages/tcsh.scm: Likewise. * gnu/packages/texinfo.scm: Likewise. * gnu/packages/tls.scm: Likewise. * gnu/packages/tor.scm: Likewise. * gnu/packages/tv.scm: Likewise. * gnu/packages/valgrind.scm: Likewise. * gnu/packages/version-control.scm: Likewise. * gnu/packages/video.scm: Likewise. * gnu/packages/vpn.scm: Likewise. * gnu/packages/vtk.scm: Likewise. * gnu/packages/w3m.scm: Likewise. * gnu/packages/web.scm: Likewise. * gnu/packages/wicd.scm: Likewise. * gnu/packages/wm.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/packages/xfce.scm: Likewise. * gnu/packages/xiph.scm: Likewise. * gnu/packages/xml.scm: Likewise. * gnu/packages/xorg.scm: Likewise. * gnu/packages/zip.scm: Likewise.
2016-04-08 14:18:13 +02:00
(patches (search-patches "slim-config.patch"
"slim-session.patch"
"slim-sigusr1.patch"))))
(build-system cmake-build-system)
(inputs `(("linux-pam" ,linux-pam)
("libpng" ,libpng)
("libjpeg" ,libjpeg)
("freeglut" ,freeglut)
("libxrandr" ,libxrandr)
("libxrender" ,libxrender)
("freetype" ,freetype)
("fontconfig" ,fontconfig)
("libx11" ,libx11)
("libxft" ,libxft)
("libxmu" ,libxmu)
("xauth" ,xauth)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(arguments
'(#:phases (alist-cons-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.
"")))
%standard-phases)
#:configure-flags '("-DUSE_PAM=yes"
"-DUSE_CONSOLEKIT=no")
#:tests? #f))
;; This used to be at <http://slim.berlios.de/>.
(home-page "http://sourceforge.net/projects/slim.berlios/")
(synopsis "Desktop-independent graphical login manager for X11")
(description
"SLiM is a Desktop-independent graphical login manager for X11, derived
from Login.app. It aims to be light and simple, although completely
configurable through themes and an option file; is suitable for machines on
which remote login functionalities are not needed.
Features included: PNG and XFT support for alpha transparency and antialiased
fonts, External themes support, Configurable runtime options: X server --
login / shutdown / reboot commands, Single (GDM-like) or double (XDM-like)
input control, Can load predefined user at startup, Configurable welcome /
gnu packages: Clean up synopses and descriptions. * gnu/packages/admin.scm, gnu/packages/algebra.scm, gnu/packages/audio.scm, gnu/packages/backup.scm, gnu/packages/base.scm, gnu/packages/bittorrent.scm, gnu/packages/code.scm, gnu/packages/compression.scm, gnu/packages/databases.scm, gnu/packages/enchant.scm, gnu/packages/firmware.scm, gnu/packages/fonts.scm, gnu/packages/freedesktop.scm, gnu/packages/games.scm, gnu/packages/gd.scm, gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gsasl.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm, gnu/packages/guile.scm, gnu/packages/haskell.scm, gnu/packages/language.scm, gnu/packages/lesstif.scm, gnu/packages/libreoffice.scm, gnu/packages/linux.scm, gnu/packages/llvm.scm, gnu/packages/maths.scm, gnu/packages/mcrypt.scm, gnu/packages/mit-krb5.scm, gnu/packages/mp3.scm, gnu/packages/ncdu.scm, gnu/packages/networking.scm, gnu/packages/ntp.scm, gnu/packages/ocaml.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm, gnu/packages/perl.scm, gnu/packages/pretty-print.scm, gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/rdesktop.scm, gnu/packages/rdf.scm, gnu/packages/ruby.scm, gnu/packages/slang.scm, gnu/packages/slim.scm, gnu/packages/telephony.scm, gnu/packages/tls.scm, gnu/packages/tmux.scm, gnu/packages/tre.scm, gnu/packages/unrtf.scm, gnu/packages/version-control.scm, gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wget.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm, gnu/packages/xiph.scm: Fix typos. Trim long lines. Add missing periods in the end of sentences. Use double spaces between sentences. Remove trailing whitespaces.
2015-07-17 14:16:07 +02:00
shutdown messages, Random theme selection.")
(license license:gpl2)))