update nixos
This commit is contained in:
Generated
+27
-45
@@ -61,17 +61,17 @@
|
||||
},
|
||||
"claude-code": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
],
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786159714,
|
||||
"narHash": "sha256-Rm3yXcjHmoebdRA35SVy/AM9PsckDPPJkY+xGodiIHQ=",
|
||||
"lastModified": 1786403413,
|
||||
"narHash": "sha256-SXErjFOkqgf5UgA/aH31VSncbWAbF1qYpbRKKxJWGSk=",
|
||||
"owner": "sadjow",
|
||||
"repo": "claude-code-nix",
|
||||
"rev": "9bf9ac959eaee3b06d6ef13f18a711ae64a581b4",
|
||||
"rev": "b16562174ada2407616943aea88f278b5a2cef71",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -199,24 +199,6 @@
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"locked": {
|
||||
"lastModified": 1634851050,
|
||||
"narHash": "sha256-N83GlSGPJJdcqhUxSCS/WwW5pksYf3VP1M13cDRTSVA=",
|
||||
@@ -260,11 +242,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786286733,
|
||||
"narHash": "sha256-7dN93WKkEERgutPtTjK7SY3ZarO2LAU33A1+vKu+7cc=",
|
||||
"lastModified": 1786356609,
|
||||
"narHash": "sha256-ou8fYz5w9yhXC8YbvvExybFIa19MyW5G/8dEPqa90hM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "367f7ef80856d18438953d54dda235d42a46ba31",
|
||||
"rev": "c30c7955cec30d664a9baced6bc0112e263d4647",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -305,11 +287,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786298656,
|
||||
"narHash": "sha256-umhXwAI7ydg3wZljvqKzioIj2KkPQ8Pu9TWgtWxeL8A=",
|
||||
"lastModified": 1786473048,
|
||||
"narHash": "sha256-QoH+hZKwP9/kEJrl02zJDq8821XGSvYY3MIQgkDVDk8=",
|
||||
"owner": "xddxdd",
|
||||
"repo": "nix-cachyos-kernel",
|
||||
"rev": "d3fe12a5e8a845e35770a3f4796a59bffb16f31a",
|
||||
"rev": "0a8acbc03e3b4eaa05d478d675a8dc4362f03fea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -341,11 +323,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786303337,
|
||||
"narHash": "sha256-qYiFJw0ggHZqz0C2x68VG4wep/fT8OqFv+4EUboPv8c=",
|
||||
"lastModified": 1786469201,
|
||||
"narHash": "sha256-dlqgQ74gX1lhu/D4PuFV+tWLNt0L3DJehwbjlm9undM=",
|
||||
"owner": "sudosubin",
|
||||
"repo": "nix-skills",
|
||||
"rev": "87d4ce3e782ce163e742e2ff99d54cb4f0bb5b33",
|
||||
"rev": "e98df28d3e7840f532c6886801a87a7624fafaf2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -384,11 +366,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1785232496,
|
||||
"narHash": "sha256-65EQYIRRpTdpH8lUiB6Mvo5uBkG60aBIzAJuALfx+O0=",
|
||||
"lastModified": 1786437054,
|
||||
"narHash": "sha256-I++HzBBAgQ17UaLVU6aSm1/7LDo6c9xr8rAbpByWywE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "2e790b0a6be8ec2b76174ac0931b8ff11919ec98",
|
||||
"rev": "6ed13b1d888d5cb07dbb0723eb1df86bbacd0b9c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -400,11 +382,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1786237299,
|
||||
"narHash": "sha256-TdOIVJTuJ2eGUbjgXWe0X3Kbp6rR98V/2uRVAtKTHqs=",
|
||||
"lastModified": 1786463514,
|
||||
"narHash": "sha256-lDVA1kYvHuXlcwnBss5Ws70qskNSIwaDLhI9+MIEyiM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "60c768b1d7043edb84f25e2880ab2bd8327f6cfa",
|
||||
"rev": "5c406c24ab27a146b8321f419a5536e3cf6842a0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -416,11 +398,11 @@
|
||||
},
|
||||
"nixpkgs-2605": {
|
||||
"locked": {
|
||||
"lastModified": 1786201459,
|
||||
"narHash": "sha256-CiOTEjmwAmG2AWnaIno9YaCJJmpca2FXPhMAsnrolCg=",
|
||||
"lastModified": 1786313170,
|
||||
"narHash": "sha256-9BG7OgUWdu0ONDO5X2q6+K4bsuBITkX/3W4nNJu1Ito=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "8b8c811c7c2541c30382c5de7ed26be055569c60",
|
||||
"rev": "fcb8fcd6bf2d0adecae5bd491afaaaf8311b758d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -463,11 +445,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1786106723,
|
||||
"narHash": "sha256-zDSUbpoeo/9ZmD2+wXnzxoo1+uhL8vxc0b8yuYMKYq0=",
|
||||
"lastModified": 1786384358,
|
||||
"narHash": "sha256-RzPPiWeUtuvymnpuEWsdtzli5w4kjZs49FqEs3/1u+I=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f13ff45afd1bb73e640eaa08a7066dbed07e3238",
|
||||
"rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -495,7 +477,7 @@
|
||||
"peerix": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
|
||||
@@ -223,6 +223,7 @@ in
|
||||
services.ananicy = {
|
||||
enable = true;
|
||||
package = pkgs.ananicy-cpp;
|
||||
rulesProvider = pkgs.ananicy-cpp;
|
||||
extraRules = [
|
||||
{ name = "easyeffects"; type = "Audio"; nice = -12; }
|
||||
];
|
||||
|
||||
+2
-2
@@ -9,8 +9,8 @@
|
||||
# Used via networking.networkmanager.package — does not replace pkgs.networkmanager globally.
|
||||
# Remove once nixpkgs ships networkmanager >= 1.58 stable.
|
||||
networkmanager-clat = assert final.lib.assertMsg
|
||||
(final.lib.versionOlder prev.networkmanager.version "1.58")
|
||||
"nixpkgs now ships NetworkManager ${prev.networkmanager.version} >= 1.58 — remove the override in overlays/pkgs.nix and pkgs/networkmanager-dev/";
|
||||
(final.lib.versionOlder prev.networkmanager.version "1.59")
|
||||
"nixpkgs now ships NetworkManager ${prev.networkmanager.version} >= 1.59 — remove the override in overlays/pkgs.nix and pkgs/networkmanager-dev/ if the patches are no longer needed";
|
||||
prev.callPackage ../pkgs/networkmanager-dev/package.nix { };
|
||||
})
|
||||
]
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 61c025b9d7..d2ae60da34 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -1025,9 +1025,9 @@ meson.add_install_script(
|
||||
join_paths('tools', 'meson-post-install.sh'),
|
||||
nm_datadir,
|
||||
nm_bindir,
|
||||
- nm_pkgconfdir,
|
||||
+ nm_prefix + nm_pkgconfdir,
|
||||
nm_pkglibdir,
|
||||
- nm_pkgstatedir,
|
||||
+ nm_prefix + nm_pkgstatedir,
|
||||
nm_mandir,
|
||||
nm_sysconfdir,
|
||||
enable_docs ? '1' : '0',
|
||||
@@ -1,48 +0,0 @@
|
||||
diff --git a/data/84-nm-drivers.rules b/data/84-nm-drivers.rules
|
||||
index 148acade5c..6395fbfbe5 100644
|
||||
--- a/data/84-nm-drivers.rules
|
||||
+++ b/data/84-nm-drivers.rules
|
||||
@@ -7,6 +7,6 @@ ACTION!="add|change|move", GOTO="nm_drivers_end"
|
||||
# Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?)
|
||||
ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end"
|
||||
DRIVERS=="?*", GOTO="nm_drivers_end"
|
||||
-PROGRAM="/bin/sh -c '/usr/sbin/ethtool -i $$1 |/usr/bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", ENV{ID_NET_DRIVER}="%c"
|
||||
+PROGRAM="@runtimeShell@ -c '@ethtool@/bin/ethtool -i $$1 |@gnused@/bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", ENV{ID_NET_DRIVER}="%c"
|
||||
|
||||
LABEL="nm_drivers_end"
|
||||
diff --git a/src/libnmc-base/nm-vpn-helpers.c b/src/libnmc-base/nm-vpn-helpers.c
|
||||
index cbe76f5f1c..6ec684f9fe 100644
|
||||
--- a/src/libnmc-base/nm-vpn-helpers.c
|
||||
+++ b/src/libnmc-base/nm-vpn-helpers.c
|
||||
@@ -284,15 +284,6 @@ nm_vpn_openconnect_authenticate_helper(NMSettingVpn *s_vpn, GPtrArray *secrets,
|
||||
const char *const *iter;
|
||||
const char *path;
|
||||
const char *opt;
|
||||
- const char *const DEFAULT_PATHS[] = {
|
||||
- "/sbin/",
|
||||
- "/usr/sbin/",
|
||||
- "/usr/local/sbin/",
|
||||
- "/bin/",
|
||||
- "/usr/bin/",
|
||||
- "/usr/local/bin/",
|
||||
- NULL,
|
||||
- };
|
||||
const char *oc_argv[(12 + 2 * G_N_ELEMENTS(oc_property_args))];
|
||||
const char *gw;
|
||||
int port;
|
||||
@@ -311,13 +302,8 @@ nm_vpn_openconnect_authenticate_helper(NMSettingVpn *s_vpn, GPtrArray *secrets,
|
||||
|
||||
port = extract_url_port(gw);
|
||||
|
||||
- path = nm_utils_file_search_in_paths("openconnect",
|
||||
- "/usr/sbin/openconnect",
|
||||
- DEFAULT_PATHS,
|
||||
- G_FILE_TEST_IS_EXECUTABLE,
|
||||
- NULL,
|
||||
- NULL,
|
||||
- error);
|
||||
+ path = g_find_program_in_path("openconnect");
|
||||
+
|
||||
if (!path)
|
||||
return FALSE;
|
||||
|
||||
@@ -2,242 +2,14 @@
|
||||
# Required for IPv6-mostly / RFC 8925 + RFC 6877 on NixOS until 1.58 stable lands in nixpkgs.
|
||||
# Remove this override once nixpkgs ships networkmanager >= 1.58.
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
replaceVars,
|
||||
gettext,
|
||||
pkg-config,
|
||||
dbus,
|
||||
gitUpdater,
|
||||
libuuid,
|
||||
polkit,
|
||||
gnutls,
|
||||
ppp,
|
||||
dhcpcd,
|
||||
iptables,
|
||||
nftables,
|
||||
python3,
|
||||
vala,
|
||||
libgcrypt,
|
||||
dnsmasq,
|
||||
bluez5,
|
||||
readline,
|
||||
libselinux,
|
||||
audit,
|
||||
gobject-introspection,
|
||||
perl,
|
||||
modemmanager,
|
||||
openresolv,
|
||||
libndp,
|
||||
newt,
|
||||
ethtool,
|
||||
gnused,
|
||||
iputils,
|
||||
kmod,
|
||||
jansson,
|
||||
elfutils,
|
||||
gtk-doc,
|
||||
libxslt,
|
||||
docbook_xsl,
|
||||
docbook_xml_dtd_412,
|
||||
docbook_xml_dtd_42,
|
||||
docbook_xml_dtd_43,
|
||||
curl,
|
||||
meson,
|
||||
mesonEmulatorHook,
|
||||
ninja,
|
||||
bpftools,
|
||||
llvmPackages,
|
||||
libbpf,
|
||||
libnvme,
|
||||
libpsl,
|
||||
mobile-broadband-provider-info,
|
||||
runtimeShell,
|
||||
buildPackages,
|
||||
nixosTests,
|
||||
systemd,
|
||||
slang,
|
||||
udev,
|
||||
udevCheckHook,
|
||||
withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd,
|
||||
withNbft ? false,
|
||||
networkmanager
|
||||
}:
|
||||
|
||||
let
|
||||
pythonForDocs = python3.pythonOnBuildForHost.withPackages (pkgs: with pkgs; [ pygobject3 ]);
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "networkmanager";
|
||||
version = "1.58.0";
|
||||
|
||||
src = fetchurl {
|
||||
# Use the stable release tarball (not the git archive) — GitLab git archives are not content-stable.
|
||||
url = "https://gitlab.freedesktop.org/api/v4/projects/411/packages/generic/NetworkManager/${finalAttrs.version}/NetworkManager-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-DG8nA6LJsBfNaPv+HS6KGl1/8FE3x1HsQhy6NulFRro=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
"devdoc"
|
||||
"man"
|
||||
"doc"
|
||||
];
|
||||
|
||||
mesonFlags = [
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
(lib.mesonOption "systemdsystemunitdir" (
|
||||
if withSystemd then "${placeholder "out"}/etc/systemd/system" else "no"
|
||||
))
|
||||
"-Dudev_dir=${placeholder "out"}/lib/udev"
|
||||
"-Ddbus_conf_dir=${placeholder "out"}/share/dbus-1/system.d"
|
||||
"-Dkernel_firmware_dir=/run/current-system/firmware"
|
||||
|
||||
"-Dmodprobe=${kmod}/bin/modprobe"
|
||||
(lib.mesonOption "session_tracking" (if withSystemd then "systemd" else "no"))
|
||||
(lib.mesonBool "systemd_journal" withSystemd)
|
||||
"-Dlibaudit=yes-disabled-by-default"
|
||||
"-Dpolkit_agent_helper_1=/run/wrappers/bin/polkit-agent-helper-1"
|
||||
|
||||
"-Diwd=true"
|
||||
"-Dpppd=${ppp}/bin/pppd"
|
||||
"-Diptables=${iptables}/bin/iptables"
|
||||
"-Dnft=${nftables}/bin/nft"
|
||||
"-Dmodem_manager=true"
|
||||
"-Dnmtui=true"
|
||||
"-Ddnsmasq=${dnsmasq}/bin/dnsmasq"
|
||||
"-Dqt=false"
|
||||
(lib.mesonBool "nbft" withNbft)
|
||||
|
||||
"-Dresolvconf=${openresolv}/bin/resolvconf"
|
||||
"-Ddhcpcd=${dhcpcd}/bin/dhcpcd"
|
||||
|
||||
"-Ddocs=${lib.boolToString (stdenv.buildPlatform == stdenv.hostPlatform)}"
|
||||
"-Dman=${lib.boolToString (stdenv.buildPlatform == stdenv.hostPlatform)}"
|
||||
"-Dtests=no"
|
||||
"-Dcrypto=gnutls"
|
||||
"-Dmobile_broadband_provider_info_database=${mobile-broadband-provider-info}/share/mobile-broadband-provider-info/serviceproviders.xml"
|
||||
];
|
||||
|
||||
patches = [
|
||||
(replaceVars ./fix-paths.patch {
|
||||
inherit
|
||||
ethtool
|
||||
gnused
|
||||
;
|
||||
inherit runtimeShell;
|
||||
})
|
||||
./fix-install-paths.patch
|
||||
networkmanager.overrideAttrs (old: {
|
||||
patches = old.patches ++ [
|
||||
# CLAT prefix selection ignores RFC 6724 rule 3 (avoid deprecated addresses):
|
||||
# a deprecated prefix (preferred lifetime 0) can win the selection and break
|
||||
# CLAT with an unroutable source address. Report upstream, then drop this.
|
||||
./clat-skip-deprecated-prefixes.patch
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
(if withSystemd then systemd else udev)
|
||||
libselinux
|
||||
audit
|
||||
libpsl
|
||||
libuuid
|
||||
polkit
|
||||
ppp
|
||||
libndp
|
||||
curl
|
||||
mobile-broadband-provider-info
|
||||
bluez5
|
||||
dnsmasq
|
||||
modemmanager
|
||||
readline
|
||||
newt
|
||||
jansson
|
||||
dbus
|
||||
libbpf
|
||||
slang
|
||||
]
|
||||
++ lib.optionals withNbft [
|
||||
libnvme
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
gnutls
|
||||
libgcrypt
|
||||
];
|
||||
|
||||
# Disable hardening flags that break clang -target bpf (CLAT BPF compilation).
|
||||
# Same workaround as nixpkgs systemd package.
|
||||
hardeningDisable = [ "zerocallusedregs" "shadowstack" "pacret" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
gettext
|
||||
pkg-config
|
||||
# BPF compiler for CLAT/464XLAT — must use buildPackages to avoid splicing issues
|
||||
bpftools
|
||||
buildPackages.llvmPackages.clang
|
||||
buildPackages.llvmPackages.libllvm
|
||||
vala
|
||||
gobject-introspection
|
||||
perl
|
||||
elfutils
|
||||
gtk-doc
|
||||
libxslt
|
||||
docbook_xsl
|
||||
docbook_xml_dtd_412
|
||||
docbook_xml_dtd_42
|
||||
docbook_xml_dtd_43
|
||||
pythonForDocs
|
||||
udevCheckHook
|
||||
]
|
||||
++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
|
||||
mesonEmulatorHook
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs ./tools
|
||||
patchShebangs libnm/generate-setting-docs.py
|
||||
|
||||
# TODO: submit upstream
|
||||
substituteInPlace meson.build \
|
||||
--replace "'vala', req" "'vala', native: false, req"
|
||||
''
|
||||
+ lib.optionalString withSystemd ''
|
||||
substituteInPlace data/NetworkManager.service.in \
|
||||
--replace-fail /usr/bin/busctl ${systemd}/bin/busctl
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
mkdir -p ${placeholder "out"}/lib
|
||||
ln -s $PWD/src/libnm-client-impl/libnm.so.0 ${placeholder "out"}/lib/libnm.so.0
|
||||
'';
|
||||
|
||||
postFixup = lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
|
||||
cp -r ${buildPackages.networkmanager.devdoc} $devdoc
|
||||
cp -r ${buildPackages.networkmanager.man} $man
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru = {
|
||||
tests = {
|
||||
inherit (nixosTests.networking) networkmanager;
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://networkmanager.dev";
|
||||
description = "Network configuration and management tool (1.58.0 with CLAT/ipv6-mostly support)";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = with lib.maintainers; [ obadz ];
|
||||
teams = [ lib.teams.freedesktop ];
|
||||
platforms = lib.platforms.linux;
|
||||
badPlatforms = [
|
||||
lib.systems.inspect.platformPatterns.isStatic
|
||||
];
|
||||
};
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user