summary refs log tree commit diff
path: root/gnu/services/xorg.scm
AgeCommit message (Collapse)Author
2020-03-01services: set-xorg-configuration: handle slim and sddmJakub Kądziołka
* 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.
2020-02-16services: xorg: Filter modules based on systemshtwzrd
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>
2020-01-28services: gdm: Disable initial system setup in GDM.Leo Prikler
* gnu/services/xorg.scm (gdm-configuration-file): Disable gnome-initial-setup. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-10-26services: gdm: Add 'debug?' configuration field.Timothy Sample
* gnu/services/xorg.scm (<gdm-configuration>)[debug?]: New field. (gdm-configuration-file): Use it. * doc/guix.texi: Document it.
2019-09-21services: gdm: Ensure /var/lib/gdm is owned by "gdm".Ludovic Courtès
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'.
2019-06-10services: slim: Update SLiM theme to 1.x.Diego Nicola Barbato
* gnu/services/xorg.scm (%default-slim-theme-name): Change to "1.x". Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-11services: gdm: Include user profile in D-Bus paths.Timothy Sample
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.
2019-05-09services: Log-in services now require "pam_loginuid".Ludovic Courtès
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.
2019-05-09services: slim: Provide the 'xorg-server' Shepherd service.Ludovic Courtès
This is a followup to 61569171d03146f41ba1b9aedf29fd8fa78d6102. * gnu/services/xorg.scm (slim-shepherd-service): Add 'xorg-server' to 'provision' when VT is "vt7".
2019-05-07services: slim: Allow SLiM to be started on multiple ttys.Diego Nicola Barbato
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>
2019-04-29services: slim: Honor the value of slim from slim-configuration.Diego Nicola Barbato
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>
2019-04-05services: localed: Do nothing for unconfigured keyboards.Ludovic Courtès
* 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'.
2019-04-05services: localed: Properly handle lack of a 'keyboard-layout'.Ludovic Courtès
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.
2019-04-05services: gdm: Properly handle empty extensions lists.Ludovic Courtès
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.
2019-04-05services: xorg: Add 'set-xorg-configuration'.Ludovic Courtès
* 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.
2019-04-05services: Add 'localed' service type and have GDM extend it.Ludovic Courtès
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.
2019-03-31services: slim-configuration: Adapt exported getter methods.Tim Gesthuizen
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>
2019-03-31doc: Document 'gdm-service-type'.Ludovic Courtès
* 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.
2019-03-25services: xorg: Fix cases where 'keyboard-layout' is #f.Ludovic Courtès
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'.
2019-03-24services: xorg: Add a 'keyboard-layout' field in <xorg-configuration>.Ludovic Courtès
* 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>
2019-03-24services: sddm, slim, gdm: Take an <xorg-configuration> record.Ludovic Courtès
* 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.
2019-03-24services: xorg: Define an <xorg-configuration> record type.Ludovic Courtès
* 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.
2019-03-24services: xorg: Remove unused #:guile parameter.Ludovic Courtès
* gnu/services/xorg.scm (xorg-wrapper): Remove #:guile, which was unused. (xorg-start-command): Likewise. (xinitrc): Likewise.
2019-02-17services: xorg: Enable override of xserver-arguments.Jan Nieuwenhuizen
* gnu/services/xorg.scm (xorg-start-command): Add parameter #:xserver-arguments. * doc/guix.texi (X Window): Document it.
2019-02-17services: gdm: Allow for custom X session scripts.Timothy Sample
* 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>
2019-02-17services: gdm: Make dependencies explicit.Timothy Sample
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>
2019-02-17gnu: gdm: Run dbus-daemon via a wrapper script.Timothy Sample
* 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>
2019-02-17services: gdm: Remove etc service.Timothy Sample
* 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>
2019-02-10services: gdm: Disable debugging output.Ludovic Courtès
* gnu/services/xorg.scm (gdm-etc-service)[gdm-configuration-file]: Comment out debugging setting.
2019-01-28gnu: %default-xorg-modules: Include xf86-video-amdgpu.Pierre Neidhardt
* gnu/services/xorg.scm (%default-xorg-modules): Include xf86-video-amdgpu. Rephrase comment to clarify the priority order.
2019-01-10services: Use 'define-deprecated' for service procedures.Ludovic Courtès
* 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.
2019-01-10services: gdm: Add default value.Ludovic Courtès
* gnu/services/xorg.scm (<gdm-configuration>)[x-server]: Add default value. (gdm-service-type)[default-value, description]: New fields. (gdm-service): Mark as deprecated.
2018-12-30services: gdm: Enable auto-start.Timothy Sample
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>
2018-12-30services: gdm: Remove 'allow-root?' option.Timothy Sample
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>
2018-02-20services: slim: Make the logged-in session show up in "w".Danny Milosavljevic
* gnu/services/xorg.scm (slim-shepherd-service): Use SESSREG to register X11 session. * doc/guix.texi (slim-configuration): Document new field "sessreg".
2018-02-17services: xorg: Import (ice-9 rdelim).Danny Milosavljevic
* gnu/services/xorg.scm (xinitrc): Import (ice-9 rdelim).
2018-01-29doc, gnu: Fix spelling of screen-things.Tobias Geerinckx-Rice
* doc/guix.texi (X Window): Write 'screen locker' and 'screen saver' in prose. * gnu/services/xorg.scm (screen-locker-service): Likewise.
2017-12-04services: xorg: Properly handle the case where ~/.xession is used.Ludovic Courtès
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.
2017-12-01services: xorg: Add 'font-misc-misc' to the default font set.Ludovic Courtès
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.
2017-11-28services: xorg: Remove WindowMaker as a default fallback.Ludovic Courtès
* 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.
2017-11-28services: xorg: Document 'slim-configuration' and deprecate 'slim-service'.Ludovic Courtès
* 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'.
2017-11-28services: slim: Remove unused 'bash' configuration field.Ludovic Courtès
* gnu/services/xorg.scm (<slim-configuration>)[bash]: Remove. (slim-service): Adjust accordingly.
2017-11-28services: xorg: Allow users to specify a list of modules.Ludovic Courtès
* 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'.
2017-11-07services: gdm: Add environment variables.Timothy Sample
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>
2017-09-20gnu: services: Add modesetting driver to xorg configuration path.Andy Wingo
* 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>
2017-08-25gnu: Add draft of gdm service.Andy Wingo
* 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.
2017-08-25gnu: services: Refactor to separate X and startx wrappers.Andy Wingo
* gnu/services/xorg.scm (xorg-wrapper): New public function. (xorg-start-command): Use xorg-wrapper.
2017-02-19gnu: Remove xf86-video-modesetting.Marius Bakke
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.
2016-10-06services: xorg: Add ATI video driver to the default modules.8p8c
* gnu/services/xorg.scm (%default-xorg-modules): Add xf86-video-ati. Signed-off-by: 宋文武 <iyzsong@gmail.com>
2016-09-10system: Use 'file-append' to denote file names.Ludovic Courtès
* 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").