summaryrefslogtreecommitdiff
path: root/gnu/services/xorg.scm
AgeCommit message (Collapse)Author
2020-06-04xorg: honor xorg-configuration-server in xorg-configuration->fileCaleb Ristvedt
Fixes <https://bugs.gnu.org/40806>. Previously the xorg-server package specified in the configuration was ignored entirely in xorg-configuration->file. This had the effect that while the X program of the configured package would be executed, the modules of the configured package would be ignored in favor of the default xorg-server package's modules. This fixes that. * gnu/services/xorg.scm (xorg-configuration->file): honor xorg-configuration-server.
2020-05-08Merge branch 'core-updates'Marius Bakke
2020-05-08services: Add descriptions.Ludovic Courtès
* gnu/services/dbus.scm (polkit-service-type)[description]: New field. * gnu/services/dict.scm (dicod-service-type)[description]: New field. * gnu/services/dns.scm (knot-service-type)[description]: New field. * gnu/services/networking.scm (dhcpd-service-type)[description]: New field. * gnu/services/shepherd.scm (shepherd-root-service-type)[description]: New field. * gnu/services/xorg.scm (slim-service-type)[description]: New field. (screen-locker-service-type)[description]: New field. * gnu/system/pam.scm (pam-root-service-type)[description]: New field. * gnu/system/shadow.scm (account-service-type)[description]: New field.
2020-03-30Merge branch 'master' into core-updatesMarius Bakke
Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/guile.scm gnu/packages/linux.scm gnu/packages/package-management.scm gnu/packages/pulseaudio.scm gnu/packages/web.scm
2020-03-29services: gdm: Add gdm user to 'video' supplementary group.Florian Pelz
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.
2020-03-04Merge branch 'master' into core-updatesMarius Bakke
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-02-11system: Stop using canonical-package.Mathieu Othacehe
Usage of canonical-package outside of thunked fields breaks cross-compilation, see: https://lists.gnu.org/archive/html/guix-devel/2019-12/msg00410.html. * gnu/installer.scm (installer-program): Remove canonical-package. * gnu/services/base.scm (<nscd-cache>): Ditto, (%base-services): ditto. * gnu/services/xorg.scm: Remove useless canonical-package import. * gnu/system.scm (%base-packages): Remove canonical-package. * gnu/system/install.scm (%installation-services): Ditto, (installation-os): ditto. * gnu/system/locale.scm (single-locale-directory): Ditto.
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'.