···1617- `linuxPackages_testing_bcachefs` is now fully deprecated by `linuxPackages_latest`, and is therefore no longer available.
180019- NixOS now installs a stub ELF loader that prints an informative error message when users attempt to run binaries not made for NixOS.
20 - This can be disabled through the `environment.stub-ld.enable` option.
21 - If you use `programs.nix-ld.enable`, no changes are needed. The stub will be disabled automatically.
···1617- `linuxPackages_testing_bcachefs` is now fully deprecated by `linuxPackages_latest`, and is therefore no longer available.
1819+- The default kernel package has been updated from 6.1 to 6.6. All supported kernels remain available.
20+21- NixOS now installs a stub ELF loader that prints an informative error message when users attempt to run binaries not made for NixOS.
22 - This can be disabled through the `environment.stub-ld.enable` option.
23 - If you use `programs.nix-ld.enable`, no changes are needed. The stub will be disabled automatically.
···36 provisioned outside of Nix store.
37 '';
38 };
39+ nutVariables = mkOption {
40+ type = types.listOf types.str;
41+ default = [ ];
42+ description = ''
43+ List of NUT variable names to monitor.
44+45+ If no variables are set, all numeric variables will be exported automatically.
46+ See the [upstream docs](https://github.com/DRuggeri/nut_exporter?tab=readme-ov-file#variables-and-information)
47+ for more information.
48+ '';
49+ };
50 };
51 serviceOpts = {
52 script = ''
···55 ${pkgs.prometheus-nut-exporter}/bin/nut_exporter \
56 --nut.server=${cfg.nutServer} \
57 --web.listen-address="${cfg.listenAddress}:${toString cfg.port}" \
58+ ${optionalString (cfg.nutUser != "") "--nut.username=${cfg.nutUser}"} \
59+ ${optionalString (cfg.nutVariables != []) "--nut.vars_enable=${concatStringsSep "," cfg.nutVariables}"} \
60+ ${concatStringsSep " " cfg.extraFlags}
61 '';
62 };
63}
+5
nixos/tests/k3s/default.nix
···6 allK3s = lib.filterAttrs (n: _: lib.strings.hasPrefix "k3s_" n) pkgs;
7in
8{
000009 # Run a single node k3s cluster and verify a pod can run
10 single-node = lib.mapAttrs (_: k3s: import ./single-node.nix { inherit system pkgs k3s; }) allK3s;
11 # Run a multi-node k3s cluster and verify pod networking works across nodes
···6 allK3s = lib.filterAttrs (n: _: lib.strings.hasPrefix "k3s_" n) pkgs;
7in
8{
9+ # Testing K3s with Etcd backend
10+ etcd = lib.mapAttrs (_: k3s: import ./etcd.nix {
11+ inherit system pkgs k3s;
12+ inherit (pkgs) etcd;
13+ }) allK3s;
14 # Run a single node k3s cluster and verify a pod can run
15 single-node = lib.mapAttrs (_: k3s: import ./single-node.nix { inherit system pkgs k3s; }) allK3s;
16 # Run a multi-node k3s cluster and verify pod networking works across nodes
···1+{ lib
2+, autoreconfHook
3+, bc
4+, fetchFromGitHub
5+, gettext
6+, makeWrapper
7+, perl
8+, python3
9+, screen
10+, stdenv
11+, vim
12+, tmux
13+}:
14+15+let
16+ pythonEnv = python3.withPackages (ps: with ps; [ snack ]);
17+in
18+stdenv.mkDerivation (finalAttrs: {
19+ pname = "byobu";
20+ version = "6.12";
21+22+ src = fetchFromGitHub {
23+ owner = "dustinkirkland";
24+ repo = "byobu";
25+ rev = finalAttrs.version;
26+ hash = "sha256-NzC9Njsnz14mfKnERGDZw8O3vux0wnfCKwjUeTBQswc=";
27+ };
28+29+ nativeBuildInputs = [
30+ autoreconfHook
31+ gettext
32+ makeWrapper
33+ ];
34+35+ buildInputs = [
36+ perl # perl is needed for `lib/byobu/include/*` scripts
37+ screen
38+ tmux
39+ ];
40+41+ doCheck = true;
42+ strictDeps = true;
43+44+ postPatch = ''
45+ for file in usr/bin/byobu-export.in usr/lib/byobu/menu; do
46+ substituteInPlace $file \
47+ --replace "gettext" "${gettext}/bin/gettext"
48+ done
49+ '';
50+51+ postInstall = ''
52+ # By some reason the po files are not being compiled
53+ for po in po/*.po; do
54+ lang=''${po#po/}
55+ lang=''${lang%.po}
56+ # Path where byobu looks for translations, as observed in the source code
57+ # and strace
58+ mkdir -p $out/share/byobu/po/$lang/LC_MESSAGES/
59+ msgfmt --verbose $po -o $out/share/byobu/po/$lang/LC_MESSAGES/byobu.mo
60+ done
61+62+ # Override the symlinks, otherwise they mess with the wrapping
63+ cp --remove-destination $out/bin/byobu $out/bin/byobu-screen
64+ cp --remove-destination $out/bin/byobu $out/bin/byobu-tmux
65+66+ for file in $out/bin/byobu*; do
67+ # We don't use the usual "-wrapped" suffix because arg0 within the shebang
68+ # scripts points to the filename and byobu matches against this to know
69+ # which backend to start with
70+ bname="$(basename $file)"
71+ mv "$file" "$out/bin/.$bname"
72+ makeWrapper "$out/bin/.$bname" "$out/bin/$bname" \
73+ --argv0 $bname \
74+ --prefix PATH ":" "$out/bin" \
75+ --set BYOBU_PATH ${lib.makeBinPath [ vim bc ]} \
76+ --set BYOBU_PYTHON "${pythonEnv}/bin/python"
77+ done
78+ '';
79+80+ meta = {
81+ homepage = "https://www.byobu.org/";
82+ description = "Text-based window manager and terminal multiplexer";
83+ longDescription = ''
84+ Byobu is a text-based window manager and terminal multiplexer. It was
85+ originally designed to provide elegant enhancements to the otherwise
86+ functional, plain, practical GNU Screen, for the Ubuntu server
87+ distribution. Byobu now includes an enhanced profiles, convenient
88+ keybindings, configuration utilities, and toggle-able system status
89+ notifications for both the GNU Screen window manager and the more modern
90+ Tmux terminal multiplexer, and works on most Linux, BSD, and Mac
91+ distributions.
92+ '';
93+ license = with lib.licenses; [ gpl3Plus ];
94+ mainProgram = "byobu";
95+ maintainers = with lib.maintainers; [ AndersonTorres ];
96+ platforms = lib.platforms.unix;
97+ };
98+})
···1{ lib
2, buildPythonPackage
003, fetchFromGitHub
04, jaxlib
5-, pythonRelaxDepsHook
6-, setuptools-scm
7-, jax
8, msgpack
9, numpy
10, optax
0000011, pyyaml
12, rich
0013, tensorstore
14, typing-extensions
15-, matplotlib
16-, cloudpickle
17-, einops
18-, keras
19-, pytest-xdist
20-, pytestCheckHook
21-, tensorflow
22}:
2324buildPythonPackage rec {
···26 version = "0.7.5";
27 pyproject = true;
280029 src = fetchFromGitHub {
30 owner = "google";
31 repo = "flax";
···44 msgpack
45 numpy
46 optax
047 pyyaml
48 rich
49 tensorstore
···75 disabledTestPaths = [
76 # Docs test, needs extra deps + we're not interested in it.
77 "docs/_ext/codediff_test.py"
78-79 # The tests in `examples` are not designed to be executed from a single test
80 # session and thus either have the modules that conflict with each other or
81 # wrong import paths, depending on how they're invoked. Many tests also have
···83 # `tensorflow_datasets`, `vocabulary`) so the benefits of trying to run them
84 # would be limited anyway.
85 "examples/*"
86-87 # See https://github.com/google/flax/issues/3232.
88 "tests/jax_utils_test.py"
0008990- # Requires orbax which is not packaged as of 2023-07-27.
91- "tests/checkpoints_test.py"
092 ];
9394 meta = with lib; {
···1{ lib
2, buildPythonPackage
3+, cloudpickle
4+, einops
5, fetchFromGitHub
6+, jax
7, jaxlib
8+, keras
9+, matplotlib
010, msgpack
11, numpy
12, optax
13+, orbax-checkpoint
14+, pytest-xdist
15+, pytestCheckHook
16+, pythonOlder
17+, pythonRelaxDepsHook
18, pyyaml
19, rich
20+, setuptools-scm
21+, tensorflow
22, tensorstore
23, typing-extensions
000000024}:
2526buildPythonPackage rec {
···28 version = "0.7.5";
29 pyproject = true;
3031+ disabled = pythonOlder "3.8";
32+33 src = fetchFromGitHub {
34 owner = "google";
35 repo = "flax";
···48 msgpack
49 numpy
50 optax
51+ orbax-checkpoint
52 pyyaml
53 rich
54 tensorstore
···80 disabledTestPaths = [
81 # Docs test, needs extra deps + we're not interested in it.
82 "docs/_ext/codediff_test.py"
083 # The tests in `examples` are not designed to be executed from a single test
84 # session and thus either have the modules that conflict with each other or
85 # wrong import paths, depending on how they're invoked. Many tests also have
···87 # `tensorflow_datasets`, `vocabulary`) so the benefits of trying to run them
88 # would be limited anyway.
89 "examples/*"
090 # See https://github.com/google/flax/issues/3232.
91 "tests/jax_utils_test.py"
92+ # Requires tree
93+ "tests/tensorboard_test.py"
94+ ];
9596+ disabledTests = [
97+ # ValueError: Checkpoint path should be absolute
98+ "test_overwrite_checkpoints0"
99 ];
100101 meta = with lib; {
···1-{ lib, stdenv, fetchurl, makeWrapper
2-, python3, perl, textual-window-manager
3-, gettext, vim, bc, screen }:
4-5-let
6- pythonEnv = python3.withPackages (ps: with ps; [ snack ]);
7-in
8-stdenv.mkDerivation rec {
9- version = "5.133";
10- pname = "byobu";
11-12- src = fetchurl {
13- url = "https://launchpad.net/byobu/trunk/${version}/+download/byobu_${version}.orig.tar.gz";
14- sha256 = "0qvmmdnvwqbgbhn5c8asmrmjhclcl029py2d2zvmd7h5ij7s93jd";
15- };
16-17- doCheck = true;
18-19- strictdeps = true;
20- nativeBuildInputs = [ makeWrapper gettext ];
21- buildInputs = [ perl ]; # perl is needed for `lib/byobu/include/*` scripts
22- propagatedBuildInputs = [ textual-window-manager screen ];
23-24- postPatch = ''
25- substituteInPlace usr/bin/byobu-export.in \
26- --replace "gettext" "${gettext}/bin/gettext"
27- substituteInPlace usr/lib/byobu/menu \
28- --replace "gettext" "${gettext}/bin/gettext"
29- '';
30-31- postInstall = ''
32- # Byobu does not compile its po files for some reason
33- for po in po/*.po; do
34- lang=''${po#po/}
35- lang=''${lang%.po}
36- # Path where byobu looks for translations as observed in the source code and strace
37- mkdir -p $out/share/byobu/po/$lang/LC_MESSAGES/
38- msgfmt $po -o $out/share/byobu/po/$lang/LC_MESSAGES/byobu.mo
39- done
40-41- # Override the symlinks otherwise they mess with the wrapping
42- cp --remove-destination $out/bin/byobu $out/bin/byobu-screen
43- cp --remove-destination $out/bin/byobu $out/bin/byobu-tmux
44-45- for i in $out/bin/byobu*; do
46- # We don't use the usual ".$package-wrapped" because arg0 within the shebang scripts
47- # points to the filename and byobu matches against this to know which backend
48- # to start with
49- file=".$(basename $i)"
50- mv $i $out/bin/$file
51- makeWrapper "$out/bin/$file" "$out/bin/$(basename $i)" --argv0 $(basename $i) \
52- --set BYOBU_PATH ${lib.escapeShellArg (lib.makeBinPath [ vim bc ])} \
53- --set BYOBU_PYTHON "${pythonEnv}/bin/python"
54- done
55- '';
56-57- meta = with lib; {
58- homepage = "https://launchpad.net/byobu/";
59- description = "Text-based window manager and terminal multiplexer";
60-61- longDescription =
62- ''Byobu is a GPLv3 open source text-based window manager and terminal multiplexer.
63- It was originally designed to provide elegant enhancements to the otherwise functional,
64- plain, practical GNU Screen, for the Ubuntu server distribution.
65- Byobu now includes an enhanced profiles, convenient keybindings,
66- configuration utilities, and toggle-able system status notifications for both
67- the GNU Screen window manager and the more modern Tmux terminal multiplexer,
68- and works on most Linux, BSD, and Mac distributions.
69- '';
70-71- license = licenses.gpl3;
72-73- platforms = platforms.unix;
74- maintainers = with maintainers; [ qknight berbiche ];
75- };
76-}
···669 });
670671 packageAliases = {
672- linux_default = packages.linux_6_1;
673 # Update this when adding the newest kernel major version!
674 linux_latest = packages.linux_6_7;
675 linux_mptcp = throw "'linux_mptcp' has been moved to https://github.com/teto/mptcp-flake";
···669 });
670671 packageAliases = {
672+ linux_default = packages.linux_6_6;
673 # Update this when adding the newest kernel major version!
674 linux_latest = packages.linux_6_7;
675 linux_mptcp = throw "'linux_mptcp' has been moved to https://github.com/teto/mptcp-flake";