summaryrefslogtreecommitdiff
path: root/gnu/services/xorg.scm
Commit message (Collapse)AuthorAge
* services: gdm: Add gdm user to 'video' supplementary group.Florian Pelz2020-03-29
| | | | | | | This makes it possible to use gdm with the 'uvesafb' kernel module. See <https://lists.gnu.org/archive/html/guix-devel/2020-03/msg00389.html>. * gnu/services/xorg.scm (%gdm-accounts): Set supplementary groups.
* services: set-xorg-configuration: handle slim and sddmJakub Kądziołka2020-03-01
| | | | | | * gnu/services/xorg.scm (handle-xorg-configuration): New syntax. (gdm-service-type, slim-service-type): Use handle-xorg-configuration. * gnu/services/sddm.scm (sddm-service-type): Likewise.
* services: xorg: Filter modules based on systemshtwzrd2020-02-16
| | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/39402>. Reported by shtwzrd <shtwzrd@protonmail.com>. * gnu/services/xorg.scm (xorg-configuration): Apply a filter over %default-xorg-modules packages, excluding those for which the %current-system is not among the package's supported-systems. This patch makes it possible to use xorg-configuration on systems other than x86_64 and i686, as without it, xf86-video-intel would be pulled in on the unsupported architecture and fail. Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
* services: gdm: Disable initial system setup in GDM.Leo Prikler2020-01-28
| | | | | | * gnu/services/xorg.scm (gdm-configuration-file): Disable gnome-initial-setup. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* services: gdm: Add 'debug?' configuration field.Timothy Sample2019-10-26
| | | | | | * gnu/services/xorg.scm (<gdm-configuration>)[debug?]: New field. (gdm-configuration-file): Use it. * doc/guix.texi: Document it.
* services: gdm: Ensure /var/lib/gdm is owned by "gdm".Ludovic Courtès2019-09-21
| | | | | | | | Fixes <https://bugs.gnu.org/37423>. Reported by Jan <tona_kosmicznego_smiecia@interia.pl>. * gnu/services/xorg.scm (%gdm-activation): New variable. (gdm-service-type)[extensions]: Add 'activation-service-type'.
* services: slim: Update SLiM theme to 1.x.Diego Nicola Barbato2019-06-10
| | | | | | * gnu/services/xorg.scm (%default-slim-theme-name): Change to "1.x". Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: gdm: Include user profile in D-Bus paths.Timothy Sample2019-05-11
| | | | | | | | This partially addresses <https://bugs.gnu.org/35267>. * gnu/services/xorg.scm (dbus-daemon-wrapper): When available, include directories from '~/.guix-profile' in the search paths of the D-Bus daemon.
* services: Log-in services now require "pam_loginuid".Ludovic Courtès2019-05-09
| | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/35553>. Reported by Bruno Haible <bruno@clisp.org>. * gnu/services/base.scm (login-pam-service): Pass #:login-uid? #t to 'unix-pam-service'. * gnu/services/ssh.scm (lsh-pam-services, openssh-pam-services): Likewise. * gnu/services/xorg.scm (slim-pam-service): Likewise. (gdm-pam-service): Likewise for "gdm-autologin" and "gdm-password". * gnu/tests/base.scm (run-basic-test)["getlogin on tty1"]: New test. * gnu/tests/ssh.scm (run-ssh-test): Add #:test-getlogin? parameter. ["getlogin"]: New test. (%test-dropbear): Pass #:test-getlogin? #f.
* services: slim: Provide the 'xorg-server' Shepherd service.Ludovic Courtès2019-05-09
| | | | | | | This is a followup to 61569171d03146f41ba1b9aedf29fd8fa78d6102. * gnu/services/xorg.scm (slim-shepherd-service): Add 'xorg-server' to 'provision' when VT is "vt7".
* services: slim: Allow SLiM to be started on multiple ttys.Diego Nicola Barbato2019-05-07
| | | | | | | | | | | | | | | | | | | | This change makes it possible to add multiple SLiM services to an operating system configuration by setting the new 'display' and 'vt' fields in their configurations to different values. Each SLiM service will get its own authfile, logfile, lockfile, and shepherd service, which will start SLiM on a different tty. * gnu/services/xorg.scm: Export slim-configuration-display and slim-configuration-vt. (<slim-configuration>)[display, vt]: New fields. (slim-shepherd-service): Refactor let. [slim.cfg]: Use new fields for setting display_name, xserver_arguments, authfile, lockfile, and logfile. [shepherd-service][provision]: Name the shepherd service according to the value of 'vt'. [shepherd-service][start]: Delete the right lockfile. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: slim: Honor the value of slim from slim-configuration.Diego Nicola Barbato2019-04-29
| | | | | | | | | Previously setting the slim field in slim-configuration would have no effect. * gnu/services/xorg.scm (slim-shepherd-service): Remove unused let binding for slim. Use (slim-configuration-slim config) instead of the default slim. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: localed: Do nothing for unconfigured keyboards.Ludovic Courtès2019-04-05
| | | | | | * gnu/services/xorg.scm (localed-service-type)[package]: Return the empty list when the 'keyboard-layout' field is #f. [compose]: Use 'find' instead of 'first'.
* services: localed: Properly handle lack of a 'keyboard-layout'.Ludovic Courtès2019-04-05
| | | | | | | Fixes a type error when KEYBOARD-LAYOUT is #f. * gnu/services/xorg.scm (localed-dbus-service): Return the empty list when KEYBOARD-LAYOUT is #f.
* services: gdm: Properly handle empty extensions lists.Ludovic Courtès2019-04-05
| | | | | | | | | | | | | | Fixes a bug whereby not extending GDM would lead us to do: (first '()) in the 'compose' method. Regression introduced in 305a732a0a19c5810aab401aa7d70eba02ac386b. * gnu/services/xorg.scm (gdm-service-type)[compose]: Handle the case where EXTENSIONS is empty. [extend]: Handle the case where XORG-CONFIGURATION is #f.
* services: xorg: Add 'set-xorg-configuration'.Ludovic Courtès2019-04-05
| | | | | | | | * gnu/services/xorg.scm (gdm-service-type)[compose, extend]: New fields. (set-xorg-configuration): New procedure. * doc/guix.texi (Keyboard Layout): Use it. (X Window): Document it. * gnu/system/examples/desktop.tmpl: Add 'keyboard-layout' fields.
* services: Add 'localed' service type and have GDM extend it.Ludovic Courtès2019-04-05
| | | | | | | | | | This fixes a bug whereby GDM would always switch to US English keyboard layout regardless to the configured Xorg keyboard layout. * gnu/services/xorg.scm (<localed-configuration>): New record type. (localed-dbus-service): New procedure. (localed-service-type): New variable. (gdm-service-type): Extend LOCALED-SERVICE-TYPE.
* services: slim-configuration: Adapt exported getter methods.Tim Gesthuizen2019-03-31
| | | | | | | | | | Commit 554b8607396785dcde6eb391f75f98a07ec582fd introduces changes to the slim-configuration record without updating the exported methods. * gnu/services/xorg.scm: Export slim-configuration-xorg and slim-configuration-sessreg. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* doc: Document 'gdm-service-type'.Ludovic Courtès2019-03-31
| | | | | | | * doc/guix.texi (X Window): Document 'gdm-service-type' and 'gdm-configuration'. Take description of '.desktop' files from the 'slim-service-type' description. * gnu/services/xorg.scm (gdm-service): Remove outdated comment.
* services: xorg: Fix cases where 'keyboard-layout' is #f.Ludovic Courtès2019-03-25
| | | | | | | | This is a followup to 598757e038ab5dea3b59c9c248a2ad860c41fe62. * gnu/services/xorg.scm (xorg-configuration->file): Check whether 'xorg-configuration-keyboard-layout' returns #f before calling 'keyboard-layout-options'.
* services: xorg: Add a 'keyboard-layout' field in <xorg-configuration>.Ludovic Courtès2019-03-24
| | | | | | | | | | * gnu/services/xorg.scm (<xorg-configuration>)[keyboard-layout]: New field. (xorg-configuration->file)[input-class-section]: New procedure. Use it. * doc/guix.texi (X Window): Document 'keyboard-layout' field. Co-authored-by: nee <nee-git@hidamari.blue>
* services: sddm, slim, gdm: Take an <xorg-configuration> record.Ludovic Courtès2019-03-24
| | | | | | | | | | | | | | * gnu/services/sddm.scm (<sddm-configuration>)[xorg-server-path] [xserver-arguments]: Remove. [xorg-configuration]: New field. (sddm-configuration-file): Adjust accordingly. * gnu/services/xorg.scm (<slim-configuration>)[startx]: Remove. [xorg-configuration]: New field. (slim-shepherd-service, slim-service): Adjust accordingly. (<gdm-configuration>)[x-server]: Remove. [xorg-configuration]: New field. (gdm-shepherd-service, gdm-service): Adjust accordingly. * doc/guix.texi (X Window): Update accordingly.
* services: xorg: Define an <xorg-configuration> record type.Ludovic Courtès2019-03-24
| | | | | | | | | | | | * gnu/services/xorg.scm (<xorg-configuration>): New record type. (xorg-configuration-file): Remove. (xorg-wrapper): Remove #:modules, #:configuration-file, and #:xorg-server; add optional 'config' parameter instead. Adjust accordingly. (xorg-start-command): Likewise. * doc/guix.texi (X Window): Document 'xorg-configuration'. Update 'xorg-start-command' documentation. Remove 'xorg-configuration-file' documentation.
* services: xorg: Remove unused #:guile parameter.Ludovic Courtès2019-03-24
| | | | | | * gnu/services/xorg.scm (xorg-wrapper): Remove #:guile, which was unused. (xorg-start-command): Likewise. (xinitrc): Likewise.
* services: xorg: Enable override of xserver-arguments.Jan Nieuwenhuizen2019-02-17
| | | | | * gnu/services/xorg.scm (xorg-start-command): Add parameter #:xserver-arguments. * doc/guix.texi (X Window): Document it.
* services: gdm: Allow for custom X session scripts.Timothy Sample2019-02-17
| | | | | | | | | | | * gnu/packages/gnome.scm (gdm)[arguments]: Update pre-configure phase so that GDM runs an X session script specified by the variable GDM_X_SESSION; remove the '--enable-gdm-xsession' configuration option. * gnu/services/xorg.scm (<gdm-configuration>): Add 'x-session' field. (gdm-shepherd-service): Set the GDM_X_SESSION variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: gdm: Make dependencies explicit.Timothy Sample2019-02-17
| | | | | | | | | | | | | | | | This commit removes the remaining implicit dependencies that the GDM service had on the GNOME Desktop service. * gnu/services/xorg.scm (gdm-configuration): Add a gnome-shell-assets field for specifying any icons or fonts that the GNOME Shell theme needs. (gdm-shepherd-service): Remove environment variables pointing to '/run/current-system' and set XDG_DATA_DIRS so that it points to 'gnome-shell' and its assets. (gdm-service-type): Extend 'profile-service-type' to ensure that necessary fonts are installed in the system profile. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu: gdm: Run dbus-daemon via a wrapper script.Timothy Sample2019-02-17
| | | | | | | | | | | * gnu/packages/gnome.scm (gdm)[arguments]: Modify the pre-configure phase so that GDM propagates the GDM_DBUS_DAEMON variable into the session environment and uses its value to invoke dbus-daemon. * gnu/services/xorg.scm (dbus-daemon-wrapper): New variable. (<gdm-configuration>): Add 'dbus-daemon' field. (gdm-shepherd-service): Set GDM_DBUS_DAEMON before invoking gdm. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: gdm: Remove etc service.Timothy Sample2019-02-17
| | | | | | | | | | | * gnu/packages/gnome.scm (gdm)[arguments]: Update pre-configure phase to make GDM get the configuration file path from an environment variable. * gnu/services/xorg.scm (gdm-etc-service): Remove function. (gdm-configuration-file): New function. (gdm-shepherd-service): Set GDM_CUSTOM_CONF before invoking GDM. (gdm-service-type)[extensions]: Remove etc-service-type extension. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: gdm: Disable debugging output.Ludovic Courtès2019-02-10
| | | | | * gnu/services/xorg.scm (gdm-etc-service)[gdm-configuration-file]: Comment out debugging setting.
* gnu: %default-xorg-modules: Include xf86-video-amdgpu.Pierre Neidhardt2019-01-28
| | | | | * gnu/services/xorg.scm (%default-xorg-modules): Include xf86-video-amdgpu. Rephrase comment to clarify the priority order.
* services: Use 'define-deprecated' for service procedures.Ludovic Courtès2019-01-10
| | | | | | | | | | * gnu/services/base.scm (urandom-seed-service, gpm-service): Define using 'define-deprecated'. * gnu/services/messaging.scm (bitlbee-service): Likewise. * gnu/services/networking.scm (dhcp-client-service): Likewise. (ntp-service): Likewise. * gnu/services/xorg.scm (slim-service): Likewise. (gdm-service): Likewise.
* services: gdm: Add default value.Ludovic Courtès2019-01-10
| | | | | | | * gnu/services/xorg.scm (<gdm-configuration>)[x-server]: Add default value. (gdm-service-type)[default-value, description]: New fields. (gdm-service): Mark as deprecated.
* services: gdm: Enable auto-start.Timothy Sample2018-12-30
| | | | | | | | | GDM is now reliable enough to run automatically. * gnu/services/xorg.scm (gdm-shepherd-service): Do not set 'auto-start?' to '#f'. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* services: gdm: Remove 'allow-root?' option.Timothy Sample2018-12-30
| | | | | | | | | | | This option results in allowing all login attempts without asking for credentials. The name is confusing, but rather than rename it, we will remove it, since it seems like a feature that no one would want. * gnu/services/xorg.scm (<gdm-configuration>): Remove 'allow-root?'. (gdm-pam-service): Do not use 'gdm-configuration-allow-root?'. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* services: slim: Make the logged-in session show up in "w".Danny Milosavljevic2018-02-20
| | | | | | * gnu/services/xorg.scm (slim-shepherd-service): Use SESSREG to register X11 session. * doc/guix.texi (slim-configuration): Document new field "sessreg".
* services: xorg: Import (ice-9 rdelim).Danny Milosavljevic2018-02-17
| | | | * gnu/services/xorg.scm (xinitrc): Import (ice-9 rdelim).
* doc, gnu: Fix spelling of screen-things.Tobias Geerinckx-Rice2018-01-29
| | | | | | * doc/guix.texi (X Window): Write 'screen locker' and 'screen saver' in prose. * gnu/services/xorg.scm (screen-locker-service): Likewise.
* services: xorg: Properly handle the case where ~/.xession is used.Ludovic Courtès2017-12-04
| | | | | | | | | Fixes a regression introduced in 65c0f43649b455db94f1e8b0a244a889cb961b25 in the case where users provide ~/.xsession and SESSION is #f. * gnu/services/xorg.scm (xinitrc): In the XSESSION-FILE case, check whether SESSION is #f.
* services: xorg: Add 'font-misc-misc' to the default font set.Ludovic Courtès2017-12-01
| | | | | | | Fixes <https://bugs.gnu.org/24279>. Reported by John Darrington <john@darrington.wattle.id.au>. * gnu/services/xorg.scm (%default-xorg-fonts): Add FONT-MISC-MISC.
* services: xorg: Remove WindowMaker as a default fallback.Ludovic Courtès2017-11-28
| | | | | | | | | * gnu/services/xorg.scm (xinitrc)[builder](system-profile) (user-profile): New variables. (xsession-command, find-session): New procedures. When FALLBACK-SESSION is #f, find a valid session at run time. * doc/guix.texi (X Window): Adjust accordingly, and insist that one or more window managers must be installed.
* services: xorg: Document 'slim-configuration' and deprecate 'slim-service'.Ludovic Courtès2017-11-28
| | | | | | | | | * gnu/services/xorg.scm (<slim-configuration>): Provide default values for all fields. (slim-service-type)[default-value]: New field. * doc/guix.texi (X Window): Remove 'slim-service' documentation. Document 'slim-service-type' and 'slim-configuration'. * gnu/services/desktop.scm (%desktop-services): Use 'slim-service-type'.
* services: slim: Remove unused 'bash' configuration field.Ludovic Courtès2017-11-28
| | | | | * gnu/services/xorg.scm (<slim-configuration>)[bash]: Remove. (slim-service): Adjust accordingly.
* services: xorg: Allow users to specify a list of modules.Ludovic Courtès2017-11-28
| | | | | | | | | | | * gnu/services/xorg.scm (%default-xorg-fonts): New variable. (xorg-configuration-file): Add #:modules and #:fonts. Rewrite to return a 'computed-file' that honors MODULES and FONTS. (xorg-wrapper): Pass #:modules to 'xorg-configuration-file'. (xorg-start-command): Add #:fonts. Pass #:fonts and #:modules to 'xorg-configuration-file'. * doc/guix.texi (X Window): Adjust documentation of 'xorg-start-command' and 'xorg-configuration-file'.
* services: gdm: Add environment variables.Timothy Sample2017-11-07
| | | | | | | | | While not an optimal solution (see comment), this makes GDM functional. * gnu/services/xorg.scm (gdm-shepherd-service): Set PATH and XDG_DATA_DIRS environment variables. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu: services: Add modesetting driver to xorg configuration path.Andy Wingo2017-09-20
| | | | | | | * gnu/services/xorg.scm (xorg-configuration-file): Add drivers path from xorg-server. This includes the modesetting driver. Signed-off-by: Andy Wingo <wingo@igalia.com>
* gnu: Add draft of gdm service.Andy Wingo2017-08-25
| | | | | | * gnu/services/xorg.scm (%gdm-accounts, <gdm-configuration>) (gdm-etc-service, gdm-pam-service, gdm-shepherd-service, gdm-service-programs) (gdm-service-type, gdm-service): New public variables. Not yet working.
* gnu: services: Refactor to separate X and startx wrappers.Andy Wingo2017-08-25
| | | | | * gnu/services/xorg.scm (xorg-wrapper): New public function. (xorg-start-command): Use xorg-wrapper.
* gnu: Remove xf86-video-modesetting.Marius Bakke2017-02-19
| | | | | | | | | | This is part of xorg-server since version 1.17: https://cgit.freedesktop.org/xorg/xserver/commit/?id=35dc7c75150733dbcef8a18b6796f49a7c48ebee * gnu/packages/xorg.scm (xf86-video-modesetting): Remove variable. * gnu/services/xorg.scm (xorg-configuration-file, %default-xorg-modules): Adjust accordingly.
* services: xorg: Add ATI video driver to the default modules.8p8c2016-10-06
| | | | | | * gnu/services/xorg.scm (%default-xorg-modules): Add xf86-video-ati. Signed-off-by: 宋文武 <iyzsong@gmail.com>