Eelco Dolstra
b4a1893cdd
systemd-vconsole-setup: Don't put the X server in non-raw mode
...
‘systemd-vconsole-setup’ by default operates on /dev/tty0, the
currently active tty. Since it puts /dev/tty0 in Unicode or ASCII
mode, if the X server is currently active when it runs, keys such as
Alt-F4 won't reach the X server anymore. So use /dev/tty1 instead.
2012-10-18 11:58:37 -04:00
Eelco Dolstra
a4cad32c3d
Generate more user-friendly script filenames
...
This is primarily important in journal entries.
2012-10-18 11:58:37 -04:00
Eelco Dolstra
12d1cd87ce
Systemd unit names can contain Nix-illegal characters, so don't include them
2012-10-12 17:32:05 -04:00
Eelco Dolstra
97a2de983b
Ensure that swap.target is pulled in by switch-to-configuration even if it failed earlier
2012-10-12 16:38:00 -04:00
Eelco Dolstra
b968244aa1
Move fs.target to filesystems.nix
2012-10-12 15:08:44 -04:00
Eelco Dolstra
d63da5892c
Ensure that systemd-modules-load is restarted when boot.kernelModules changes
2012-10-11 17:58:46 -04:00
Eelco Dolstra
b606165bd9
Allow a unit to declare "triggers" that force a restart
...
The triggers are just arbitrary strings that are included in the unit
under X-Restart-Triggers. The idea is that if they change between
reconfigurations, switch-to-configuration will restart the unit
because its store path changed. This is mostly useful for services
that implicitly depend on generated files in /etc. Thus you can say
restartTriggers = [ confFile ];
where ‘confFile’ is the derivation that generated the /etc file in
question.
2012-10-11 17:54:43 -04:00
Eelco Dolstra
4104f60800
Fix accidental commit
2012-10-11 12:43:08 -04:00
Eelco Dolstra
d7458b5fc2
Split the monolithic network-interface service into multiple units
...
For each statically configured interface, we now create a unit
‘<interface>-cfg.service’ which gets started as soon as the network
device comes up. Similarly, each bridge defined in
‘networking.bridges’ and virtual interface in ‘networking.interfaces’
is created by a service ‘<interface>.service’.
So if we have
networking.bridges.br0.interfaces = [ "eth0" "eth1" ];
networking.interfaces =
[ { name = "br0";
ipAddress = "192.168.1.1";
}
];
then there will be a unit ‘br0.service’ that depends on
‘sys-subsystem-net-devices-eth0.device’ and
‘sys-subsystem-net-devices-eth1.device’, and a unit ‘br0-cfg.service’
that depends on ‘sys-subsystem-net-devices-br0.device’.
2012-10-10 17:55:42 -04:00
Eelco Dolstra
62b707de07
Add support for postStop scripts
2012-10-10 17:55:13 -04:00
Eelco Dolstra
17a7f48364
Add an option for BindsTo dependencies
2012-10-10 16:50:41 -04:00
Eelco Dolstra
d71c0bb834
Respect partOf etc. for socket and target units
2012-10-09 15:14:15 -04:00
Eelco Dolstra
f451afea8f
Remove ‘services.journald.logKernelMessages’
...
This option no longer exists in systemd.
2012-10-08 10:51:17 -04:00
Eelco Dolstra
2cf5e3cb66
Add options ‘boot.systemd.targets’ and ‘boot.systemd.sockets’
2012-10-01 18:58:11 -04:00
Eelco Dolstra
13d747c11a
Support postStart scripts in service units
2012-10-01 16:45:49 -04:00
Eelco Dolstra
891be375b5
Make unitConfig/serviceConfig attribute sets
...
So instead of:
boot.systemd.services."foo".serviceConfig =
''
StartLimitInterval=10
CPUShare=500
'';
you can say:
boot.systemd.services."foo".serviceConfig.StartLimitInterval = 10;
boot.systemd.services."foo".serviceConfig.CPUShare = 500;
This way all unit options are available and users can set/override
options in configuration.nix.
2012-10-01 16:27:42 -04:00
Eelco Dolstra
353522ef79
Remove JoinControllers line because upstream reverted joining cpuset
2012-10-01 14:33:01 -04:00
Eelco Dolstra
1ad655bdcf
Don't join the cpuset controller with cpu/cpuacct
...
This works around the problem described here:
http://lists.freedesktop.org/archives/systemd-devel/2012-September/006648.html
2012-09-21 22:56:13 -04:00
Eelco Dolstra
b02c488fde
Automatically append ".service" to the name of service units
2012-08-23 10:25:27 -04:00
Eelco Dolstra
223f04b3ca
Add option ‘boot.systemd.packages’ to use units from the specified packages
2012-08-21 11:28:47 -04:00
Eelco Dolstra
a44e575196
switch-to-configuration: Respect the ‘restartIfChanged’ attribute
2012-08-17 13:14:42 -04:00
Eelco Dolstra
d18c2afc6f
Add an ip-up target for services that require IP connectivity
2012-08-15 15:38:52 -04:00
Eelco Dolstra
981347429a
Add support for PartOf dependencies
2012-08-15 15:36:54 -04:00
Eelco Dolstra
a133eb5991
Add some missing targets
...
Also make multi-user.target pull in remote-fs.target to mount remote
filesystems.
2012-08-14 18:14:48 -04:00
Eelco Dolstra
55b2736566
Add a target ‘fs.target’ that waits for all filesystems
2012-08-14 18:14:16 -04:00
Eelco Dolstra
39030211af
Add a unitConfig option to set the [Unit] section of units
2012-08-10 18:56:12 -04:00
Eelco Dolstra
52b6e10315
Use systemd-modules-load.service to load required kernel modules
2012-08-06 16:52:08 -04:00
Eelco Dolstra
9f9ae7c7e9
Share option definitions between the systemd and Upstart compatibility modules
2012-08-06 11:45:59 -04:00
Eelco Dolstra
4d2deff7af
Stop obsolete units, restart changed units, start new units
2012-08-02 17:26:23 -04:00
Eelco Dolstra
71ca633431
Start agetty on tty1
...
‘logind’ automatically starts agetty on all virtual consoles except
tty1. We have to do that ourselves.
2012-07-20 18:32:24 -04:00
Eelco Dolstra
5fabcf63a3
Get delayed shutdowns to work
2012-07-20 15:40:50 -04:00
Eelco Dolstra
1375e7951d
Enable systemd-journal-flush.service (added by systemd 187)
2012-07-20 12:02:42 -04:00
Eelco Dolstra
02e37ba6b0
Shorten filenames of start scripts to make log messages more readable
2012-07-19 17:41:42 -04:00
Eelco Dolstra
6419172bc2
journald: enable logging to the console
2012-07-19 17:32:50 -04:00
Eelco Dolstra
917e53a2d2
Update units names for systemd-186
2012-07-16 17:47:11 -04:00
Eelco Dolstra
337423af8e
Backdoor: depend on /dev/hvc0
...
Systemd is the shit: units can declare a dependency on the appearance
of device nodes. Yay!
2012-06-19 17:36:02 -04:00
Eelco Dolstra
2fa1ba85c6
Enable the systemd password agents
2012-06-19 17:02:54 -04:00
Eelco Dolstra
c73d642db2
Don't put quotes around environment values
2012-06-18 23:30:26 -04:00
Eelco Dolstra
9f5051b76c
Rename mingetty module to agetty
2012-06-18 17:55:27 -04:00
Eelco Dolstra
352510c208
Add an option ‘boot.systemd.services’
...
This option makes it more convenient to define services because it
automates stuff like setting $PATH, having a pre-start script, and so on.
2012-06-18 15:28:31 -04:00
Eelco Dolstra
42ee3b4209
Add a ‘wantedBy’ attribute to unit definitions
...
This attribute allows a unit to make itself a dependency of another unit.
Also, add an option to set the default target unit.
2012-06-17 23:31:21 -04:00
Eelco Dolstra
4a95f8996b
To ease migration to systemd, generate units from the ‘jobs’ option
...
Also get rid of the ‘buildHook’ job option because it wasn't very useful.
2012-06-16 00:19:43 -04:00
Eelco Dolstra
66f4d10843
Use pam_systemd.so to set up device ownership
...
This removes the need for ConsoleKit, so it's gone.
2012-06-15 14:51:48 -04:00
Eelco Dolstra
164d6e6ab2
Use udev from systemd
2012-06-15 13:09:22 -04:00
Eelco Dolstra
a46894b960
Get lots more systemd stuff working
...
Enabled a bunch of units that ship with systemd. Also added an option
‘boot.systemd.units’ that can be used to define additional units
(e.g. ‘sshd.service’).
2012-06-14 18:44:56 -04:00
Eelco Dolstra
f21aa7d22c
First attempt at using systemd
...
Basic booting works. Systemd starts agetty instances on tty1 and
tty2. Shutdown and journald also work.
2012-06-04 12:51:48 -04:00