summaryrefslogtreecommitdiffstats
path: root/nixos
diff options
context:
space:
mode:
Diffstat (limited to 'nixos')
-rw-r--r--nixos/doc/manual/release-notes/rl-2103.xml12
-rw-r--r--nixos/modules/misc/documentation.nix34
-rw-r--r--nixos/modules/programs/bandwhich.nix2
-rw-r--r--nixos/modules/services/web-apps/codimd.nix17
-rw-r--r--nixos/modules/tasks/lvm.nix4
-rw-r--r--nixos/modules/tasks/network-interfaces.nix1
-rw-r--r--nixos/release-combined.nix1
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/caddy.nix2
-rw-r--r--nixos/tests/nano.nix44
-rw-r--r--nixos/tests/riak.nix2
11 files changed, 99 insertions, 21 deletions
diff --git a/nixos/doc/manual/release-notes/rl-2103.xml b/nixos/doc/manual/release-notes/rl-2103.xml
index 62dcbd6184e4..5c017c65a253 100644
--- a/nixos/doc/manual/release-notes/rl-2103.xml
+++ b/nixos/doc/manual/release-notes/rl-2103.xml
@@ -90,6 +90,18 @@
</para>
</listitem>
<listitem>
+ <para>
+ <literal>rubyMinimal</literal> was removed due to being unused and
+ unusable. The default ruby interpreter includes JIT support, which makes
+ it reference it's compiler. Since JIT support is probably needed by some
+ Gems, it was decided to enable this feature with all cc references by
+ default, and allow to build a Ruby derivation without references to cc,
+ by setting <literal>jitSupport = false;</literal> in an overlay. See
+ <link xlink:href="https://github.com/NixOS/nixpkgs/pull/90151">#90151</link>
+ for more info.
+ </para>
+ </listitem>
+ <listitem>
<para>
The option <option>fonts.enableFontDir</option> has been renamed to
<xref linkend="opt-fonts.fontDir.enable"/>. The path of font directory
diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix
index 71a40b4f4d6e..bc43cc33b5d4 100644
--- a/nixos/modules/misc/documentation.nix
+++ b/nixos/modules/misc/documentation.nix
@@ -40,9 +40,9 @@ let
in scrubbedEval.options;
};
- helpScript = pkgs.writeScriptBin "nixos-help"
- ''
- #! ${pkgs.runtimeShell} -e
+
+ nixos-help = let
+ helpScript = pkgs.writeShellScriptBin "nixos-help" ''
# Finds first executable browser in a colon-separated list.
# (see how xdg-open defines BROWSER)
browser="$(
@@ -59,14 +59,22 @@ let
exec "$browser" ${manual.manualHTMLIndex}
'';
- desktopItem = pkgs.makeDesktopItem {
- name = "nixos-manual";
- desktopName = "NixOS Manual";
- genericName = "View NixOS documentation in a web browser";
- icon = "nix-snowflake";
- exec = "${helpScript}/bin/nixos-help";
- categories = "System";
- };
+ desktopItem = pkgs.makeDesktopItem {
+ name = "nixos-manual";
+ desktopName = "NixOS Manual";
+ genericName = "View NixOS documentation in a web browser";
+ icon = "nix-snowflake";
+ exec = "nixos-help";
+ categories = "System";
+ };
+
+ in pkgs.symlinkJoin {
+ name = "nixos-help";
+ paths = [
+ helpScript
+ desktopItem
+ ];
+ };
in
@@ -250,8 +258,8 @@ in
environment.systemPackages = []
++ optional cfg.man.enable manual.manpages
- ++ optionals cfg.doc.enable ([ manual.manualHTML helpScript ]
- ++ optionals config.services.xserver.enable [ desktopItem pkgs.nixos-icons ]);
+ ++ optionals cfg.doc.enable ([ manual.manualHTML nixos-help ]
+ ++ optionals config.services.xserver.enable [ pkgs.nixos-icons ]);
services.mingetty.helpLine = mkIf cfg.doc.enable (
"\nRun 'nixos-help' for the NixOS manual."
diff --git a/nixos/modules/programs/bandwhich.nix b/nixos/modules/programs/bandwhich.nix
index 5413044f4614..1cffb5fa2765 100644
--- a/nixos/modules/programs/bandwhich.nix
+++ b/nixos/modules/programs/bandwhich.nix
@@ -4,7 +4,7 @@ with lib;
let cfg = config.programs.bandwhich;
in {
- meta.maintainers = with maintainers; [ filalex77 ];
+ meta.maintainers = with maintainers; [ Br1ght0ne ];
options = {
programs.bandwhich = {
diff --git a/nixos/modules/services/web-apps/codimd.nix b/nixos/modules/services/web-apps/codimd.nix
index c787c36b877c..0fbc9ee820e6 100644
--- a/nixos/modules/services/web-apps/codimd.nix
+++ b/nixos/modules/services/web-apps/codimd.nix
@@ -6,8 +6,10 @@ let
cfg = config.services.codimd;
prettyJSON = conf:
- pkgs.runCommand "codimd-config.json" { preferLocalBuild = true; } ''
- echo '${builtins.toJSON conf}' | ${pkgs.jq}/bin/jq \
+ pkgs.runCommandLocal "codimd-config.json" {
+ nativeBuildInputs = [ pkgs.jq ];
+ } ''
+ echo '${builtins.toJSON conf}' | jq \
'{production:del(.[]|nulls)|del(.[][]?|nulls)}' > $out
'';
in
@@ -878,7 +880,6 @@ in
};
};
-
environmentFile = mkOption {
type = with types; nullOr path;
default = null;
@@ -908,6 +909,14 @@ in
<literal>CodiMD</literal> is running.
'';
};
+
+ package = mkOption {
+ type = types.package;
+ default = pkgs.codimd;
+ description = ''
+ Package that provides CodiMD.
+ '';
+ };
};
config = mkIf cfg.enable {
@@ -938,7 +947,7 @@ in
'';
serviceConfig = {
WorkingDirectory = cfg.workDir;
- ExecStart = "${pkgs.codimd}/bin/codimd";
+ ExecStart = "${cfg.package}/bin/codimd";
EnvironmentFile = mkIf (cfg.environmentFile != null) [ cfg.environmentFile ];
Environment = [
"CMD_CONFIG_FILE=${cfg.workDir}/config.json"
diff --git a/nixos/modules/tasks/lvm.nix b/nixos/modules/tasks/lvm.nix
index 2c3cc4c5467d..98a0e2ddef90 100644
--- a/nixos/modules/tasks/lvm.nix
+++ b/nixos/modules/tasks/lvm.nix
@@ -21,6 +21,10 @@ in {
};
config = mkMerge [
+ ({
+ # minimal configuration file to make lvmconfig/lvm2-activation-generator happy
+ environment.etc."lvm/lvm.conf".text = "config {}";
+ })
(mkIf (!config.boot.isContainer) {
systemd.tmpfiles.packages = [ cfg.package.out ];
environment.systemPackages = [ cfg.package ];
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index e5bd57753683..53c54c2e3980 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -1062,7 +1062,6 @@ in
];
boot.kernelModules = [ ]
- ++ optional cfg.enableIPv6 "ipv6"
++ optional hasVirtuals "tun"
++ optional hasSits "sit"
++ optional hasBonds "bonding";
diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix
index 384ae5765b8c..d8b9a5f9b4bc 100644
--- a/nixos/release-combined.nix
+++ b/nixos/release-combined.nix
@@ -97,6 +97,7 @@ in rec {
(onFullSupported "nixos.tests.login")
(onFullSupported "nixos.tests.misc")
(onFullSupported "nixos.tests.mutableUsers")
+ (onFullSupported "nixos.tests.nano")
(onFullSupported "nixos.tests.nat.firewall-conntrack")
(onFullSupported "nixos.tests.nat.firewall")
(onFullSupported "nixos.tests.nat.standalone")
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 478d1b1a8d15..640cc84c8032 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -225,6 +225,7 @@ in
mysql-backup = handleTest ./mysql/mysql-backup.nix {};
mysql-replication = handleTest ./mysql/mysql-replication.nix {};
nagios = handleTest ./nagios.nix {};
+ nano = handleTest ./nano.nix {};
nar-serve = handleTest ./nar-serve.nix {};
nat.firewall = handleTest ./nat.nix { withFirewall = true; };
nat.firewall-conntrack = handleTest ./nat.nix { withFirewall = true; withConntrackHelpers = true; };
diff --git a/nixos/tests/caddy.nix b/nixos/tests/caddy.nix
index f2de34ff2da2..a21dbec248ab 100644
--- a/nixos/tests/caddy.nix
+++ b/nixos/tests/caddy.nix
@@ -1,7 +1,7 @@
import ./make-test-python.nix ({ pkgs, ... }: {
name = "caddy";
meta = with pkgs.stdenv.lib.maintainers; {
- maintainers = [ xfix filalex77 ];
+ maintainers = [ xfix Br1ght0ne ];
};
nodes = {
diff --git a/nixos/tests/nano.nix b/nixos/tests/nano.nix
new file mode 100644
index 000000000000..9e0a9e147f2c
--- /dev/null
+++ b/nixos/tests/nano.nix
@@ -0,0 +1,44 @@
+import ./make-test-python.nix ({ pkgs, ...} : {
+ name = "nano";
+ meta = with pkgs.stdenv.lib.maintainers; {
+ maintainers = [ nequissimus ];
+ };
+
+ machine = { lib, ... }: {
+ environment.systemPackages = [ pkgs.nano ];
+ };
+
+ testScript = { ... }: ''
+ start_all()
+
+ with subtest("Create user and log in"):
+ machine.wait_for_unit("multi-user.target")
+ machine.wait_until_succeeds("pgrep -f 'agetty.*tty1'")
+ machine.succeed("useradd -m alice")
+ machine.succeed("(echo foobar; echo foobar) | passwd alice")
+ machine.wait_until_tty_matches(1, "login: ")
+ machine.send_chars("alice\n")
+ machine.wait_until_tty_matches(1, "login: alice")
+ machine.wait_until_succeeds("pgrep login")
+ machine.wait_until_tty_matches(1, "Password: ")
+ machine.send_chars("foobar\n")
+ machine.wait_until_succeeds("pgrep -u alice bash")
+ machine.screenshot("prompt")
+
+ with subtest("Use nano"):
+ machine.send_chars("nano /tmp/foo")
+ machine.send_key("ret")
+ machine.sleep(2)
+ machine.send_chars("42")
+ machine.sleep(1)
+ machine.send_key("ctrl-x")
+ machine.sleep(1)
+ machine.send_key("y")
+ machine.sleep(1)
+ machine.screenshot("nano")
+ machine.sleep(1)
+ machine.send_key("ret")
+ machine.wait_for_file("/tmp/foo")
+ assert "42" in machine.succeed("cat /tmp/foo")
+ '';
+})
diff --git a/nixos/tests/riak.nix b/nixos/tests/riak.nix
index 6915779e7e9c..3dd4e333d669 100644
--- a/nixos/tests/riak.nix
+++ b/nixos/tests/riak.nix
@@ -1,7 +1,7 @@
import ./make-test-python.nix ({ lib, pkgs, ... }: {
name = "riak";
meta = with lib.maintainers; {
- maintainers = [ filalex77 ];
+ maintainers = [ Br1ght0ne ];
};
machine = {