mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-09-15 20:00:19 +00:00
staging-nixos merge for 2026-09-14 (#563195)
This commit is contained in:
@@ -84,7 +84,7 @@ let
|
||||
# If you prefer a stable release instead, you can change the word unstable to the latest number shown here: https://nixos.org/download
|
||||
# i.e. nixos-24.11
|
||||
# Use `nix flake update` to update the flake to the latest revision of the chosen release channel.
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nixpkgs.url = "https://channels.nixos.org/nixos-unstable/nixexprs.tar.zst";
|
||||
};
|
||||
outputs = inputs\@{ self, nixpkgs, ... }: {
|
||||
# NOTE: '${options.networking.hostName.default}' is the default hostname
|
||||
|
||||
@@ -24,6 +24,8 @@ let
|
||||
|
||||
hostPkgs = cfg.host.pkgs;
|
||||
|
||||
useVirtiofs = hostPkgs.stdenv.hostPlatform.isLinux;
|
||||
|
||||
consoles = lib.concatMapStringsSep " " (c: "console=${c}") cfg.qemu.consoles;
|
||||
|
||||
driveOptions =
|
||||
@@ -324,23 +326,25 @@ let
|
||||
''
|
||||
)}
|
||||
|
||||
echo "Starting virtiofs daemons..."
|
||||
NIX_VIRTIOFS_DIR=$(mktemp -d)
|
||||
${lib.concatLines (
|
||||
lib.mapAttrsToList (tag: share: ''
|
||||
${lib.getExe hostPkgs.virtiofsd} \
|
||||
--socket-path="$NIX_VIRTIOFS_DIR"/"${tag}" \
|
||||
--shared-dir="${share.source}" \
|
||||
${if share.writable then "--writeback" else "--readonly"} \
|
||||
--sandbox=none \
|
||||
--seccomp=none \
|
||||
--cache=always \
|
||||
--no-announce-submounts \
|
||||
--translate-uid=host:65534:0:1 \
|
||||
--translate-gid=host:65534:0:1 \
|
||||
&
|
||||
'') cfg.sharedDirectories
|
||||
)}
|
||||
${lib.optionalString useVirtiofs ''
|
||||
echo "Starting virtiofs daemons..."
|
||||
NIX_VIRTIOFS_DIR=$(mktemp -d)
|
||||
${lib.concatLines (
|
||||
lib.mapAttrsToList (tag: share: ''
|
||||
${lib.getExe hostPkgs.virtiofsd} \
|
||||
--socket-path="$NIX_VIRTIOFS_DIR"/"${tag}" \
|
||||
--shared-dir="${share.source}" \
|
||||
${if share.writable then "--writeback" else "--readonly"} \
|
||||
--sandbox=none \
|
||||
--seccomp=none \
|
||||
--cache=always \
|
||||
--no-announce-submounts \
|
||||
--translate-uid=host:65534:0:1 \
|
||||
--translate-gid=host:65534:0:1 \
|
||||
&
|
||||
'') cfg.sharedDirectories
|
||||
)}
|
||||
''}
|
||||
|
||||
# Start QEMU.
|
||||
exec ${
|
||||
@@ -437,11 +441,11 @@ in
|
||||
(mkRemovedOptionModule [
|
||||
"virtualisation"
|
||||
"msize"
|
||||
] "9p was replaced with virtiofs and thus this option is obsolete.")
|
||||
] "The 9p msize is no longer configurable.")
|
||||
(mkRemovedOptionModule [
|
||||
"virtualisation"
|
||||
"nixStore9pCache"
|
||||
] "9p was replaced with virtiofs and thus this option is obsolete.")
|
||||
] "The 9p cache mode for the Nix store is no longer configurable.")
|
||||
];
|
||||
|
||||
options = {
|
||||
@@ -592,8 +596,9 @@ in
|
||||
};
|
||||
description = ''
|
||||
An attributes set of directories that will be shared with the
|
||||
virtual machine using VirtFS (9P filesystem over VirtIO).
|
||||
The attribute name will be used as the 9P mount tag.
|
||||
virtual machine using virtiofs on Linux hosts and VirtFS (9P filesystem
|
||||
over VirtIO) on other hosts. The attribute name will be used as the
|
||||
mount tag.
|
||||
'';
|
||||
};
|
||||
|
||||
@@ -1278,10 +1283,20 @@ in
|
||||
"-machine memory-backend=mem0"
|
||||
])
|
||||
(lib.flatten (
|
||||
lib.mapAttrsToList (tag: share: [
|
||||
"-chardev socket,id=${tag},path=$NIX_VIRTIOFS_DIR/${tag}"
|
||||
"-device vhost-user-fs-pci,chardev=${tag},tag=${tag}"
|
||||
]) cfg.sharedDirectories
|
||||
lib.mapAttrsToList (
|
||||
tag: share:
|
||||
if useVirtiofs then
|
||||
[
|
||||
"-chardev socket,id=${tag},path=$NIX_VIRTIOFS_DIR/${tag}"
|
||||
"-device vhost-user-fs-pci,chardev=${tag},tag=${tag}"
|
||||
]
|
||||
else
|
||||
[
|
||||
"-virtfs local,path=${share.source},security_model=none,mount_tag=${tag}${
|
||||
lib.optionalString (!share.writable) ",readonly=on"
|
||||
}"
|
||||
]
|
||||
) cfg.sharedDirectories
|
||||
))
|
||||
(
|
||||
let
|
||||
@@ -1373,9 +1388,20 @@ in
|
||||
name = share.target;
|
||||
value = {
|
||||
device = tag;
|
||||
fsType = "virtiofs";
|
||||
fsType = if useVirtiofs then "virtiofs" else "9p";
|
||||
neededForBoot = true;
|
||||
options = lib.mkIf (!share.writable) [ "ro" ];
|
||||
options =
|
||||
if useVirtiofs then
|
||||
lib.mkIf (!share.writable) [ "ro" ]
|
||||
else
|
||||
[
|
||||
"trans=virtio"
|
||||
"version=9p2000.L"
|
||||
"msize=16384"
|
||||
"x-systemd.requires=modprobe@9pnet_virtio.service"
|
||||
]
|
||||
++ lib.optional (tag == "nix-store") "cache=loose"
|
||||
++ lib.optional (!share.writable) "ro";
|
||||
};
|
||||
}) cfg.sharedDirectories)
|
||||
{
|
||||
@@ -1488,8 +1514,6 @@ in
|
||||
(isEnabled "VIRTIO_PCI")
|
||||
(isEnabled "VIRTIO_NET")
|
||||
(isEnabled "EXT4_FS")
|
||||
(isEnabled "NET_9P_VIRTIO")
|
||||
(isEnabled "9P_FS")
|
||||
(isYes "BLK_DEV")
|
||||
(isYes "PCI")
|
||||
(isYes "NETDEVICES")
|
||||
@@ -1497,6 +1521,15 @@ in
|
||||
(isYes "INET")
|
||||
(isYes "NETWORK_FILESYSTEMS")
|
||||
]
|
||||
++ (
|
||||
if useVirtiofs then
|
||||
[ (isEnabled "VIRTIO_FS") ]
|
||||
else
|
||||
[
|
||||
(isEnabled "NET_9P_VIRTIO")
|
||||
(isEnabled "9P_FS")
|
||||
]
|
||||
)
|
||||
++ optionals (!cfg.graphics) [
|
||||
(isYes "SERIAL_8250_CONSOLE")
|
||||
(isYes "SERIAL_8250")
|
||||
|
||||
@@ -32,18 +32,18 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "bcachefs-tools";
|
||||
version = "1.39.5";
|
||||
version = "1.39.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "koverstreet";
|
||||
repo = "bcachefs-tools";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-k9JW6GMXFwphkYGcYMwA59uafNj0EV96wTnbzeuVM1w=";
|
||||
hash = "sha256-cBYn/g6eLT5rTumo4Y24rWSHS2Sc7gFthPuCg1AQ22k=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
inherit (finalAttrs) src;
|
||||
hash = "sha256-hbh4+vpZtVpda2yVZK+fkdPXWd5+GYLbWYPfJsYtPfM=";
|
||||
hash = "sha256-djiIwZie9HjQ/+bCEGniMFkJA66oI0n+9y9Iax4GHOM=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ruff";
|
||||
version = "0.16.6";
|
||||
version = "0.16.7";
|
||||
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -24,12 +24,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
owner = "astral-sh";
|
||||
repo = "ruff";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-D4/bCgMlaa+hBp9exisCuab6h2aJXxdj014qE1+60JM=";
|
||||
hash = "sha256-djWM6RWAgMpvRnuRyyAAjb7OmfVB+whyB3q35C8z1u8=";
|
||||
};
|
||||
|
||||
cargoBuildFlags = [ "--package=ruff" ];
|
||||
|
||||
cargoHash = "sha256-GCsUqGuWXfP9WiCzq20Xjl70mXv8a1RtvUg1+IK3TKo=";
|
||||
cargoHash = "sha256-EknMZ4fuWJs0/iB+AkX4ZLMY9E6DAxk+k2tKtTbA1yo=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -5,38 +5,38 @@
|
||||
"lts": false
|
||||
},
|
||||
"6.1": {
|
||||
"version": "6.1.187",
|
||||
"hash": "sha256:0av4fcw3hv4pfql85s2rirxj7hkdr2kdasj219kwl257xa57jvhv",
|
||||
"version": "6.1.188",
|
||||
"hash": "sha256:0fm3048h1c98gxhpwjprjc2jkrhhwaac1vw91hikbhh72g5hlkgd",
|
||||
"lts": true
|
||||
},
|
||||
"5.15": {
|
||||
"version": "5.15.220",
|
||||
"hash": "sha256:08v7mbwvfgy9vv60j2ssdks4ss218p27rkwwrmjch2hj0ljrkcmm",
|
||||
"version": "5.15.221",
|
||||
"hash": "sha256:130ll4gnj2779kpx8x4r6v28vnwjn4qdw9ksaq3f5vr8wphq4y60",
|
||||
"lts": true
|
||||
},
|
||||
"5.10": {
|
||||
"version": "5.10.269",
|
||||
"hash": "sha256:1sf6iikwr9rikdi097xplz7yw1jj4cx6ldng7gzp8rj0360icnlw",
|
||||
"version": "5.10.270",
|
||||
"hash": "sha256:1rzb9ms2v04gwwka7d8byaxrcfymlikslq36p1p1zsabn0ldawyy",
|
||||
"lts": true
|
||||
},
|
||||
"6.6": {
|
||||
"version": "6.6.156",
|
||||
"hash": "sha256:07a1dyaxmcv289r0n4agna2li2rfsjdld8279cs18jmg9r52dqmf",
|
||||
"version": "6.6.157",
|
||||
"hash": "sha256:0c4c42qzr2vcbqglb9vq5q5vqv4mbqasq1n93j3vf288cg846jmp",
|
||||
"lts": true
|
||||
},
|
||||
"6.12": {
|
||||
"version": "6.12.109",
|
||||
"hash": "sha256:1yp370f2y5czvq24xqply8f6a14gnpjqkfmfyhcm1q9lld9fb12l",
|
||||
"version": "6.12.110",
|
||||
"hash": "sha256:0k2w1lr3h1d814707vfmj826gaz67a9n3msla96zzdlvhghikvlc",
|
||||
"lts": true
|
||||
},
|
||||
"6.18": {
|
||||
"version": "6.18.51",
|
||||
"hash": "sha256:04znimsjfimxxaarzaksn4jvkj1xr5ba7yh1j691ykdzb3w60bxs",
|
||||
"version": "6.18.52",
|
||||
"hash": "sha256:1f11had1amrvhl5f606ikc9ykrlyf0rvln8rkf2hrsjggm7mcs9b",
|
||||
"lts": true
|
||||
},
|
||||
"7.2": {
|
||||
"version": "7.2.5",
|
||||
"hash": "sha256:0y1bcg3pg6zm59bjfrgh1bsy68kxjy9vvxygdzcxmn95hggz1pam",
|
||||
"version": "7.2.6",
|
||||
"hash": "sha256:01pnc344dx239hkfl84hpfdpm7gc08yzrz7llgnlm6dhya2fz6h3",
|
||||
"lts": false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -138,6 +138,7 @@ let
|
||||
jobs.stdenv.aarch64-darwin
|
||||
jobs.vim.aarch64-darwin
|
||||
jobs.cachix.aarch64-darwin
|
||||
jobs.darwin.linux-builder.aarch64-darwin
|
||||
|
||||
# UI apps
|
||||
# jobs.firefox-unwrapped.aarch64-darwin
|
||||
@@ -220,6 +221,7 @@ let
|
||||
jobs.vim.aarch64-darwin
|
||||
jobs.inkscape.aarch64-darwin
|
||||
jobs.qt5.qtmultimedia.aarch64-darwin
|
||||
jobs.darwin.linux-builder.aarch64-darwin
|
||||
/*
|
||||
jobs.tests.cc-wrapper.default.aarch64-darwin
|
||||
jobs.tests.cc-wrapper.llvmPackages.clang.aarch64-darwin
|
||||
|
||||
Reference in New Issue
Block a user