nixpkgs/nixos/modules/module-list.nix

436 lines
14 KiB
Nix
Raw Normal View History

[
./config/fonts/corefonts.nix
./config/fonts/fontconfig.nix
./config/fonts/fontconfig-ultimate.nix
./config/fonts/fontdir.nix
./config/fonts/fonts.nix
./config/fonts/ghostscript.nix
./config/gnu.nix
./config/gtk-exe-env.nix
./config/i18n.nix
./config/krb5.nix
./config/ldap.nix
./config/networking.nix
./config/no-x-libs.nix
./config/nsswitch.nix
./config/power-management.nix
./config/pulseaudio.nix
./config/qt-plugin-env.nix
./config/shells-environment.nix
./config/swap.nix
./config/sysctl.nix
2014-07-16 22:16:34 +02:00
./config/system-environment.nix
./config/system-path.nix
./config/timezone.nix
2014-08-21 04:57:41 +02:00
./config/vpnc.nix
./config/unix-odbc-drivers.nix
./config/users-groups.nix
./config/zram.nix
./hardware/all-firmware.nix
./hardware/cpu/amd-microcode.nix
2014-07-16 22:16:34 +02:00
./hardware/cpu/intel-microcode.nix
2012-07-14 05:54:41 +02:00
./hardware/network/b43.nix
./hardware/network/intel-2100bg.nix
./hardware/network/intel-2200bg.nix
./hardware/network/intel-3945abg.nix
./hardware/network/ralink.nix
./hardware/network/rtl8192c.nix
./hardware/opengl.nix
./hardware/pcmcia.nix
./hardware/video/bumblebee.nix
./hardware/video/nvidia.nix
./hardware/video/ati.nix
./installer/tools/nixos-checkout.nix
./installer/tools/tools.nix
./misc/assertions.nix
./misc/check-config.nix
./misc/crashdump.nix
./misc/ids.nix
./misc/lib.nix
./misc/locate.nix
./misc/meta.nix
./misc/nixpkgs.nix
./misc/passthru.nix
./misc/version.nix
./programs/atop.nix
./programs/bash/bash.nix
./programs/blcr.nix
2015-02-10 11:52:46 +01:00
./programs/cdemu.nix
2015-01-12 09:45:48 +01:00
./programs/command-not-found/command-not-found.nix
./programs/dconf.nix
./programs/environment.nix
./programs/info.nix
2014-11-10 03:32:11 +01:00
./programs/light.nix
./programs/nano.nix
2014-07-16 22:16:34 +02:00
./programs/screen.nix
./programs/shadow.nix
./programs/shell.nix
./programs/ssh.nix
./programs/ssmtp.nix
./programs/uim.nix
2013-07-23 22:41:52 +02:00
./programs/venus.nix
./programs/virtualbox-host.nix
./programs/wvdial.nix
./programs/freetds.nix
./programs/zsh/zsh.nix
./rename.nix
2012-07-17 01:47:41 +02:00
./security/apparmor.nix
./security/apparmor-suid.nix
./security/ca.nix
./security/duosec.nix
nixos: add grsecurity module (#1875) This module implements a significant refactoring in grsecurity configuration for NixOS, making it far more usable by default and much easier to configure. - New security.grsecurity NixOS attributes. - All grsec kernels supported - Allows default 'auto' grsec configuration, or custom config - Supports custom kernel options through kernelExtraConfig - Defaults to high-security - user must choose kernel, server/desktop mode, and any virtualisation software. That's all. - kptr_restrict is fixed under grsecurity (it's unwriteable) - grsecurity patch creation is now significantly abstracted - only need revision, version, and SHA1 - kernel version requirements are asserted for sanity - built kernels can have the uname specify the exact grsec version for development or bug reports. Off by default (requires `security.grsecurity.config.verboseVersion = true;`) - grsecurity sysctl support - By default, disabled. - For people who enable it, NixOS deploys a 'grsec-lock' systemd service which runs at startup. You are expected to configure sysctl through NixOS like you regularly would, which will occur before the service is started. As a result, changing sysctl settings requires a reboot. - New default group: 'grsecurity' - Root is a member by default - GRKERNSEC_PROC_GID is implicitly set to the 'grsecurity' GID, making it possible to easily add users to this group for /proc access - AppArmor is now automatically enabled where it wasn't before, despite implying features.apparmor = true The most trivial example of enabling grsecurity in your kernel is by specifying: security.grsecurity.enable = true; security.grsecurity.testing = true; # testing 3.13 kernel security.grsecurity.config.system = "desktop"; # or "server" This specifies absolutely no virtualisation support. In general, you probably at least want KVM host support, which is a little more work. So: security.grsecurity.enable = true; security.grsecurity.stable = true; # enable stable 3.2 kernel security.grsecurity.config = { system = "server"; priority = "security"; virtualisationConfig = "host"; virtualisationSoftware = "kvm"; hardwareVirtualisation = true; } This module has primarily been tested on Hetzner EX40 & VQ7 servers using NixOps. Signed-off-by: Austin Seipp <aseipp@pobox.com>
2014-04-06 21:18:12 +02:00
./security/grsecurity.nix
./security/pam.nix
./security/pam_usb.nix
./security/polkit.nix
./security/prey.nix
./security/rngd.nix
./security/rtkit.nix
./security/setuid-wrappers.nix
./security/sudo.nix
2013-02-25 16:50:10 +01:00
./services/amqp/activemq/default.nix
./services/amqp/rabbitmq.nix
./services/audio/alsa.nix
# Disabled as fuppes it does no longer builds.
# ./services/audio/fuppes.nix
2014-11-20 23:30:24 +01:00
./services/audio/liquidsoap.nix
./services/audio/mpd.nix
./services/audio/mopidy.nix
2013-03-27 11:47:28 +01:00
./services/backup/almir.nix
2013-03-15 16:10:21 +01:00
./services/backup/bacula.nix
./services/backup/crashplan.nix
./services/backup/mysql-backup.nix
./services/backup/postgresql-backup.nix
2013-10-06 22:22:25 +02:00
./services/backup/rsnapshot.nix
./services/backup/sitecopy-backup.nix
./services/backup/tarsnap.nix
./services/cluster/fleet.nix
./services/cluster/kubernetes.nix
2014-12-08 10:02:57 +01:00
./services/cluster/panamax.nix
./services/computing/torque/server.nix
./services/computing/torque/mom.nix
./services/continuous-integration/jenkins/default.nix
./services/continuous-integration/jenkins/slave.nix
./services/databases/4store-endpoint.nix
./services/databases/4store.nix
./services/databases/couchdb.nix
./services/databases/firebird.nix
2014-11-20 12:29:07 +01:00
./services/databases/hbase.nix
2014-07-16 22:16:34 +02:00
./services/databases/influxdb.nix
2013-06-10 22:45:24 +02:00
./services/databases/memcached.nix
2014-07-16 22:16:34 +02:00
./services/databases/monetdb.nix
./services/databases/mongodb.nix
./services/databases/mysql.nix
2014-11-09 09:44:47 +01:00
./services/databases/neo4j.nix
./services/databases/openldap.nix
2014-11-20 13:00:53 +01:00
./services/databases/opentsdb.nix
./services/databases/postgresql.nix
2014-07-16 22:16:34 +02:00
./services/databases/redis.nix
./services/databases/virtuoso.nix
./services/desktops/accountsservice.nix
2014-04-24 23:32:32 +02:00
./services/desktops/geoclue2.nix
./services/desktops/gnome3/at-spi2-core.nix
./services/desktops/gnome3/evolution-data-server.nix
./services/desktops/gnome3/gnome-documents.nix
2014-04-11 00:41:51 +02:00
./services/desktops/gnome3/gnome-keyring.nix
./services/desktops/gnome3/gnome-online-accounts.nix
./services/desktops/gnome3/gnome-online-miners.nix
./services/desktops/gnome3/gnome-user-share.nix
./services/desktops/gnome3/gvfs.nix
./services/desktops/gnome3/seahorse.nix
./services/desktops/gnome3/sushi.nix
./services/desktops/gnome3/tracker.nix
./services/desktops/profile-sync-daemon.nix
./services/desktops/telepathy.nix
./services/games/ghost-one.nix
./services/games/minecraft-server.nix
./services/hardware/acpid.nix
./services/hardware/amd-hybrid-graphics.nix
./services/hardware/bluetooth.nix
2015-01-08 23:38:10 +01:00
./services/hardware/freefall.nix
./services/hardware/nvidia-optimus.nix
./services/hardware/pcscd.nix
./services/hardware/pommed.nix
./services/hardware/sane.nix
./services/hardware/tcsd.nix
2015-01-02 16:12:11 +01:00
./services/hardware/tlp.nix
./services/hardware/thinkfan.nix
./services/hardware/udev.nix
./services/hardware/udisks2.nix
./services/hardware/upower.nix
./services/hardware/thermald.nix
./services/logging/klogd.nix
2012-08-25 11:11:37 +02:00
./services/logging/logcheck.nix
./services/logging/logrotate.nix
./services/logging/logstash.nix
./services/logging/rsyslogd.nix
2014-07-16 22:16:34 +02:00
./services/logging/syslogd.nix
2014-08-11 15:05:59 +02:00
./services/logging/syslog-ng.nix
./services/mail/dovecot.nix
./services/mail/freepops.nix
./services/mail/mail.nix
2014-07-09 00:43:26 +02:00
./services/mail/mlmmj.nix
2013-07-30 10:20:56 +02:00
./services/mail/opensmtpd.nix
./services/mail/postfix.nix
./services/mail/spamassassin.nix
./services/misc/apache-kafka.nix
#./services/misc/autofs.nix
./services/misc/canto-daemon.nix
./services/misc/cpuminer-cryptonight.nix
2013-06-16 18:20:22 +02:00
./services/misc/cgminer.nix
2012-10-27 23:11:54 +02:00
./services/misc/dictd.nix
./services/misc/disnix.nix
2014-11-21 17:20:14 +01:00
./services/misc/docker-registry.nix
2014-11-15 16:27:27 +01:00
./services/misc/etcd.nix
./services/misc/felix.nix
./services/misc/folding-at-home.nix
./services/misc/gitlab.nix
./services/misc/gitolite.nix
./services/misc/gpsd.nix
2014-08-26 20:56:54 +02:00
./services/misc/mesos-master.nix
./services/misc/mesos-slave.nix
./services/misc/nix-daemon.nix
./services/misc/nix-gc.nix
./services/misc/nixos-manual.nix
2014-07-16 22:16:34 +02:00
./services/misc/nix-ssh-serve.nix
2014-10-12 22:56:01 +02:00
./services/misc/parsoid.nix
./services/misc/phd.nix
2014-10-07 10:53:01 +02:00
./services/misc/redmine.nix
./services/misc/rippled.nix
./services/misc/rogue.nix
2014-07-10 20:08:38 +02:00
./services/misc/siproxd.nix
./services/misc/svnserve.nix
./services/misc/synergy.nix
2014-07-18 19:27:55 +02:00
./services/misc/uhub.nix
2014-08-24 17:43:45 +02:00
./services/misc/zookeeper.nix
./services/monitoring/apcupsd.nix
2014-11-20 15:49:45 +01:00
./services/monitoring/bosun.nix
2014-12-28 20:21:41 +01:00
./services/monitoring/cadvisor.nix
2014-09-13 02:03:15 +02:00
./services/monitoring/collectd.nix
2013-01-08 22:19:51 +01:00
./services/monitoring/dd-agent.nix
./services/monitoring/graphite.nix
./services/monitoring/monit.nix
./services/monitoring/munin.nix
./services/monitoring/nagios.nix
./services/monitoring/riemann.nix
./services/monitoring/riemann-dash.nix
2014-11-20 15:38:04 +01:00
./services/monitoring/scollector.nix
./services/monitoring/smartd.nix
./services/monitoring/statsd.nix
./services/monitoring/systemhealth.nix
./services/monitoring/ups.nix
./services/monitoring/uptime.nix
./services/monitoring/zabbix-agent.nix
./services/monitoring/zabbix-server.nix
./services/network-filesystems/drbd.nix
./services/network-filesystems/nfsd.nix
./services/network-filesystems/openafs-client/default.nix
./services/network-filesystems/rsyncd.nix
./services/network-filesystems/samba.nix
2014-09-03 02:30:04 +02:00
./services/network-filesystems/diod.nix
./services/network-filesystems/yandex-disk.nix
./services/networking/amuled.nix
2014-06-12 07:36:16 +02:00
./services/networking/atftpd.nix
./services/networking/avahi-daemon.nix
./services/networking/bind.nix
./services/networking/bitlbee.nix
./services/networking/btsync.nix
2014-07-16 22:16:34 +02:00
./services/networking/chrony.nix
./services/networking/cjdns.nix
./services/networking/cntlm.nix
2014-07-16 22:16:34 +02:00
./services/networking/connman.nix
2014-09-15 10:26:26 +02:00
./services/networking/consul.nix
./services/networking/ddclient.nix
./services/networking/dhcpcd.nix
./services/networking/dhcpd.nix
./services/networking/dnscrypt-proxy.nix
./services/networking/dnsmasq.nix
./services/networking/ejabberd.nix
2014-12-11 23:48:15 +01:00
./services/networking/firefox/sync-server.nix
./services/networking/firewall.nix
./services/networking/flashpolicyd.nix
2013-04-21 09:27:41 +02:00
./services/networking/freenet.nix
./services/networking/git-daemon.nix
./services/networking/gnunet.nix
./services/networking/gogoclient.nix
./services/networking/gvpe.nix
2014-07-16 22:16:34 +02:00
./services/networking/haproxy.nix
2012-10-06 06:39:56 +02:00
./services/networking/hostapd.nix
2014-11-09 09:44:47 +01:00
./services/networking/i2pd.nix
./services/networking/ifplugd.nix
2013-08-05 00:03:42 +02:00
./services/networking/iodined.nix
./services/networking/ircd-hybrid/default.nix
2014-01-11 23:15:11 +01:00
./services/networking/kippo.nix
2014-09-26 10:03:29 +02:00
./services/networking/mailpile.nix
./services/networking/minidlna.nix
./services/networking/mstpd.nix
./services/networking/murmur.nix
./services/networking/nat.nix
./services/networking/networkmanager.nix
2014-03-20 03:04:35 +01:00
./services/networking/ngircd.nix
./services/networking/notbit.nix
./services/networking/nsd.nix
./services/networking/ntopng.nix
./services/networking/ntpd.nix
./services/networking/nylon.nix
./services/networking/oidentd.nix
./services/networking/openfire.nix
./services/networking/openntpd.nix
./services/networking/openvpn.nix
2014-07-15 16:16:58 +02:00
./services/networking/polipo.nix
./services/networking/prayer.nix
./services/networking/privoxy.nix
./services/networking/prosody.nix
./services/networking/quassel.nix
2014-05-27 22:27:31 +02:00
./services/networking/radicale.nix
./services/networking/radvd.nix
./services/networking/rdnssd.nix
./services/networking/rpcbind.nix
./services/networking/sabnzbd.nix
2014-03-07 20:09:59 +01:00
./services/networking/searx.nix
2014-10-06 21:25:10 +02:00
./services/networking/seeks.nix
./services/networking/spiped.nix
2015-02-05 00:36:27 +01:00
./services/networking/sslh.nix
./services/networking/ssh/lshd.nix
./services/networking/ssh/sshd.nix
2014-11-22 19:27:23 +01:00
./services/networking/strongswan.nix
2014-07-16 22:16:34 +02:00
./services/networking/supybot.nix
./services/networking/syncthing.nix
./services/networking/tcpcrypt.nix
./services/networking/teamspeak3.nix
2014-08-24 02:33:31 +02:00
./services/networking/tinc.nix
./services/networking/tftpd.nix
2014-12-20 16:10:28 +01:00
./services/networking/tlsdated.nix
2014-12-20 23:38:52 +01:00
./services/networking/tox-bootstrapd.nix
./services/networking/unbound.nix
2014-08-05 23:00:30 +02:00
./services/networking/unifi.nix
./services/networking/vsftpd.nix
./services/networking/wakeonlan.nix
2013-02-15 03:50:41 +01:00
./services/networking/websockify.nix
./services/networking/wicd.nix
./services/networking/wpa_supplicant.nix
./services/networking/xinetd.nix
./services/networking/znc.nix
./services/printing/cupsd.nix
./services/scheduling/atd.nix
2014-12-03 15:49:14 +01:00
./services/scheduling/chronos.nix
./services/scheduling/cron.nix
./services/scheduling/fcron.nix
2015-02-19 10:32:02 +01:00
./services/scheduling/marathon.nix
./services/search/elasticsearch.nix
./services/search/solr.nix
./services/security/clamav.nix
./services/security/fail2ban.nix
./services/security/fprintd.nix
./services/security/fprot.nix
./services/security/frandom.nix
2014-07-16 22:16:34 +02:00
./services/security/haveged.nix
./services/security/torify.nix
2014-07-16 22:16:34 +02:00
./services/security/tor.nix
./services/security/torsocks.nix
2014-10-17 17:01:12 +02:00
./services/system/cloud-init.nix
./services/system/dbus.nix
./services/system/kerberos.nix
./services/system/nscd.nix
./services/system/uptimed.nix
2013-02-24 17:33:48 +01:00
./services/torrent/deluge.nix
2014-12-01 16:40:42 +01:00
./services/torrent/peerflix.nix
./services/torrent/transmission.nix
2012-06-18 23:55:27 +02:00
./services/ttys/agetty.nix
2014-07-16 22:16:34 +02:00
./services/ttys/gpm.nix
./services/ttys/kmscon.nix
./services/web-servers/apache-httpd/default.nix
./services/web-servers/fcgiwrap.nix
./services/web-servers/jboss/default.nix
./services/web-servers/lighttpd/cgit.nix
2014-07-16 22:16:34 +02:00
./services/web-servers/lighttpd/default.nix
./services/web-servers/lighttpd/gitweb.nix
2013-03-02 23:40:56 +01:00
./services/web-servers/nginx/default.nix
2014-03-11 23:46:57 +01:00
./services/web-servers/phpfpm.nix
./services/web-servers/tomcat.nix
2014-12-10 02:41:25 +01:00
./services/web-servers/uwsgi.nix
2013-05-15 14:36:17 +02:00
./services/web-servers/varnish/default.nix
./services/web-servers/winstone.nix
2013-10-02 15:14:35 +02:00
./services/web-servers/zope2.nix
./services/x11/desktop-managers/default.nix
./services/x11/display-managers/auto.nix
./services/x11/display-managers/default.nix
./services/x11/display-managers/gdm.nix
./services/x11/display-managers/kdm.nix
./services/x11/display-managers/lightdm.nix
2014-07-16 22:16:34 +02:00
./services/x11/display-managers/slim.nix
./services/x11/hardware/multitouch.nix
./services/x11/hardware/synaptics.nix
./services/x11/hardware/wacom.nix
2014-07-16 22:16:34 +02:00
./services/x11/redshift.nix
./services/x11/window-managers/awesome.nix
#./services/x11/window-managers/compiz.nix
./services/x11/window-managers/default.nix
./services/x11/window-managers/fluxbox.nix
./services/x11/window-managers/icewm.nix
2014-08-09 23:31:05 +02:00
./services/x11/window-managers/bspwm.nix
./services/x11/window-managers/metacity.nix
./services/x11/window-managers/none.nix
./services/x11/window-managers/twm.nix
./services/x11/window-managers/wmii.nix
./services/x11/window-managers/xmonad.nix
./services/x11/xfs.nix
./services/x11/xserver.nix
./system/activation/activation-script.nix
./system/activation/top-level.nix
./system/boot/emergency-mode.nix
./system/boot/kernel.nix
./system/boot/kexec.nix
./system/boot/loader/efi.nix
./system/boot/loader/loader.nix
./system/boot/loader/generations-dir/generations-dir.nix
./system/boot/loader/grub/grub.nix
./system/boot/loader/grub/ipxe.nix
./system/boot/loader/grub/memtest.nix
Add support for lightweight NixOS containers You can now say: systemd.containers.foo.config = { services.openssh.enable = true; services.openssh.ports = [ 2022 ]; users.extraUsers.root.openssh.authorizedKeys.keys = [ "ssh-dss ..." ]; }; which defines a NixOS instance with the given configuration running inside a lightweight container. You can also manage the configuration of the container independently from the host: systemd.containers.foo.path = "/nix/var/nix/profiles/containers/foo"; where "path" is a NixOS system profile. It can be created/updated by doing: $ nix-env --set -p /nix/var/nix/profiles/containers/foo \ -f '<nixos>' -A system -I nixos-config=foo.nix The container configuration (foo.nix) should define boot.isContainer = true; to optimise away the building of a kernel and initrd. This is done automatically when using the "config" route. On the host, a lightweight container appears as the service "container-<name>.service". The container is like a regular NixOS (virtual) machine, except that it doesn't have its own kernel. It has its own root file system (by default /var/lib/containers/<name>), but shares the Nix store of the host (as a read-only bind mount). It also has access to the network devices of the host. Currently, if the configuration of the container changes, running "nixos-rebuild switch" on the host will cause the container to be rebooted. In the future we may want to send some message to the container so that it can activate the new container configuration without rebooting. Containers are not perfectly isolated yet. In particular, the host's /sys/fs/cgroup is mounted (writable!) in the guest.
2013-11-27 16:54:20 +01:00
./system/boot/loader/gummiboot/gummiboot.nix
2012-07-25 17:30:16 +02:00
./system/boot/loader/init-script/init-script.nix
Add support for lightweight NixOS containers You can now say: systemd.containers.foo.config = { services.openssh.enable = true; services.openssh.ports = [ 2022 ]; users.extraUsers.root.openssh.authorizedKeys.keys = [ "ssh-dss ..." ]; }; which defines a NixOS instance with the given configuration running inside a lightweight container. You can also manage the configuration of the container independently from the host: systemd.containers.foo.path = "/nix/var/nix/profiles/containers/foo"; where "path" is a NixOS system profile. It can be created/updated by doing: $ nix-env --set -p /nix/var/nix/profiles/containers/foo \ -f '<nixos>' -A system -I nixos-config=foo.nix The container configuration (foo.nix) should define boot.isContainer = true; to optimise away the building of a kernel and initrd. This is done automatically when using the "config" route. On the host, a lightweight container appears as the service "container-<name>.service". The container is like a regular NixOS (virtual) machine, except that it doesn't have its own kernel. It has its own root file system (by default /var/lib/containers/<name>), but shares the Nix store of the host (as a read-only bind mount). It also has access to the network devices of the host. Currently, if the configuration of the container changes, running "nixos-rebuild switch" on the host will cause the container to be rebooted. In the future we may want to send some message to the container so that it can activate the new container configuration without rebooting. Containers are not perfectly isolated yet. In particular, the host's /sys/fs/cgroup is mounted (writable!) in the guest.
2013-11-27 16:54:20 +01:00
./system/boot/loader/raspberrypi/raspberrypi.nix
./system/boot/luksroot.nix
./system/boot/modprobe.nix
./system/boot/shutdown.nix
./system/boot/stage-1.nix
./system/boot/stage-2.nix
./system/boot/systemd.nix
./system/boot/tmp.nix
./system/etc/etc.nix
./system/upstart/upstart.nix
./tasks/bcache.nix
./tasks/cpu-freq.nix
2014-07-16 22:16:34 +02:00
./tasks/encrypted-devices.nix
./tasks/filesystems.nix
./tasks/filesystems/btrfs.nix
./tasks/filesystems/cifs.nix
./tasks/filesystems/ext.nix
./tasks/filesystems/f2fs.nix
./tasks/filesystems/jfs.nix
./tasks/filesystems/nfs.nix
./tasks/filesystems/reiserfs.nix
./tasks/filesystems/unionfs-fuse.nix
./tasks/filesystems/vfat.nix
./tasks/filesystems/xfs.nix
2012-12-04 19:17:54 +01:00
./tasks/filesystems/zfs.nix
./tasks/kbd.nix
./tasks/lvm.nix
./tasks/network-interfaces.nix
./tasks/network-interfaces-systemd.nix
./tasks/network-interfaces-scripted.nix
./tasks/scsi-link-power-management.nix
./tasks/swraid.nix
./tasks/trackpoint.nix
./testing/service-runner.nix
./virtualisation/container-config.nix
Add support for lightweight NixOS containers You can now say: systemd.containers.foo.config = { services.openssh.enable = true; services.openssh.ports = [ 2022 ]; users.extraUsers.root.openssh.authorizedKeys.keys = [ "ssh-dss ..." ]; }; which defines a NixOS instance with the given configuration running inside a lightweight container. You can also manage the configuration of the container independently from the host: systemd.containers.foo.path = "/nix/var/nix/profiles/containers/foo"; where "path" is a NixOS system profile. It can be created/updated by doing: $ nix-env --set -p /nix/var/nix/profiles/containers/foo \ -f '<nixos>' -A system -I nixos-config=foo.nix The container configuration (foo.nix) should define boot.isContainer = true; to optimise away the building of a kernel and initrd. This is done automatically when using the "config" route. On the host, a lightweight container appears as the service "container-<name>.service". The container is like a regular NixOS (virtual) machine, except that it doesn't have its own kernel. It has its own root file system (by default /var/lib/containers/<name>), but shares the Nix store of the host (as a read-only bind mount). It also has access to the network devices of the host. Currently, if the configuration of the container changes, running "nixos-rebuild switch" on the host will cause the container to be rebooted. In the future we may want to send some message to the container so that it can activate the new container configuration without rebooting. Containers are not perfectly isolated yet. In particular, the host's /sys/fs/cgroup is mounted (writable!) in the guest.
2013-11-27 16:54:20 +01:00
./virtualisation/containers.nix
./virtualisation/docker.nix
./virtualisation/libvirtd.nix
./virtualisation/lxc.nix
./virtualisation/amazon-options.nix
./virtualisation/openvswitch.nix
2014-11-11 00:32:05 +01:00
./virtualisation/parallels-guest.nix
./virtualisation/virtualbox-guest.nix
#./virtualisation/xen-dom0.nix
]