summaryrefslogtreecommitdiff
path: root/gnu/services
AgeCommit message (Expand)Author
2020-09-02installer: Run the installation inside a container....When the store overlay is mounted, other processes such as kmscon, udev and guix-daemon may open files from the store, preventing the underlying install support from being umounted. See: https://lists.gnu.org/archive/html/guix-devel/2018-12/msg00161.html. To avoid this situation, mount the store overlay inside a container, and run the installation from within that container. * gnu/build/shepherd.scm (fork+exec-command/container): New procedure. * gnu/services/base.scm (guix-shepherd-service): Support an optional PID argument passed to the "start" method. If that argument is passed, ensure that guix-daemon enters the given PID MNT namespace by using fork+exec-command/container procedure. * gnu/installer/final.scm (umount-cow-store): Remove it, (install-system): run the installation from within a container. * gnu/installer/newt/final.scm (run-install-shell): Remove the display hack. Mathieu Othacehe
2020-09-02services: childhurd: Always include the secret-service....* gnu/services/virtualization.scm (secret-service-operating-system): New procedure. (hurd-vm-disk-image): Use it to ensure a Childhurd always includes the secret-service. (%hurd-vm-operating-system): Remove secret-service. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Jan (janneke) Nieuwenhuizen
2020-09-01services: childhurd: Support installing secrets from the host....* gnu/services/virtualization.scm (%hurd-vm-operating-system): Add secret-service. (hurd-vm-shepherd-service): Use it to install secrets. * doc/guix.texi (The Hurd in a Virtual Machine): Document it. Jan (janneke) Nieuwenhuizen
2020-09-01services: Add secret-service-type....This adds a "secret-service" that can be added to a Childhurd VM to receive out-of-band secrets (keys) sent from the host. Co-authored-by: Ludovic Courtès <ludo@gnu.org> * gnu/services/virtualization.scm (secret-service-activation): New procedure. (secret-service-type): New variable. * gnu/build/secret-service.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Jan (janneke) Nieuwenhuizen
2020-08-26services: fcgiwrap: Create parent directory for unix socket....* gnu/services/web.scm (fcgiwrap-activation): New function. (fcgiwrap-service-type): Extend activation-service-type with fcgiwrap-activation. Arun Isaac
2020-08-26services: mcron: Validate jobs even in the presence of #:user....Fixes a bug in 949672c923b6a3953471c446e0b19f30be335572 whereby jobs specifying a #:user not available in the build environment would fail validation. Reported by Maxim Cournoyer. * gnu/services/mcron.scm (job-files)[validated-file]: Add "prologue" file and pass it to 'mcron --schedule'. Ludovic Courtès
2020-08-26services: mcron: Validate jobs at build time....That way, run-time errors in the job specs are caught at build time. * gnu/services/mcron.scm (job-file): Remove. (job-files): New procedure. (mcron-shepherd-services): Adjust accordingly. Ludovic Courtès
2020-08-25services: ganeti-kvmd-service-type: Fix typo in description....* gnu/services/ganeti.scm (ganeti-kvmd-service-type)[description]: Fix typo. Tobias Geerinckx-Rice
2020-08-25Remove "guile-zlib" extension when unused....This is a follow-up of 755f365b02b42a5d1e8ef3000dadef069553a478. As (zlib) is autoloaded in (gnu build linux-modules), "guile-zlib" is needed as an extension only when it is effectively used. * gnu/installer.scm (installer-program): Remove "guile-zlib" from the extensions. * gnu/machine/ssh.scm (machine-check-initrd-modules): Ditto. * gnu/services.scm (activation-script): Ditto. * gnu/services/base.scm (default-serial-port): Ditto, (agetty-shepherd-service): ditto, (udev-service-type): ditto. * gnu/system/image.scm (gcrypt-sqlite3&co): Ditto. * gnu/system/shadow.scm (account-shepherd-service): Ditto. Mathieu Othacehe
2020-08-25linux-libre: Support module compression....This commit adds support for GZIP compression for linux-libre kernel modules. The initrd modules are kept uncompressed as the initrd is already compressed as a whole. The linux-libre kernel also supports XZ compression, but as Guix does not have any available bindings for now, and the compression time is far more significant, GZIP seems to be a better option. * gnu/build/linux-modules.scm (modinfo-section-contents): Use 'call-with-gzip-input-port' to read from a module file using '.gz' extension, (strip-extension): new procedure, (dot-ko): adapt to support compression, (ensure-dot-ko): ditto, (file-name->module-name): ditto, (find-module-file): ditto, (load-linux-module*): ditto, (module-name->file-name/guess): ditto, (module-name-lookup): ditto, (write-module-name-database): ditto, (write-module-alias-database): ditto, (write-module-device-database): ditto. * gnu/installer.scm (installer-program): Add "guile-zlib" to the extensions. * gnu/machine/ssh.scm (machine-check-initrd-modules): Ditto. * gnu/services.scm (activation-script): Ditto. * gnu/services/base.scm (default-serial-port): Ditto, (agetty-shepherd-service): ditto, (udev-service-type): ditto. * gnu/system/image.scm (gcrypt-sqlite3&co): Ditto. * gnu/system/linux-initrd.scm (flat-linux-module-directory): Add "guile-zlib" to the extensions and make sure that the initrd only contains uncompressed module files. * gnu/system/shadow.scm (account-shepherd-service): Add "guile-zlib" to the extensions. * guix/profiles.scm (linux-module-database): Ditto. Mathieu Othacehe
2020-08-24services: unattended-upgrade: Log output of the 'guix' commands....Fixes <https://bugs.gnu.org/43011>. Reported by Jesse Gibbons <jgibbons2357@gmail.com>. Until now the stdout/stderr file descriptors were not redirected. * gnu/services/admin.scm (unattended-upgrade-mcron-jobs)[code]: Remove 'with-logging' and use 'redirect-port' instead. Ludovic Courtès
2020-08-24services: unattended-upgrade: Add 'operating-system-file' field....* gnu/services/admin.scm (<unattended-upgrade-configuration>)[operating-system-file]: New field. (unattended-upgrade-mcron-jobs): Honor it. * doc/guix.texi (Unattended Upgrades): Document it. Ludovic Courtès
2020-08-19services: Allow (service accountsservice-service-type)....* gnu/services/desktop.scm (accountsservice-service-type) [default-value]: Set to accountsservice. Tobias Geerinckx-Rice
2020-08-16services: connman-shepherd-service: Don't use short flags....* gnu/services/networking.scm (connman-shepherd-service): Use the long flag options for the start command. Efraim Flashner
2020-08-16services: docker: Add 'enable-iptables?' argument....* gnu/services/docker.scm (docker-configuration): Define the argument. * gnu/services/docker.scm (docker-shepherd-service): Use it. * doc/guix.texi (Docker Service): Document it. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Alexey Abramov
2020-08-02services: Add zram-device-service....* gnu/services/linux.scm (<zram-device-configuration>): New record. (zram-device-service-type): New variable. * doc/guix.texi (Linux Services): Document it. * tests/services/linux.scm (zram-swap-device-test): New tests. Efraim Flashner
2020-08-01services: postgresql: Provide postgresql commands....* gnu/services/databases.scm (postgresql-service-type): Extend profile-service-type to provide postgresql commands. Pierre Neidhardt
2020-07-27services: auditd: Provide default configuration directory....* gnu/services/auditd.scm (auditd.conf) (%default-auditd-configuration-directory): New variables. (<auditd-configuration>): Switch to 'define-record-type*'. [configuration-directory]: New field. (auditd-shepherd-service): Honor 'configuration-directory'. Pass #:pid-file. (auditd-service-type)[description]: Tweak. [default-value]: Provide 'configuration-directory'. * doc/guix.texi (Miscellaneous Services): Update docs to reflect changes. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Robin Green
2020-07-27services: Add 'unattended-upgrade-service-type'....* gnu/services/admin.scm (<unattended-upgrade-configuration>): New record type. (%unattended-upgrade-log-file): New variable. (unattended-upgrade-mcron-jobs, unattended-upgrade-log-rotations): New procedures. (unattended-upgrade-service-type): New variable. * doc/guix.texi (Service Reference): Add 'provenance-service-type' anchor. (Unattended Upgrades): New section. Ludovic Courtès
2020-07-25services: nix: Add extra-options....* gnu/services/nix.scm (<nix-configuration>)[extra-options]: New field. (nix-shepherd-service): Add this. (nix-activation): Add new line to the end of /etc/nix/nix.conf file. * doc/guix.texi (Miscellaneous Services)[Nix service]: Document this. Oleg Pykhalov
2020-07-25services: nix: Fix typo....* gnu/services/nix.scm (<nix-configuration>): Fix typo. Oleg Pykhalov
2020-07-25services: nix: Export nix-configuration....* gnu/services/nix.scm (nix-configuration, nix-configuration?): Export. Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com> Peng Mei Yu
2020-07-25services: nix: Provide nix commands....* gnu/services/nix.scm (nix-service-type): Extend profile-service-type to provide nix commands. Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com> Peng Mei Yu via Guix-patches via
2020-07-22services: nix: Fix sandbox....* gnu/tests/package-management.scm: New file. * gnu/local.mk: Add this. * gnu/services/nix.scm (<nix-configuration>): New record. (nix-activation): Generate Nix config file which fixes sandbox. (nix-service-type): Add default value. (nix-shepherd-service): Allow provide Nix package. * doc/guix.texi (Miscellaneous Services)[Nix service]<nix-configuration>: Document record. Oleg Pykhalov
2020-07-22services: base: Export references-file....* gnu/services/base.scm (references-file): Export procedure. Oleg Pykhalov
2020-07-21services: ganeti: Fix erroneous gexp....* gnu/services/ganeti.scm (ganeti-watcher-command): Add missing parens. Marius Bakke
2020-07-19services: ganeti: Use TLS on the remote API by default....* gnu/services/ganeti.scm (<ganeti-rapi-configuration>): Set SSL? to #t. * gnu/tests/ganeti.scm (%ganeti-os): Set SSL? to #f. * doc/guix.texi (Virtualization Services): Adjust accordingly. Marius Bakke
2020-07-16services: Add ganeti....* gnu/services/ganeti.scm, gnu/tests/ganeti.scm: New files. * doc/guix.texi (Virtualization Services): Document the Ganeti services. Marius Bakke
2020-07-12services: web: Do not export record type descriptors....* gnu/services/web.scm (<httpd-configuration>, <httpd-virtualhost>) (<httpd-config-file>, <httpd-module>, <nginx-configuration>) (<nginx-server-configuration>, <nginx-upstream-configuration>) (<nginx-location-configuration>, <nginx-named-location-configuration>) (<php-fpm-configuration>, <php-fpm-dynamic-process-manager-configuration>) (<php-fpm-static-process-manager-configuration>) (<php-fpm-on-demand-process-manager-configuration>) (<tailon-configuration-file>, <tailon-configuration>) (<varnish-configuration>, <patchwork-database-configuration>) (<patchwork-settings-module>, <patchwork-configuration>) (<mumi-configuration>): Do not export. Ludovic Courtès
2020-07-12services: mumi: Run in a UTF-8 locale....* gnu/services/web.scm (mumi-shepherd-services)[environment]: New variable. Pass it as #:environment-variables to each 'make-forkexec-constructor' call. Ludovic Courtès
2020-07-12services: Remove obsolete comment....This TODO was resolved in ea4915a74bc4c03495d4910c1e32a92c790b6626. * gnu/services/base.scm (%default-authorized-guix-keys): Remove TODO comment. Marius Bakke
2020-07-11services: guix: Refer to 'berlin.guix.gnu.org.pub'....Commit 6680880f9b8dceb4f2f3f91bd2b13c659b53835e pushes out a new guix package with a new key location, so we need to update to the new key in order for systems to build correctly. * gnu/services/base.scm (%default-authorized-guix-keys): Refer to berlin.guix.gnu.org.pub. Christopher Lemmer Webber
2020-07-10services: guix: Refer to 'berlin.guixsd.org.pub'....This partly reverts d283bb960f927dd5f7bb8b96bc697221e4e8ad39. * gnu/services/base.scm (%default-authorized-guix-keys): Refer to berlin.guixsd.org.pub. Ludovic Courtès
2020-07-10maint: Remove traces of "berlin.guixsd.org"....The guixsd.org domain is no longer advertised since before in 1.0.0 release in May 2019. * etc/substitutes/berlin.guixsd.org.pub: Rename to... * etc/substitutes/berlin.guix.gnu.org.pub: ... this. * etc/substitutes/ci.guix.gnu.org.pub, etc/substitutes/ci.guix.info.pub: Adjust accordingly. * gnu/services/base.scm (%default-authorized-guix-keys): Likewise. * guix/build/download-nar.scm (urls-for-item): Likewise. * guix/self.scm (miscellaneous-files): Likewise. * Makefile.am (dist_pkgdata_DATA): Likewise. Ludovic Courtès
2020-07-06services: simulated-wifi: Use 'kernel-module-loader'....* gnu/services/networking.scm (simulated-wifi-shepherd-services): Change 'mac-simulation-module' service to use 'kernel-module-loader'. Brice Waegeneire
2020-07-02services: wpa-supplicant: Support specifying additional service dependencies....* gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]: New parameter. (wpa-supplicant-shepherd-service): Use it instead of hard-coded list. * doc/guix.texi (Networking Services): Document accordingly. Marius Bakke
2020-07-02services: wpa-supplicant: Do not export the <wpa-supplicant-configuration> re......* gnu/services/networking.scm: Remove <wpa-supplicant-configuration> from exports. Marius Bakke
2020-06-28services: virtualization: Export hurd-vm-configuration accessors....* gnu/services/virtualization.scm (hurd-vm-id, hurd-vm-options): Rename export to ... (hurd-vm-configuration-id, hurd-vm-configuration-options): ... these correct accessor names. (hurd-vm-configuration?, hurd-vm-configuration-os, hurd-vm-configuration-qemu, hurd-vm-configuration-image, hurd-vm-configuration-disk-size, hurd-vm-configuration-memory-size, hurd-vm-configuration-options, hurd-vm-configuration-id, hurd-vm-configuration-net-options): Export record predicate and accessors. Jan (janneke) Nieuwenhuizen
2020-06-28services: Add rshiny service....* gnu/services/science.scm: New file. (<rshiny-configuration>): New record. (rshiny-shepherd-service-type): New variable. * doc/guix.texi (Miscellaneous Services): Document it. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Efraim Flashner
2020-06-25services: Add missing (ice-9 format) import....These issues were reported by -Wformat, though they were harmless in practice because importing (ice-9 format) changes the global 'format' binding currently. * gnu/services/nix.scm: Import (ice-9 format). * gnu/services/web.scm: Likewise. * gnu/system/mapped-devices.scm: Likewise. Ludovic Courtès
2020-06-25services: childhurd: Adjust for hurd-disk-image move....This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0. * gnu/services/virtualization.scm: Import (gnu system images hurd). Marius Bakke
2020-06-21services: childhurd: Support more than one instance....* gnu/services/virtualization.scm (<hurd-vm-configuration>)[options]: Remove "--hda" option. [id,net-options]: New fields. (hurd-vm-net-options): New procedure. Parameterize port forwarding with ID. * gnu/services/virtualization.scm (hurd-vm-shepherd-service): Use them. Parameterize provision with ID, if set. Hardcode "--hda" option for image. * doc/guix.texi (Virtualization Services): Document new fields. Update for hardcoding of "--hda". Jan (janneke) Nieuwenhuizen
2020-06-14services: Add 'hurd-vm service-type'....* gnu/services/virtualization.scm (hurd-vm-shepherd-service, hurd-vm-disk-image): New procedures. (%hurd-vm-operating-system, hurd-vm-service-type): New variables. (<hurd-vm-configuration>): New record type. * doc/guix.texi (Virtualization Services): Document it. * gnu/services/shepherd.scm (scm->go): Use let-system, remove FIXME. Fixes fixes cross-building of shepherd modules for the Hurd image. Jan (janneke) Nieuwenhuizen
2020-06-13services: hurd: Remove deprecated 'hurd-getty-service' wrapper....* gnu/services/hurd.scm (hurd-getty-service): Remove. Jan (janneke) Nieuwenhuizen
2020-06-08services: Add `hurd-getty-service-type'....* gnu/services/hurd.scm (<hurd-gettty-configuration>): New record. (hurd-ttys-shepherd-service): New procedure. (hurd-getty-service-type): New variable. * doc/guix.texi (Hurd Services): Document it. Jan (janneke) Nieuwenhuizen
2020-06-08services: Add `hurd-console-service-type'....* gnu/services/hurd.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Hurd Services): Document it. Jan (janneke) Nieuwenhuizen
2020-06-04xorg: honor xorg-configuration-server in xorg-configuration->file...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. Caleb Ristvedt
2020-06-03gnu: services: docker: Add a debug? parameter....* gnu/services/docker.scm (docker-configuration): Add a debug? field. (containerd-shepherd-service): Pass the "--log-level=debug" argument when DEBUG? is true. (docker-shepherd-service): Pass the "--debug" and "--log-level=debug" arguments when DEBUG? is true. * doc/guix.texi (Miscellaneous Services): Update doc. Maxim Cournoyer
2020-05-29services: nfs: Expose configuration options for TCP and UDP....* gnu/services/nfs.scm (<nfs-configuration>)[nfsd-tcp?, nfsd-udp?]: New fields. (nfs-shepherd-services)[rpc.nfsd]: Populate the --{no-,}tcp and --{no-,}udp command line options based on the values of the nfsd-tcp? and nfsd-upd? fields. * doc/guix.texi (Network File System): Add doc. Maxim Cournoyer
2020-05-26services: Fix permissions of directory /var/spool/cups/tmp....Fixes <https://bugs.gnu.org/41367>. * gnu/services/cups.scm (%cups-activation): Fix permissions of directory /var/spool/cups/tmp. Danny Milosavljevic