Commit graph

2536 commits

Author SHA1 Message Date
Eelco Dolstra
e65a49f00f Add missing file 2013-01-16 16:06:50 +01:00
Eelco Dolstra
f290808509 Set some missing types 2013-01-16 15:03:54 +01:00
Eelco Dolstra
b35fe01f02 Set the NixOS version to something useful when building from Git 2013-01-16 14:40:41 +01:00
Eelco Dolstra
ea358b4eae nixos-rebuild: Use ‘[ ... ]’ instead of ‘test’ 2013-01-16 13:21:59 +01:00
Eelco Dolstra
4d983d4955 Rename ‘system.build.systemd’ to ‘systemd.package’
This makes it cheaper to test a new systemd and is more consistent
with other modules.
2013-01-16 13:17:57 +01:00
Eelco Dolstra
ae4e94d9ac Rename ‘boot.systemd’ to ‘systemd’
Suggested by Mathijs Kwik.  ‘boot.systemd’ is a misnomer because
systemd affects more than just booting.  And it saves some typing.
2013-01-16 12:33:18 +01:00
Eelco Dolstra
61f1df279f Remove bogus comment 2013-01-15 17:34:24 +01:00
Eelco Dolstra
0b399d8e49 Revert "Remove obsolete environment variables"
This reverts commit ac8080b83c.
2013-01-15 17:34:01 +01:00
Eelco Dolstra
ac8080b83c Remove obsolete environment variables 2013-01-15 16:53:40 +01:00
Evgeny Egorochkin
e201da376e torsocks: make 2 wrappers to torify apps with more and less circuit isolation. 2013-01-15 08:59:02 +02:00
Evgeny Egorochkin
123c73caf6 Torify: restore as an alternative to TorSocks due to lack of compatibility with apps like Kopete. 2013-01-15 07:34:53 +02:00
Evgeny Egorochkin
9437db0d88 Power management: add support for AMD CPUs 2013-01-14 09:07:35 +02:00
Evgeny Egorochkin
0aad75fe70 Tor: improve circuit isolation. By default apps are isolated better, with extra port available for web browsers to keep
performance as it used to be before this commit.
2013-01-14 07:37:13 +02:00
Evgeny Egorochkin
7e82b41220 LuksRoot: fix crypto module list. This one should finally work well. 2013-01-14 06:46:46 +02:00
Evgeny Egorochkin
4e2f9c8679 TOR: replace deprecated option 2013-01-14 06:38:11 +02:00
Evgeny Egorochkin
6ecf2c3a28 LuksRoot: use generic aes module which loads platform-optimized modules automagically. 2013-01-14 05:12:20 +02:00
Evgeny Egorochkin
0f11519d45 LuksRoot: add more modules to load by default and let users add more or override the list. Added every module
mentioned by most popular guides, benchmarks and discussions to make things just work.
2013-01-13 12:44:16 +02:00
Evgeny Egorochkin
8c710b4f23 LuksRoot: mitigate DMA key recovery attacks by default. 2013-01-13 11:04:26 +02:00
Eelco Dolstra
5685ee5446 Add/fix systemd unit descriptions 2013-01-10 13:59:41 +01:00
Eelco Dolstra
3bbbd62cbc Start dhcpcd/wpa_supplicant after systemd-udev-settle
This is necessary to prevent a race.  Udev 197 has a new naming scheme
for network devices, so it will rename (say) eth0 to eno0.  This fails
with "error changing net interface name eth0 to eno1: Device or
resource busy" if another process has opened the interface in the
meantime.
2013-01-10 13:46:34 +01:00
aszlig
e844fed9db Merge pull request #60 from dysinger/virtualbox-guest-additions-vboxsf-group
VirtualBox Guest Additions: add vboxsf group (for automatic mounting of shared folders)
2013-01-09 17:02:04 -08:00
aszlig
80a381f521
Revert "xserver: Allow to add extra options ...
This reverts commit 1e741f1572b6793b861e2f9820015475ce339ae0 as it is
unnecessary according to @edolstra, because services.xserver.config from another
module will be merged into the configuration.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-01-10 01:43:44 +01:00
aszlig
0129717b17
xserver: Allow to set XRandR multi head layout.
This is currently only a very simple implementation which just recurses a list
of heads that get chained together to the right of the corresponding previous
item of the list.

If I forgot about something in the already existing configuration options,
please let me know or if this commit is useless or a duplicate, feel free to
revert. But by looking at implementation before this commit, I only see zaphod
and/or quirky xinerama-like configuration options.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-01-10 00:54:00 +01:00
Rob Vermaas
30586846ce Merge branch 'systemd' of github.com:NixOS/nixos into systemd 2013-01-09 23:01:56 +01:00
Eelco Dolstra
0b3d54d3cd Guard against portmap and rpcbind both being enabled 2013-01-09 22:53:44 +01:00
Eelco Dolstra
c7b427fbca Give our kernel parameters a common prefix ("boot.*") 2013-01-09 22:53:44 +01:00
Eelco Dolstra
93a7a32bab initrd: Don't enable the root shell by default
Starting an authenticated root shell is a security hole, so don't do
it by default.  The kernel command line parameter
‘initrd.shell_on_fail’ restores the original.  (Of course, this only
improves security if you have a password on GRUB to prevent the kernel
command line from being edited by unauthorized users.)
2013-01-09 22:53:44 +01:00
Peter Simons
91bead9c18 modules/system/boot/loader/grub/memtest.nix: use 'memtest86plus' instead of 'memtest86'
The 'memtest86' package didn't work on any of my machines. 'memtest86plus', on
the other hand, seems to work just fine. Does anyone know why we keep the
seemingly older version around still?
2013-01-09 22:44:50 +01:00
aszlig
e4d949ec88
xserver: Allow to add extra options to xorg config.
This is especially useful if you want to supply a default XRandR configuration,
where you need multiple "Monitor" sections in order to set properties for
specific CRTCs (if not running in zaphod mode).

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-01-09 22:28:09 +01:00
Shea Levy
19127aa416 Add dd-agent module 2013-01-08 16:19:51 -05:00
Eelco Dolstra
ac53b25f16 Remove handling of "debug2" and "S|s|single" kernel command line options
The "S|s|single" option is handled by systemd (starting
rescue.target).  And the rescue target basically removes the need for
a special debug shell.  (Also, there is "systemd.crash_shell=1" for
starting a shell if systemd crashes.)
2013-01-08 18:31:46 +01:00
Eelco Dolstra
f4a3bdd6af Install {rescue,emergency}.{target,service}
Also, symlink kbrequest.target to rescue.target as suggested by the
systemd.special manpage.  This way, you can start a sulogin rescue
shell by pressing Alt+Up.
2013-01-08 18:24:06 +01:00
Eelco Dolstra
948dd8dd1a Use the upstream (but patched) sysinit.target 2013-01-08 17:26:51 +01:00
Eelco Dolstra
827e3dadc8 Don't special-case systemd-journald.service and systemd-user-sessions.service 2013-01-08 17:00:45 +01:00
Eelco Dolstra
884f58fa8a Include libsystemd-daemon.so.* in the initrd since dmsetup needs it
Strangely, this is only case after updating systemd to 197, I didn't
change lvm2...
2013-01-08 15:35:21 +01:00
Eelco Dolstra
81796c5baf Add a command ‘nixos-help’ that opens the NixOS manual in a browser 2013-01-08 02:13:33 +01:00
Eelco Dolstra
1541311f06 switch-to-configuration: Stop some target units to ensure proper dependency ordering
This is currently only done for network-interfaces.target, but
it should propably be done for most targets.
2013-01-07 16:06:45 +01:00
Eelco Dolstra
74bae63135 smartd: Remove unnecessary PartOf dependency 2013-01-07 16:01:22 +01:00
Eelco Dolstra
da32722ade display-manager: Start after local-fs.target
We don't want users trying to log in while /home is still being
fsck'ed...
2013-01-07 16:00:10 +01:00
Eelco Dolstra
2e035ae042 Hack to prevent <interface>-cfg.service from breaking the default gateway
Restarting <interface>-cfg.service may cause the interface's IP
addresses to be flushed.  If the default gateway goes through that
interface, then the default gateway is deleted.  So we need to
restart network-setup.target.
2013-01-07 15:17:53 +01:00
Lluís Batlle i Rossell
38af598658 Simplifying defaultGatewayWindowSize according to Eelco suggestions 2013-01-06 23:20:48 +01:00
Lluís Batlle i Rossell
9a81748f20 Adding defaultGatewayWindowSize
This allows setting the max tcp window size for the route of
the default gateway (usually the internet access).

It works only for non-DHCP configurations by now.
2013-01-06 22:32:21 +01:00
Alexander Inyukhin
462a9f9fb0 Remove .conf extension from acpid config files
This should fix #51
2013-01-05 20:12:08 +00:00
Jan Malakhovski
4e64755b9d wacom: add USB tablet support
To be honest, it's more like "be less discriminating against USB tablets".
USB tablets usually get autodetected, device name is not necessary and defaulting to a serial touchscreen is a clear discrimination.
Unconditionally remapping buttons is generally not a good idea either.
Old defaults transformed into examples.
2013-01-05 19:38:23 +00:00
Eelco Dolstra
1aea92c4ce Ensure that ‘nix.gc.options’ is subject to shell expansion 2013-01-05 01:35:26 +01:00
Eelco Dolstra
96ba0ca283 For some units, use "systemctl restart" rather than "systemctl stop/start"
During a configuration switch, changed units are stopped in the old
configuration, then started in the new configuration (i.e. after
running the activation script and running "systemctl daemon-reload").
This ensures that services are stopped using the ExecStop/ExecStopPost
commands from the old configuration.

However, for some services it's undesirable to stop them; in
particular dhcpcd, which deconfigures its network interfaces when it
stops.  This is dangerous when doing remote upgrades - usually things
go right (especially because the switch script ignores SIGHUP), but
not always (see 9aa69885f0).  Likewise,
sshd should be kept running for as long as possible to prevent a
lock-out if the switch fails.

So the new option ‘stopIfChanged = false’ causes "systemctl restart"
to be used instead of "systemctl stop" followed by "systemctl start".
This is only proper for services that don't have stop commands.  (And
it might not handle dependencies properly in some cases, but I'm not
sure.)
2013-01-05 01:05:25 +01:00
Eelco Dolstra
baac242a1f Run the garbage collector as a systemd service
Running it from systemd rather than cron has several advantages:
systemd ensures that only one instance runs at a time; the GC can be
manually started/stopped; and logging goes to the journal.

We still need cron to start the service at the right time, but
hopefully soon we can get rid of cron entirely (once systemd supports
starting a unit at a specific time).
2013-01-04 14:04:41 +01:00
Eelco Dolstra
f701acfac0 nix-daemon: Start "nix-daemon" rather than "nix-worker --daemon" 2013-01-04 13:50:50 +01:00
Rob Vermaas
207d30b6f3 Fix VirtualBox image generation: switch-to-configuration in chroot needs /bin/sh 2013-01-04 10:58:56 +01:00
Eelco Dolstra
9aa69885f0 Don't do readlink() on every mount point when remounting /dev etc.
Doing so causes the activation script to hang if (say) an NFS mount
point is unreachable.
2013-01-02 18:28:44 +01:00
Mathijs Kwik
7e70cffc45 systemd mount units: better handling of mandatory options 2013-01-01 14:53:54 +01:00
Mathijs Kwik
ebf4816717 systemd mount units: use 'escapeSystemdPath' from lib/utils 2013-01-01 14:53:54 +01:00
Mathijs Kwik
a3ee9aac98 efi-boot-stub: enable hook for running (fixup) commands after efibootmgr run 2013-01-01 14:05:08 +01:00
Mathijs Kwik
16a9bcfe81 add support for systemd mount units
This is mainly useful for specifying mounts that depend on other
units. For example sshfs or davfs need network (and possibly
nameservices).

While systemd makes a distinction between local and remote
filesystems, this only works for in-kernel filesystems such as
nfs and cifs.

fuse-based filesystems (such as sshfs and davs) are classified as
local, so they fail without networking. By explicitly declaring these
mounts as full systemd units (as opposed to having systemd generate
them automatically from /etc/fstab), dependencies can be specified as
on every other unit.

In the future, we can probably port NixOS' filesystems handling to use
these native systemd.mount units and skip /etc/fstab altogether, but
this probably requires additional changes, such as starting systemd
even earlier during boot (stage 1).
2013-01-01 13:55:48 +01:00
Tim Dysinger
6961f5048d add vboxsf group (for automatic mounting of shared folders) 2012-12-31 11:00:02 -10:00
Rickard Nilsson
19e8ffc43f networkmanager: Use systemctl instead of initctl 2012-12-30 19:30:18 +01:00
Michael Raskin
9b7ce4a1b5 Merge pull request #50 from surr/fixes/tzdata
timezone should be taken from recent tzdata rather than glibc
2012-12-29 10:29:21 -08:00
viric
af4db2a79c Merge pull request #57 from cpages/master
Add support for nvidia legacy 304 to xserver
2012-12-29 10:23:10 -08:00
Mathijs Kwik
183829cf99 gogoclient: change working dir before starting
otherwise state files are placed in /
2012-12-28 10:22:49 +01:00
Mathijs Kwik
244ed6ae71 nscd: use proper systemd.special(7) targets 2012-12-27 12:23:50 +01:00
Mathijs Kwik
3456f3b232 systemd: convert gogoclient job to service unit 2012-12-27 12:23:50 +01:00
Mathijs Kwik
f61f0c139b systemd: convert smartd job to service 2012-12-27 12:23:50 +01:00
Mathijs Kwik
dc58c2ea37 systemd: convert samba jobs to systemd services (samba.target) 2012-12-27 12:23:50 +01:00
Mathijs Kwik
90fa68cf32 systemd: convert mongodb job to service 2012-12-27 12:23:50 +01:00
Lluís Batlle i Rossell
ceedc50009 Fixing the fuloong2f system tarball 2012-12-22 18:46:15 +01:00
Eelco Dolstra
45f0de21f0 nixos-rebuild: Fix the check for running nix-daemon 2012-12-21 00:18:12 +01:00
Eelco Dolstra
fb8af2f9b6 postgresql: Don't wait for ages in post-start if the service has failed 2012-12-21 00:18:12 +01:00
Shea Levy
3ef1432866 Update create-s3-amis and amazon-image.nix to recent nixos 2012-12-18 13:44:47 -05:00
Eelco Dolstra
ab18c03685 mysql55: Port to systemd
Not tested.  Seriously tempted to delete mysql55.  See issue #47.
2012-12-18 13:45:25 +01:00
Eelco Dolstra
75c67b0194 mysql: Port to systemd 2012-12-18 13:45:25 +01:00
Eelco Dolstra
251f8546c9 pam_ssh_agent_auth: Use /etc/ssh/authorized_keys.d 2012-12-17 21:14:09 +01:00
Shea Levy
dd131a0c09 Revert "Setting the system utillinux to be utillinuxCurses."
This reverts commit cba4d20280.
2012-12-17 13:09:05 -05:00
Shea Levy
75ec5c609e Merge remote-tracking branch 'upstream/master' into systemd
Conflicts:
	maintainers/scripts/ec2/create-ebs-amis.py
2012-12-17 13:03:56 -05:00
Shea Levy
835ee30b32 Merge branch 'no-aufs' into systemd 2012-12-17 13:02:35 -05:00
Lluís Batlle i Rossell
358239348a making memtest grub entries work again
I'm not any good at perl, and I only came up with this after many
slow attempts. Any review welcome.

But until this, memtest was broken, and extraPrepareConfig as well, in grub.
2012-12-16 21:41:47 +01:00
Rob Vermaas
39a6143c66 Add options to control rate limiting behaviour of journald. See 'man journald.conf' for more information. 2012-12-16 20:28:45 +01:00
Shea Levy
dfca6b97f1 Remove last mention of aufs for completeness 2012-12-16 13:33:23 -05:00
Shea Levy
ae4c8e3e0b nova-image.nix: Replace the commented-out aufs mount with a commented-out unionfs-fuse mount 2012-12-16 13:31:44 -05:00
Shea Levy
ac9002ce18 amazon-image: use unionfs-fuse instead of aufs 2012-12-16 13:16:17 -05:00
Shea Levy
d19c223ba6 Simplify unionfs-chroot bind-mounting 2012-12-16 13:07:42 -05:00
Shea Levy
e34024d998 Refactor common unionfs-fuse initrd prep into a separate module 2012-12-16 12:33:36 -05:00
Lluís Batlle i Rossell
3e734ba695 Qemu says 'boot=on' is deprecated, so I try a half-fix here
I change the 'build-vm' to use '-boot menu=on', so a menu displays and allows
choosing the 2nd hd. Otherwise, I don't know how to boot from a 2nd hd.
2012-12-16 18:07:13 +01:00
Shea Levy
3eb0faf317 qemu-vm: Use unionfs-fuse instead of aufs for writableStore 2012-12-16 11:56:49 -05:00
Shea Levy
be4f69519b iso-image: Use unionfs-fuse instead of aufs 2012-12-16 11:31:52 -05:00
Lluís Batlle i Rossell
dacd7d5a58 Setting iso_new_kernel to use linux 3.7.
It was using 3.2, the same kernel as the other isos.
2012-12-16 16:05:50 +01:00
Lluís Batlle i Rossell
cba4d20280 Setting the system utillinux to be utillinuxCurses.
The live-dvd was set that way already.
I think some utillinux pieces may be nicer, or have more tools. I don't know
the details though.
2012-12-16 16:03:38 +01:00
Alexander Inyukhin
1ae44e42ed Use zoneinfo from tzdata
This fixes #50
2012-12-15 22:05:32 +04:00
Florian Friesdorf
14483c0bf9 update nixos channel path 2012-12-14 18:24:41 +01:00
Eelco Dolstra
bd7ea9be58 sysinit.target: Drop the dependency on local-fs.target and swap.target
Having all services with DefaultDependencies=yes depend on
local-fs.target is annoying, because some of those services might be
necessary to mount local filesystems.  For instance, Charon's
send-keys feature requires sshd to be running in order to receive LUKS
encryption keys, which in turn requires dhcpcd, and so on.  So we drop
this dependency (and swap.target as well for consistency).  If
services require a specific mount, they should use RequiresMountsFor
in any case.
2012-12-14 17:42:54 +01:00
Eelco Dolstra
5437424297 Hackery to build against both the nixpkgs master and systemd branch 2012-12-13 15:04:09 +01:00
Carles Pagès
e312df06f0 Add support for nvidia 304.xx drivers in xserver.
Those were already in nixpkgs, but not supported in xserver. Since some time
ago the current 310.xx dropped support for some not so new cards.
2012-12-13 11:36:18 +01:00
Rob Vermaas
859badc966 Zabbix agent: RemainAfterExit=true seems to give more reliable restarts, cannot completely figure out why, as Type=forking should be enough. 2012-12-11 20:54:19 +01:00
Eelco Dolstra
97ae408e83 Merge remote-tracking branch 'origin/master' into systemd 2012-12-11 17:40:39 +01:00
Eelco Dolstra
78bd54ca80 Allow setting additional AuthorizedKeysFiles
Charon needs this to include the dynamically generated
/root/.vbox-charon-client-key.  (We used
users.extraUsers.root.openssh.authorizedKeys.keyFiles for this, but
that no longer works.)
2012-12-11 17:29:34 +01:00
Eelco Dolstra
eda051cff5 Remove abuse of "with" 2012-12-11 17:14:52 +01:00
Rickard Nilsson
68872f81cf openssh: Change the way authorized keys are added to the system.
Instead of the somewhat hacky script that inserted public keys
into the users' .ssh/authorized_keys files, use the AuthorizedKeysFile
configuration directive in sshd_config and generate extra key
files for each user (placed in /etc/authorized_keys.d/).
2012-12-11 17:02:39 +01:00
Eelco Dolstra
3224ea8a1e Don't require nixUnstable 2012-12-11 13:14:33 +01:00
Eelco Dolstra
745a201814 Check whether /proc/sys/net/ipv6/conf/all/disable_ipv6 exists 2012-12-11 13:14:17 +01:00
Eelco Dolstra
13617b803b Use the binary cache in the installer
Also remove "nixos-rebuild pull".
2012-12-08 19:00:06 +01:00
Eelco Dolstra
ef3199f782 Add options for specifying binary caches
Cherry-picked a4bcb26b1a.
2012-12-08 18:37:40 +01:00