Ludovic Courtès
21cc905ac2
services: lsh: Change #:initialize? to default to #t.
...
* gnu/services/ssh.scm (lsh-service): Change #:initialize? to default
to #t.
* doc/guix.texi (Using the Configuration System): Remove #:initialize? #t
from example.
(Networking Services): Adjust accordingly.
2015-04-03 22:58:49 +02:00
Alex Kost
1bb76f7523
services: syslog-service: Add 'config-file' argument.
...
* gnu/services/base.scm (syslog-service): Add 'config-file' keyword
argument.
* doc/guix.texi (Base Services): Document it.
2015-04-01 20:54:37 +03:00
Alex Kost
52b76622e4
services: guix-service: Add service documentation.
...
* gnu/services/base.scm (guix-service): Add 'documentation' field to the
service.
2015-03-26 15:49:03 +03:00
Alex Kost
aa4ed92314
services: Add 'lirc-service'.
...
* gnu/services/lirc.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Various Services): New node. Document 'lirc-service'.
2015-03-26 15:47:40 +03:00
Ludovic Courtès
2d1d2dd804
services: guix-service: Add 'lsof' and 'lsh' to guix-daemon's $PATH.
...
* gnu/services/base.scm (guix-service): Add #:lsof and #:lsh parameters.
[start]: Pass #:environment-variables to 'make-forkexec-constructor'.
2015-03-19 23:15:50 +01:00
Ludovic Courtès
5250a4f215
services: guix-service: Remove extraneous monadism.
...
* gnu/services/base.scm (guix-build-accounts): Remove unneeded
'with-monad'.
(guix-service): Adjust accordingly.
2015-03-17 22:25:55 +01:00
宋文武
482dbe6a16
services: slim: Pass SESSION to ~/.xsession as "$1".
...
* gnu/services/xorg.scm (xinitrc)[builder]: Pass SESSION to ~/.xsession.
2015-03-13 22:57:22 +08:00
宋文武
e0b85670cf
services: slim: Allow non-absolute path to be used as session command.
...
* gnu/services/xorg.scm (xinitrc)[builder]: Don't check the existence
of COMMAND. Only run ~/.xsession when it exists.
2015-03-13 22:56:40 +08:00
宋文武
4bd43bbe73
services: slim: Use /run/current-system/profile/share/xsessions as sessiondir.
...
* gnu/services/xorg.scm (<session-type>, %windowmaker-session-type)
(%ratposion-session-type, %sawfish-session-type, %default-xsessions)
(xsessions-directory): Remove.
(slim-service): Remove #:sessions parameter.
[slim.cfg]: Use /run/current-system/profile/share/xsessions as sessiondir.
* doc/guix.texi <X Window>: Adjust accordingly.
2015-03-13 22:40:57 +08:00
Ludovic Courtès
9751c39a6d
services: bitlbee: Make /var/lib/bitlbee when activating.
...
* gnu/services/networking.scm (bitlbee-service): Add 'activate' field.
2015-03-12 19:10:44 +01:00
Ludovic Courtès
116244df95
services: Statically report duplicate dmd service identifiers.
...
Reported by 白い熊 @相撲道 <guix-devel_gnu.org@sumou.com>
at <http://lists.gnu.org/archive/html/guix-devel/2015-03/msg00264.html >.
* gnu/services/dmd.scm (assert-no-duplicates): New procedure.
(dmd-configuration-file): Use it.
* po/guix/POTFILES.in: Add gnu/services/dmd.scm.
* tests/guix-system.sh (errorfile): Add test.
2015-03-09 23:51:43 +01:00
Ludovic Courtès
16c33bfb07
services: xorg: Fix file descriptor leak from SLiM/xinitrc.
...
This reverts commit 9515b74554
.
* gnu/services/xorg.scm (xinitrc)[builder](close-all-fdes): Start from
file descriptor 3.
2015-03-02 20:34:37 +01:00
Mark H Weaver
9515b74554
Revert "services: xorg: Fix file descriptor leak from SLiM/xinitrc."
...
This reverts commit ec4a4c46ef
,
because it broke XFCE.
2015-03-01 23:57:23 -05:00
Ludovic Courtès
ec4a4c46ef
services: xorg: Fix file descriptor leak from SLiM/xinitrc.
...
Previously processes started from the window manager would have a couple
of leaked file descriptors: writable /var/log/slim.log and readable
/gnu/store/…-xinitrc.
* gnu/services/xorg.scm (xinitrc)[builder]: Add 'close-all-fdes'. Use
it in 'exec-from-login-shell'.
2015-03-01 00:25:30 +01:00
Ludovic Courtès
e150917495
services: slim: Add "F1 to change" in session message.
...
* gnu/services/xorg.scm (slim-service)[slim.cfg]: Add 'session_msg'.
2015-02-26 22:25:15 +01:00
Ludovic Courtès
a21b23d34a
services: slim: Preserve the order of session types.
...
That makes WindowMaker the default session, by default.
* gnu/services/xorg.scm (xsessions-directory)[builder]: Prepend a number
in the file name to preserve the order of SESSIONS.
(slim-service): Augment docstring.
* doc/guix.texi (X Window): Adjust accordingly.
2015-02-26 22:25:15 +01:00
Ludovic Courtès
faf0f39bd3
services: nscd: Make sure /var/db/nscd exists.
...
* gnu/services/base.scm (nscd-service)[activate]: Make /var/db/nscd.
2015-02-25 18:02:13 +01:00
nebuli
5833bf33a2
services: lsh: Add graceful handling of daemonic option.
...
* gnu/services/ssh.scm (lsh-service): New #:keys (daemonic?, pid-file?,
pid-file). Build new lshd-command and expand service-requirement
field.
* doc/guix.texi (Networking Services): Update accordingly.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-02-08 21:52:26 +01:00
Ludovic Courtès
ca63770ab1
services: xorg: Add Nouveau driver.
...
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
XF86-VIDEO-NOUVEAU.
2015-02-06 13:53:28 +01:00
Mark H Weaver
b7d0c494f4
services: Add wicd service.
...
* gnu/services/networking.scm (wicd-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
2015-02-04 18:20:17 -05:00
Ludovic Courtès
4aee6e6003
services: nscd-service: Add #:name-services parameter.
...
* gnu/services/base.scm (nscd-service): Add #:name-services parameter.
In 'start' field, set LD_LIBRARY_PATH based on #:name-services.
* doc/guix.texi (Base Services): Document it.
(Name Service Switch): Link to 'nscd-service'.
2015-02-04 22:49:35 +01:00
宋文武
5ce93d9ade
services: xorg: Add sawfish session.
...
* gnu/services/xorg.scm (%sawfish-session-type): New variable.
* doc/guix.texi (X Window): Mention it.
2015-02-03 22:20:49 +08:00
Ludovic Courtès
6acef6811f
services: mingetty: Wait for udev.
...
* gnu/services/base.scm (mingetty-service): Add 'udev' to
'requirement'.
2015-01-27 10:24:34 +01:00
Ludovic Courtès
ffc3a02b5a
services: xorg: Define the <session-type> record type.
...
* gnu/services/xorg.scm (<session-type>): New record type.
(%windowmaker-session-type, %ratpoison-session-type): New variables.
(%default-xsessions): Use them.
(xsessions-directory): Expect SESSIONS to be a list of <session-type>
and rewrite accordingly.
(slim-service): Adjust docstring.
* doc/guix.texi (X Window): Update accordingly.
2015-01-26 23:33:24 +01:00
Ludovic Courtès
ac41737f49
services: dbus: Set the search path for .service files.
...
* gnu/services/dbus.scm (dbus-configuration-directory)[services->sxml]:
Produce a <servicedir> tag.
2015-01-26 00:06:32 +01:00
Ludovic Courtès
02bb6b45e4
services: guix: #:authorize-hydra-key? now defaults to #t.
...
* gnu/services/base.scm (guix-service): Change AUTHORIZE-HYDRA-KEY?
default value to #t.
2015-01-23 23:49:24 +01:00
Ludovic Courtès
e87f0591f3
monads: Move '%store-monad' and related procedures where they belong.
...
This turns (guix monads) into a generic module for monads, and moves the
store monad and related monadic procedures in their corresponding
module.
* guix/monads.scm (store-return, store-bind, %store-monad, store-lift,
text-file, interned-file, package-file, package->derivation,
package->cross-derivation, origin->derivation, imported-modules,
compiled, modules, built-derivations, run-with-store): Move to...
* guix/store.scm (store-return, store-bind, %store-monad, store-lift,
text-file, interned-file): ... here.
(%guile-for-build): New variable.
(run-with-store): Moved from monads.scm. Remove default value for
#:guile-for-build.
* guix/packages.scm (default-guile): Export.
(set-guile-for-build): New procedure.
(package-file, package->derivation, package->cross-derivation,
origin->derivation): Moved from monads.scm.
* guix/derivations.scm (%guile-for-build): Remove.
(imported-modules): Rename to...
(%imported-modules): ... this.
(compiled-modules): Rename to...
(%compiled-modules): ... this.
(built-derivations, imported-modules, compiled-modules): New
procedures.
* gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/dbus.scm,
gnu/services/dmd.scm, gnu/services/networking.scm,
gnu/services/ssh.scm, gnu/services/xorg.scm, gnu/system/install.scm,
gnu/system/linux-initrd.scm, gnu/system/shadow.scm, guix/download.scm,
guix/gexp.scm, guix/git-download.scm, guix/profiles.scm,
guix/svn-download.scm, tests/monads.scm: Adjust imports accordingly.
* guix/monad-repl.scm (default-guile-derivation): New procedure.
(store-monad-language, run-in-store): Use it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add explicit
'set-guile-for-build' call.
* guix/scripts/archive.scm (derivation-from-expression): Likewise.
* guix/scripts/build.scm (options/resolve-packages): Likewise.
* guix/scripts/environment.scm (guix-environment): Likewise.
* guix/scripts/system.scm (guix-system): Likewise.
* doc/guix.texi (The Store Monad): Adjust module names accordingly.
2015-01-14 13:34:52 +01:00
Ludovic Courtès
7bed4df49a
services: user-processes: Really honor the grace delay.
...
* gnu/services/base.scm (user-processes-service): Change #:grace-delay
default value to 4. Define 'sleep*' and use it.
2015-01-13 18:16:35 +01:00
Ludovic Courtès
4a4dd5d89d
services: user-processes: Write debugging messages to the output port.
...
* gnu/services/base.scm (user-processes-service): Write "sending all
processes..." message to the current output port, not to /dev/console.
2015-01-12 23:33:08 +01:00
Mark H Weaver
073cd6092c
gnu: xorg-server: Update to 1.16.2.901, with many security fixes.
...
Includes fixes for CVE-2014-8091, CVE-2014-8092, CVE-2014-8093, CVE-2014-8094,
CVE-2014-8095, CVE-2014-8096, CVE-2014-8097, CVE-2014-8098, CVE-2014-8099,
CVE-2014-8100, CVE-2014-8101, CVE-2014-8102, and CVE-2014-8103.
See <http://www.x.org/wiki/Development/Security/Advisory-2014-12-09/ >
* gnu/packages/xorg.scm (xorg-server): Update to 1.16.2.901. Move mesa,
resourceproto, scrnsaverproto, and xf86driproto from inputs to
propagated-inputs. Add dri3proto and presentproto to propagated-inputs.
Add eudev and libxshmfence to inputs. Add a 'pre-configure' phase instead
of modifying the 'configure' phase. Adapt substitution that avoids trying
to 'mkdir /var' to build system changes.
* gnu/services/xorg.scm (xserver.conf): Add xf86-input-evdev ModulePath line.
2014-12-19 23:28:18 -05:00
Mark H Weaver
3fc4eb211e
gnu: xf86-video-modesetting: Now uses the same libdrm as mesa.
...
* gnu/packages/xorg.scm (xf86-video-modesetting): Remove a comment stating
that the libdrm used in this driver is incompatible with the one in mesa,
because it is no longer true.
* gnu/services/xorg.scm (xserver.conf): Uncomment 'xf86-video-modesetting'
ModulePath and remove associated comment.
2014-12-19 23:28:17 -05:00
宋文武
24d56899a1
services: xorg: Make SLiM sessions configurable.
...
* gnu/services/xorg.scm (%default-xsessions): New variable.
(xsessions-directory): New procedure.
(slim-service): Add #:sessions and #:auto-login-session parameters.
[slim.cfg]: Honor #:sessions.
(xinitrc): Adjust accordingly.
2014-12-20 11:12:00 +08:00
Ludovic Courtès
7f5c2a9cc1
services: static-networking-service: Switch to (guix build syscalls).
...
* gnu/services/networking.scm (static-networking-service): Remove
#:inetutils parameter. Rewrite using 'configure-network-interface'
and 'set-network-interface-flags'.
2014-12-19 17:15:53 +01:00
Ludovic Courtès
6454b33345
services: Make 'nscd-service' configurable; cache hosts/services by default.
...
Before that, as it was given an empty configuration file, nscd would
actually have all its caches disabled.
* gnu/services/base.scm (<nscd-configuration>, <nscd-cache>): New record
types.
(%nscd-default-caches, %nscd-default-configuration): New variables.
(nscd.conf-file): New procedure.
(nscd-service): Add 'config' parameter. Use 'nscd.conf-file', and
pass its result as the '-f' parameter of nscd.
* doc/guix.texi (Base Services): Update 'nscd-service' documentation
accordingly. Document 'nscd-configuration', 'nscd-cache',
'%nscd-default-configuration', and '%nscd-default-caches'.
2014-12-14 16:29:24 +01:00
Ludovic Courtès
b2bd7c253a
services: xorg: Run the window manager from a login shell.
...
This is a followup to 1d18d87
, which fixes <http://bugs.gnu.org/19119 >.
* gnu/services/xorg.scm (xinitrc)[builder]: Add 'exec-from-login-shell'
procedure. Use it instead of 'execl' when launching XSESSION, WMAKER,
or RATPOISON.
2014-12-13 16:22:34 +01:00
Alex Kost
2c37a34cb8
services: xorg: Add 'xf86-video-sis'.
...
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
ModulePath for 'xf86-video-sis'.
2014-11-30 09:53:20 +03:00
Ludovic Courtès
20dd519cdb
doc: Add xrefs to the lsh manual.
...
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/ssh.scm (lsh-service): Update docstring with xrefs to
the lsh manual. Fix typos.
* doc/guix.texi (Networking Services): Synchronize.
2014-11-24 21:52:39 +01:00
Ludovic Courtès
1d18d87f34
services: xorg: Include ~/.guix-profile/bin to the session's $PATH.
...
Fixes <http://bugs.gnu.org/19119 >.
Reported by David Thompson <dthompson2@worcester.edu>.
* gnu/services/xorg.scm (xinitrc): Augment $PATH to include
~/.guix-profile/bin.
2014-11-20 21:14:39 +01:00
Ludovic Courtès
48bd76e009
services: user-unmount: Change directory to "/" before unmounting.
...
* gnu/services/base.scm (user-unmount-service): Add 'chdir' call.
2014-11-14 00:48:43 +01:00
Ludovic Courtès
08dbc3b550
services: xorg: Set argv[0] for the window manager.
...
* gnu/services/xorg.scm (xinitrc): Set argv[0] when invoking ratpoison
or wmaker.
2014-11-12 23:56:28 +01:00
Ludovic Courtès
84dfb45821
gnu: Introduce (gnu artwork) module.
...
* gnu/artwork.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/xorg.scm: Use it.
(%artwork-repository): Remove.
* gnu/system/grub.scm: Use it.
(%artwork-repository): Remove.
2014-11-12 14:28:36 +01:00
Ludovic Courtès
0ecc3bf309
gnu: xorg: Add SLiM theme based on work by Felipe López.
...
* gnu/services/xorg.scm (%artwork-repository, %default-slim-theme,
%default-slim-theme-name): New variables.
(slim-service): Add #:theme and #:theme-name parameters.
[slim.cfg]: Honor #:theme-name.
Honor #:theme by setting the "SLIM_THEMESDIR" environment variable.
* doc/guix.texi (X Window): Adjust 'slim-service' documentation
accordingly. Document '%default-slim-theme' and
'%default-slim-theme-name'.
2014-11-12 14:22:54 +01:00
Ludovic Courtès
594340bc79
services: xorg: Don't pass "-ac" to X.
...
This had pretty much no effects given "-nolisten tcp".
* gnu/services/xorg.scm (xorg-start-command): Remove "-ac" option.
2014-11-11 22:36:49 +01:00
Ludovic Courtès
fdaacbad85
services: Add 'auto-start?' field to <service>.
...
* gnu/services.scm (<service>)[auto-start?]: New field.
* gnu/services/dmd.scm (dmd-configuration-file): Honor it.
* gnu/system/install.scm (cow-store-service): Add 'auto-start?' field.
2014-11-10 23:23:32 +01:00
Ludovic Courtès
d6e2a622c4
services: Add 'user-unmount-service' as an essential service.
...
* gnu/services/base.scm (user-unmount-service): New procedure.
* gnu/system.scm (essential-services): Use it.
* gnu/system/install.scm (cow-store-service): Mention it in comment.
2014-11-10 22:42:14 +01:00
Ludovic Courtès
421c3bcc1b
services: udev: Make /dev/kvm 666 as a workaround.
...
* gnu/services/base.scm (kvm-udev-rule): Change /dev/kvm mode to 666 to
work around <http://bugs.gnu.org/18994 >.
2014-11-08 15:10:42 +01:00
Ludovic Courtès
91cc5aff5a
services: xorg: Add argv[0] in X invocation.
...
* gnu/services/xorg.scm (xorg-start-command): Add missing argv[0] in
'execl' call.
2014-11-08 01:05:35 +01:00
Ludovic Courtès
d2e59637e3
services: xorg: Allow users to specify a list of resolutions.
...
* gnu/services/xorg.scm (xorg-start-command): Add #:resolutions
parameter and 'screen-section' procedure. Use it.
* doc/guix.texi (X Window): Adjust accordingly.
2014-11-07 00:00:08 +01:00
Ludovic Courtès
f703413e41
services: xorg: Allow users to specify the drivers to use.
...
* gnu/services/xorg.scm (xorg-start-command): Add #:drivers parameter.
Add 'device-section' procedure, and use it in 'xserver.conf'.
* doc/guix.texi (X Window): Document it.
2014-11-07 00:00:08 +01:00
Ludovic Courtès
e30442b53b
services: xorg: Fix typo in xserver.conf.
...
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add missing
double-quote in AllowMouseOpenFail.
2014-11-07 00:00:02 +01:00
Ludovic Courtès
41d07f5e98
gnu: Add xf86-video-modesetting.
...
* gnu/packages/xorg.scm (xf86-video-modesetting): New variable.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
ModulePath line for XF86-VIDEO-MODESETTING, commented out.
2014-11-06 23:58:54 +01:00
Ludovic Courtès
63854bcbb1
services: Add NTP service.
...
* gnu/services/networking.scm (ntp-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
2014-11-05 11:25:39 +01:00
Ludovic Courtès
98c16943d5
services: Increase delay before SIGKILL is sent when halting.
...
* gnu/services/base.scm (user-processes-service): Increase the default
value of 'grace-delay'. This leaves more time for processes to clean
up their PID files, /tmp/.X0-lock, etc.
2014-11-05 11:25:39 +01:00
Ludovic Courtès
fa0c1d6104
services: Add '%facebook-host-aliases'.
...
* gnu/services/networking.scm (%facebook-host-aliases): New variable.
* doc/guix.texi (Networking Services): Document it.
2014-10-07 23:18:41 +02:00
Ludovic Courtès
4627a46470
services: Add 'bitlbee-service'.
...
* gnu/services/networking.scm (bitlbee-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
2014-09-23 23:46:01 +02:00
Ludovic Courtès
969b662128
gnu: xorg: Remove xf86-input-vmmouse.
...
* gnu/packages/xorg.scm (xf86-input-vmmouse): Remove. This driver
implement the mouse protocol of a proprietary emulator.
* gnu/services/xorg.scm (xorg-start-command): Remove reference.
2014-09-23 15:13:46 +02:00
Ludovic Courtès
a9eef4d2e5
system: Fix value of 'EUDEV_RULES_DIRECTORY'.
...
* gnu/services/base.scm (udev-service): Append "/lib/udev/rules.d" to
EUDEV_RULES_DIRECTORY.
2014-09-19 17:23:17 +02:00
Ludovic Courtès
7f28bf9a43
system: Add udev rule for /dev/kvm.
...
* gnu/services/base.scm (kvm-udev-rule): New procedure.
(udev-service): Use it, and add it to RULES.
(guix-build-accounts): Add "kvm" to the 'supplementary-groups' field.
* gnu/system/shadow.scm (%base-groups): Add "kvm".
2014-09-18 23:23:46 +02:00
Ludovic Courtès
2a13d05e45
system: Add support for swap devices.
...
* gnu/services/base.scm (swap-service): New procedure.
* gnu/system.scm (<operating-system>)[swap-devices]: New field.
(swap-services): New procedure.
(essential-services): Use it.
2014-09-18 22:52:01 +02:00
Ludovic Courtès
722554a306
system: Define 'device-mapping-kind', and add a 'close' procedure.
...
* gnu/system/file-systems.scm (<mapped-device-type>): New record type.
(<mapped-device>)[command]: Remove field.
[type]: New field.
* gnu/services/base.scm (device-mapping-service): Rename 'command'
parameter to 'open'. Add 'close' parameter and honor it.
* gnu/system.scm (luks-device-mapping): Rename to...
(open-luks-device): ... this.
(close-luks-device): New procedure.
(luks-device-mapping): New variable.
(device-mapping-services): Get the type of MD, and pass its 'open' and
'close' fields to 'device-mapping-service'.
2014-09-18 19:18:39 +02:00
Ludovic Courtès
f02f65efb4
services: dhcp-client: Start 'dhclient' in "no wait" mode.
...
* gnu/services/networking.scm (dhcp-client-service): Pass '-nw' to
'dhclient'.
2014-09-17 09:27:07 +02:00
Ludovic Courtès
6a3f4c74fd
services: file-system: Change directory to root before unmounting.
...
* gnu/services/base.scm (file-system-service)[stop]: Add 'chdir' call.
2014-09-17 09:20:38 +02:00
Ludovic Courtès
d656c14ec9
services: user-processes: Wait for complete process termination.
...
* gnu/services/base.scm (user-processes-service): Add 'wait' loop.
2014-09-17 09:19:48 +02:00
Ludovic Courtès
66d5d8c072
services: udev: Make non-respawnable.
...
* gnu/services/base.scm (udev-service): Add 'respawn?' field.
2014-09-17 08:59:13 +02:00
Ludovic Courtès
a023cca8d9
services: Add 'dhcp-client-service'.
...
* gnu/services/networking.scm (dhcp-client-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
2014-09-14 23:49:02 +02:00
Ludovic Courtès
150d8e6414
services: static-networking-service: Wait for udev, except for loopback.
...
Reported by DusXMT on #guix.
* gnu/services/networking.scm (static-networking-service): Add
'requirement' field. Change 'documentation' to be a string literal.
2014-09-14 23:49:02 +02:00
Ludovic Courtès
8a7330fd76
system: Use eudev instead of udev by default.
...
* gnu/system.scm (%base-packages): Change 'udev' to 'eudev'.
* gnu/services/base.scm (udev-service): Change #:udev to default to
'eudev'.
2014-09-13 10:54:47 +02:00
Ludovic Courtès
66a99a0676
services: udev: Allow the use of eudev.
...
* gnu/services/base.scm (udev-service): Adjust 'start' method to support
eudev in addition to udev.
2014-09-13 10:53:47 +02:00
Ludovic Courtès
52bd573421
system: Add FUSE and ALSA udev rules by default.
...
* gnu/services/base.scm (%base-services): Pass FUSE and ALSA-UTILS to
'udev-service'.
2014-09-13 10:50:26 +02:00
Ludovic Courtès
5dae0186de
system: Add support for Linux-style mapped devices.
...
* gnu/system/file-systems.scm (<mapped-device>): New record type.
* gnu/system.scm (<operating-system>)[mapped-devices]: New field.
(luks-device-mapping): New procedure.
(other-file-system-services)[device-mappings, requirements]: New
procedures. Pass #:requirements to 'file-system-service'.
(device-mapping-services): New procedure.
(essential-services): Use it. Append its result to the return value.
(operating-system-initrd-file): Add comment.
* gnu/services/base.scm (file-system-service): Add #:requirements
parameter and honor it.
(device-mapping-service): New procedure.
* gnu/system/linux-initrd.scm (base-initrd): Add comment.
2014-09-12 00:14:52 +02:00
Ludovic Courtès
ecd06ca9fa
services: udev: Allow for additional udev rules.
...
* gnu/services/base.scm (udev-rules-union): New procedure.
(udev-service): Add #:rules parameter. Call 'udev-rules-union' and
create udev.conf. Set $UDEV_CONFIG_FILE before spawning udevd.
2014-09-12 00:14:52 +02:00
Ludovic Courtès
e2f4b305d0
Move part of (gnu build linux-boot) to (gnu build file-systems).
...
* gnu/build/linux-boot.scm (%ext2-endianness, %ext2-sblock-magic,
%ext2-sblock-creator-os, %ext2-sblock-uuid, %ext2-sblock-volume-name,
read-ext2-superblock, ext2-superblock-uuid,
ext2-superblock-volume-name, disk-partitions,
partition-label-predicate, find-partition-by-label,
canonicalize-device-spec, MS_RDONLY, MS_NOSUID, MS_NODEV, MS_NOEXEC,
MS_BIND, MS_MOVE, bind-mount, check-file-system,
mount-flags->bit-mask, mount-file-system): Move to...
* gnu/build/file-systems.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/base.scm: Use (gnu build file-systems).
* gnu/services/dmd.scm (dmd-configuration-file): Likewise.
* gnu/system.scm (operating-system-activation-script): Likewise.
* gnu/system/linux-initrd.scm (base-initrd): Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
8a9e21d1f7
Rename (gnu build linux-initrd) to (gnu build linux-boot).
...
* gnu/build/linux-initrd.scm: Rename to...
* gnu/build/linux-boot.scm: ... this.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/build/activation.scm, gnu/build/vm.scm, gnu/services/base.scm,
gnu/services/dmd.scm, gnu/system.scm, gnu/system/linux-initrd.scm,
gnu/system/vm.scm: Adjust accordingly.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
548f7a8fa2
Move operating system helpers from (guix build …) to (gnu build …).
...
* guix/build/activation.scm, guix/build/install.scm,
guix/build/linux-initrd.scm, guix/build/vm.scm: Move to...
* gnu/build: ... here.
* Makefile.am (MODULES): Remove the above guix/build/ files.
* gnu-system.am (GNU_SYSTEM_MODULES): Add the above gnu/build/ files
here.
* gnu/services/base.scm, gnu/services/dmd.scm, gnu/system.scm,
gnu/system/linux-initrd.scm, gnu/system/vm.scm,
guix/scripts/system.scm: Adjust to the new module names.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
bdb36958fb
gnu: Split (gnu packages base), adding (gnu packages commencement).
...
* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0,
findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet,
binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0,
texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash,
cross-gcc-wrapper, static-bash-for-glibc, glibc-final,
gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++,
gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs,
guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final,
%boot5-inputs, %final-inputs, canonical-package, gcc-toolchain,
gcc-toolchain-4.8, gcc-toolchain-4.9): Move to...
* gnu/packages/commencement.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/check-final-inputs-self-contained.scm: Adjust accordingly.
* gnu/packages/cross-base.scm: Likewise.
* gnu/packages/make-bootstrap.scm: Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/gnu.scm (standard-packages, gnu-build,
gnu-cross-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* guix/download.scm (url-fetch): Likewise.
* guix/gexp.scm (default-guile): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/monads.scm (run-with-store): Likewise.
* guix/packages.scm (default-guile): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths):
Likewise.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/guix-package.sh: Likewise.
* gnu/services/base.scm: Use 'canonical-package' instead of xxx-final.
* gnu/services/xorg.scm: Likewise.
* gnu/system/vm.scm: Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
2014-08-28 09:21:54 +02:00
Mark H Weaver
1f347f5533
services: lsh: Fix activation script.
...
* gnu/services/ssh.scm (lsh-service)[activate]: Import (guix build utils)
for 'mkdir-p'.
2014-08-07 21:09:51 -04:00
Ludovic Courtès
417175096a
services: Use system groups where applicable.
...
* gnu/services/avahi.scm (avahi-service): Add 'system?' field to
'user-group' form.
* gnu/services/base.scm (guix-service): Likewise.
* gnu/services/dbus.scm (dbus-service): Likewise.
* gnu/services/networking.scm (tor-service): Likewise.
2014-07-25 00:15:46 +02:00
Ludovic Courtès
d9372161ef
services: xorg: Honor ~/.xsession.
...
* gnu/services/xorg.scm (xinitrc): Attempt to execute ~/.xsession.
2014-07-24 23:02:27 +02:00
Ludovic Courtès
47b73c34f0
services: xorg: Remove /var/run/slim.lock when starting.
...
Reported by Mark H. Weaver.
* gnu/services/xorg.scm (slim-service)[start]: Remove /var/run/slim.lock
before starting 'slim'.
2014-07-24 23:02:26 +02:00
Ludovic Courtès
83a17b6236
install: Add a service to back the store with the target disk.
...
Fixes <http://bugs.gnu.org/18061 >.
Reported by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/dmd.scm (dmd-configuration-file)[config]: Import (guix
build utils).
* gnu/system/install.scm (make-cow-store, cow-store-service): New
procedures.
(installation-services): Use it.
(%backing-directory): New variable.
* doc/guix.texi (System Installation): Add the 'deco start cow-store
/mnt' phase.
2014-07-23 17:47:25 +02:00
Ludovic Courtès
2c071ce96e
system: Recognize more file system flags.
...
* guix/build/linux-initrd.scm (MS_NOSUID, MS_NODEV, MS_NOEXEC): New
variables.
(mount-flags->bit-mask): New procedure.
(mount-file-system)[flags->bit-mask]: Remove.
Use 'mount-flags->bit-mask' instead.
In /etc/mtab, use the empty string when OPTIONS is false.
* gnu/services/base.scm (file-system-service): Add #:flags parameter and
honor it.
* gnu/system.scm (other-file-system-services): Pass FLAGS to
'file-system-service'.
2014-07-23 02:02:07 +02:00
Ludovic Courtès
7f239fd33f
system: Add 'file-system' decl. for /dev/pts, and use the right options.
...
Fixes <http://bugs.gnu.org/18081 >.
* gnu/system/file-systems.scm (%devtmpfs-file-system): Add
'needed-for-boot?' field.
(%tty-gid, %pseudo-terminal-file-system): New variables.
(%base-file-systems): Add %PSEUDO-TERMINAL-FILE-SYSTEM.
* gnu/services/base.scm (udev-service): Remove dependency on
'file-system-/dev'.
* gnu/system/shadow.scm (%base-groups): Add 'id' field for group 'tty'.
* guix/build/linux-initrd.scm (boot-system): Remove 'mount' call for
/dev/pts.
* doc/guix.texi (File Systems): Add %pseudo-terminal-file-system.
2014-07-23 02:02:07 +02:00
Ludovic Courtès
4e469051a7
system: Add 'create-mount-point?' file system option.
...
* gnu/system/file-systems.scm (<file-system>)[create-mount-point?]: New
field.
* gnu/services/base.scm (file-system-service): Add #:create-mount-point?
parameter and honor it.
* gnu/system.scm (other-file-system-services): Update
'file-system-service' call accordingly.
* doc/guix.texi (File Systems): Document it.
2014-07-23 02:02:06 +02:00
Ludovic Courtès
a69576ea85
system: Add '%devtmpfs-file-system' for udev, and '%base-file-systems'.
...
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/base.scm (udev-service)[requirement]: Add
'file-system-/dev'.
* gnu/system/file-systems.scm (%devtmpfs-file-system,
%base-file-systems): New variables.
* gnu/system/install.scm (installation-services)[file-systems]: Use
%base-file-systems.
* build-aux/hydra/demo-os.scm (file-systems): Likewise.
* doc/guix.texi (System Installation): Show %BASE-FILE-SYSTEMS in the
example.
(Using the Configuration System): Likewise.
(File Systems): Document %base-file-systems, %devtmpfs-file-system,
%binary-format-file-system, and %fuse-control-file-system.
2014-07-22 16:59:10 +02:00
Ludovic Courtès
1b09031f78
services: Allow 'check-file-system' to work for non-boot-time file systems.
...
* gnu/services/base.scm (file-system-service)[start]: Set $PATH so that
fsck.* can be found. Reported by "DusXMT".
2014-07-21 23:18:21 +02:00
Ludovic Courtès
62ca0fdf9e
services: Add 'console-font-service'.
...
* gnu/services/base.scm (unicode-start, console-font-service): New
procedures.
(%base-services): Call 'console-font-service' for TTY1 to TTY6.
* gnu/system/install.scm (installation-services): Add comment about the
console font. Call 'console-font-service' for TTY1 to TTY6.
2014-07-17 15:53:01 +02:00
Ludovic Courtès
6a1912743a
services: syslog: Don't write trivial error messages to /dev/console.
...
* gnu/services/base.scm (syslog-service): Change "*.err" to "*.alert".
2014-07-16 22:40:14 +02:00
Ludovic Courtès
c11a6eb1e5
services: Add options to 'guix-service'.
...
* gnu/services/base.scm (guix-service): Add #:use-substitutes? and
#:extra-options parameters, and honor them.
* doc/guix.texi (Base Services): Adjust accordingly.
2014-07-14 15:51:22 +02:00
Ludovic Courtès
927097effd
services: Add Tor service.
...
* gnu/services/networking.scm (tor-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
* build-aux/hydra/demo-os.scm: Use it. Add TOR and TORSOCKS to
'packages'.
2014-07-12 23:17:54 +02:00
Ludovic Courtès
8897603ad0
services: networking: Set interfaces up; delete default route only when needed.
...
* gnu/services/networking.scm (static-networking-service): Use -i, -A,
and --up with Inetutils' ifconfig. Do 'route del -net default' only
when GATEWAY is true.
2014-07-12 23:17:54 +02:00
Ludovic Courtès
4a3b3b073a
services: Provide a 'loopback' service by default.
...
* gnu/services/networking.scm (static-networking-service): Add
#:provision parameter; use it.
* gnu/services/base.scm (%base-services): Call
'static-networking-service' for "lo".
2014-07-12 23:17:53 +02:00
Ludovic Courtès
51da7ca095
services: Use more Texinfo markup in docstrings.
...
* gnu/services/base.scm (host-name-service): Use Texinfo markup.
(mingetty-service): Comment on #:allow-empty-passwords?. Improve
markup.
(syslog-service, guix-service): Use Texinfo markup.
* gnu/services/networking.scm (static-networking-service): Likewise.
* gnu/services/xorg.scm (slim-service): Likewise.
2014-07-11 23:20:48 +02:00
Ludovic Courtès
ed09bb11cd
services: udev: Improve synchronization when starting.
...
* gnu/services/base.scm (udev-service)[start]: Add 'wait-for-udevd', and
call it before running 'udevadm trigger'. Pass --action=add to
'udevadm trigger'. Call 'udevadm settle' after 'udevadm trigger'.
2014-07-10 00:35:27 +02:00
Ludovic Courtès
971436c6bd
services: xorg: Remove optional sections from xorg.conf.
...
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Remove
sections "Monitor", "InputClass", "ServerLayout", "Device", and
"Screen".
2014-07-10 00:35:27 +02:00
Ludovic Courtès
8dbab7125a
services: xorg: Require 'udev'.
...
* gnu/services/xorg.scm: Add 'udev' to the 'requirement' field.
2014-07-10 00:35:27 +02:00
Ludovic Courtès
0adb027b27
services: xorg: Add drivers to the default search path.
...
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
'ModulePath' entries for xf86-video-{fbdev,cirrus,intel,mach64,nv} and
xf86-input-{synaptics,vmmouse}.
2014-07-10 00:35:27 +02:00
Ludovic Courtès
378377eb43
services: xorg: Fix typo in font path.
...
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Fix typo in
font path.
2014-07-10 00:35:27 +02:00
Ludovic Courtès
1c6b445b40
services: Update to use the dmd 0.2 API.
...
* gnu/services/avahi.scm (avahi-service)[start]: Wrap command in a
list.
* gnu/services/dbus.scm (dbus-service)[start]: Likewise.
* gnu/services/ssh.scm (lsh-service): Likewise.
* gnu/services/base.scm (mingetty-service)[start]: Likewise.
(nscd-service)[start]: Likewise.
(syslog-service)[start]: Likewise.
(guix-service)[start]: Likewise.
(udev-service)[start]: Use 'exec-command' instead of 'execl'.
* gnu/services/xorg.scm (slim-service)[start]: Likewise, and use
#:environment-variables.
2014-07-08 00:12:31 +02:00
Ludovic Courtès
f33e2d78b7
services: Add lshd service.
...
* gnu/services/ssh.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-07-01 09:23:32 +02:00
Ludovic Courtès
081c5b2d66
services: udev: Make sure modules are found, and use "udevadm settle".
...
* gnu/services/base.scm (udev-service): Set $LINUX_MODULE_DIRECTORY. In
the parent, invoke "udevadm settle" before "udevadm trigger".
2014-06-29 22:06:29 +02:00