summaryrefslogtreecommitdiff
path: root/gnu/services/xorg.scm
Commit message (Collapse)AuthorAge
* 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>
* system: Use 'file-append' to denote file names.Ludovic Courtès2016-09-10
| | | | | | | | | | | | * gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/databases.scm, gnu/services/dbus.scm, gnu/services/desktop.scm, gnu/services/dict.scm, gnu/services/mail.scm, gnu/services/networking.scm, gnu/services/sddm.scm, gnu/services/spice.scm, gnu/services/ssh.scm, gnu/services/web.scm, gnu/services/xorg.scm, gnu/system.scm: Replace the #~(string-append #$pkg "/bin/foo") idiom with (file-append pkg "/bin/foo").
* services: Export initrc.David Craven2016-09-06
| | | | * gnu/services/xorg.scm (define-module): Export initrc.
* gnu: slim: Move to display-managers.scm.Marius Bakke2016-09-01
| | | | | | | * gnu/packages/display-managers.scm: New file. * gnu/packages/slim.scm: Delete file. * gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly. * gnu/services/xorg.scm: Likewise.
* services: Export *-service-type and *-configuration.Tomáš Čech2016-07-21
| | | | | | | | | | | | | | | | | | | | | | | | | This allows users to use 'modify-services' and similar constructs for all these service types. * gnu/services/avahi.scm: export avahi-configuration. * gnu/services/base.scm: export gpm-configuration and rngd-configuration. * gnu/services/databases.scm: export *-service-type and *-configuration. * gnu/services/dbus.scm: export dbus-configuration. * gnu/services/dict.scm: export dicod-service-type. * gnu/services/lirc.scm: export lirc-configuration and lirc-service-type. * gnu/services/mail.scm: export dovecot-service-type. * gnu/services/web.scm: export nginx-configuration and nginx-service-type. * gnu/services/xorg.scm: export screen-locker and screen-locker?. * gnu/services/ssh.scm: export lsh-configuration and lsh-service-type. * gnu/services/desktop.scm: export *-service, *-service-type and *-configuration. * gnu/services/networking.scm: export *-configuration and *-service-type. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* gnu: Switch to 'with-imported-modules'.Ludovic Courtès2016-07-12
| | | | | | | | | | | | | | | | | | | | | | | | * gnu/services.scm (directory-union): Use 'with-imported-modules' instead of the '#:modules' argument of 'computed-file'. * gnu/services/base.scm (udev-rules-union): Likewise. * gnu/services/dbus.scm (system-service-directory): Likewise. * gnu/services/desktop.scm (wrapped-dbus-service): (polkit-directory): Likewise. * gnu/services/networking.scm (tor-configuration->torrc): Likewise. * gnu/services/xorg.scm (xorg-configuration-directory): Likewise. * gnu/system/install.scm (self-contained-tarball): Likewise. * gnu/system/linux-container.scm (container-script): Likewise. * gnu/system/linux-initrd.scm (expression->initrd): Likewise, and remove #:modules parameter. (flat-linux-module-directory): Use 'with-imported-modules'. (base-initrd): Likewise. * gnu/system/locale.scm (locale-directory): Likewise. * gnu/system/shadow.scm (default-skeletons): Likewise. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise. * gnu/tests/base.scm (run-basic-test): Likewise. * gnu/tests/install.scm (run-install): Likewise. * doc/guix.texi (Initial RAM Disk): Update 'expression->initrd' documentation.
* services: xorg: Fix ~/.xsession handling.Ludovic Courtès2016-03-24
| | | | | | | Fixes a regression introduced in c510cbb4ecb270ca3edf282c6769aa2bfb144822. * gnu/services/xorg.scm (xinitrc)[builder]: Add missing 'apply' when XSESSION-FILE exists.