diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2017-03-21 13:04:37 +0100 |
---|---|---|
committer | Frederik Rietdijk <fridh@fridh.nl> | 2017-03-21 13:04:37 +0100 |
commit | 94eb74eaade1f98361187b3c90738e41b184584e (patch) | |
tree | 694db9fcfca62827cc85dbf6867144e1ae037fa0 /nixos | |
parent | 3760c8c7fde6e8b15d19b063579d05018fc2d8b3 (diff) | |
parent | 4263c53f668058e0f1a16ddc3703c2e3c72805fc (diff) | |
download | nixlib-94eb74eaade1f98361187b3c90738e41b184584e.tar nixlib-94eb74eaade1f98361187b3c90738e41b184584e.tar.gz nixlib-94eb74eaade1f98361187b3c90738e41b184584e.tar.bz2 nixlib-94eb74eaade1f98361187b3c90738e41b184584e.tar.lz nixlib-94eb74eaade1f98361187b3c90738e41b184584e.tar.xz nixlib-94eb74eaade1f98361187b3c90738e41b184584e.tar.zst nixlib-94eb74eaade1f98361187b3c90738e41b184584e.zip |
Merge remote-tracking branch 'upstream/master' into HEAD
Diffstat (limited to 'nixos')
23 files changed, 275 insertions, 118 deletions
diff --git a/nixos/doc/manual/release-notes/rl-1703.xml b/nixos/doc/manual/release-notes/rl-1703.xml index fda46217144c..49ae296c40c8 100644 --- a/nixos/doc/manual/release-notes/rl-1703.xml +++ b/nixos/doc/manual/release-notes/rl-1703.xml @@ -237,10 +237,22 @@ following incompatible changes:</para> </para> </listitem> + <listitem> + <para> + The socket handling of the <literal>services.rmilter</literal> module + has been fixed and refactored. As rmilter doesn't support binding to + more than one socket, the options <literal>bindUnixSockets</literal> + and <literal>bindInetSockets</literal> have been replaced by + <literal>services.rmilter.bindSocket.*</literal>. The default is still + a unix socket in <literal>/run/rmilter/rmilter.sock</literal>. Refer to + the options documentation for more information. + </para> + </listitem> + </itemizedlist> -<para>Other notable improvements:</para> +<para>Other notable changes:</para> <itemizedlist> @@ -262,6 +274,14 @@ following incompatible changes:</para> </listitem> <listitem> + <para>Python 2.6 interpreter and package set have been removed.</para> + </listitem> + + <listitem> + <para>The Python 2.7 interpreter does not use modules anymore. Instead, all CPython interpreters now include the whole standard library except for `tkinter`, which is available in the Python package set.</para> + </listitem> + + <listitem> <para> Python 2.7, 3.5 and 3.6 are now built deterministically and 3.4 mostly. Minor modifications had to be made to the interpreters in order to generate @@ -271,6 +291,22 @@ following incompatible changes:</para> </para> </listitem> + <listitem> + <para>The Python package sets now use a fixed-point combinator and the sets are available as attributes of the interpreters.</para> + </listitem> + + <listitem> + <para>The Python function `buildPythonPackage` has been improved and can be used to build from Setuptools source, Flit source, and precompiled Wheels.</para> + </listitem> + + <listitem> + <para> + When adding new or updating current Python libraries, the expressions should be put + in separate files in <literal>pkgs/development/python-modules</literal> and + called from <literal>python-packages.nix</literal>. + </para> + </listitem> + </itemizedlist> diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix index c1cb5072acad..8539fef0a19d 100644 --- a/nixos/lib/testing.nix +++ b/nixos/lib/testing.nix @@ -108,16 +108,16 @@ rec { mkdir -p $out/bin echo "$testScript" > $out/test-script ln -s ${testDriver}/bin/nixos-test-driver $out/bin/ - vms="$(for i in ${toString vms}; do echo $i/bin/run-*-vm; done)" + vms=($(for i in ${toString vms}; do echo $i/bin/run-*-vm; done)) wrapProgram $out/bin/nixos-test-driver \ - --add-flags "$vms" \ + --add-flags "''${vms[*]}" \ ${lib.optionalString enableOCR "--prefix PATH : '${ocrProg}/bin'"} \ --run "testScript=\"\$(cat $out/test-script)\"" \ --set testScript '$testScript' \ --set VLANS '${toString vlans}' ln -s ${testDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms wrapProgram $out/bin/nixos-run-vms \ - --add-flags "$vms" \ + --add-flags "''${vms[*]}" \ ${lib.optionalString enableOCR "--prefix PATH : '${ocrProg}/bin'"} \ --set tests 'startAll; joinAll;' \ --set VLANS '${toString vlans}' \ diff --git a/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix b/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix index 0b858746ff0a..118ed20d47f5 100644 --- a/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix +++ b/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix @@ -28,7 +28,7 @@ in boot.loader.generic-extlinux-compatible.enable = true; boot.kernelPackages = pkgs.linuxPackages_latest; - boot.kernelParams = ["console=ttyS0,115200n8" "console=ttymxc0,115200n8" "console=ttyAMA0,115200n8" "console=ttyO0,115200n8" "console=tty0"]; + boot.kernelParams = ["console=ttyS0,115200n8" "console=ttymxc0,115200n8" "console=ttyAMA0,115200n8" "console=ttyO0,115200n8" "console=ttySAC2,115200n8" "console=tty0"]; # FIXME: this probably should be in installation-device.nix users.extraUsers.root.initialHashedPassword = ""; diff --git a/nixos/modules/installer/tools/auto-upgrade.nix b/nixos/modules/installer/tools/auto-upgrade.nix index dfb43d1a1db9..a4d4f16d1d96 100644 --- a/nixos/modules/installer/tools/auto-upgrade.nix +++ b/nixos/modules/installer/tools/auto-upgrade.nix @@ -48,7 +48,7 @@ let cfg = config.system.autoUpgrade; in description = '' Specification (in the format described by <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>) of the time at + <manvolnum>7</manvolnum></citerefentry>) of the time at which the update will occur. ''; }; diff --git a/nixos/modules/programs/venus.nix b/nixos/modules/programs/venus.nix index 731ebed14c7b..110570ac3f06 100644 --- a/nixos/modules/programs/venus.nix +++ b/nixos/modules/programs/venus.nix @@ -45,7 +45,7 @@ in description = '' Specification (in the format described by <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>) of the time at + <manvolnum>7</manvolnum></citerefentry>) of the time at which the Venus will collect feeds. ''; }; diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix index 3e66679d6fa0..84c874c17f67 100644 --- a/nixos/modules/rename.nix +++ b/nixos/modules/rename.nix @@ -35,6 +35,9 @@ with lib; (mkRemovedOptionModule [ "security" "setuidOwners" ] "Use security.wrappers instead") (mkRemovedOptionModule [ "security" "setuidPrograms" ] "Use security.wrappers instead") + (mkRemovedOptionModule [ "services" "rmilter" "bindInetSockets" ] "Use services.rmilter.bindSocket.* instead") + (mkRemovedOptionModule [ "services" "rmilter" "bindUnixSockets" ] "Use services.rmilter.bindSocket.* instead") + # Old Grub-related options. (mkRenamedOptionModule [ "boot" "initrd" "extraKernelModules" ] [ "boot" "initrd" "kernelModules" ]) (mkRenamedOptionModule [ "boot" "extraKernelParams" ] [ "boot" "kernelParams" ]) diff --git a/nixos/modules/security/acme.nix b/nixos/modules/security/acme.nix index 78bd09441f83..703d5ddbd0e2 100644 --- a/nixos/modules/security/acme.nix +++ b/nixos/modules/security/acme.nix @@ -110,7 +110,7 @@ in description = '' Systemd calendar expression when to check for renewal. See <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>. + <manvolnum>7</manvolnum></citerefentry>. ''; }; diff --git a/nixos/modules/services/hardware/bluetooth.nix b/nixos/modules/services/hardware/bluetooth.nix index 71b3a93a2e0d..f1fcb4369346 100644 --- a/nixos/modules/services/hardware/bluetooth.nix +++ b/nixos/modules/services/hardware/bluetooth.nix @@ -14,12 +14,26 @@ in options = { - hardware.bluetooth.enable = mkEnableOption "support for Bluetooth."; + hardware.bluetooth = { + enable = mkEnableOption "support for Bluetooth."; - hardware.bluetooth.powerOnBoot = mkOption { - type = types.bool; - default = true; - description = "Whether to power up the default Bluetooth controller on boot."; + powerOnBoot = mkOption { + type = types.bool; + default = true; + description = "Whether to power up the default Bluetooth controller on boot."; + }; + + extraConfig = mkOption { + type = types.lines; + default = ""; + example = '' + [General] + ControllerMode = bredr + ''; + description = '' + Set additional configuration for system-wide bluetooth (/etc/bluetooth/main.conf). + ''; + }; }; }; @@ -30,6 +44,11 @@ in environment.systemPackages = [ bluez-bluetooth pkgs.openobex pkgs.obexftp ]; + environment.etc = singleton { + source = pkgs.writeText "main.conf" cfg.extraConfig; + target = "bluetooth/main.conf"; + }; + services.udev.packages = [ bluez-bluetooth ]; services.dbus.packages = [ bluez-bluetooth ]; systemd.packages = [ bluez-bluetooth ]; diff --git a/nixos/modules/services/logging/awstats.nix b/nixos/modules/services/logging/awstats.nix index 8ab7e6acd98e..612ae06d0a79 100644 --- a/nixos/modules/services/logging/awstats.nix +++ b/nixos/modules/services/logging/awstats.nix @@ -38,7 +38,7 @@ in Specification of the time at which awstats will get updated. (in the format described by <citerefentry> <refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>) + <manvolnum>7</manvolnum></citerefentry>) ''; }; diff --git a/nixos/modules/services/mail/rmilter.nix b/nixos/modules/services/mail/rmilter.nix index 8f18b929c114..e17b7516bfff 100644 --- a/nixos/modules/services/mail/rmilter.nix +++ b/nixos/modules/services/mail/rmilter.nix @@ -5,35 +5,38 @@ with lib; let rspamdCfg = config.services.rspamd; + postfixCfg = config.services.postfix; cfg = config.services.rmilter; - inetSockets = map (sock: let s = stringSplit ":" sock; in "inet:${last s}:${head s}") cfg.bindInetSockets; - unixSockets = map (sock: "unix:${sock}") cfg.bindUnixSockets; + inetSocket = addr: port: "inet:[${toString port}@${addr}]"; + unixSocket = sock: "unix:${sock}"; - allSockets = unixSockets ++ inetSockets; + systemdSocket = if cfg.bindSocket.type == "unix" then cfg.bindSocket.path + else "${cfg.bindSocket.address}:${toString cfg.bindSocket.port}"; + rmilterSocket = if cfg.bindSocket.type == "unix" then unixSocket cfg.bindSocket.path + else inetSocket cfg.bindSocket.address cfg.bindSocket.port; rmilterConf = '' -pidfile = /run/rmilter/rmilter.pid; -bind_socket = ${if cfg.socketActivation then "fd:3" else concatStringsSep ", " allSockets}; -tempdir = /tmp; - + pidfile = /run/rmilter/rmilter.pid; + bind_socket = ${if cfg.socketActivation then "fd:3" else rmilterSocket}; + tempdir = /tmp; '' + (with cfg.rspamd; if enable then '' -spamd { - servers = ${concatStringsSep ", " servers}; - connect_timeout = 1s; - results_timeout = 20s; - error_time = 10; - dead_time = 300; - maxerrors = 10; - reject_message = "${rejectMessage}"; - ${optionalString (length whitelist != 0) "whitelist = ${concatStringsSep ", " whitelist};"} - - # rspamd_metric - metric for using with rspamd - # Default: "default" - rspamd_metric = "default"; - ${extraConfig} -}; - '' else "") + cfg.extraConfig; + spamd { + servers = ${concatStringsSep ", " servers}; + connect_timeout = 1s; + results_timeout = 20s; + error_time = 10; + dead_time = 300; + maxerrors = 10; + reject_message = "${rejectMessage}"; + ${optionalString (length whitelist != 0) "whitelist = ${concatStringsSep ", " whitelist};"} + + # rspamd_metric - metric for using with rspamd + # Default: "default" + rspamd_metric = "default"; + ${extraConfig} + }; + '' else "") + cfg.extraConfig; rmilterConfigFile = pkgs.writeText "rmilter.conf" rmilterConf; @@ -48,11 +51,13 @@ in services.rmilter = { enable = mkOption { + type = types.bool; default = cfg.rspamd.enable; description = "Whether to run the rmilter daemon."; }; debug = mkOption { + type = types.bool; default = false; description = "Whether to run the rmilter daemon in debug mode."; }; @@ -73,25 +78,37 @@ in ''; }; - bindUnixSockets = mkOption { - type = types.listOf types.str; - default = ["/run/rmilter/rmilter.sock"]; + bindSocket.type = mkOption { + type = types.enum [ "unix" "inet" ]; + default = "unix"; description = '' - Unix domain sockets to listen for MTA requests. + What kind of socket rmilter should listen on. Either "unix" + for an Unix domain socket or "inet" for a TCP socket. ''; - example = '' - [ "/run/rmilter.sock"] + }; + + bindSocket.path = mkOption { + type = types.str; + default = "/run/rmilter/rmilter.sock"; + description = '' + Path to Unix domain socket to listen on. ''; }; - bindInetSockets = mkOption { - type = types.listOf types.str; - default = []; + bindSocket.address = mkOption { + type = types.str; + default = "::1"; + example = "0.0.0.0"; description = '' - Inet addresses to listen (in format accepted by systemd.socket) + Inet address to listen on. ''; - example = '' - ["127.0.0.1:11990"] + }; + + bindSocket.port = mkOption { + type = types.int; + default = 11990; + description = '' + Inet port to listen on. ''; }; @@ -100,14 +117,16 @@ in default = true; description = '' Enable systemd socket activation for rmilter. - (disabling socket activation not recommended - when unix socket used, and follow to wrong - permissions on unix domain socket.) + + Disabling socket activation is not recommended when a Unix + domain socket is used and could lead to incorrect + permissions. ''; }; rspamd = { enable = mkOption { + type = types.bool; default = rspamdCfg.enable; description = "Whether to use rspamd to filter mails"; }; @@ -157,13 +176,9 @@ in type = types.str; description = "Addon to postfix configuration"; default = '' -smtpd_milters = ${head allSockets} -# or for TCP socket -# # smtpd_milters = inet:localhost:9900 -milter_protocol = 6 -milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen} -# skip mail without checks if milter will die -milter_default_action = accept + smtpd_milters = ${rmilterSocket} + milter_protocol = 6 + milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen} ''; }; }; @@ -175,52 +190,60 @@ milter_default_action = accept ###### implementation - config = mkIf cfg.enable { + config = mkMerge [ - users.extraUsers = singleton { - name = cfg.user; - description = "rspamd daemon"; - uid = config.ids.uids.rmilter; - group = cfg.group; - }; + (mkIf cfg.enable { - users.extraGroups = singleton { - name = cfg.group; - gid = config.ids.gids.rmilter; - }; + users.extraUsers = singleton { + name = cfg.user; + description = "rmilter daemon"; + uid = config.ids.uids.rmilter; + group = cfg.group; + }; - systemd.services.rmilter = { - description = "Rmilter Service"; - - wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; - - serviceConfig = { - ExecStart = "${pkgs.rmilter}/bin/rmilter ${optionalString cfg.debug "-d"} -n -c ${rmilterConfigFile}"; - ExecReload = "${pkgs.coreutils}/bin/kill -USR1 $MAINPID"; - User = cfg.user; - Group = cfg.group; - PermissionsStartOnly = true; - Restart = "always"; - RuntimeDirectory = "rmilter"; - RuntimeDirectoryMode = "0755"; + users.extraGroups = singleton { + name = cfg.group; + gid = config.ids.gids.rmilter; }; - }; + systemd.services.rmilter = { + description = "Rmilter Service"; + + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + + serviceConfig = { + ExecStart = "${pkgs.rmilter}/bin/rmilter ${optionalString cfg.debug "-d"} -n -c ${rmilterConfigFile}"; + ExecReload = "${pkgs.coreutils}/bin/kill -USR1 $MAINPID"; + User = cfg.user; + Group = cfg.group; + PermissionsStartOnly = true; + Restart = "always"; + RuntimeDirectory = "rmilter"; + RuntimeDirectoryMode = "0750"; + }; - systemd.sockets.rmilter = mkIf cfg.socketActivation { - description = "Rmilter service socket"; - wantedBy = [ "sockets.target" ]; - socketConfig = { - ListenStream = cfg.bindUnixSockets ++ cfg.bindInetSockets; - SocketUser = cfg.user; - SocketGroup = cfg.group; - SocketMode = "0666"; }; - }; - services.postfix.extraConfig = optionalString cfg.postfix.enable cfg.postfix.configFragment; - users.users.postfix.extraGroups = [ cfg.group ]; - }; + systemd.sockets.rmilter = mkIf cfg.socketActivation { + description = "Rmilter service socket"; + wantedBy = [ "sockets.target" ]; + socketConfig = { + ListenStream = systemdSocket; + SocketUser = cfg.user; + SocketGroup = cfg.group; + SocketMode = "0660"; + }; + }; + }) + + (mkIf (cfg.enable && cfg.rspamd.enable && rspamdCfg.enable) { + users.extraUsers.${cfg.user}.extraGroups = [ rspamdCfg.group ]; + }) + (mkIf (cfg.enable && cfg.postfix.enable) { + services.postfix.extraConfig = cfg.postfix.configFragment; + users.extraUsers.${postfixCfg.user}.extraGroups = [ cfg.group ]; + }) + ]; } diff --git a/nixos/modules/services/mail/rspamd.nix b/nixos/modules/services/mail/rspamd.nix index 98489df78517..6d403e448e04 100644 --- a/nixos/modules/services/mail/rspamd.nix +++ b/nixos/modules/services/mail/rspamd.nix @@ -53,8 +53,11 @@ in bindSocket = mkOption { type = types.listOf types.str; default = [ - "/run/rspamd/rspamd.sock mode=0666 owner=${cfg.user}" + "/run/rspamd/rspamd.sock mode=0660 owner=${cfg.user} group=${cfg.group}" ]; + defaultText = ''[ + "/run/rspamd/rspamd.sock mode=0660 owner=${cfg.user} group=${cfg.group}" + ]''; description = '' List of sockets to listen, in format acceptable by rspamd ''; diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix index 5088c4e60691..cfb6a860178a 100644 --- a/nixos/modules/services/misc/nix-daemon.nix +++ b/nixos/modules/services/misc/nix-daemon.nix @@ -46,6 +46,7 @@ let binary-caches = ${toString cfg.binaryCaches} trusted-binary-caches = ${toString cfg.trustedBinaryCaches} binary-cache-public-keys = ${toString cfg.binaryCachePublicKeys} + auto-optimise-store = ${if cfg.autoOptimiseStore then "true" else "false"} ${optionalString cfg.requireSignedBinaryCaches '' signed-binary-caches = * ''} @@ -86,6 +87,18 @@ in ''; }; + autoOptimiseStore = mkOption { + type = types.bool; + default = false; + example = true; + description = '' + If set to true, Nix automatically detects files in the store that have + identical contents, and replaces them with hard links to a single copy. + This saves disk space. If set to false (the default), you can still run + nix-store --optimise to get rid of duplicate files. + ''; + }; + buildCores = mkOption { type = types.int; default = 1; diff --git a/nixos/modules/services/misc/nix-gc.nix b/nixos/modules/services/misc/nix-gc.nix index 304168c65b0b..8b493041b2c9 100644 --- a/nixos/modules/services/misc/nix-gc.nix +++ b/nixos/modules/services/misc/nix-gc.nix @@ -26,7 +26,7 @@ in description = '' Specification (in the format described by <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>) of the time at + <manvolnum>7</manvolnum></citerefentry>) of the time at which the garbage collector will run. ''; }; diff --git a/nixos/modules/services/misc/nix-optimise.nix b/nixos/modules/services/misc/nix-optimise.nix index a76bfd9f1f19..295e7fb0ba03 100644 --- a/nixos/modules/services/misc/nix-optimise.nix +++ b/nixos/modules/services/misc/nix-optimise.nix @@ -26,7 +26,7 @@ in description = '' Specification (in the format described by <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>) of the time at + <manvolnum>7</manvolnum></citerefentry>) of the time at which the optimiser will run. ''; }; diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix index 6bc7192963d1..4e57b920a7d8 100644 --- a/nixos/modules/services/web-servers/nginx/default.nix +++ b/nixos/modules/services/web-servers/nginx/default.nix @@ -87,6 +87,8 @@ let server_tokens ${if cfg.serverTokens then "on" else "off"}; + ${cfg.commonHttpConfig} + ${vhosts} ${optionalString cfg.statusPage '' @@ -244,11 +246,13 @@ in }; package = mkOption { - default = pkgs.nginx; - defaultText = "pkgs.nginx"; + default = pkgs.nginxStable; + defaultText = "pkgs.nginxStable"; type = types.package; description = " - Nginx package to use. + Nginx package to use. This defaults to the stable version. Note + that the nginx team recommends to use the mainline version which + available in nixpkgs as <literal>nginxMainline</literal>. "; }; @@ -275,6 +279,24 @@ in ''; }; + commonHttpConfig = mkOption { + type = types.lines; + default = ""; + example = '' + resolver 127.0.0.1 valid=5s; + + log_format myformat '$remote_addr - $remote_user [$time_local] ' + '"$request" $status $body_bytes_sent ' + '"$http_referer" "$http_user_agent"'; + ''; + description = '' + With nginx you must provide common http context definitions before + they are used, e.g. log_format, resolver, etc. inside of server + or location contexts. Use this attribute to set these definitions + at the appropriate location. + ''; + }; + httpConfig = mkOption { type = types.lines; default = ""; diff --git a/nixos/modules/services/x11/desktop-managers/lumina.nix b/nixos/modules/services/x11/desktop-managers/lumina.nix index ed5ad4a2a001..ec5fbb13b323 100644 --- a/nixos/modules/services/x11/desktop-managers/lumina.nix +++ b/nixos/modules/services/x11/desktop-managers/lumina.nix @@ -32,8 +32,8 @@ in environment.systemPackages = [ pkgs.fluxbox - pkgs.qt5.kwindowsystem - pkgs.qt5.oxygen-icons5 + pkgs.libsForQt5.kwindowsystem + pkgs.kdeFrameworks.oxygen-icons5 pkgs.lumina pkgs.numlockx pkgs.qt5.qtsvg diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix index bc6e728169b4..f923d86265f2 100644 --- a/nixos/modules/services/x11/desktop-managers/plasma5.nix +++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix @@ -225,11 +225,6 @@ in security.pam.services.sddm.enableKwallet = true; security.pam.services.slim.enableKwallet = true; - # use kimpanel as the default IBus panel - i18n.inputMethod.ibus.panel = - lib.mkDefault - "${plasma5.plasma-desktop}/lib/libexec/kimpanel-ibus-panel"; - }) ]; diff --git a/nixos/modules/system/boot/systemd-unit-options.nix b/nixos/modules/system/boot/systemd-unit-options.nix index 904e41b019fb..9be10a8283ed 100644 --- a/nixos/modules/system/boot/systemd-unit-options.nix +++ b/nixos/modules/system/boot/systemd-unit-options.nix @@ -328,7 +328,7 @@ in rec { Automatically start this unit at the given date/time, which must be in the format described in <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>. This is equivalent + <manvolnum>7</manvolnum></citerefentry>. This is equivalent to adding a corresponding timer unit with <option>OnCalendar</option> set to the value given here. ''; @@ -375,9 +375,9 @@ in rec { Each attribute in this set specifies an option in the <literal>[Timer]</literal> section of the unit. See <citerefentry><refentrytitle>systemd.timer</refentrytitle> - <manvolnum>5</manvolnum></citerefentry> and + <manvolnum>7</manvolnum></citerefentry> and <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry> for details. + <manvolnum>7</manvolnum></citerefentry> for details. ''; }; diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index d44209cfa0b3..518fe0a97d27 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -234,7 +234,7 @@ in description = '' Systemd calendar expression when to scrub ZFS pools. See <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>. + <manvolnum>7</manvolnum></citerefentry>. ''; }; diff --git a/nixos/modules/virtualisation/rkt.nix b/nixos/modules/virtualisation/rkt.nix index c4c5cb3380e8..98be4f680c3a 100644 --- a/nixos/modules/virtualisation/rkt.nix +++ b/nixos/modules/virtualisation/rkt.nix @@ -22,7 +22,7 @@ in description = '' Specification (in the format described by <citerefentry><refentrytitle>systemd.time</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>) of the time at + <manvolnum>7</manvolnum></citerefentry>) of the time at which the garbage collector will run. ''; }; diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 1953fd1a26a7..63ca39a9b602 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -4,7 +4,7 @@ { nixpkgs ? { outPath = ./..; revCount = 56789; shortRev = "gfedcba"; } , stableBranch ? false -, supportedSystems ? [ "x86_64-linux" "i686-linux" "aarch64-linux" ] +, supportedSystems ? [ "x86_64-linux" "i686-linux" ] }: let diff --git a/nixos/release.nix b/nixos/release.nix index 325047ce10c4..cf7f0a63f4b2 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -1,6 +1,6 @@ { nixpkgs ? { outPath = ./..; revCount = 56789; shortRev = "gfedcba"; } , stableBranch ? false -, supportedSystems ? [ "x86_64-linux" "i686-linux" "aarch64-linux" ] +, supportedSystems ? [ "x86_64-linux" "i686-linux" ] }: with import ../lib; @@ -280,6 +280,7 @@ in rec { tests.networkingProxy = callTest tests/networking-proxy.nix {}; tests.nfs3 = callTest tests/nfs.nix { version = 3; }; tests.nfs4 = callTest tests/nfs.nix { version = 4; }; + tests.nginx = callTest tests/nginx.nix { }; tests.leaps = callTest tests/leaps.nix { }; tests.nsd = callTest tests/nsd.nix {}; tests.openssh = callTest tests/openssh.nix {}; diff --git a/nixos/tests/nginx.nix b/nixos/tests/nginx.nix new file mode 100644 index 000000000000..c2beb5590ef7 --- /dev/null +++ b/nixos/tests/nginx.nix @@ -0,0 +1,42 @@ +# verifies: +# 1. nginx generates config file with shared http context definitions above +# generated virtual hosts config. + +import ./make-test.nix ({ pkgs, ...} : { + name = "jenkins"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ mbbx6spp ]; + }; + + nodes = { + webserver = + { config, pkgs, ... }: + { services.nginx.enable = true; + services.nginx.commonHttpConfig = '' + log_format ceeformat '@cee: {"status":"$status",' + '"request_time":$request_time,' + '"upstream_response_time":$upstream_response_time,' + '"pipe":"$pipe","bytes_sent":$bytes_sent,' + '"connection":"$connection",' + '"remote_addr":"$remote_addr",' + '"host":"$host",' + '"timestamp":"$time_iso8601",' + '"request":"$request",' + '"http_referer":"$http_referer",' + '"upstream_addr":"$upstream_addr"}'; + ''; + services.nginx.virtualHosts."0.my.test" = { + extraConfig = '' + access_log syslog:server=unix:/dev/log,facility=user,tag=mytag,severity=info ceeformat; + ''; + }; + }; + }; + + testScript = '' + startAll; + + $webserver->waitForUnit("nginx"); + $webserver->waitForOpenPort("80"); + ''; +}) |