diff options
Diffstat (limited to 'pkgs/os-specific')
133 files changed, 982 insertions, 578 deletions
diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index 2d51c11f04a..6d01bff3b3e 100644 --- a/pkgs/os-specific/bsd/netbsd/default.nix +++ b/pkgs/os-specific/bsd/netbsd/default.nix @@ -1,4 +1,4 @@ -{ stdenv, stdenvNoCC, fetchcvs, lib, groff, mandoc, zlib, yacc, flex +{ stdenv, stdenvNoCC, fetchcvs, lib, groff, mandoc, zlib, bison, flex , writeText, buildPackages, splicePackages, symlinkJoin }: let @@ -61,7 +61,7 @@ let builder = ./builder.sh; meta = with lib; { - maintainers = with maintainers; [matthewbauer]; + maintainers = with maintainers; [ matthewbauer qyliss ]; platforms = platforms.unix; license = licenses.bsd2; }; @@ -484,13 +484,6 @@ let ''; }; - libkern = mkDerivation { - path = "lib/libkern"; - version = "8.0"; - sha256 = "1wirqr9bms69n4b5sr32g1b1k41hcamm7c9n7i8c440m73r92yv4"; - meta.platforms = lib.platforms.netbsd; - }; - column = mkDerivation { path = "usr.bin/column"; version = "8.0"; @@ -563,7 +556,7 @@ let sha256 = "0630lbvz6v4ic13bfg8ccwfhqkgcv76bfdw9f36rfsnwfgpxqsmq"; meta.platforms = lib.platforms.netbsd; nativeBuildInputs = [ makeMinimal install mandoc groff flex - yacc genassym gencat lorder tsort stat ]; + bison genassym gencat lorder tsort stat ]; extraPaths = [ sys.src ld_elf_so.src ]; }; @@ -587,7 +580,7 @@ let librpcsvc.src libutil.src librt.src libcrypt.src ]; buildInputs = [ buildPackages.netbsd.headers csu ]; nativeBuildInputs = [ makeMinimal install mandoc groff flex - yacc genassym gencat lorder tsort stat ]; + bison genassym gencat lorder tsort stat ]; NIX_CFLAGS_COMPILE = "-B${csu}/lib"; meta.platforms = lib.platforms.netbsd; SHLIBINSTALLDIR = "$(out)/lib"; @@ -664,7 +657,7 @@ let path = "share/man"; noCC = true; version = "8.0"; - sha256 = "0d34b3irjbqsqfk8v8aaj36fjyvwyx410igl26jcx2ryh3ispch0"; + sha256 = "0yp48syf3y5psm0mymxp6va6spym5izjym0ybr628iqwji21cqdz"; makeFlags = [ "FILESDIR=$(out)/share" ]; }; # diff --git a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix index 4855c532acb..b4c28e23c14 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix @@ -1,4 +1,4 @@ -{ lib, appleDerivation, fetchzip, bsdmake, perl, flex, yacc +{ lib, appleDerivation, fetchzip, bsdmake, perl, flex, bison }: # this derivation sucks @@ -16,7 +16,7 @@ let recentAdvCmds = fetchzip { }; in appleDerivation { - nativeBuildInputs = [ bsdmake perl yacc flex ]; + nativeBuildInputs = [ bsdmake perl bison flex ]; buildInputs = [ flex ]; patchPhase = '' diff --git a/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix index 5ac971d02f7..800da92dae9 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix @@ -1,7 +1,7 @@ -{ lib, stdenv, appleDerivation, yacc, flex }: +{ lib, stdenv, appleDerivation, bison, flex }: appleDerivation { - nativeBuildInputs = [ yacc flex ]; + nativeBuildInputs = [ bison flex ]; buildPhase = '' cd migcom.tproj diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix index 23434931542..3e431810f20 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix @@ -1,9 +1,6 @@ -{ lib, stdenv, fetchurl, fetchzip, pkgs }: +{ lib, stdenv, stdenvNoCC, fetchurl, fetchzip, pkgs }: let - macosPackages_11_0_1 = import ./macos-11.0.1.nix { inherit applePackage'; }; - developerToolsPackages_11_3_1 = import ./developer-tools-11.3.1.nix { inherit applePackage'; }; - # This attrset can in theory be computed automatically, but for that to work nicely we need # import-from-derivation to work properly. Currently it's rather ugly when we try to bootstrap # a stdenv out of something like this. With some care we can probably get rid of this, but for @@ -190,17 +187,6 @@ let }) // (attrs.meta or {}); }); - applePackage' = namePath: version: sdkName: sha256: let - pname = builtins.head (lib.splitString "/" namePath); - appleDerivation = appleDerivation' pname version sdkName sha256; - callPackage = pkgs.newScope (packages // pkgs.darwin // { inherit appleDerivation; }); - in callPackage (./. + "/${namePath}"); - - applePackage = namePath: sdkName: sha256: let - pname = builtins.head (lib.splitString "/" namePath); - version = versions.${sdkName}.${pname}; - in applePackage' namePath version sdkName sha256; - IOKitSpecs = { IOAudioFamily = fetchApple "osx-10.10.5" "0ggq7za3iq8g02j16rj67prqhrw828jsw3ah3bxq8a1cvr55aqnq"; IOFireWireFamily = fetchApple "osx-10.10.5" "059qa1m668kwvchl90cqcx35b31zaqdg61zi11y1imn5s389y2g1"; @@ -225,11 +211,35 @@ let IOKitSrcs = lib.mapAttrs (name: value: if lib.isFunction value then value name else value) IOKitSpecs; +in + +# darwin package set +self: + +let + macosPackages_11_0_1 = import ./macos-11.0.1.nix { inherit applePackage'; }; + developerToolsPackages_11_3_1 = import ./developer-tools-11.3.1.nix { inherit applePackage'; }; + + applePackage' = namePath: version: sdkName: sha256: + let + pname = builtins.head (lib.splitString "/" namePath); + appleDerivation = appleDerivation' pname version sdkName sha256; + callPackage = self.newScope { inherit appleDerivation; }; + in callPackage (./. + "/${namePath}"); + + applePackage = namePath: sdkName: sha256: let + pname = builtins.head (lib.splitString "/" namePath); + version = versions.${sdkName}.${pname}; + in applePackage' namePath version sdkName sha256; + # Only used for bootstrapping. It’s convenient because it was the last version to come with a real makefile. adv_cmds-boot = applePackage "adv_cmds/boot.nix" "osx-10.5.8" "102ssayxbg9wb35mdmhswbnw0bg7js3pfd8fcbic83c5q3bqa6c6" {}; - # TODO: shorten this list, we should cut down to a minimum set of bootstrap or necessary packages here. - stubPackages = { +in + +developerToolsPackages_11_3_1 // macosPackages_11_0_1 // { + # TODO: shorten this list, we should cut down to a minimum set of bootstrap or necessary packages here. + inherit (adv_cmds-boot) ps locale; architecture = applePackage "architecture" "osx-10.11.6" "1pbpjcd7is69hn8y29i98ci0byik826if8gnp824ha92h90w0fq3" {}; bsdmake = applePackage "bsdmake" "dev-tools-3.2.6" "11a9kkhz5bfgi1i8kpdkis78lhc6b5vxmhd598fcdgra1jw4iac2" {}; @@ -290,7 +300,4 @@ let # TODO(matthewbauer): # To be removed, once I figure out how to build a newer Security version. Security = applePackage "Security/boot.nix" "osx-10.9.5" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {}; - }; - - packages = developerToolsPackages_11_3_1 // macosPackages_11_0_1 // stubPackages; -in packages +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/file_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/file_cmds/default.nix index 258d9785e70..53f98e2b457 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/file_cmds/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/file_cmds/default.nix @@ -1,8 +1,8 @@ -{ lib, appleDerivation, xcbuildHook, zlib, bzip2, lzma, ncurses, libutil }: +{ lib, appleDerivation, xcbuildHook, zlib, bzip2, xz, ncurses, libutil }: appleDerivation { nativeBuildInputs = [ xcbuildHook ]; - buildInputs = [ zlib bzip2 lzma ncurses libutil ]; + buildInputs = [ zlib bzip2 xz ncurses libutil ]; # some commands not working: # mtree: _simple.h not found diff --git a/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix index 3f0c91db91c..9e3d6e49204 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix @@ -1,14 +1,14 @@ -{ lib, appleDerivation, xcbuildHook, ncurses, bzip2, zlib, lzma }: +{ lib, appleDerivation, xcbuildHook, ncurses, bzip2, zlib, xz }: appleDerivation { nativeBuildInputs = [ xcbuildHook ]; - buildInputs = [ ncurses bzip2 zlib lzma ]; + buildInputs = [ ncurses bzip2 zlib xz ]; # patches to use ncursees # disables md5 patchPhase = '' substituteInPlace text_cmds.xcodeproj/project.pbxproj \ - --replace 'FC6C98FB149A94EB00DDCC47 /* libcurses.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcurses.dylib; path = /usr/lib/libcurses.dylib; sourceTree = "<absolute>"; };' 'FC6C98FB149A94EB00DDCC47 /* libncurses.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libncurses.dylib; path = /usr/lib/libncurses.dylib; sourceTree = "<absolute>"; };' \ + --replace 'FC6C98FB149A94EB00DDCC47 /* libcurses.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcurses.dylib; path = /usr/lib/libcurses.dylib; sourceTree = "<absolute>"; };' 'FC6C98FB149A94EB00DDCC47 /* libncurses.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libncurses.dylib; path = /usr/lib/libncurses.dylib; sourceTree = "<absolute>"; };' \ --replace 'FC7A7EB5149875E00086576A /* PBXTargetDependency */,' "" ''; diff --git a/pkgs/os-specific/darwin/chunkwm/default.nix b/pkgs/os-specific/darwin/chunkwm/default.nix index b326b98de53..c0229ba3ae2 100644 --- a/pkgs/os-specific/darwin/chunkwm/default.nix +++ b/pkgs/os-specific/darwin/chunkwm/default.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation rec { pname = "chunkwm"; version = "0.4.9"; src = fetchzip { - url = "http://github.com/koekeishiya/chunkwm/archive/v${version}.tar.gz"; + url = "https://github.com/koekeishiya/chunkwm/archive/v${version}.tar.gz"; sha256 = "0w8q92q97fdvbwc3qb5w44jn4vi3m65ssdvjp5hh6b7llr17vspl"; }; diff --git a/pkgs/os-specific/darwin/darling/default.nix b/pkgs/os-specific/darwin/darling/default.nix index ef9afafbcd3..22fb6d3b07c 100644 --- a/pkgs/os-specific/darwin/darling/default.nix +++ b/pkgs/os-specific/darwin/darling/default.nix @@ -8,11 +8,22 @@ stdenv.mkDerivation rec { url = "https://github.com/darlinghq/darling/archive/d2cc5fa748003aaa70ad4180fff0a9a85dc65e9b.tar.gz"; sha256 = "11b51fw47nl505h63bgx5kqiyhf3glhp1q6jkpb6nqfislnzzkrf"; postFetch = '' - # Get rid of case conflict - mkdir $out + # The archive contains both `src/opendirectory` and `src/OpenDirectory`, + # pre-create the directory to choose the canonical case on + # case-insensitive filesystems. + mkdir -p $out/src/OpenDirectory + cd $out tar -xzf $downloadedFile --strip-components=1 rm -r $out/src/libm + + # If `src/opendirectory` and `src/OpenDirectory` refer to different + # things, then combine them into `src/OpenDirectory` to match the result + # on case-insensitive filesystems. + if [ "$(stat -c %i src/opendirectory)" != "$(stat -c %i src/OpenDirectory)" ]; then + mv src/opendirectory/* src/OpenDirectory/ + rmdir src/opendirectory + fi ''; }; diff --git a/pkgs/os-specific/darwin/macfuse/default.nix b/pkgs/os-specific/darwin/macfuse/default.nix index 7e1b4ed7763..4fd92a15562 100644 --- a/pkgs/os-specific/darwin/macfuse/default.nix +++ b/pkgs/os-specific/darwin/macfuse/default.nix @@ -56,4 +56,10 @@ stdenv.mkDerivation rec { lgpl2Plus # libfuse ]; }; + + passthru.warning = '' + macFUSE is required for this package to work on macOS. To install macFUSE, + use the installer from the <link xlink:href="https://osxfuse.github.io/"> + project website</link>. + ''; } diff --git a/pkgs/os-specific/darwin/mas/default.nix b/pkgs/os-specific/darwin/mas/default.nix new file mode 100644 index 00000000000..495d47df89f --- /dev/null +++ b/pkgs/os-specific/darwin/mas/default.nix @@ -0,0 +1,44 @@ +{ lib +, stdenv +, fetchurl +, libarchive +, p7zip +}: + +stdenv.mkDerivation rec { + pname = "mas"; + version = "1.8.1"; + + src = fetchurl { + url = "https://github.com/mas-cli/mas/releases/download/v${version}/mas.pkg"; + sha256 = "W/wgg+ETeJPoZ7MoVGH2uJzQiZMLIy3n1JYKUloc3ZU="; + }; + + nativeBuildInputs = [ libarchive p7zip ]; + + unpackPhase = '' + 7z x $src + bsdtar -xf Payload~ + ''; + + doBuild = false; + + installPhase = '' + mkdir -p $out + cp -r ./bin $out + cp -r ./Frameworks $out + ''; + + postFixup = '' + install_name_tool -change @rpath/MasKit.framework/Versions/A/MasKit $out/Frameworks/MasKit.framework/Versions/A/MasKit $out/bin/mas + install_name_tool -change @rpath/Commandant.framework/Commandant $out/Frameworks/MasKit.framework/Versions/A/Frameworks/Commandant.framework/Versions/A/Commandant $out/bin/mas + ''; + + meta = with lib; { + description = "Mac App Store command line interface"; + homepage = "https://github.com/mas-cli/mas"; + license = licenses.mit; + maintainers = with maintainers; [ zachcoyle ]; + platforms = platforms.darwin; + }; +} diff --git a/pkgs/os-specific/darwin/xcode/sdk-pkgs.nix b/pkgs/os-specific/darwin/xcode/sdk-pkgs.nix index cabac19ba86..ab934d7eaaa 100644 --- a/pkgs/os-specific/darwin/xcode/sdk-pkgs.nix +++ b/pkgs/os-specific/darwin/xcode/sdk-pkgs.nix @@ -29,11 +29,6 @@ rec { binutils = wrapBintoolsWith { libc = targetIosSdkPkgs.libraries; bintools = binutils-unwrapped; - extraBuildCommands = lib.optionalString (sdk.platform == "iPhoneSimulator") '' - echo "-platform_version ios-sim ${minSdkVersion} ${sdk.version}" >> $out/nix-support/libc-ldflags - '' + lib.optionalString (sdk.platform == "iPhoneOS") '' - echo "-platform_version ios ${minSdkVersion} ${sdk.version}" >> $out/nix-support/libc-ldflags - ''; }; clang = (wrapCCWith { @@ -46,10 +41,6 @@ rec { mv cc-cflags.tmp $out/nix-support/cc-cflags echo "-target ${targetPlatform.config}" >> $out/nix-support/cc-cflags echo "-isystem ${sdk}/usr/include${lib.optionalString (lib.versionAtLeast "10" sdk.version) " -isystem ${sdk}/usr/include/c++/4.2.1/ -stdlib=libstdc++"}" >> $out/nix-support/cc-cflags - '' + lib.optionalString (sdk.platform == "iPhoneSimulator") '' - echo "-mios-simulator-version-min=${minSdkVersion}" >> $out/nix-support/cc-cflags - '' + lib.optionalString (sdk.platform == "iPhoneOS") '' - echo "-miphoneos-version-min=${minSdkVersion}" >> $out/nix-support/cc-cflags ''; }) // { inherit sdk; diff --git a/pkgs/os-specific/linux/afuse/default.nix b/pkgs/os-specific/linux/afuse/default.nix index 7375f45eb6d..75c44e11172 100644 --- a/pkgs/os-specific/linux/afuse/default.nix +++ b/pkgs/os-specific/linux/afuse/default.nix @@ -11,11 +11,18 @@ stdenv.mkDerivation { nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ fuse ]; + postPatch = lib.optionalString stdenv.isDarwin '' + # Fix the build on macOS with macFUSE installed + substituteInPlace configure.ac --replace \ + 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' \ + "" + ''; + meta = { description = "Automounter in userspace"; homepage = "https://github.com/pcarrier/afuse"; license = lib.licenses.gpl2; maintainers = [ lib.maintainers.marcweber ]; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; }; } diff --git a/pkgs/os-specific/linux/anbox/kmod.nix b/pkgs/os-specific/linux/anbox/kmod.nix index f62e6ee6aa5..1ed6d9c5f72 100644 --- a/pkgs/os-specific/linux/anbox/kmod.nix +++ b/pkgs/os-specific/linux/anbox/kmod.nix @@ -36,7 +36,7 @@ stdenv.mkDerivation { homepage = "https://github.com/anbox/anbox-modules"; license = licenses.gpl2; platforms = platforms.linux; - broken = (versionOlder kernel.version "4.4") || (kernel.features.grsecurity or false); + broken = (versionOlder kernel.version "4.4"); maintainers = with maintainers; [ edwtjo ]; }; diff --git a/pkgs/os-specific/linux/android-udev-rules/default.nix b/pkgs/os-specific/linux/android-udev-rules/default.nix index e542c0dbc63..d41c3e2dc33 100644 --- a/pkgs/os-specific/linux/android-udev-rules/default.nix +++ b/pkgs/os-specific/linux/android-udev-rules/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "android-udev-rules"; - version = "20210302"; + version = "20210425"; src = fetchFromGitHub { owner = "M0Rf30"; repo = "android-udev-rules"; rev = version; - sha256 = "sha256-yIVHcaQAr2gKH/NZeN+vRmGS8OgyNeRsZkCYyqjsSsI="; + sha256 = "sha256-crNK6mZCCqD/Lm3rNtfH/4F48RuQCqHWP+qsTNVLOGY="; }; installPhase = '' diff --git a/pkgs/os-specific/linux/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix index e049a8d82ee..1845d4a9c2b 100644 --- a/pkgs/os-specific/linux/apparmor/default.nix +++ b/pkgs/os-specific/linux/apparmor/default.nix @@ -136,10 +136,9 @@ let wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH" done - substituteInPlace $out/bin/aa-notify --replace /usr/bin/notify-send ${libnotify}/bin/notify-send - # aa-notify checks its name and does not work named ".aa-notify-wrapped" - mv $out/bin/aa-notify $out/bin/aa-notify-wrapped - makeWrapper ${perl}/bin/perl $out/bin/aa-notify --set PERL5LIB ${libapparmor}/${perl.libPrefix} --add-flags $out/bin/aa-notify-wrapped + substituteInPlace $out/bin/aa-notify \ + --replace /usr/bin/notify-send ${libnotify}/bin/notify-send \ + --replace /usr/bin/perl "${perl}/bin/perl -I ${libapparmor}/${perl.libPrefix}" ''; inherit doCheck; diff --git a/pkgs/os-specific/linux/autofs/default.nix b/pkgs/os-specific/linux/autofs/default.nix index f7ca3f71d43..3055a91161b 100644 --- a/pkgs/os-specific/linux/autofs/default.nix +++ b/pkgs/os-specific/linux/autofs/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchurl, flex, bison, linuxHeaders, libtirpc, mount, umount, nfs-utils, e2fsprogs -, libxml2, kerberos, kmod, openldap, sssd, cyrus_sasl, openssl, rpcsvc-proto }: +, libxml2, libkrb5, kmod, openldap, sssd, cyrus_sasl, openssl, rpcsvc-proto }: let version = "5.1.6"; @@ -36,7 +36,7 @@ in stdenv.mkDerivation { #make install SUBDIRS="samples" # impure! ''; - buildInputs = [ linuxHeaders libtirpc libxml2 kerberos kmod openldap sssd + buildInputs = [ linuxHeaders libtirpc libxml2 libkrb5 kmod openldap sssd openssl cyrus_sasl rpcsvc-proto ]; nativeBuildInputs = [ flex bison ]; diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/os-specific/linux/bcc/default.nix index 290e3b56180..4235ecb38d3 100644 --- a/pkgs/os-specific/linux/bcc/default.nix +++ b/pkgs/os-specific/linux/bcc/default.nix @@ -1,7 +1,7 @@ -{ lib, stdenv, fetchurl, fetchpatch +{ lib, stdenv, fetchFromGitHub , makeWrapper, cmake, llvmPackages, kernel , flex, bison, elfutils, python, luajit, netperf, iperf, libelf -, systemtap, bash +, systemtap, bash, libbpf }: python.pkgs.buildPythonApplication rec { @@ -10,9 +10,11 @@ python.pkgs.buildPythonApplication rec { disabled = !stdenv.isLinux; - src = fetchurl { - url = "https://github.com/iovisor/bcc/releases/download/v${version}/bcc-src-with-submodule.tar.gz"; - sha256 = "sha256-TEH8Gmp+8ghLQ8UsGy5hBCMLqfMeApWEFr8THYSOdOQ="; + src = fetchFromGitHub { + owner = "iovisor"; + repo = "bcc"; + rev = "v${version}"; + sha256 = "sha256:0k807vzznlb2icczw64ph6q28605kvghya2kd4h3c7jmap6gq1qg"; }; format = "other"; @@ -20,6 +22,7 @@ python.pkgs.buildPythonApplication rec { llvm clang-unwrapped kernel elfutils luajit netperf iperf systemtap.stapBuild flex bash + libbpf ]; patches = [ @@ -38,6 +41,7 @@ python.pkgs.buildPythonApplication rec { "-DREVISION=${version}" "-DENABLE_USDT=ON" "-DENABLE_CPP_API=ON" + "-DCMAKE_USE_LIBBPF_PACKAGE=ON" ]; postPatch = '' diff --git a/pkgs/os-specific/linux/bluez/default.nix b/pkgs/os-specific/linux/bluez/default.nix index 6cb23de50a9..2e342fbc039 100644 --- a/pkgs/os-specific/linux/bluez/default.nix +++ b/pkgs/os-specific/linux/bluez/default.nix @@ -19,11 +19,11 @@ ]; in stdenv.mkDerivation rec { pname = "bluez"; - version = "5.56"; + version = "5.58"; src = fetchurl { url = "mirror://kernel/linux/bluetooth/${pname}-${version}.tar.xz"; - sha256 = "sha256-WcTbqfyKripqX48S8ZvBsMLcJzVcfKMSPu0/5r19C50="; + sha256 = "1wgiv8cqya6n1w5fz24cb8q401bhn5aa6s7g95l26rzblmsmw1n8"; }; buildInputs = [ diff --git a/pkgs/os-specific/linux/bpftool/default.nix b/pkgs/os-specific/linux/bpftool/default.nix deleted file mode 100644 index d8c64738d82..00000000000 --- a/pkgs/os-specific/linux/bpftool/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ lib, stdenv -, libopcodes, libbfd, libelf -, linuxPackages_latest, zlib -, python3 -}: - -stdenv.mkDerivation { - pname = "bpftool"; - inherit (linuxPackages_latest.kernel) version src; - - nativeBuildInputs = [ python3 ]; - buildInputs = [ libopcodes libbfd libelf zlib ]; - - preConfigure = '' - patchShebangs scripts/bpf_helpers_doc.py - - cd tools/bpf/bpftool - substituteInPlace ./Makefile \ - --replace '/usr/local' "$out" \ - --replace '/usr' "$out" \ - --replace '/sbin' '/bin' - ''; - - meta = with lib; { - description = "Debugging/program analysis tool for the eBPF subsystem"; - license = [ licenses.gpl2 licenses.bsd2 ]; - platforms = platforms.linux; - maintainers = with maintainers; [ thoughtpolice ]; - }; -} diff --git a/pkgs/os-specific/linux/bpftools/default.nix b/pkgs/os-specific/linux/bpftools/default.nix new file mode 100644 index 00000000000..3e20efa9f01 --- /dev/null +++ b/pkgs/os-specific/linux/bpftools/default.nix @@ -0,0 +1,38 @@ +{ lib, stdenv +, libopcodes, libbfd, libelf, readline +, linuxPackages_latest, zlib +, python3, bison, flex +}: + +stdenv.mkDerivation { + pname = "bpftools"; + inherit (linuxPackages_latest.kernel) version src; + + nativeBuildInputs = [ python3 bison flex ]; + buildInputs = [ libopcodes libbfd libelf zlib readline ]; + + preConfigure = '' + patchShebangs scripts/bpf_helpers_doc.py + + cd tools/bpf + substituteInPlace ./bpftool/Makefile \ + --replace '/usr/local' "$out" \ + --replace '/usr' "$out" \ + --replace '/sbin' '/bin' + ''; + + buildFlags = [ "bpftool" "bpf_asm" "bpf_dbg" ]; + + installPhase = '' + make -C bpftool install + install -Dm755 -t $out/bin bpf_asm + install -Dm755 -t $out/bin bpf_dbg + ''; + + meta = with lib; { + description = "Debugging/program analysis tools for the eBPF subsystem"; + license = [ licenses.gpl2 licenses.bsd2 ]; + platforms = platforms.linux; + maintainers = with maintainers; [ thoughtpolice ]; + }; +} diff --git a/pkgs/os-specific/linux/bpftrace/default.nix b/pkgs/os-specific/linux/bpftrace/default.nix index 8edd9257fed..701fed06bb6 100644 --- a/pkgs/os-specific/linux/bpftrace/default.nix +++ b/pkgs/os-specific/linux/bpftrace/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "bpftrace"; - version = "0.11.4"; + version = "0.12.0"; src = fetchFromGitHub { owner = "iovisor"; repo = "bpftrace"; - rev = "refs/tags/v${version}"; - sha256 = "0y4qgm2cpccrsm20rnh92hqplddqsc5q5zhw9nqn2igm3h9i0z7h"; + rev = "v${version}"; + sha256 = "0njbixkrpdl9gjnkzg0ybmqsva0ydfda5vms66v8ij7xida2qy07"; }; buildInputs = with llvmPackages; diff --git a/pkgs/os-specific/linux/btfs/default.nix b/pkgs/os-specific/linux/btfs/default.nix index 70864b311d2..342272f4286 100644 --- a/pkgs/os-specific/linux/btfs/default.nix +++ b/pkgs/os-specific/linux/btfs/default.nix @@ -22,6 +22,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/johang/btfs"; license = licenses.gpl3; maintainers = with maintainers; [ rnhmjoj ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix index 6c034e1c2af..63435e09168 100644 --- a/pkgs/os-specific/linux/busybox/default.nix +++ b/pkgs/os-specific/linux/busybox/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, buildPackages, fetchurl, fetchFromGitLab +{ stdenv, lib, buildPackages, fetchurl, fetchFromGitLab, fetchpatch , enableStatic ? stdenv.hostPlatform.isStatic , enableMinimal ? false # Allow forcing musl without switching stdenv itself, e.g. for our bootstrapping: @@ -49,6 +49,9 @@ in stdenv.mkDerivation rec { pname = "busybox"; + # TODO: When bumping to next version, remove the patch + # for CVE-2021-28831 (assuming the patch was included in + # the next upstream release) version = "1.32.1"; # Note to whoever is updating busybox: please verify that: @@ -64,6 +67,11 @@ stdenv.mkDerivation rec { patches = [ ./busybox-in-store.patch + (fetchpatch { + name = "CVE-2021-28831.patch"; + url = "https://git.busybox.net/busybox/patch/?id=f25d254dfd4243698c31a4f3153d4ac72aa9e9bd"; + sha256 = "0y79flfbk45krwn963nnbqc21a88bsz4k4asqwvcnfk2lkciadxm"; + }) # TODO: Removing when bumping the version ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) ./clang-cross.patch; postPatch = "patchShebangs ."; diff --git a/pkgs/os-specific/linux/cifs-utils/default.nix b/pkgs/os-specific/linux/cifs-utils/default.nix index c4ed4d4fc0f..8c587a40196 100644 --- a/pkgs/os-specific/linux/cifs-utils/default.nix +++ b/pkgs/os-specific/linux/cifs-utils/default.nix @@ -1,18 +1,18 @@ { stdenv, lib, fetchurl, autoreconfHook, docutils, pkg-config -, kerberos, keyutils, pam, talloc, python3 }: +, libkrb5, keyutils, pam, talloc, python3 }: stdenv.mkDerivation rec { pname = "cifs-utils"; - version = "6.12"; + version = "6.13"; src = fetchurl { url = "mirror://samba/pub/linux-cifs/cifs-utils/${pname}-${version}.tar.bz2"; - sha256 = "1vw570pvir73kl4y6fhd6ns936ankimkhb1ii43yh8lr0p1xqbcj"; + sha256 = "sha256-Q9h4bIYTysz6hJEwgcHWK8JAlXWFTPiVsFtIrwhj0FY="; }; nativeBuildInputs = [ autoreconfHook docutils pkg-config ]; - buildInputs = [ kerberos keyutils pam talloc python3 ]; + buildInputs = [ libkrb5 keyutils pam talloc python3 ]; configureFlags = [ "ROOTSBINDIR=$(out)/sbin" ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ # AC_FUNC_MALLOC is broken on cross builds. diff --git a/pkgs/os-specific/linux/conky/default.nix b/pkgs/os-specific/linux/conky/default.nix index 0e7eaa19b4d..9bd8890e713 100644 --- a/pkgs/os-specific/linux/conky/default.nix +++ b/pkgs/os-specific/linux/conky/default.nix @@ -68,13 +68,13 @@ with lib; stdenv.mkDerivation rec { pname = "conky"; - version = "1.12.1"; + version = "1.12.2"; src = fetchFromGitHub { owner = "brndnmtthws"; repo = "conky"; rev = "v${version}"; - sha256 = "sha256-qQx9+Z1OAQlbHupflzHD5JV4NqedoF8A57F1+rPT3/o="; + sha256 = "sha256-x6bR5E5LIvKWiVM15IEoUgGas/hcRp3F/O4MTOhVPb8="; }; postPatch = '' diff --git a/pkgs/os-specific/linux/displaylink/default.nix b/pkgs/os-specific/linux/displaylink/default.nix index bd50852bd9d..ca3e38c2e70 100644 --- a/pkgs/os-specific/linux/displaylink/default.nix +++ b/pkgs/os-specific/linux/displaylink/default.nix @@ -20,17 +20,17 @@ let in stdenv.mkDerivation rec { pname = "displaylink"; - version = "5.3.1.34"; + version = "5.4.0-55.153"; src = requireFile rec { name = "displaylink.zip"; - sha256 = "1c1kbjgpb71f73qnyl44rvwi6l4ivddq789rwvvh0ahw2jm324hy"; + sha256 = "1m2l3bnlfwfp94w7khr05npsbysg9mcyi7hi85n78xkd0xdcxml8"; message = '' In order to install the DisplayLink drivers, you must first comply with DisplayLink's EULA and download the binaries and sources from here: - https://www.displaylink.com/downloads/file?id=1576 + https://www.synaptics.com/node/3751 Once you have downloaded the file, please use the following commands and re-run the installation: diff --git a/pkgs/os-specific/linux/dropwatch/default.nix b/pkgs/os-specific/linux/dropwatch/default.nix index 288dea85cc8..c2701c05719 100644 --- a/pkgs/os-specific/linux/dropwatch/default.nix +++ b/pkgs/os-specific/linux/dropwatch/default.nix @@ -1,30 +1,47 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config -, libnl, readline, libbfd, ncurses, zlib }: +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, pkg-config +, libbfd +, libnl +, libpcap +, ncurses +, readline +, zlib +}: stdenv.mkDerivation rec { pname = "dropwatch"; - version = "1.5.1"; + version = "1.5.3"; src = fetchFromGitHub { owner = "nhorman"; repo = pname; rev = "v${version}"; - sha256 = "1qmax0l7z1qik42c949fnvjh5r6awk4gpgzdsny8iwnmwzjyp8b8"; + sha256 = "0axx0zzrs7apqnl0r70jyvmgk7cs5wk185id479mapgngibwkyxy"; }; - nativeBuildInputs = [ autoreconfHook pkg-config ]; - buildInputs = [ libbfd libnl ncurses readline zlib ]; - - # To avoid running into https://sourceware.org/bugzilla/show_bug.cgi?id=14243 we need to define: - NIX_CFLAGS_COMPILE = "-DPACKAGE=${pname} -DPACKAGE_VERSION=${version}"; + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + buildInputs = [ + libbfd + libnl + libpcap + ncurses + readline + zlib + ]; enableParallelBuilding = true; meta = with lib; { description = "Linux kernel dropped packet monitor"; homepage = "https://github.com/nhorman/dropwatch"; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = [ maintainers.c0bw3b ]; + maintainers = with maintainers; [ c0bw3b ]; }; } diff --git a/pkgs/os-specific/linux/evdi/default.nix b/pkgs/os-specific/linux/evdi/default.nix index 0f56d0e95ca..a8a0445e955 100644 --- a/pkgs/os-specific/linux/evdi/default.nix +++ b/pkgs/os-specific/linux/evdi/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "evdi"; - version = "v1.7.2"; + version = "unstable-20210401"; src = fetchFromGitHub { owner = "DisplayLink"; repo = pname; - rev = version; - sha256 = "074j0xh037n8mc4isihfz9lap57wvxaxib32pvy6jhjl3wyik632"; + rev = "b0b3d131b26df62664ca33775679eea7b70c47b1"; + sha256 = "09apbvdc78bbqzja9z3b1wrwmqkv3k7cn3lll5gsskxjnqbhxk9y"; }; nativeBuildInputs = kernel.moduleBuildDependencies; @@ -33,6 +33,6 @@ stdenv.mkDerivation rec { platforms = platforms.linux; license = with licenses; [ lgpl21 gpl2 ]; homepage = "https://www.displaylink.com/"; - broken = versionOlder kernel.version "4.9" || stdenv.isAarch64; + broken = versionOlder kernel.version "4.19" || stdenv.isAarch64; }; } diff --git a/pkgs/os-specific/linux/firmware/firmware-manager/default.nix b/pkgs/os-specific/linux/firmware/firmware-manager/default.nix index f7f02037800..80730fdbefb 100644 --- a/pkgs/os-specific/linux/firmware/firmware-manager/default.nix +++ b/pkgs/os-specific/linux/firmware/firmware-manager/default.nix @@ -1,4 +1,4 @@ -{ rustPlatform, lib, fetchFromGitHub, lzma, pkg-config, openssl, dbus, glib, udev, cairo, pango, atk, gdk-pixbuf, gtk3, wrapGAppsHook }: +{ rustPlatform, lib, fetchFromGitHub, xz, pkg-config, openssl, dbus, glib, udev, cairo, pango, atk, gdk-pixbuf, gtk3, wrapGAppsHook }: rustPlatform.buildRustPackage rec { pname = "firmware-manager"; version = "0.1.2"; @@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = [ pkg-config wrapGAppsHook ]; - buildInputs = [ lzma openssl dbus glib udev cairo pango atk gdk-pixbuf gtk3 ]; + buildInputs = [ xz openssl dbus glib udev cairo pango atk gdk-pixbuf gtk3 ]; depsExtraArgs.postPatch = "make prefix='$(out)' toml-gen"; diff --git a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix index 041694e2ec1..e6a03ef7df5 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix @@ -2,22 +2,22 @@ stdenv.mkDerivation { pname = "raspberrypi-wireless-firmware"; - version = "2020-12-01"; + version = "2021-01-28"; srcs = [ (fetchFromGitHub { name = "bluez-firmware"; owner = "RPi-Distro"; repo = "bluez-firmware"; - rev = "1e4ee0c05bae10002124b56c0e44bb9ac6581ddc"; - sha256 = "10n6ibr3ra71f4hlvbpy8csjlgrapawxrr6jmijn470vkcqcpq27"; + rev = "e7fd166981ab4bb9a36c2d1500205a078a35714d"; + sha256 = "1dkg8mzn7n4afi50ibrda2s33nw2qj52jjjdv9w560q601gms47b"; }) (fetchFromGitHub { name = "firmware-nonfree"; owner = "RPi-Distro"; repo = "firmware-nonfree"; - rev = "b66ab26cebff689d0d3257f56912b9bb03c20567"; - sha256 = "0cffgsp0w7vv7ylpymdddx0bl9dx3pl7snlh30p4rr9srmn8869f"; + rev = "83938f78ca2d5a0ffe0c223bb96d72ccc7b71ca5"; + sha256 = "1l4zz86y2hjyvdwjy75abyjwh3wqknd71y3vh1iw5nd0hws8ranp"; }) ]; @@ -41,7 +41,7 @@ stdenv.mkDerivation { outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "17k9y499kjc4zv7ivnsfrgfibwj0ldr3sqdgia4dackbr70jfg2h"; + outputHash = "0a54gyrq6jfxxvimaa4yjfiyfwf7wv58v0a32l74yrzyarr3ldby"; meta = with lib; { description = "Firmware for builtin Wifi/Bluetooth devices in the Raspberry Pi 3+ and Zero W"; diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix index 3561916fd6f..6a826f63966 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix @@ -3,13 +3,13 @@ stdenvNoCC.mkDerivation rec { # NOTE: this should be updated with linux_rpi pname = "raspberrypi-firmware"; - version = "1.20201201"; + version = "1.20210303"; src = fetchFromGitHub { owner = "raspberrypi"; repo = "firmware"; rev = version; - sha256 = "09yha3k72yqx29rwnv2j2zm73lzc4jgmcbmcc6yrl1i07x84lx3n"; + sha256 = "0pgiw93hq4gfph5dnwbi8w59g0f7yhmagwzam971k529mh5yl86m"; }; installPhase = '' @@ -25,6 +25,6 @@ stdenvNoCC.mkDerivation rec { description = "Firmware for the Raspberry Pi board"; homepage = "https://github.com/raspberrypi/firmware"; license = licenses.unfreeRedistributableFirmware; # See https://github.com/raspberrypi/firmware/blob/master/boot/LICENCE.broadcom - maintainers = with maintainers; [ dezgeg tavyc ]; + maintainers = with maintainers; [ dezgeg ]; }; } diff --git a/pkgs/os-specific/linux/firmware/sof-firmware/default.nix b/pkgs/os-specific/linux/firmware/sof-firmware/default.nix index b474c48e341..5ee39c5bf33 100644 --- a/pkgs/os-specific/linux/firmware/sof-firmware/default.nix +++ b/pkgs/os-specific/linux/firmware/sof-firmware/default.nix @@ -3,29 +3,28 @@ with lib; stdenv.mkDerivation rec { pname = "sof-firmware"; - version = "1.6"; + version = "1.7"; src = fetchFromGitHub { owner = "thesofproject"; repo = "sof-bin"; - rev = "cbdec6963b2c2d58b0080955d3c11b96ff4c92f0"; - sha256 = "0la2pw1zpv50cywiqcfb00cxqvjc73drxwjchyzi54l508817nxh"; + rev = "v${version}"; + sha256 = "sha256-Z0Z4HLsIIuW8E1kFNhAECmzj1HkJVfbEw13B8V7PZLk="; }; - phases = [ "unpackPhase" "installPhase" ]; + dontFixup = true; # binaries must not be stripped or patchelfed installPhase = '' - mkdir -p $out/lib/firmware - - patchShebangs go.sh - ROOT=$out SOF_VERSION=v${version} ./go.sh + mkdir -p $out/lib/firmware/intel/ + cp -a sof-v${version} $out/lib/firmware/intel/sof + cp -a sof-tplg-v${version} $out/lib/firmware/intel/sof-tplg ''; meta = with lib; { description = "Sound Open Firmware"; homepage = "https://www.sofproject.org/"; license = with licenses; [ bsd3 isc ]; - maintainers = with maintainers; [ lblasc evenbrenden ]; + maintainers = with maintainers; [ lblasc evenbrenden hmenke ]; platforms = with platforms; linux; }; } diff --git a/pkgs/os-specific/linux/firmware/system76-firmware/default.nix b/pkgs/os-specific/linux/firmware/system76-firmware/default.nix index 138fea042fc..9d47d50b43f 100644 --- a/pkgs/os-specific/linux/firmware/system76-firmware/default.nix +++ b/pkgs/os-specific/linux/firmware/system76-firmware/default.nix @@ -1,4 +1,4 @@ -{ rustPlatform, lib, fetchFromGitHub, lzma, pkg-config, openssl, dbus, efibootmgr, makeWrapper }: +{ rustPlatform, lib, fetchFromGitHub, xz, pkg-config, openssl, dbus, efibootmgr, makeWrapper }: rustPlatform.buildRustPackage rec { pname = "system76-firmware"; # Check Makefile when updating, make sure postInstall matches make install @@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = [ pkg-config makeWrapper ]; - buildInputs = [ lzma openssl dbus ]; + buildInputs = [ xz openssl dbus ]; cargoBuildFlags = [ "--workspace" ]; diff --git a/pkgs/os-specific/linux/flashbench/default.nix b/pkgs/os-specific/linux/flashbench/default.nix index 44bcbba205e..619aea69aa6 100644 --- a/pkgs/os-specific/linux/flashbench/default.nix +++ b/pkgs/os-specific/linux/flashbench/default.nix @@ -27,6 +27,5 @@ stdenv.mkDerivation { homepage = "https://github.com/bradfa/flashbench"; platforms = platforms.linux; license = licenses.gpl2Only; - maintainers = [ maintainers.rycee ]; }; } diff --git a/pkgs/os-specific/linux/fuse/common.nix b/pkgs/os-specific/linux/fuse/common.nix index 053ea34c82e..c1217f66938 100644 --- a/pkgs/os-specific/linux/fuse/common.nix +++ b/pkgs/os-specific/linux/fuse/common.nix @@ -1,7 +1,7 @@ { version, sha256Hash }: { lib, stdenv, fetchFromGitHub, fetchpatch -, fusePackages, util-linux, gettext +, fusePackages, util-linux, gettext, shadow , meson, ninja, pkg-config , autoreconfHook , python3Packages, which @@ -54,13 +54,14 @@ in stdenv.mkDerivation rec { # $PATH, so it should also work on non-NixOS systems. export NIX_CFLAGS_COMPILE="-DFUSERMOUNT_DIR=\"/run/wrappers/bin\"" - sed -e 's@/bin/@${util-linux}/bin/@g' -i lib/mount_util.c + substituteInPlace lib/mount_util.c --replace "/bin/" "${util-linux}/bin/" '' + (if isFuse3 then '' # The configure phase will delete these files (temporary workaround for # ./fuse3-install_man.patch) install -D -m444 doc/fusermount3.1 $out/share/man/man1/fusermount3.1 install -D -m444 doc/mount.fuse3.8 $out/share/man/man8/mount.fuse3.8 '' else '' + substituteInPlace util/mount.fuse.c --replace '"su"' '"${shadow.su}/bin/su"' sed -e 's@CONFIG_RPATH=/usr/share/gettext/config.rpath@CONFIG_RPATH=${gettext}/share/gettext/config.rpath@' -i makeconf.sh ./makeconf.sh ''); @@ -96,7 +97,7 @@ in stdenv.mkDerivation rec { inherit (src.meta) homepage; changelog = "https://github.com/libfuse/libfuse/releases/tag/fuse-${version}"; platforms = platforms.linux; - license = with licenses; [ gpl2 lgpl21 ]; + license = with licenses; [ gpl2Only lgpl21Only ]; maintainers = [ maintainers.primeos ]; }; } diff --git a/pkgs/os-specific/linux/fuse/default.nix b/pkgs/os-specific/linux/fuse/default.nix index 02c46b9ba77..b7ee8772f46 100644 --- a/pkgs/os-specific/linux/fuse/default.nix +++ b/pkgs/os-specific/linux/fuse/default.nix @@ -11,7 +11,7 @@ in { }; fuse_3 = mkFuse { - version = "3.10.2"; - sha256Hash = "0m44hhk6jxkgkvk2jsjcwa3pqgzzqnpm606n3n8wn1ldypkvpsps"; + version = "3.10.3"; + sha256Hash = "054g3jqy8lhlj8kkwd16wxaxzynmh8h5iv20cryd0psg0hgmhd7v"; }; } diff --git a/pkgs/os-specific/linux/gogoclient/default.nix b/pkgs/os-specific/linux/gogoclient/default.nix index b5eb1ce1a50..83ac93fbf71 100644 --- a/pkgs/os-specific/linux/gogoclient/default.nix +++ b/pkgs/os-specific/linux/gogoclient/default.nix @@ -1,4 +1,4 @@ -{lib, stdenv, fetchurl, openssl, nettools, iproute, sysctl}: +{lib, stdenv, fetchurl, openssl, nettools, iproute2, sysctl}: let baseName = "gogoclient"; version = "1.2"; @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { substituteInPlace "$out/template/linux.sh" \ --replace "/sbin/ifconfig" "${nettools}/bin/ifconfig" \ --replace "/sbin/route" "${nettools}/bin/route" \ - --replace "/sbin/ip" "${iproute}/sbin/ip" \ + --replace "/sbin/ip" "${iproute2}/sbin/ip" \ --replace "/sbin/sysctl" "${sysctl}/bin/sysctl" sed -i -e 's/^.*Exec \$route -A.*$/& metric 128/' $out/template/linux.sh ''; diff --git a/pkgs/os-specific/linux/hostapd/default.nix b/pkgs/os-specific/linux/hostapd/default.nix index 06b23bdf1f6..5d4edc4f7e7 100644 --- a/pkgs/os-specific/linux/hostapd/default.nix +++ b/pkgs/os-specific/linux/hostapd/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, pkg-config, libnl, openssl, sqlite ? null }: +{ lib, stdenv, fetchurl, fetchpatch, pkg-config, libnl, openssl, sqlite ? null }: stdenv.mkDerivation rec { pname = "hostapd"; @@ -43,6 +43,12 @@ stdenv.mkDerivation rec { url = "https://w1.fi/security/2020-1/0003-WPS-UPnP-Handle-HTTP-initiation-failures-for-events-.patch"; sha256 = "12npqp2skgrj934wwkqicgqksma0fxz09di29n1b5fm5i4njl8d8"; }) + # In wpa_supplicant and hostapd 2.9, forging attacks may occur because AlgorithmIdentifier parameters are mishandled in tls/pkcs1.c and tls/x509v3.c. + (fetchpatch { + name = "CVE-2021-30004.patch"; + url = "https://w1.fi/cgit/hostap/patch/?id=a0541334a6394f8237a4393b7372693cd7e96f15"; + sha256 = "1gbhlz41x1ar1hppnb76pqxj6vimiypy7c4kq6h658637s4am3xg"; + }) ]; outputs = [ "out" "man" ]; @@ -75,6 +81,7 @@ stdenv.mkDerivation rec { CONFIG_HS20=y CONFIG_ACS=y CONFIG_GETRANDOM=y + CONFIG_SAE=y '' + lib.optionalString (sqlite != null) '' CONFIG_SQLITE=y ''; diff --git a/pkgs/os-specific/linux/hyperv-daemons/default.nix b/pkgs/os-specific/linux/hyperv-daemons/default.nix index 2d7644e6bda..2b6bf6fc63a 100644 --- a/pkgs/os-specific/linux/hyperv-daemons/default.nix +++ b/pkgs/os-specific/linux/hyperv-daemons/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, python, kernel, makeWrapper, writeText -, gawk, iproute }: +, gawk, iproute2 }: let libexec = "libexec/hypervkvpd"; @@ -42,7 +42,7 @@ let postFixup = '' wrapProgram $out/bin/hv_kvp_daemon \ - --prefix PATH : $out/bin:${lib.makeBinPath [ gawk iproute ]} + --prefix PATH : $out/bin:${lib.makeBinPath [ gawk iproute2 ]} ''; }; diff --git a/pkgs/os-specific/linux/iproute/mptcp.nix b/pkgs/os-specific/linux/iproute/mptcp.nix index 7285e27ff36..12723213901 100644 --- a/pkgs/os-specific/linux/iproute/mptcp.nix +++ b/pkgs/os-specific/linux/iproute/mptcp.nix @@ -1,6 +1,6 @@ -{ lib, iproute, fetchFromGitHub }: +{ lib, iproute2, fetchFromGitHub }: -iproute.overrideAttrs (oa: rec { +iproute2.overrideAttrs (oa: rec { pname = "iproute_mptcp"; version = "0.95"; diff --git a/pkgs/os-specific/linux/ipsec-tools/default.nix b/pkgs/os-specific/linux/ipsec-tools/default.nix index 4e0ae7955be..33152cc51c1 100644 --- a/pkgs/os-specific/linux/ipsec-tools/default.nix +++ b/pkgs/os-specific/linux/ipsec-tools/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, fetchpatch, linuxHeaders, readline, openssl, flex, kerberos, pam }: +{ lib, stdenv, fetchurl, fetchpatch, linuxHeaders, readline, openssl, flex, libkrb5, pam }: # TODO: These tools are supposed to work under NetBSD and FreeBSD as # well, so I guess it's not appropriate to place this expression in @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { sha256 = "0b9gfbz78k2nj0k7jdlm5kajig628ja9qm0z5yksiwz22s3v7dlf"; }; - buildInputs = [ readline openssl flex kerberos pam ]; + buildInputs = [ readline openssl flex libkrb5 pam ]; patches = [ ./dont-create-localstatedir-during-install.patch diff --git a/pkgs/os-specific/linux/isgx/default.nix b/pkgs/os-specific/linux/isgx/default.nix index 1806916b14d..3e551e55917 100644 --- a/pkgs/os-specific/linux/isgx/default.nix +++ b/pkgs/os-specific/linux/isgx/default.nix @@ -17,6 +17,11 @@ stdenv.mkDerivation rec { url = "https://github.com/intel/linux-sgx-driver/commit/276c5c6a064d22358542f5e0aa96b1c0ace5d695.patch"; sha256 = "sha256-PmchqYENIbnJ51G/tkdap/g20LUrJEoQ4rDtqy6hj24="; }) + # Fixes detection with kernel >= 5.11 + (fetchpatch { + url = "https://github.com/intel/linux-sgx-driver/commit/ed2c256929962db1a8805db53bed09bb8f2f4de3.patch"; + sha256 = "sha256-MRbgS4U8FTCP1J1n+rhsvbXxKDytfl6B7YlT9Izq05U="; + }) ]; hardeningDisable = [ "pic" ]; @@ -46,8 +51,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/intel/linux-sgx-driver"; license = with licenses; [ bsd3 /* OR */ gpl2Only ]; maintainers = with maintainers; [ oxalica ]; - platforms = platforms.linux; - # The driver is already in kernel >= 5.11.0. - broken = kernelAtLeast "5.11.0"; + platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/os-specific/linux/joycond/default.nix b/pkgs/os-specific/linux/joycond/default.nix new file mode 100644 index 00000000000..a203073b081 --- /dev/null +++ b/pkgs/os-specific/linux/joycond/default.nix @@ -0,0 +1,37 @@ +{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libevdev, udev }: + +stdenv.mkDerivation rec { + pname = "joycond"; + version = "unstable-2021-03-27"; + + src = fetchFromGitHub { + owner = "DanielOgorchock"; + repo = "joycond"; + rev = "2d3f553060291f1bfee2e49fc2ca4a768b289df8"; + sha256 = "0dpmwspll9ar3pxg9rgnh224934par8h8bixdz9i2pqqbc3dqib7"; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ libevdev udev ]; + + # CMake has hardcoded install paths + installPhase = '' + mkdir -p $out/{bin,etc/{systemd/system,udev/rules.d},lib/modules-load.d} + + cp ./joycond $out/bin + cp $src/udev/{89,72}-joycond.rules $out/etc/udev/rules.d + cp $src/systemd/joycond.service $out/etc/systemd/system + cp $src/systemd/joycond.conf $out/lib/modules-load.d + + substituteInPlace $out/etc/systemd/system/joycond.service --replace \ + "ExecStart=/usr/bin/joycond" "ExecStart=$out/bin/joycond" + ''; + + meta = with lib; { + homepage = "https://github.com/DanielOgorchock/joycond"; + description = "Userspace daemon to combine joy-cons from the hid-nintendo kernel driver"; + license = licenses.gpl3Only; + maintainers = [ maintainers.ivar ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index c90dbd73f2f..776a422df73 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -12,7 +12,7 @@ # Configuration { lib, stdenv, version -, features ? { grsecurity = false; xen_dom0 = false; } +, features ? {} }: with lib; @@ -42,7 +42,7 @@ let TIMER_STATS = whenOlder "4.11" yes; DEBUG_NX_TEST = whenOlder "4.11" no; DEBUG_STACK_USAGE = no; - DEBUG_STACKOVERFLOW = mkIf (!features.grsecurity) (option no); + DEBUG_STACKOVERFLOW = option no; RCU_TORTURE_TEST = no; SCHEDSTATS = no; DETECT_HUNG_TASK = yes; @@ -142,6 +142,9 @@ let IPV6_MROUTE_MULTIPLE_TABLES = yes; IPV6_PIMSM_V2 = yes; IPV6_FOU_TUNNEL = whenAtLeast "4.7" module; + IPV6_SEG6_LWTUNNEL = whenAtLeast "4.10" yes; + IPV6_SEG6_HMAC = whenAtLeast "4.10" yes; + IPV6_SEG6_BPF = whenAtLeast "4.18" yes; NET_CLS_BPF = whenAtLeast "4.4" module; NET_ACT_BPF = whenAtLeast "4.4" module; NET_SCHED = yes; @@ -440,7 +443,7 @@ let SECURITY_SELINUX_BOOTPARAM_VALUE = whenOlder "5.1" (freeform "0"); # Disable SELinux by default # Prevent processes from ptracing non-children processes SECURITY_YAMA = option yes; - DEVKMEM = mkIf (!features.grsecurity) no; # Disable /dev/kmem + DEVKMEM = no; # Disable /dev/kmem USER_NS = yes; # Support for user namespaces @@ -520,7 +523,7 @@ let virtualisation = { PARAVIRT = option yes; - HYPERVISOR_GUEST = mkIf (!features.grsecurity) yes; + HYPERVISOR_GUEST = yes; PARAVIRT_SPINLOCKS = option yes; KVM_APIC_ARCHITECTURE = whenOlder "4.8" yes; @@ -528,7 +531,7 @@ let KVM_COMPAT = { optional = true; tristate = whenBetween "4.0" "4.12" "y"; }; KVM_DEVICE_ASSIGNMENT = { optional = true; tristate = whenBetween "3.10" "4.12" "y"; }; KVM_GENERIC_DIRTYLOG_READ_PROTECT = whenAtLeast "4.0" yes; - KVM_GUEST = mkIf (!features.grsecurity) yes; + KVM_GUEST = yes; KVM_MMIO = yes; KVM_VFIO = yes; KSM = yes; @@ -544,13 +547,8 @@ let VBOXGUEST = option no; DRM_VBOXVIDEO = option no; - } // optionalAttrs (stdenv.isx86_64 || stdenv.isi686) ({ - XEN = option yes; - - # XXX: why isn't this in the xen-dom0 conditional section below? - XEN_DOM0 = option yes; - - } // optionalAttrs features.xen_dom0 { + XEN = option yes; + XEN_DOM0 = option yes; PCI_XEN = option yes; HVC_XEN = option yes; HVC_XEN_FRONTEND = option yes; @@ -569,7 +567,7 @@ let XEN_SELFBALLOONING = option yes; XEN_STUB = option yes; XEN_TMEM = option yes; - }); + }; media = { MEDIA_DIGITAL_TV_SUPPORT = yes; @@ -680,7 +678,14 @@ let DEBUG_MEMORY_INIT = option yes; }); - misc = { + misc = let + # Use zstd for kernel compression if 64-bit and newer than 5.9, otherwise xz. + # i686 issues: https://github.com/NixOS/nixpkgs/pull/117961#issuecomment-812106375 + useZstd = stdenv.buildPlatform.is64bit && versionAtLeast version "5.9"; + in { + KERNEL_XZ = mkIf (!useZstd) yes; + KERNEL_ZSTD = mkIf useZstd yes; + HID_BATTERY_STRENGTH = yes; # enabled by default in x86_64 but not arm64, so we do that here HIDRAW = yes; @@ -696,10 +701,6 @@ let MODULE_COMPRESS = yes; MODULE_COMPRESS_XZ = yes; - # use zstd for kernel compression if newer than 5.9, else xz. - KERNEL_XZ = whenOlder "5.9" yes; - KERNEL_ZSTD = whenAtLeast "5.9" yes; - SYSVIPC = yes; # System-V IPC AIO = yes; # POSIX asynchronous I/O @@ -709,7 +710,6 @@ let MD = yes; # Device mapper (RAID, LVM, etc.) # Enable initrd support. - BLK_DEV_RAM = yes; BLK_DEV_INITRD = yes; PM_TRACE_RTC = no; # Disable some expensive (?) features. @@ -859,7 +859,7 @@ let # Bump the maximum number of CPUs to support systems like EC2 x1.* # instances and Xeon Phi. NR_CPUS = freeform "384"; - } // optionalAttrs (stdenv.hostPlatform.system == "aarch64-linux") { + } // optionalAttrs (stdenv.hostPlatform.system == "armv7l-linux" || stdenv.hostPlatform.system == "aarch64-linux") { # Enables support for the Allwinner Display Engine 2.0 SUN8I_DE2_CCU = whenAtLeast "4.13" yes; @@ -871,6 +871,14 @@ let # The kernel command line will override a platform-specific configuration from its device tree. # https://github.com/torvalds/linux/blob/856deb866d16e29bd65952e0289066f6078af773/kernel/dma/contiguous.c#L35-L44 CMA_SIZE_MBYTES = freeform "32"; + + # Many ARM SBCs hand off a pre-configured framebuffer. + # This always can can be replaced by the actual native driver. + # Keeping it a built-in ensures it will be used if possible. + FB_SIMPLE = yes; + + } // optionalAttrs (stdenv.hostPlatform.system == "armv7l-linux") { + ARM_LPAE = yes; }; }; in diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index ac9d6fbb2b5..68a1fcdb0e6 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -46,7 +46,6 @@ stdenv.hostPlatform != stdenv.buildPlatform , extraMeta ? {} -, isXen ? features.xen_dom0 or false , isZen ? false , isLibre ? false , isHardened ? false @@ -55,7 +54,7 @@ , autoModules ? stdenv.hostPlatform.linux-kernel.autoModules , preferBuiltin ? stdenv.hostPlatform.linux-kernel.preferBuiltin or false , kernelArch ? stdenv.hostPlatform.linuxArch - +, kernelTests ? [] , ... }: @@ -73,8 +72,6 @@ let efiBootStub = true; needsCifsUtils = true; netfilterRPFilter = true; - grsecurity = false; - xen_dom0 = false; ia32Emulation = true; } // features) kernelPatches; @@ -178,10 +175,12 @@ let passthru = { features = kernelFeatures; - inherit commonStructuredConfig isXen isZen isHardened isLibre; + inherit commonStructuredConfig isZen isHardened isLibre modDirVersion; + isXen = lib.warn "The isXen attribute is deprecated. All Nixpkgs kernels that support it now have Xen enabled." true; kernelOlder = lib.versionOlder version; kernelAtLeast = lib.versionAtLeast version; passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]); + tests = kernelTests; }; in lib.extendDerivation true passthru kernel diff --git a/pkgs/os-specific/linux/kernel/hardened/patches.json b/pkgs/os-specific/linux/kernel/hardened/patches.json index a3f67106781..0222fe5d5a7 100644 --- a/pkgs/os-specific/linux/kernel/hardened/patches.json +++ b/pkgs/os-specific/linux/kernel/hardened/patches.json @@ -1,32 +1,32 @@ { "4.14": { "extra": "-hardened1", - "name": "linux-hardened-4.14.227-hardened1.patch", - "sha256": "0g8s91cvcxin95is7hhap5i8vkn4k3570s28vnz8mf0jrcgwdgfd", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.227-hardened1/linux-hardened-4.14.227-hardened1.patch" + "name": "linux-hardened-4.14.231-hardened1.patch", + "sha256": "0camacpjlix1ajx2z1krsv7j5m9g7vaikp2qsa43w3xxgms1slp6", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.231-hardened1/linux-hardened-4.14.231-hardened1.patch" }, "4.19": { "extra": "-hardened1", - "name": "linux-hardened-4.19.183-hardened1.patch", - "sha256": "1xi4fkvdvf1rjhrihi7im415x26hwmvhf3zrklm8hw2rmajdfrca", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.183-hardened1/linux-hardened-4.19.183-hardened1.patch" + "name": "linux-hardened-4.19.188-hardened1.patch", + "sha256": "1l5hmfzkp9aajj48xny2khrg54501m57llykp6p3vpg9hwh19j1q", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.188-hardened1/linux-hardened-4.19.188-hardened1.patch" }, "5.10": { "extra": "-hardened1", - "name": "linux-hardened-5.10.26-hardened1.patch", - "sha256": "08f4yks3fjv5zi85zbxa3aqfllb6nbr58hm6kchd83l6rknnix4r", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.26-hardened1/linux-hardened-5.10.26-hardened1.patch" + "name": "linux-hardened-5.10.32-hardened1.patch", + "sha256": "0vl01f6kpb38qv9855x1c4fzih1xmfb1xby70dzfkp5bg53ms5r3", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.32-hardened1/linux-hardened-5.10.32-hardened1.patch" }, "5.11": { "extra": "-hardened1", - "name": "linux-hardened-5.11.10-hardened1.patch", - "sha256": "16083fvl5km751dps7mzjc2fl1qp9jqnyn7lg8jlfxc8w32bbxwv", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.11.10-hardened1/linux-hardened-5.11.10-hardened1.patch" + "name": "linux-hardened-5.11.16-hardened1.patch", + "sha256": "1fxf1qcqrvgywxnyywsbav80ys0y4c9qg6s8ygmplyjvncd9005l", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.11.16-hardened1/linux-hardened-5.11.16-hardened1.patch" }, "5.4": { "extra": "-hardened1", - "name": "linux-hardened-5.4.108-hardened1.patch", - "sha256": "1m208j0svysyn3m0acn10pd4wqjm203ampkhf1wimzpzs8wfasgj", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.108-hardened1/linux-hardened-5.4.108-hardened1.patch" + "name": "linux-hardened-5.4.114-hardened1.patch", + "sha256": "0zbn9x59m6b62c9hjp47xkg1qk8a489nd99px2g4i24mnhgan0kf", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.114-hardened1/linux-hardened-5.4.114-hardened1.patch" } } diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix index 1dd2521dfb2..9ec576a1aa6 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix @@ -1,9 +1,9 @@ -{ lib, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: with lib; buildLinux (args // rec { - version = "4.14.227"; + version = "4.14.231"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,8 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1iz029v407xv81prrvg4gr2ql8hvm0mpj21x9picwv05pk2d68h7"; + sha256 = "10k63vwibygdd6gzs4r6rncqqa0qf8cbnqznhbfsi41lxsnpjfsp"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_14 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix index 3530d022369..b1140311b60 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.19.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix @@ -1,9 +1,9 @@ -{ lib, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: with lib; buildLinux (args // rec { - version = "4.19.183"; + version = "4.19.188"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,8 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1xd5hjdjbsw7kpj9csgi8kk4ki3z46sqbiigjsr71psivxfxkkxs"; + sha256 = "0xq00mwgclk89bk5jpmncjnz7vsq353qrnc0cjp0n9mi4vqg375h"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_19 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix index b2b5c43722e..2cc14e6cf67 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix @@ -1,11 +1,13 @@ -{ buildPackages, fetchurl, perl, buildLinux, ... } @ args: +{ buildPackages, fetchurl, perl, buildLinux, nixosTests, ... } @ args: buildLinux (args // rec { - version = "4.4.263"; + version = "4.4.267"; extraMeta.branch = "4.4"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1qqh3n09pn87n6f7ain3am8k7j043vzm65qcvccq9as129y5w1a2"; + sha256 = "1qk629fsl1glr0h1hxami3f4ivgl58iqsnw43slvn1yc91cb7ws4"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_4 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix index c07e1c98d48..eb6ef73dd19 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.9.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix @@ -1,11 +1,13 @@ -{ buildPackages, fetchurl, perl, buildLinux, ... } @ args: +{ buildPackages, fetchurl, perl, buildLinux, nixosTests, ... } @ args: buildLinux (args // rec { - version = "4.9.263"; + version = "4.9.267"; extraMeta.branch = "4.9"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1dhmgyg6asqg1pmhnzqymwz4bm6gy8gi0n2gr794as38dhn2szwz"; + sha256 = "0q0a49b3wsxk9mqyy8b55lr1gmiqxjpqh2nlhj4xwcfzd7z9lfwq"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_9 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.10.nix b/pkgs/os-specific/linux/kernel/linux-5.10.nix index 623a3a14f10..cd09eadea1d 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix @@ -1,9 +1,9 @@ -{ lib, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: with lib; buildLinux (args // rec { - version = "5.10.26"; + version = "5.10.32"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,8 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "10hlc020imxxh71nvxhnnmd66bcxndfyi78v7wv7y5mcy4rjhlzw"; + sha256 = "1fnp0wyiswg8q4w89ssm1fz1ryfc1567fx08bz3fmf2cdqr8wkv4"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_10 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.11.nix b/pkgs/os-specific/linux/kernel/linux-5.11.nix index 945c74e8dd9..6dc3a2772a0 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.11.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.11.nix @@ -1,9 +1,9 @@ -{ lib, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: with lib; buildLinux (args // rec { - version = "5.11.10"; + version = "5.11.16"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,8 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "07fw48sy8p17jmm24x3rl99cwxiwhwjrxnmy3g542w9kzawaqwnk"; + sha256 = "0hqgai4r40xxlfqp1paxhn2g4i4yqvi1k473dddcxjrhs60kc5i1"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_11 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix index fdb32a2476f..e18cf2e23fd 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix @@ -1,9 +1,9 @@ -{ lib, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: with lib; buildLinux (args // rec { - version = "5.4.108"; + version = "5.4.114"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,8 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "0wi1ql7brfsdzvwbxrxvg12zfm54lbdjvfzxk1l3xlqvq83sq4pj"; + sha256 = "0mwmvvz817zgxalb2xcx0i49smjag6j81vmqxp2kpwjqrf3z165y"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_4 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix index 08898bb0a22..6e264a3ec63 100644 --- a/pkgs/os-specific/linux/kernel/linux-libre.nix +++ b/pkgs/os-specific/linux/kernel/linux-libre.nix @@ -1,8 +1,8 @@ { stdenv, lib, fetchsvn, linux , scripts ? fetchsvn { url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; - rev = "17920"; - sha256 = "0qmhabh4922lpiimrh9smi1q0w8giw3qqxpyzzy2bmr2037011k0"; + rev = "17990"; + sha256 = "1hras4018lgvql1zxw26fzcvk0w1xh6pyh3kmhxxh23k61zl83zk"; } , ... }: diff --git a/pkgs/os-specific/linux/kernel/linux-lqx.nix b/pkgs/os-specific/linux/kernel/linux-lqx.nix index d8fc7a71b59..c279edee2f1 100644 --- a/pkgs/os-specific/linux/kernel/linux-lqx.nix +++ b/pkgs/os-specific/linux/kernel/linux-lqx.nix @@ -1,7 +1,7 @@ { lib, fetchFromGitHub, buildLinux, linux_zen, ... } @ args: let - version = "5.11.8"; + version = "5.11.18"; suffix = "lqx1"; in @@ -14,7 +14,7 @@ buildLinux (args // { owner = "zen-kernel"; repo = "zen-kernel"; rev = "v${version}-${suffix}"; - sha256 = "1zvd74l6vb0rwrkwwh67i8l6ipin0p981vzdmiwpbpfzasbw59xk"; + sha256 = "0fz0s6bdcvbzy1149acqkq3aqg481dwiq85wh7ii1hx6p1gbsx71"; }; extraMeta = { diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix index 176c2180f35..8ccf46b402b 100644 --- a/pkgs/os-specific/linux/kernel/linux-rpi.nix +++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix @@ -2,8 +2,8 @@ let # NOTE: raspberrypifw & raspberryPiWirelessFirmware should be updated with this - modDirVersion = "5.4.79"; - tag = "1.20201201"; + modDirVersion = "5.10.17"; + tag = "1.20210303"; in lib.overrideDerivation (buildLinux (args // { version = "${modDirVersion}-${tag}"; @@ -13,7 +13,7 @@ lib.overrideDerivation (buildLinux (args // { owner = "raspberrypi"; repo = "linux"; rev = "raspberrypi-kernel_${tag}-1"; - sha256 = "093p5kh5f27djkhbcw371w079lhhihvg3s4by3wzsd40di4fcgn9"; + sha256 = "0ffsllayl18ka4mgp4rdy9h0da5gy1n6g0kfvinvzdzabb5wzvrx"; }; defconfig = { @@ -23,15 +23,18 @@ lib.overrideDerivation (buildLinux (args // { "4" = "bcm2711_defconfig"; }.${toString rpiVersion}; - extraConfig = '' - # ../drivers/pci/controller/pcie-altera.c:679:8: error: too few arguments to function 'devm_of_pci_get_host_bridge_resources' - PCIE_ALTERA n - ''; - features = { efiBootStub = false; } // (args.features or {}); + extraConfig = '' + # ../drivers/gpu/drm/ast/ast_mode.c:851:18: error: initialization of 'void (*)(struct drm_crtc *, struct drm_atomic_state *)' from incompatible pointer type 'void (*)(struct drm_crtc *, struct drm_crtc_state *)' [-Werror=incompatible-pointer-types] + # 851 | .atomic_flush = ast_crtc_helper_atomic_flush, + # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + # ../drivers/gpu/drm/ast/ast_mode.c:851:18: note: (near initialization for 'ast_crtc_helper_funcs.atomic_flush') + DRM_AST n + ''; + extraMeta = if (rpiVersion < 3) then { platforms = with lib.platforms; [ arm ]; hydraPlatforms = []; diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix index cd6273d21e9..382588c157a 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix @@ -6,7 +6,7 @@ , ... } @ args: let - version = "5.10.25-rt35"; # updated by ./update-rt.sh + version = "5.10.30-rt37"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in buildLinux (args // { @@ -18,14 +18,14 @@ in buildLinux (args // { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; - sha256 = "1p8s8vp5b6vjmvhj3plm0pr0d9qp5lrwm6l40a4bjr1vk9myf2lk"; + sha256 = "0h06lavcbbj9a4dfzca9sprghiq9z33q8i4gh3n2912wmjsnj0nl"; }; kernelPatches = let rt-patch = { name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "0kvawcyxg0xzhx73xs9g9s0hr7bs44sy4zvfzvcg2m9hdyafry0k"; + sha256 = "1jibjfmjyn90n5jz5vq056n9xfzn9p8g9fsv7nmj5mfxxm4qhjal"; }; }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches; diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix index 0aa63af52d8..37ea8ab86fd 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix @@ -6,7 +6,7 @@ , ... } @ args: let - version = "5.4.106-rt54"; # updated by ./update-rt.sh + version = "5.4.109-rt56"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in buildLinux (args // { @@ -14,14 +14,14 @@ in buildLinux (args // { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; - sha256 = "1ny8b69ngydh0iw53jwlmqlgv31wjhkybkgnqi5kv0n174n3p1yc"; + sha256 = "1vmpc6yrr2zm4m3naflwik5111jr8hy0mnyddwk31l0p4xbg8smc"; }; kernelPatches = let rt-patch = { name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "0xwbpn1k1b4bxq15sw7gicrzkfg32nkja308a5pcwx1ihv9khchf"; + sha256 = "08cg8b7mwihs8zgdh0jwi8hrn3hnf9j0jyplsyc7644wd6mqby4a"; }; }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches; diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index 06efc5da1ec..f0d41869346 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,9 +1,9 @@ -{ lib, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: with lib; buildLinux (args // rec { - version = "5.12-rc4"; + version = "5.12-rc6"; extraMeta.branch = "5.12"; # modDirVersion needs to be x.y.z, will always add .0 @@ -11,9 +11,11 @@ buildLinux (args // rec { src = fetchurl { url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; - sha256 = "06i6xnfbyn522pj9zksx6ka01yxwv8dsrb2z517grv682sp8j70k"; + sha256 = "0w0zk2byimdbcvn8myqaq0ab6lyd43493fnkv9a1407dimpxb03d"; }; + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_testing ]; + # Should the testing kernels ever be built on Hydra? extraMeta.hydraPlatforms = []; diff --git a/pkgs/os-specific/linux/kernel/linux-xanmod.nix b/pkgs/os-specific/linux/kernel/linux-xanmod.nix new file mode 100644 index 00000000000..95f736d9418 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-xanmod.nix @@ -0,0 +1,27 @@ +{ lib, stdenv, buildLinux, fetchFromGitHub, ... } @ args: + +let + version = "5.11.16"; + suffix = "xanmod1-cacule"; +in + buildLinux (args // rec { + modDirVersion = "${version}-${suffix}"; + inherit version; + + src = fetchFromGitHub { + owner = "xanmod"; + repo = "linux"; + rev = modDirVersion; + sha256 = "sha256-sK2DGJsmKP/gvPyT8HWjPa21OOXydMhGjJzrOkPo71Q="; + extraPostFetch = '' + rm $out/.config + ''; + }; + + extraMeta = { + branch = "5.11"; + maintainers = with lib.maintainers; [ fortuneteller2k ]; + description = "Built with custom settings and new features built to provide a stable, responsive and smooth desktop experience"; + broken = stdenv.hostPlatform.isAarch64; + }; + } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-zen.nix b/pkgs/os-specific/linux/kernel/linux-zen.nix index 0323bf81c76..b28400819d5 100644 --- a/pkgs/os-specific/linux/kernel/linux-zen.nix +++ b/pkgs/os-specific/linux/kernel/linux-zen.nix @@ -1,7 +1,7 @@ { lib, fetchFromGitHub, buildLinux, ... } @ args: let - version = "5.11.8"; + version = "5.11.16"; suffix = "zen1"; in @@ -14,7 +14,7 @@ buildLinux (args // { owner = "zen-kernel"; repo = "zen-kernel"; rev = "v${version}-${suffix}"; - sha256 = "1hb05shhqb6747m131sw30h36ak1m9bwzhfldjypn8phlfkflgkq"; + sha256 = "0jyicnpqccn194jrm1mc4zq0cil7ls9l57ws3nv783vlk7b0k3gv"; }; extraMeta = { diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index 2fc63322f5b..f874762267a 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -37,7 +37,6 @@ in { extraMeta ? {}, # for module compatibility - isXen ? features.xen_dom0 or false, isZen ? false, isLibre ? false, isHardened ? false, @@ -94,7 +93,8 @@ let passthru = { inherit version modDirVersion config kernelPatches configfile moduleBuildDependencies stdenv; - inherit isXen isZen isHardened isLibre; + inherit isZen isHardened isLibre; + isXen = lib.warn "The isXen attribute is deprecated. All Nixpkgs kernels that support it now have Xen enabled." true; kernelOlder = lib.versionOlder version; kernelAtLeast = lib.versionAtLeast version; }; @@ -285,7 +285,7 @@ let " (with patches: " + lib.concatStringsSep ", " (map (x: x.name) kernelPatches) + ")"); - license = lib.licenses.gpl2; + license = lib.licenses.gpl2Only; homepage = "https://www.kernel.org/"; repositories.git = "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"; maintainers = [ diff --git a/pkgs/os-specific/linux/kernel/update-rt.sh b/pkgs/os-specific/linux/kernel/update-rt.sh index 8cac5929252..ccb01793342 100755 --- a/pkgs/os-specific/linux/kernel/update-rt.sh +++ b/pkgs/os-specific/linux/kernel/update-rt.sh @@ -37,6 +37,7 @@ latest-rt-version() { branch="$1" # e.g. 5.4 curl -sL "$mirror/projects/rt/$branch/sha256sums.asc" | sed -ne '/.patch.xz/ { s/.*patch-\(.*\).patch.xz/\1/p}' | + grep -v '\-rc' | tail -n 1 } diff --git a/pkgs/os-specific/linux/libcap/default.nix b/pkgs/os-specific/linux/libcap/default.nix index 54fab6a7746..47fa7c05e79 100644 --- a/pkgs/os-specific/linux/libcap/default.nix +++ b/pkgs/os-specific/linux/libcap/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, buildPackages, fetchurl, attr, perl +{ stdenv, lib, buildPackages, fetchurl, attr, perl, runtimeShell , usePam ? !isStatic, pam ? null , isStatic ? stdenv.hostPlatform.isStatic }: @@ -14,8 +14,6 @@ stdenv.mkDerivation rec { sha256 = "sha256-TelZDuCah8KC1Vhzf/tbYXXMv9JtWArdEN9E0PBH9sI="; }; - patches = lib.optional isStatic ./no-shared-lib.patch; - outputs = [ "out" "dev" "lib" "man" "doc" ] ++ lib.optional usePam "pam"; @@ -31,11 +29,11 @@ stdenv.mkDerivation rec { "PAM_CAP=${if usePam then "yes" else "no"}" "BUILD_CC=$(CC_FOR_BUILD)" "CC:=$(CC)" - ]; + ] ++ lib.optional isStatic "SHARED=no"; prePatch = '' # use full path to bash - substituteInPlace progs/capsh.c --replace "/bin/bash" "${stdenv.shell}" + substituteInPlace progs/capsh.c --replace "/bin/bash" "${runtimeShell}" # set prefixes substituteInPlace Make.Rules \ diff --git a/pkgs/os-specific/linux/libcap/no-shared-lib.patch b/pkgs/os-specific/linux/libcap/no-shared-lib.patch deleted file mode 100644 index 73dc7de063d..00000000000 --- a/pkgs/os-specific/linux/libcap/no-shared-lib.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/libcap/Makefile b/libcap/Makefile -index de6a28d..7e4d8ac 100644 ---- a/libcap/Makefile -+++ b/libcap/Makefile -@@ -22,7 +22,7 @@ MAJLIBNAME=$(LIBNAME).$(VERSION) - MINLIBNAME=$(MAJLIBNAME).$(MINOR) - GPERF_OUTPUT = _caps_output.gperf - --all: $(MINLIBNAME) $(STACAPLIBNAME) pcs $(STAPSXLIBNAME) -+all: $(STACAPLIBNAME) pcs $(STAPSXLIBNAME) - - pcs: libcap.pc libpsx.pc - -@@ -93,7 +93,7 @@ cap_test: cap_test.c libcap.h - test: cap_test - ./cap_test - --install: install-static install-shared -+install: install-static - - install-static: install-static-cap install-static-psx - diff --git a/pkgs/os-specific/linux/libcgroup/default.nix b/pkgs/os-specific/linux/libcgroup/default.nix index b43d70f21bb..e40a59ce823 100644 --- a/pkgs/os-specific/linux/libcgroup/default.nix +++ b/pkgs/os-specific/linux/libcgroup/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, fetchpatch, pam, yacc, flex }: +{ lib, stdenv, fetchurl, fetchpatch, pam, bison, flex }: stdenv.mkDerivation rec { pname = "libcgroup"; @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { sha256 = "0lgvyq37gq84sk30sg18admxaj0j0p5dq3bl6g74a1ppgvf8pqz4"; }; - buildInputs = [ pam yacc flex ]; + buildInputs = [ pam bison flex ]; patches = [ (fetchpatch { diff --git a/pkgs/os-specific/linux/libfabric/default.nix b/pkgs/os-specific/linux/libfabric/default.nix index 0bc1ed123dc..9a1e44f6af9 100644 --- a/pkgs/os-specific/linux/libfabric/default.nix +++ b/pkgs/os-specific/linux/libfabric/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "libfabric"; - version = "1.12.0"; + version = "1.12.1"; enableParallelBuilding = true; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { owner = "ofiwg"; repo = pname; rev = "v${version}"; - sha256 = "sha256-OFp6nEW5D8vjglqLRbEgKryb2/KFuJD8Zn6rkpcuPh0="; + sha256 = "sha256-J2PoDwjPWYpagX4M2k9E1xitBzgRUZzwX9Gf00H+Tdc="; }; nativeBuildInputs = [ pkg-config autoreconfHook ] ; diff --git a/pkgs/os-specific/linux/libnl/default.nix b/pkgs/os-specific/linux/libnl/default.nix index b7d08344e40..b40b3c46e77 100644 --- a/pkgs/os-specific/linux/libnl/default.nix +++ b/pkgs/os-specific/linux/libnl/default.nix @@ -1,5 +1,5 @@ { stdenv, file, lib, fetchFromGitHub, autoreconfHook, bison, flex, pkg-config -, pythonSupport ? false, swig ? null, python}: +, pythonSupport ? false, swig ? null, python ? null}: stdenv.mkDerivation rec { pname = "libnl"; @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { postBuild = lib.optionalString (pythonSupport) '' cd python - ${python}/bin/python setup.py install --prefix=../pythonlib + ${python.interpreter} setup.py install --prefix=../pythonlib cd - ''; diff --git a/pkgs/os-specific/linux/libselinux/default.nix b/pkgs/os-specific/linux/libselinux/default.nix index 6582c6d8e8d..2c9239b2e7d 100644 --- a/pkgs/os-specific/linux/libselinux/default.nix +++ b/pkgs/os-specific/linux/libselinux/default.nix @@ -35,15 +35,16 @@ stdenv.mkDerivation rec { "MAN3DIR=$(man)/share/man/man3" "MAN5DIR=$(man)/share/man/man5" "MAN8DIR=$(man)/share/man/man8" - "PYTHON=${python3.pythonForBuild}/bin/python" - "PYTHONLIBDIR=$(py)/${python3.sitePackages}" "SBINDIR=$(bin)/sbin" "SHLIBDIR=$(out)/lib" "LIBSEPOLA=${lib.getLib libsepol}/lib/libsepol.a" + ] ++ optionals enablePython [ + "PYTHON=${python3.pythonForBuild.interpreter}" + "PYTHONLIBDIR=$(py)/${python3.sitePackages}" ]; - preInstall = '' + preInstall = optionalString enablePython '' mkdir -p $py/${python3.sitePackages}/selinux ''; diff --git a/pkgs/os-specific/linux/lm-sensors/default.nix b/pkgs/os-specific/linux/lm-sensors/default.nix index 34ad80a6c00..21324a5d6ce 100644 --- a/pkgs/os-specific/linux/lm-sensors/default.nix +++ b/pkgs/os-specific/linux/lm-sensors/default.nix @@ -35,5 +35,6 @@ stdenv.mkDerivation rec { license = with licenses; [ lgpl21Plus gpl2Plus ]; maintainers = with maintainers; [ pengmeiyu ]; platforms = platforms.linux; + mainProgram = "sensors"; }; } diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix index e6bdd70b915..bad7622771a 100644 --- a/pkgs/os-specific/linux/lxc/default.nix +++ b/pkgs/os-specific/linux/lxc/default.nix @@ -9,11 +9,11 @@ with lib; stdenv.mkDerivation rec { pname = "lxc"; - version = "4.0.6"; + version = "4.0.9"; src = fetchurl { url = "https://linuxcontainers.org/downloads/lxc/lxc-${version}.tar.gz"; - sha256 = "0qz4l7mlhq7hx53q606qgvkyzyr01glsw290v8ppzvxn1fydlrci"; + sha256 = "0az56xpvhqiwmf9wfxzaz89s5idrgd9ynd13psscw3hlx480dkqz"; }; nativeBuildInputs = [ diff --git a/pkgs/os-specific/linux/lxcfs/default.nix b/pkgs/os-specific/linux/lxcfs/default.nix index bcc86b72de0..440e81266c8 100644 --- a/pkgs/os-specific/linux/lxcfs/default.nix +++ b/pkgs/os-specific/linux/lxcfs/default.nix @@ -5,13 +5,13 @@ with lib; stdenv.mkDerivation rec { pname = "lxcfs"; - version = "4.0.7"; + version = "4.0.8"; src = fetchFromGitHub { owner = "lxc"; repo = "lxcfs"; rev = "lxcfs-${version}"; - sha256 = "sha256-gC1Q+kG/oKfYvuHVKstpRWfL/thsemULrimPrV/eeaI="; + sha256 = "sha256-8Tack2gM3AU3coGXs5hEbAaBCo5ss1sGUFFEjZDn5Lg="; }; nativeBuildInputs = [ pkg-config help2man autoreconfHook makeWrapper ]; diff --git a/pkgs/os-specific/linux/macchanger/default.nix b/pkgs/os-specific/linux/macchanger/default.nix index 5c3646f7b3c..1c516707049 100644 --- a/pkgs/os-specific/linux/macchanger/default.nix +++ b/pkgs/os-specific/linux/macchanger/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, texinfo }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, texinfo }: stdenv.mkDerivation rec { pname = "macchanger"; @@ -11,15 +11,38 @@ stdenv.mkDerivation rec { sha256 = "1hypx6sxhd2b1nsxj314hpkhj7q4x9p2kfaaf20rjkkkig0nck9r"; }; + patches = [ + (fetchpatch { + url = "https://sources.debian.org/data/main/m/macchanger/1.7.0-5.3/debian/patches/02-fix_usage_message.patch"; + sha256 = "0pxljmq0l0znylbhms09i19qwil74gm8gx3xx2ffx00dajaizj18"; + }) + (fetchpatch { + url = "https://sources.debian.org/data/main/m/macchanger/1.7.0-5.3/debian/patches/06-update_OUI_list.patch"; + sha256 = "04kbd784z9nwkjva5ckkvb0yb3pim9valb1viywn1yyh577d0y7w"; + }) + (fetchpatch { + url = "https://sources.debian.org/data/main/m/macchanger/1.7.0-5.3/debian/patches/08-fix_random_MAC_choice.patch"; + sha256 = "1vz3appxxsdf1imzrn57amazfwlbrvx6g78b6n88aqgwzy5dm34d"; + }) + (fetchpatch { + url = "https://sources.debian.org/data/main/m/macchanger/1.7.0-5.3/debian/patches/check-random-device-read-errors.patch"; + sha256 = "0pra6qnk39crjlidspg3l6hpaqiw43cypahx793l59mqn956cngc"; + }) + (fetchpatch { + url = "https://sources.debian.org/data/main/m/macchanger/1.7.0-5.3/debian/patches/verify-changed-MAC.patch"; + sha256 = "0vjhf2fnj1hlghjl821p6idrfc8hmd4lgps5lf1l68ylqvwjw0zj"; + }) + ]; + nativeBuildInputs = [ autoreconfHook texinfo ]; outputs = [ "out" "info" ]; meta = with lib; { description = "A utility for viewing/manipulating the MAC address of network interfaces"; - maintainers = with maintainers; [ joachifm ma27 ]; + maintainers = with maintainers; [ joachifm ma27 dotlambda ]; license = licenses.gpl2Plus; - homepage = "https://www.gnu.org/software/macchanger"; + homepage = "https://github.com/alobbs/macchanger"; platforms = platforms.linux; }; } diff --git a/pkgs/os-specific/linux/mdevd/default.nix b/pkgs/os-specific/linux/mdevd/default.nix new file mode 100644 index 00000000000..b88e3ad1e6f --- /dev/null +++ b/pkgs/os-specific/linux/mdevd/default.nix @@ -0,0 +1,28 @@ +{ lib, skawarePackages }: + +with skawarePackages; + +buildPackage { + pname = "mdevd"; + version = "0.1.3.0"; + sha256 = "0spvw27xxd0m6j8bl8xysmgsx18fl769smr6dsh25s2d5h3sp2dy"; + + description = "mdev-compatible Linux hotplug manager daemon"; + platforms = lib.platforms.linux; + + outputs = [ "bin" "out" "dev" "doc" ]; + + configureFlags = [ + "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps" + "--with-include=${skalibs.dev}/include" + "--with-lib=${skalibs.lib}/lib" + ]; + + postInstall = '' + # remove all mdevd executables from build directory + rm $(find -type f -mindepth 1 -maxdepth 1 -executable) + + mv doc $doc/share/doc/mdevd/html + mv examples $doc/share/doc/mdevd/examples + ''; +} diff --git a/pkgs/os-specific/linux/multipath-tools/default.nix b/pkgs/os-specific/linux/multipath-tools/default.nix index 4784abc6c28..24149805723 100644 --- a/pkgs/os-specific/linux/multipath-tools/default.nix +++ b/pkgs/os-specific/linux/multipath-tools/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, pkg-config, perl, lvm2, libaio, gzip, readline, systemd, liburcu, json_c }: +{ lib, stdenv, fetchurl, pkg-config, perl, lvm2, libaio, gzip, readline, systemd, liburcu, json_c, kmod }: stdenv.mkDerivation rec { pname = "multipath-tools"; @@ -16,7 +16,13 @@ stdenv.mkDerivation rec { ]; postPatch = '' - substituteInPlace libmultipath/Makefile --replace /usr/include/libdevmapper.h ${lib.getDev lvm2}/include/libdevmapper.h + substituteInPlace libmultipath/Makefile \ + --replace /usr/include/libdevmapper.h ${lib.getDev lvm2}/include/libdevmapper.h + + substituteInPlace multipathd/multipathd.service \ + --replace /sbin/modprobe ${lib.getBin kmod}/sbin/modprobe \ + --replace /sbin/multipathd "$out/bin/multipathd" + sed -i -re ' s,^( *#define +DEFAULT_MULTIPATHDIR\>).*,\1 "'"$out/lib/multipath"'", ' libmultipath/defaults.h diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix index c2d2996c54d..7b5f6e72001 100644 --- a/pkgs/os-specific/linux/nfs-utils/default.nix +++ b/pkgs/os-specific/linux/nfs-utils/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, fetchpatch, lib, pkg-config, util-linux, libcap, libtirpc, libevent -, sqlite, kerberos, kmod, libuuid, keyutils, lvm2, systemd, coreutils, tcp_wrappers +, sqlite, libkrb5, kmod, libuuid, keyutils, lvm2, systemd, coreutils, tcp_wrappers , python3, buildPackages, nixosTests, rpcsvc-proto , enablePython ? true }: @@ -25,7 +25,7 @@ stdenv.mkDerivation rec { buildInputs = [ libtirpc libcap libevent sqlite lvm2 - libuuid keyutils kerberos tcp_wrappers + libuuid keyutils libkrb5 tcp_wrappers ] ++ lib.optional enablePython python3; enableParallelBuilding = true; @@ -33,15 +33,15 @@ stdenv.mkDerivation rec { preConfigure = '' substituteInPlace configure \ - --replace '$dir/include/gssapi' ${lib.getDev kerberos}/include/gssapi \ - --replace '$dir/bin/krb5-config' ${lib.getDev kerberos}/bin/krb5-config + --replace '$dir/include/gssapi' ${lib.getDev libkrb5}/include/gssapi \ + --replace '$dir/bin/krb5-config' ${lib.getDev libkrb5}/bin/krb5-config ''; configureFlags = [ "--enable-gss" "--enable-svcgss" "--with-statedir=/var/lib/nfs" - "--with-krb5=${lib.getLib kerberos}" + "--with-krb5=${lib.getLib libkrb5}" "--with-systemd=${placeholder "out"}/etc/systemd/system" "--enable-libmount-mount" "--with-pluginpath=${placeholder "lib"}/lib/libnfsidmap" # this installs libnfsidmap @@ -106,7 +106,7 @@ stdenv.mkDerivation rec { # https://bugzilla.kernel.org/show_bug.cgi?id=203793 doCheck = false; - disallowedReferences = [ (lib.getDev kerberos) ]; + disallowedReferences = [ (lib.getDev libkrb5) ]; passthru.tests = { nfs3-simple = nixosTests.nfs3.simple; diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 1da25db7ae3..765118be119 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -28,18 +28,18 @@ rec { # Policy: use the highest stable version as the default (on our master). stable = if stdenv.hostPlatform.system == "x86_64-linux" then generic { - version = "460.67"; - sha256_64bit = "L2cRySVw7mgYSN25mJV+b4uOeHTdjLGvFPEkwyFgtec="; - settingsSha256 = "DB+ZeKm6cYQuVkJWjVd71qOTOmwIcRqx1CxfkgMbDpg="; - persistencedSha256 = "HCmZZRlNhOHi5yN2lNHhBILZkdng73q0vCbv7CIX/8s="; + version = "460.73.01"; + sha256_64bit = "120ymf59l6nipczszf82lrm2p4ihhqyv2pfwwfg9wy96vqcckc8i"; + settingsSha256 = "08jh7g34p9yxv5fh1cw0r2pjx65ryiv3w2lk1qg0gxn2r7xypkx0"; + persistencedSha256 = "040gx4wqp3hxcfb4aba4sl7b01ixr5slhzw0xldwcqlmhpwqphi5"; } else legacy_390; beta = generic { - version = "460.27.04"; - sha256_64bit = "plTqtc5QZQwM0f3MeMZV0N5XOiuSXCCDklL/qyy8HM8="; - settingsSha256 = "hU9J0VSrLXs7N14zq6U5LbBLZXEIyTfih/Bj6eFcMf0="; - persistencedSha256 = "PmqhoPskqhJe2FxMrQh9zX1BWQCR2kkfDwvA89+XALA="; + version = "465.27"; + sha256_64bit = "fmn/qFve5qqqa26n4dsoOwGZ+ash5Bon3JBI8kncMXE="; + settingsSha256 = "3BFLCx0dcrQY4Mv1joMsiVPwTPyufgsNT5pFgp1Mk/A="; + persistencedSha256 = "HtoFGTiBnAeQyRTOMlve5poaQh63LHRD+DHJxZO+c90="; }; # Vulkan developer beta driver @@ -56,11 +56,11 @@ rec { # Last one supporting x86 legacy_390 = generic { - version = "390.138"; - sha256_32bit = "0y3qjygl0kfz9qs0rp9scn1k3l8ym9dib7wpkyh5gs4klcip7xkv"; - sha256_64bit = "0rnnb5l4i8s76vlg6yvlrxhm2x9wdqw7k5hgf4fyaa3cr3k1kysz"; - settingsSha256 = "0ad6hwl56nvbdv9g85lw7ywadqvc2gaq9x6d2vjcia9kg4vrmfqx"; - persistencedSha256 = "15jciyq6i3pz1g67xzqlwmc62v3xswzhjcqmfcdndvlvhcibsimr"; + version = "390.143"; + sha256_32bit = "AelrdTTeo/3+ZdXK0iniZDB8gJUkeZQtNoRm25z+bQY="; + sha256_64bit = "tyKqcPM71ErK8ZZHLPtxmgrWzv6tfEmxBRveCSwTlO8="; + settingsSha256 = "EJPXZbxZS1CMENAYk9dCAIsHsRTXJpj473+JLuhGkWI="; + persistencedSha256 = "FtlPF3jCNr18NnImTmr8zJsaK9wbj/aWZ9LwoLr5SeE="; }; legacy_340 = generic { diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix index 75453d955ad..2d325ab3d56 100644 --- a/pkgs/os-specific/linux/nvidia-x11/generic.nix +++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix @@ -51,7 +51,7 @@ let src = if stdenv.hostPlatform.system == "x86_64-linux" then fetchurl { - url = args.url or "https://download.nvidia.com/XFree86/Linux-x86_64/${version}/NVIDIA-Linux-x86_64-${version}${pkgSuffix}.run"; + url = args.url or "https://us.download.nvidia.com/XFree86/Linux-x86_64/${version}/NVIDIA-Linux-x86_64-${version}${pkgSuffix}.run"; sha256 = sha256_64bit; } else if stdenv.hostPlatform.system == "i686-linux" then diff --git a/pkgs/os-specific/linux/nvme-cli/default.nix b/pkgs/os-specific/linux/nvme-cli/default.nix index 5e8bb550cf9..3a306508488 100644 --- a/pkgs/os-specific/linux/nvme-cli/default.nix +++ b/pkgs/os-specific/linux/nvme-cli/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "nvme-cli"; - version = "1.13"; + version = "1.14"; src = fetchFromGitHub { owner = "linux-nvme"; repo = "nvme-cli"; rev = "v${version}"; - sha256 = "1d538kp841bjh8h8d9q7inqz56rdcwb3m78zfx8607ddykv7wcqb"; + sha256 = "0dpadz945482srqpsbfx1bh7rc499fgpyzz1flhk9g9xjbpapkzc"; }; nativeBuildInputs = [ pkg-config ]; @@ -35,6 +35,6 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = with maintainers; [ primeos tavyc ]; + maintainers = with maintainers; [ mic92 ]; }; } diff --git a/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix b/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix index cb5719c31a2..511dd162785 100644 --- a/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix +++ b/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix @@ -10,12 +10,12 @@ buildGoModule rec { pname = "oci-seccomp-bpf-hook"; - version = "1.2.1"; + version = "1.2.3"; src = fetchFromGitHub { owner = "containers"; repo = "oci-seccomp-bpf-hook"; rev = "v${version}"; - sha256 = "0zbrpv6j4gd4l36zl2dljazdm85qlqwchf0xvmnaywcj8c8b49xw"; + sha256 = "sha256-EKD6tkdQCPlVlb9ScvRwDxYAtbbv9PIqBHH6SvtPDsE="; }; vendorSha256 = null; @@ -56,6 +56,5 @@ buildGoModule rec { license = licenses.asl20; maintainers = with maintainers; [ saschagrunert ]; platforms = platforms.linux; - badPlatforms = [ "aarch64-linux" ]; }; } diff --git a/pkgs/os-specific/linux/openvswitch/default.nix b/pkgs/os-specific/linux/openvswitch/default.nix index 25410553486..5faccc14ce7 100644 --- a/pkgs/os-specific/linux/openvswitch/default.nix +++ b/pkgs/os-specific/linux/openvswitch/default.nix @@ -8,12 +8,12 @@ let _kernel = kernel; pythonEnv = python3.withPackages (ps: with ps; [ six ]); in stdenv.mkDerivation rec { - version = "2.14.1"; + version = "2.14.2"; pname = "openvswitch"; src = fetchurl { url = "https://www.openvswitch.org/releases/${pname}-${version}.tar.gz"; - sha256 = "sha256-GAttQsCrSybyH1i4vzszdiA9dHWqeo7xUTZVFMNQiP4="; + sha256 = "sha256-ZfQg+VTiUNiV+y2yKhMuHLVgvF4rkFHoNFETSBCOWXo="; }; kernel = optional (_kernel != null) _kernel.dev; diff --git a/pkgs/os-specific/linux/openvswitch/lts.nix b/pkgs/os-specific/linux/openvswitch/lts.nix index f379633e198..15c6c05b061 100644 --- a/pkgs/os-specific/linux/openvswitch/lts.nix +++ b/pkgs/os-specific/linux/openvswitch/lts.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchurl, makeWrapper, pkg-config, util-linux, which -, procps, libcap_ng, openssl, python2, iproute , perl +, procps, libcap_ng, openssl, python2, perl , automake, autoconf, libtool, kernel ? null }: with lib; @@ -7,12 +7,12 @@ with lib; let _kernel = kernel; in stdenv.mkDerivation rec { - version = "2.5.9"; + version = "2.5.12"; pname = "openvswitch"; src = fetchurl { url = "https://www.openvswitch.org/releases/${pname}-${version}.tar.gz"; - sha256 = "0iv0ncwl6s4qyyb655yj5xvqrjr1zbymmab96q259wa09xnyw7b7"; + sha256 = "0a8wa1lj5p28x3vq0yaxjhqmppp4hvds6hhm0j3czpp8mc09fsfq"; }; patches = [ ./patches/lts-ssl.patch ]; diff --git a/pkgs/os-specific/linux/pam_krb5/default.nix b/pkgs/os-specific/linux/pam_krb5/default.nix index c0b8ce272d7..cb04fa5b424 100644 --- a/pkgs/os-specific/linux/pam_krb5/default.nix +++ b/pkgs/os-specific/linux/pam_krb5/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, pam, kerberos }: +{ lib, stdenv, fetchurl, pam, libkrb5 }: stdenv.mkDerivation rec { name = "pam-krb5-4.10"; @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "09wzxd5zrj5bzqpb01qf148npj5k8hmd2bx2ij1qsy40hdxqyq79"; }; - buildInputs = [ pam kerberos ]; + buildInputs = [ pam libkrb5 ]; meta = with lib; { homepage = "https://www.eyrie.org/~eagle/software/pam-krb5/"; diff --git a/pkgs/os-specific/linux/pcmciautils/default.nix b/pkgs/os-specific/linux/pcmciautils/default.nix index ff3100cbb22..a4da6be691e 100644 --- a/pkgs/os-specific/linux/pcmciautils/default.nix +++ b/pkgs/os-specific/linux/pcmciautils/default.nix @@ -1,5 +1,5 @@ { config, lib, stdenv, fetchurl -, yacc, flex +, bison, flex , sysfsutils, kmod, udev , firmware ? config.pcmciaUtils.firmware or [] # Special pcmcia cards. , configOpts ? config.pcmciaUtils.config or null # Special hardware (map memory & port & irq) @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { sha256 = "0sfm3w2n73kl5w7gb1m6q8gy5k4rgwvzz79n6yhs9w3sag3ix8sk"; }; - buildInputs = [udev yacc sysfsutils kmod flex]; + buildInputs = [udev bison sysfsutils kmod flex]; patchPhase = '' sed -i " diff --git a/pkgs/os-specific/linux/pipework/default.nix b/pkgs/os-specific/linux/pipework/default.nix index e58b97654af..33192392888 100644 --- a/pkgs/os-specific/linux/pipework/default.nix +++ b/pkgs/os-specific/linux/pipework/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchFromGitHub, makeWrapper -, bridge-utils, iproute, lxc, openvswitch, docker, busybox, dhcpcd, dhcp +, bridge-utils, iproute2, lxc, openvswitch, docker, busybox, dhcpcd, dhcp }: stdenv.mkDerivation { @@ -15,7 +15,7 @@ stdenv.mkDerivation { installPhase = '' install -D pipework $out/bin/pipework wrapProgram $out/bin/pipework --prefix PATH : \ - ${lib.makeBinPath [ bridge-utils iproute lxc openvswitch docker busybox dhcpcd dhcp ]}; + ${lib.makeBinPath [ bridge-utils iproute2 lxc openvswitch docker busybox dhcpcd dhcp ]}; ''; meta = with lib; { description = "Software-Defined Networking tools for LXC"; diff --git a/pkgs/os-specific/linux/ply/default.nix b/pkgs/os-specific/linux/ply/default.nix index 2844badc730..e62716e4796 100644 --- a/pkgs/os-specific/linux/ply/default.nix +++ b/pkgs/os-specific/linux/ply/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, kernel, fetchFromGitHub, autoreconfHook, yacc, flex, p7zip, rsync }: +{ lib, stdenv, kernel, fetchFromGitHub, autoreconfHook, bison, flex, p7zip, rsync }: assert kernel != null -> lib.versionAtLeast kernel.version "4.0"; @@ -7,7 +7,7 @@ let in stdenv.mkDerivation { pname = "ply"; inherit version; - nativeBuildInputs = [ autoreconfHook flex yacc p7zip rsync ]; + nativeBuildInputs = [ autoreconfHook flex bison p7zip rsync ]; src = fetchFromGitHub { owner = "iovisor"; diff --git a/pkgs/os-specific/linux/power-profiles-daemon/default.nix b/pkgs/os-specific/linux/power-profiles-daemon/default.nix index c477e6f3679..03267b8e9ae 100644 --- a/pkgs/os-specific/linux/power-profiles-daemon/default.nix +++ b/pkgs/os-specific/linux/power-profiles-daemon/default.nix @@ -15,11 +15,12 @@ , libxslt , upower , systemd +, python3 }: stdenv.mkDerivation rec { pname = "power-profiles-daemon"; - version = "0.1"; + version = "0.8.1"; outputs = [ "out" "devdoc" ]; @@ -28,7 +29,7 @@ stdenv.mkDerivation rec { owner = "hadess"; repo = "power-profiles-daemon"; rev = version; - sha256 = "012w3aryw5d43dr9jj5i6wy2a0n21jidr4ggs9ix7d4z9byr175w"; + sha256 = "sha256-OnCUr7KWVPpYGDseBUcJD/PdOobvFnyNA97NhnKbTKY="; }; nativeBuildInputs = [ @@ -49,6 +50,7 @@ stdenv.mkDerivation rec { systemd upower glib + (python3.withPackages (ps: with ps; [ ps.pygobject3 ])) # for cli tool ]; mesonFlags = [ diff --git a/pkgs/os-specific/linux/radeontop/default.nix b/pkgs/os-specific/linux/radeontop/default.nix index e6aa07e6cd1..b172fad6adc 100644 --- a/pkgs/os-specific/linux/radeontop/default.nix +++ b/pkgs/os-specific/linux/radeontop/default.nix @@ -40,6 +40,5 @@ stdenv.mkDerivation rec { homepage = "https://github.com/clbr/radeontop"; platforms = platforms.linux; license = licenses.gpl3; - maintainers = with maintainers; [ rycee ]; }; } diff --git a/pkgs/os-specific/linux/raspberrypi-eeprom/default.nix b/pkgs/os-specific/linux/raspberrypi-eeprom/default.nix index ee5ead73bc1..90af44f8353 100644 --- a/pkgs/os-specific/linux/raspberrypi-eeprom/default.nix +++ b/pkgs/os-specific/linux/raspberrypi-eeprom/default.nix @@ -3,13 +3,13 @@ }: stdenvNoCC.mkDerivation { pname = "raspberrypi-eeprom"; - version = "2020-12-11"; + version = "2021-03-18"; src = fetchFromGitHub { owner = "raspberrypi"; repo = "rpi-eeprom"; - rev = "54a9796abbee59067bff9da6b90c1014178f2c21"; - sha256 = "0yp7bn444n6yisp4hiblrm00rrvrf213amzb4sh96mlb5nhxspqk"; + rev = "ff27ccf69403b01e337fc4ee6e7ae75244028cce"; + sha256 = "1q1vlld0xxh9zinf5g0qa6jw1dggq93br938mvrfx3nb2aviiwcj"; }; buildInputs = [ python3 ]; @@ -28,7 +28,6 @@ stdenvNoCC.mkDerivation { cp rpi-eeprom-config rpi-eeprom-update $out/bin cp -r firmware/{beta,critical,old,stable} $out/share/rpi-eeprom - cp -r firmware/vl805 $out/bin ''; fixupPhase = '' diff --git a/pkgs/os-specific/linux/rdma-core/default.nix b/pkgs/os-specific/linux/rdma-core/default.nix index aef87e7c82d..dff451a01d3 100644 --- a/pkgs/os-specific/linux/rdma-core/default.nix +++ b/pkgs/os-specific/linux/rdma-core/default.nix @@ -1,6 +1,5 @@ { lib, stdenv, fetchFromGitHub, cmake, pkg-config, docutils -, pandoc, ethtool, iproute, libnl, udev, python3, perl -, makeWrapper +, pandoc, ethtool, iproute2, libnl, udev, python3, perl } : let @@ -17,8 +16,8 @@ in stdenv.mkDerivation { sha256 = "sha256-2HFtj595sDmWqAewIMwKMaiSDVVWKdQA9l0QsPcw8qA="; }; - nativeBuildInputs = [ cmake pkg-config pandoc docutils makeWrapper ]; - buildInputs = [ libnl ethtool iproute udev python3 perl ]; + nativeBuildInputs = [ cmake pkg-config pandoc docutils ]; + buildInputs = [ libnl ethtool iproute2 udev python3 perl ]; cmakeFlags = [ "-DCMAKE_INSTALL_RUNDIR=/run" @@ -39,7 +38,8 @@ in stdenv.mkDerivation { postFixup = '' for pls in $out/bin/{ibfindnodesusing.pl,ibidsverify.pl}; do echo "wrapping $pls" - wrapProgram $pls --prefix PERL5LIB : "$out/${perl.libPrefix}" + substituteInPlace $pls --replace \ + "${perl}/bin/perl" "${perl}/bin/perl -I $out/${perl.libPrefix}" done ''; diff --git a/pkgs/os-specific/linux/rtl88x2bu/default.nix b/pkgs/os-specific/linux/rtl88x2bu/default.nix index fb94b14d9ea..cc37ef13d50 100644 --- a/pkgs/os-specific/linux/rtl88x2bu/default.nix +++ b/pkgs/os-specific/linux/rtl88x2bu/default.nix @@ -1,24 +1,16 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch, kernel, bc }: +{ lib, stdenv, fetchFromGitHub, kernel, bc }: stdenv.mkDerivation rec { name = "rtl88x2bu-${kernel.version}-${version}"; - version = "unstable-2020-08-20"; + version = "unstable-2021-01-21"; src = fetchFromGitHub { owner = "cilynx"; repo = "rtl88x2BU"; - rev = "a1c53f43fb9995fbe3ad26567079d6384626d350"; - sha256 = "1cby66jg511zxs1i535mflafhryla9764mnrzacxppimxpancv3s"; + rev = "48e7c19c92a77554403e1347447f8e2cfd780228"; + sha256 = "0nw2kgblpq6qlr43gbfxqvq0c83664f4czfwzsyfjr47rj00iyq7"; }; - patches = [ - # https://github.com/cilynx/rtl88x2bu/pull/58 - (fetchpatch { - url = "https://github.com/cilynx/rtl88x2bu/pull/58.patch"; - sha256 = "0md9cv61nx85pk3v60y9wviyb9fgj54q9m26wiv3dc7smr70h8l6"; - }) - ]; - hardeningDisable = [ "pic" ]; nativeBuildInputs = [ bc ]; @@ -39,7 +31,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Realtek rtl88x2bu driver"; homepage = "https://github.com/cilynx/rtl88x2bu"; - license = licenses.gpl2; + license = licenses.gpl2Only; platforms = platforms.linux; maintainers = [ maintainers.ralith ]; }; diff --git a/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix b/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix index c37c9502d2d..3371a2263df 100644 --- a/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix +++ b/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix @@ -2,14 +2,14 @@ stdenv.mkDerivation rec { name = "rtl88xxau-aircrack-${kernel.version}-${version}"; - rev = "fc0194c1d90453bf4943089ca237159ef19a7374"; + rev = "c0ce81745eb3471a639f0efd4d556975153c666e"; version = "${builtins.substring 0 6 rev}"; src = fetchFromGitHub { owner = "aircrack-ng"; repo = "rtl8812au"; inherit rev; - sha256 = "0hf7mrvxaskc6qcjar5w81y9xc7s2rlsxp34achyqly2hjg7fgmy"; + sha256 = "131cwwg3czq0i1xray20j71n836g93ac064nvf8wi13c2wr36ppc"; }; buildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/os-specific/linux/rtw88/default.nix b/pkgs/os-specific/linux/rtw88/default.nix index 6b5e3211a9e..42302351240 100644 --- a/pkgs/os-specific/linux/rtw88/default.nix +++ b/pkgs/os-specific/linux/rtw88/default.nix @@ -5,13 +5,13 @@ let in stdenv.mkDerivation { pname = "rtw88"; - version = "unstable-2021-04-01"; + version = "unstable-2021-04-19"; src = fetchFromGitHub { owner = "lwfinger"; repo = "rtw88"; - rev = "689ce370b0c2da207bb092065697f6cb455a00dc"; - hash = "sha256-gdfQxpzYJ9bEObc2iEapA0TPMZuXndBvEu6qwKqdhyo="; + rev = "0f3cc6a5973bc386d9cb542fc85a6ba027edff5d"; + hash = "sha256-PRzWXC1lre8gt1GfVdnaG836f5YK57P9a8tG20yef0w="; }; makeFlags = [ "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ]; diff --git a/pkgs/os-specific/linux/sd-switch/default.nix b/pkgs/os-specific/linux/sd-switch/default.nix index a58b7efa7b3..faa766ecd97 100644 --- a/pkgs/os-specific/linux/sd-switch/default.nix +++ b/pkgs/os-specific/linux/sd-switch/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "sd-switch"; - version = "0.2.0"; + version = "0.2.1"; src = fetchFromGitLab { owner = "rycee"; repo = pname; rev = version; - sha256 = "1bhks4ma3sn95bsszs6lj9cwfr8zgmja0hqfp8xr5iq77ww2p6k3"; + sha256 = "0sg1y8lb2pnll3408fbqp65acys31mrlzsqfrwm4nvbkayf0jcv3"; }; - cargoSha256 = "0lskxakzh3yji0rzk8jcfz1sv4j19b5kmdsaj7401m5w84s1cbjw"; + cargoSha256 = "16yb61wihg06i2h9vjqcsjqkjjpmxyv4df22i25034gkcgb20xcn"; nativeBuildInputs = [ pkg-config ]; buildInputs = [ dbus ]; diff --git a/pkgs/os-specific/linux/shadow/default.nix b/pkgs/os-specific/linux/shadow/default.nix index 0ff6fa1f341..e20023b2b6e 100644 --- a/pkgs/os-specific/linux/shadow/default.nix +++ b/pkgs/os-specific/linux/shadow/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, nixosTests, fetchpatch, fetchFromGitHub, autoreconfHook, libxslt -, libxml2 , docbook_xml_dtd_45, docbook_xsl, itstool, flex, bison +, libxml2 , docbook_xml_dtd_45, docbook_xsl, itstool, flex, bison, runtimeShell , pam ? null, glibcCross ? null }: @@ -38,8 +38,11 @@ stdenv.mkDerivation rec { # Obtain XML resources from XML catalog (patch adapted from gtk-doc) ./respect-xml-catalog-files-var.patch dots_in_usernames + ./runtime-shell.patch ]; + RUNTIME_SHELL = runtimeShell; + # The nix daemon often forbids even creating set[ug]id files. postPatch = ''sed 's/^\(s[ug]idperms\) = [0-9]755/\1 = 0755/' -i src/Makefile.am @@ -77,6 +80,8 @@ stdenv.mkDerivation rec { mv $out/bin/su $su/bin ''; + disallowedReferences = lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) stdenv.shellPackage; + meta = with lib; { homepage = "https://github.com/shadow-maint"; description = "Suite containing authentication-related tools such as passwd and su"; diff --git a/pkgs/os-specific/linux/shadow/runtime-shell.patch b/pkgs/os-specific/linux/shadow/runtime-shell.patch new file mode 100644 index 00000000000..0b2e68e330e --- /dev/null +++ b/pkgs/os-specific/linux/shadow/runtime-shell.patch @@ -0,0 +1,13 @@ +diff --git a/configure.ac b/configure.ac +index e4c6aaec..03883ad7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -682,7 +682,7 @@ if test "$enable_utmpx" = "yes"; then + [Define if utmpx should be used]) + fi + +-AC_DEFINE_UNQUOTED(SHELL, ["$SHELL"], [The default shell.]) ++AC_DEFINE_UNQUOTED(SHELL, ["$RUNTIME_SHELL"], [The runtime shell.]) + + AM_GNU_GETTEXT_VERSION(0.16) + AM_GNU_GETTEXT([external], [need-ngettext]) diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix index 2973b87210b..d768546b12b 100644 --- a/pkgs/os-specific/linux/sssd/default.nix +++ b/pkgs/os-specific/linux/sssd/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchurl, fetchpatch, glibc, augeas, dnsutils, c-ares, curl, cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, nfs-utils, doxygen, python, python3, pam, popt, talloc, tdb, tevent, pkg-config, ldb, openldap, - pcre, kerberos, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2, + pcre, libkrb5, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2, libuuid, ldap, systemd, nspr, check, cmocka, uid_wrapper, nss_wrapper, ncurses, Po4a, http-parser, jansson, docbook_xsl, docbook_xml_dtd_44, @@ -62,7 +62,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; buildInputs = [ augeas dnsutils c-ares curl cyrus_sasl ding-libs libnl libunistring nss samba nfs-utils doxygen python python3 popt - talloc tdb tevent pkg-config ldb pam openldap pcre kerberos + talloc tdb tevent pkg-config ldb pam openldap pcre libkrb5 cifs-utils glib keyutils dbus fakeroot libxslt libxml2 libuuid ldap systemd nspr check cmocka uid_wrapper nss_wrapper ncurses Po4a http-parser jansson ]; diff --git a/pkgs/os-specific/linux/systemd/0001-Start-device-units-for-uninitialised-encrypted-devic.patch b/pkgs/os-specific/linux/systemd/0001-Start-device-units-for-uninitialised-encrypted-devic.patch index b3b241b570a..ac2d0018160 100644 --- a/pkgs/os-specific/linux/systemd/0001-Start-device-units-for-uninitialised-encrypted-devic.patch +++ b/pkgs/os-specific/linux/systemd/0001-Start-device-units-for-uninitialised-encrypted-devic.patch @@ -1,7 +1,7 @@ -From dd2ec741aaa7c587eb7719bbf4b305fe28168b77 Mon Sep 17 00:00:00 2001 +From 2f4a5e9c9ef1cd57662e8bd4c24e1029a00d55b5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Tue, 8 Jan 2013 15:46:30 +0100 -Subject: [PATCH 01/18] Start device units for uninitialised encrypted devices +Subject: [PATCH 01/19] Start device units for uninitialised encrypted devices This is necessary because the NixOS service that initialises the filesystem depends on the appearance of the device unit. Also, this @@ -13,7 +13,7 @@ unit. (However, this ignores the fsck unit, so it's not perfect...) 1 file changed, 4 deletions(-) diff --git a/rules.d/99-systemd.rules.in b/rules.d/99-systemd.rules.in -index d2f595d18e..941a7c1ba3 100644 +index 7c22eefdb7..e3a55e00b5 100644 --- a/rules.d/99-systemd.rules.in +++ b/rules.d/99-systemd.rules.in @@ -17,10 +17,6 @@ SUBSYSTEM=="ubi", TAG+="systemd" @@ -28,5 +28,5 @@ index d2f595d18e..941a7c1ba3 100644 SUBSYSTEM=="block", ENV{ID_PART_GPT_AUTO_ROOT}=="1", ENV{ID_FS_TYPE}!="crypto_LUKS", SYMLINK+="gpt-auto-root" SUBSYSTEM=="block", ENV{ID_PART_GPT_AUTO_ROOT}=="1", ENV{ID_FS_TYPE}=="crypto_LUKS", SYMLINK+="gpt-auto-root-luks" -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0002-Don-t-try-to-unmount-nix-or-nix-store.patch b/pkgs/os-specific/linux/systemd/0002-Don-t-try-to-unmount-nix-or-nix-store.patch index 1f3a1b64684..f54430f764e 100644 --- a/pkgs/os-specific/linux/systemd/0002-Don-t-try-to-unmount-nix-or-nix-store.patch +++ b/pkgs/os-specific/linux/systemd/0002-Don-t-try-to-unmount-nix-or-nix-store.patch @@ -1,7 +1,7 @@ -From ab3dab997695db5346f8efbf8566ac96612f0c6e Mon Sep 17 00:00:00 2001 +From 4e96b2e074c4a4f4ce900409872ce2f86704ee5b Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Fri, 12 Apr 2013 13:16:57 +0200 -Subject: [PATCH 02/18] Don't try to unmount /nix or /nix/store +Subject: [PATCH 02/19] Don't try to unmount /nix or /nix/store They'll still be remounted read-only. @@ -38,5 +38,5 @@ index 3a72a13e1a..541320dc9d 100644 || path_equal(path, "/usr") #endif -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0003-Fix-NixOS-containers.patch b/pkgs/os-specific/linux/systemd/0003-Fix-NixOS-containers.patch index 56f52b9971e..37caffb97d7 100644 --- a/pkgs/os-specific/linux/systemd/0003-Fix-NixOS-containers.patch +++ b/pkgs/os-specific/linux/systemd/0003-Fix-NixOS-containers.patch @@ -1,7 +1,7 @@ -From 3581f8f30270e6340c671a640fe551e954715f8e Mon Sep 17 00:00:00 2001 +From 3d1b2e56a6ed6cc86a64f6f89765a2900e576402 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Wed, 16 Apr 2014 10:59:28 +0200 -Subject: [PATCH 03/18] Fix NixOS containers +Subject: [PATCH 03/19] Fix NixOS containers In NixOS containers, the init script is bind-mounted into the container, so checking early whether it exists will fail. @@ -10,10 +10,10 @@ container, so checking early whether it exists will fail. 1 file changed, 2 insertions(+) diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index 0842731c18..f790853104 100644 +index 7515380fcd..14f8a82eb8 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c -@@ -5319,6 +5319,7 @@ static int run(int argc, char *argv[]) { +@@ -5323,6 +5323,7 @@ static int run(int argc, char *argv[]) { goto finish; } } else { @@ -21,7 +21,7 @@ index 0842731c18..f790853104 100644 const char *p, *q; if (arg_pivot_root_new) -@@ -5333,6 +5334,7 @@ static int run(int argc, char *argv[]) { +@@ -5337,6 +5338,7 @@ static int run(int argc, char *argv[]) { r = -EINVAL; goto finish; } @@ -30,5 +30,5 @@ index 0842731c18..f790853104 100644 } else { -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch b/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch index 4d3729556d6..2f14a9d6a7e 100644 --- a/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch +++ b/pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch @@ -1,17 +1,17 @@ -From 12b63d8c1d2ca85d9bb7ea07e8eb5e623e1b58e9 Mon Sep 17 00:00:00 2001 +From 3a721cf70e952e933ef5374006bbb11a3a0ad36a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Thu, 1 May 2014 14:10:10 +0200 -Subject: [PATCH 04/18] Look for fsck in the right place +Subject: [PATCH 04/19] Look for fsck in the right place --- src/fsck/fsck.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c -index 04752fe9dc..ad0ccf91c0 100644 +index 510689f3b7..25cab5acae 100644 --- a/src/fsck/fsck.c +++ b/src/fsck/fsck.c -@@ -369,7 +369,7 @@ static int run(int argc, char *argv[]) { +@@ -368,7 +368,7 @@ static int run(int argc, char *argv[]) { } else dash_c[0] = 0; @@ -21,5 +21,5 @@ index 04752fe9dc..ad0ccf91c0 100644 cmdline[i++] = "-T"; -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0005-Add-some-NixOS-specific-unit-directories.patch b/pkgs/os-specific/linux/systemd/0005-Add-some-NixOS-specific-unit-directories.patch index 3e40385c3bb..0acccacd613 100644 --- a/pkgs/os-specific/linux/systemd/0005-Add-some-NixOS-specific-unit-directories.patch +++ b/pkgs/os-specific/linux/systemd/0005-Add-some-NixOS-specific-unit-directories.patch @@ -1,7 +1,7 @@ -From 95e4533f1eeb6e0d509f9129d0133f0b849cc3c5 Mon Sep 17 00:00:00 2001 +From 8b7f881cf22e98e907506f4c403b9e304e332bf9 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Fri, 19 Dec 2014 14:46:17 +0100 -Subject: [PATCH 05/18] Add some NixOS-specific unit directories +Subject: [PATCH 05/19] Add some NixOS-specific unit directories Look in `/nix/var/nix/profiles/default/lib/systemd/{system,user}` for units provided by packages installed into the default profile via @@ -92,7 +92,7 @@ index 96b82170d0..bf66bd6b77 100644 if (!add) diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in -index f2c045511d..d38a3a0302 100644 +index b5cc8f94a5..a701cd05f8 100644 --- a/src/core/systemd.pc.in +++ b/src/core/systemd.pc.in @@ -38,10 +38,11 @@ systemdsystemconfdir=${systemd_system_conf_dir} @@ -110,5 +110,5 @@ index f2c045511d..d38a3a0302 100644 systemd_system_generator_dir=${root_prefix}/lib/systemd/system-generators -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0006-Get-rid-of-a-useless-message-in-user-sessions.patch b/pkgs/os-specific/linux/systemd/0006-Get-rid-of-a-useless-message-in-user-sessions.patch index 99e68c37c20..bda27ac1762 100644 --- a/pkgs/os-specific/linux/systemd/0006-Get-rid-of-a-useless-message-in-user-sessions.patch +++ b/pkgs/os-specific/linux/systemd/0006-Get-rid-of-a-useless-message-in-user-sessions.patch @@ -1,7 +1,7 @@ -From 3aeb3a10c4a7ad387b004bf41efbd171913bcca9 Mon Sep 17 00:00:00 2001 +From 7a6529ee27028860b93bc539e8bbf3f2374d712f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Mon, 11 May 2015 15:39:38 +0200 -Subject: [PATCH 06/18] Get rid of a useless message in user sessions +Subject: [PATCH 06/19] Get rid of a useless message in user sessions Namely lots of variants of @@ -27,5 +27,5 @@ index 45a417a090..8af3cb08d6 100644 /* A unit we need to run is gone. Sniff. Let's stop this. */ r = manager_add_job(u->manager, JOB_STOP, u, JOB_FAIL, NULL, &error, NULL); -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch b/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch index aeb734f94df..d51e1c0f566 100644 --- a/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch +++ b/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch @@ -1,7 +1,7 @@ -From a1454e8edb7a1a87093808dc7db540232147df3d Mon Sep 17 00:00:00 2001 +From 5580303956ca7d8eb431d23c2af0030c9cc0e6e9 Mon Sep 17 00:00:00 2001 From: Gabriel Ebner <gebner@gebner.org> Date: Sun, 6 Dec 2015 14:26:36 +0100 -Subject: [PATCH 07/18] hostnamed, localed, timedated: disable methods that +Subject: [PATCH 07/19] hostnamed, localed, timedated: disable methods that change system settings. --- @@ -69,7 +69,7 @@ index 736dacdee9..53e0ee935e 100644 model = empty_to_null(model); variant = empty_to_null(variant); diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c -index 8bfcfd5cdc..a0ee03f134 100644 +index 76fe04900d..e87c4c8919 100644 --- a/src/timedate/timedated.c +++ b/src/timedate/timedated.c @@ -646,6 +646,10 @@ static int method_set_timezone(sd_bus_message *m, void *userdata, sd_bus_error * @@ -90,10 +90,10 @@ index 8bfcfd5cdc..a0ee03f134 100644 + return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, + "Changing system settings via systemd is not supported on NixOS."); + - if (lrtc == c->local_rtc) + if (lrtc == c->local_rtc && !fix_system) return sd_bus_reply_method_return(m, NULL); -@@ -905,6 +912,9 @@ static int method_set_ntp(sd_bus_message *m, void *userdata, sd_bus_error *error +@@ -907,6 +914,9 @@ static int method_set_ntp(sd_bus_message *m, void *userdata, sd_bus_error *error if (r < 0) return r; @@ -104,5 +104,5 @@ index 8bfcfd5cdc..a0ee03f134 100644 if (r < 0) return r; -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0008-Fix-hwdb-paths.patch b/pkgs/os-specific/linux/systemd/0008-Fix-hwdb-paths.patch index 0da52477bb3..2b1c02b233c 100644 --- a/pkgs/os-specific/linux/systemd/0008-Fix-hwdb-paths.patch +++ b/pkgs/os-specific/linux/systemd/0008-Fix-hwdb-paths.patch @@ -1,7 +1,7 @@ -From 27680c555713e36d16198fc5f60b0f85e0777d30 Mon Sep 17 00:00:00 2001 +From 874698425f6d68fc0d662cb17c7c29e0af3e8c25 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov <ab@fmap.me> Date: Thu, 7 Jul 2016 02:47:13 +0300 -Subject: [PATCH 08/18] Fix hwdb paths +Subject: [PATCH 08/19] Fix hwdb paths Patch by vcunat. --- @@ -28,5 +28,5 @@ index cb3c77ce96..7b8c80071f 100644 _public_ int sd_hwdb_new(sd_hwdb **ret) { _cleanup_(sd_hwdb_unrefp) sd_hwdb *hwdb = NULL; -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0009-Change-usr-share-zoneinfo-to-etc-zoneinfo.patch b/pkgs/os-specific/linux/systemd/0009-Change-usr-share-zoneinfo-to-etc-zoneinfo.patch index 2b05cea435c..a1e8ec963c7 100644 --- a/pkgs/os-specific/linux/systemd/0009-Change-usr-share-zoneinfo-to-etc-zoneinfo.patch +++ b/pkgs/os-specific/linux/systemd/0009-Change-usr-share-zoneinfo-to-etc-zoneinfo.patch @@ -1,7 +1,7 @@ -From b423ce2560bd380abd80796a890454d95cd8926c Mon Sep 17 00:00:00 2001 +From 367d0dad3d1853048569e315931cb8a27e16a098 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov <ab@fmap.me> Date: Tue, 11 Oct 2016 13:12:08 +0300 -Subject: [PATCH 09/18] Change /usr/share/zoneinfo to /etc/zoneinfo +Subject: [PATCH 09/19] Change /usr/share/zoneinfo to /etc/zoneinfo NixOS uses this path. --- @@ -13,7 +13,7 @@ NixOS uses this path. 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/man/localtime.xml b/man/localtime.xml -index 73c1b8e5a3..4ab4276283 100644 +index e486474c44..5f373d0723 100644 --- a/man/localtime.xml +++ b/man/localtime.xml @@ -20,7 +20,7 @@ @@ -79,7 +79,7 @@ index 742b43f9fc..f2cb121816 100644 (void) mkdir_parents(etc_localtime, 0755); if (symlink(e, etc_localtime) < 0) diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index f790853104..74b51f4d28 100644 +index 14f8a82eb8..8632dadec6 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -1810,8 +1810,8 @@ static int userns_mkdir(const char *root, const char *path, mode_t mode, uid_t u @@ -94,7 +94,7 @@ index f790853104..74b51f4d28 100644 static bool etc_writable(void) { diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c -index a0ee03f134..9ecacad25e 100644 +index e87c4c8919..964a40ba81 100644 --- a/src/timedate/timedated.c +++ b/src/timedate/timedated.c @@ -269,7 +269,7 @@ static int context_read_data(Context *c) { @@ -128,5 +128,5 @@ index a0ee03f134..9ecacad25e 100644 return -ENOMEM; -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0010-localectl-use-etc-X11-xkb-for-list-x11.patch b/pkgs/os-specific/linux/systemd/0010-localectl-use-etc-X11-xkb-for-list-x11.patch index 1d17bc4cf77..334156495fc 100644 --- a/pkgs/os-specific/linux/systemd/0010-localectl-use-etc-X11-xkb-for-list-x11.patch +++ b/pkgs/os-specific/linux/systemd/0010-localectl-use-etc-X11-xkb-for-list-x11.patch @@ -1,7 +1,7 @@ -From aff592e0bf9a911e7f44ce07b66517c38456b627 Mon Sep 17 00:00:00 2001 +From bf285fe7e12bd22f95c14bcefbb5008888c32bfa Mon Sep 17 00:00:00 2001 From: Imuli <i@imu.li> Date: Wed, 19 Oct 2016 08:46:47 -0400 -Subject: [PATCH 10/18] localectl: use /etc/X11/xkb for list-x11-* +Subject: [PATCH 10/19] localectl: use /etc/X11/xkb for list-x11-* NixOS has an option to link the xkb data files to /etc/X11, but not to /usr/share/X11. @@ -23,5 +23,5 @@ index 7d2e887660..91c5139eed 100644 return log_error_errno(errno, "Failed to open keyboard mapping list. %m"); -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0011-build-don-t-create-statedir-and-don-t-touch-prefixdi.patch b/pkgs/os-specific/linux/systemd/0011-build-don-t-create-statedir-and-don-t-touch-prefixdi.patch index 8c185c52a27..902018ee4b9 100644 --- a/pkgs/os-specific/linux/systemd/0011-build-don-t-create-statedir-and-don-t-touch-prefixdi.patch +++ b/pkgs/os-specific/linux/systemd/0011-build-don-t-create-statedir-and-don-t-touch-prefixdi.patch @@ -1,17 +1,17 @@ -From d410a7a6d1bb0fe730c3ef690676232bfaa49f85 Mon Sep 17 00:00:00 2001 +From 293b19c5fdbda1b4ee579a7e8ba12f024a6f34c9 Mon Sep 17 00:00:00 2001 From: Franz Pletz <fpletz@fnordicwalking.de> Date: Sun, 11 Feb 2018 04:37:44 +0100 -Subject: [PATCH 11/18] build: don't create statedir and don't touch prefixdir +Subject: [PATCH 11/19] build: don't create statedir and don't touch prefixdir --- meson.build | 3 --- 1 file changed, 3 deletions(-) diff --git a/meson.build b/meson.build -index f406d595e6..f05f579816 100644 +index 580964c3fa..f99d4f3ab5 100644 --- a/meson.build +++ b/meson.build -@@ -3517,9 +3517,6 @@ install_data('LICENSE.GPL2', +@@ -3518,9 +3518,6 @@ install_data('LICENSE.GPL2', 'src/libsystemd/sd-bus/GVARIANT-SERIALIZATION', install_dir : docdir) @@ -22,5 +22,5 @@ index f406d595e6..f05f579816 100644 check_help = find_program('tools/check-help.sh') -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0012-inherit-systemd-environment-when-calling-generators.patch b/pkgs/os-specific/linux/systemd/0012-inherit-systemd-environment-when-calling-generators.patch index 00d085d8a70..05fce10e856 100644 --- a/pkgs/os-specific/linux/systemd/0012-inherit-systemd-environment-when-calling-generators.patch +++ b/pkgs/os-specific/linux/systemd/0012-inherit-systemd-environment-when-calling-generators.patch @@ -1,7 +1,7 @@ -From a569dc0bdb43edb79e338c897f06de2dfa81cfc7 Mon Sep 17 00:00:00 2001 +From 63777e7f690b67952bf4571f8e09e5d8e769d3c0 Mon Sep 17 00:00:00 2001 From: Andreas Rammhold <andreas@rammhold.de> Date: Fri, 2 Nov 2018 21:15:42 +0100 -Subject: [PATCH 12/18] inherit systemd environment when calling generators. +Subject: [PATCH 12/19] inherit systemd environment when calling generators. Systemd generators need access to the environment configured in stage-2-init.sh since it schedules fsck and mkfs executions based on @@ -16,10 +16,10 @@ executables that are being called from managers. 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/core/manager.c b/src/core/manager.c -index 1f1450b97c..26b9e41d78 100644 +index 6858950107..07a599ede7 100644 --- a/src/core/manager.c +++ b/src/core/manager.c -@@ -4111,9 +4111,14 @@ static int manager_run_generators(Manager *m) { +@@ -4142,9 +4142,14 @@ static int manager_run_generators(Manager *m) { argv[4] = NULL; RUN_WITH_UMASK(0022) @@ -38,5 +38,5 @@ index 1f1450b97c..26b9e41d78 100644 finish: -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0013-add-rootprefix-to-lookup-dir-paths.patch b/pkgs/os-specific/linux/systemd/0013-add-rootprefix-to-lookup-dir-paths.patch index 51fc4cc30d7..b9bab2d387e 100644 --- a/pkgs/os-specific/linux/systemd/0013-add-rootprefix-to-lookup-dir-paths.patch +++ b/pkgs/os-specific/linux/systemd/0013-add-rootprefix-to-lookup-dir-paths.patch @@ -1,7 +1,7 @@ -From d36d688e32b8f2368499af091c67a7825fadf5ad Mon Sep 17 00:00:00 2001 +From 561dc3b864d96753b5dc448e6e1a80460d5f0bc4 Mon Sep 17 00:00:00 2001 From: Andreas Rammhold <andreas@rammhold.de> Date: Thu, 9 May 2019 11:15:22 +0200 -Subject: [PATCH 13/18] add rootprefix to lookup dir paths +Subject: [PATCH 13/19] add rootprefix to lookup dir paths systemd does not longer use the UDEVLIBEXEC directory as root for discovery default udev rules. By adding `$out/lib` to the lookup paths @@ -34,5 +34,5 @@ index 2e60abb4f1..732ec51d36 100644 #define CONF_PATHS(n) \ CONF_PATHS_USR(n) \ -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0014-systemd-shutdown-execute-scripts-in-etc-systemd-syst.patch b/pkgs/os-specific/linux/systemd/0014-systemd-shutdown-execute-scripts-in-etc-systemd-syst.patch index 57499d1feec..c737b61e749 100644 --- a/pkgs/os-specific/linux/systemd/0014-systemd-shutdown-execute-scripts-in-etc-systemd-syst.patch +++ b/pkgs/os-specific/linux/systemd/0014-systemd-shutdown-execute-scripts-in-etc-systemd-syst.patch @@ -1,7 +1,7 @@ -From c02b7eb62e46145ec5b544ebd9338c29b9b8f32c Mon Sep 17 00:00:00 2001 +From 8f619304804b02f4e9d7a340ca90359f96adc6e8 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov <ab@fmap.me> Date: Thu, 25 Jul 2019 20:45:55 +0300 -Subject: [PATCH 14/18] systemd-shutdown: execute scripts in +Subject: [PATCH 14/19] systemd-shutdown: execute scripts in /etc/systemd/system-shutdown This is needed for NixOS to use such scripts as systemd directory is immutable. @@ -23,5 +23,5 @@ index 0d07865542..26d974ef73 100644 /* The log target defaults to console, but the original systemd process will pass its log target in through a * command line argument, which will override this default. Also, ensure we'll never log to the journal or -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0015-systemd-sleep-execute-scripts-in-etc-systemd-system-.patch b/pkgs/os-specific/linux/systemd/0015-systemd-sleep-execute-scripts-in-etc-systemd-system-.patch index fa72b66911a..3059216f7c5 100644 --- a/pkgs/os-specific/linux/systemd/0015-systemd-sleep-execute-scripts-in-etc-systemd-system-.patch +++ b/pkgs/os-specific/linux/systemd/0015-systemd-sleep-execute-scripts-in-etc-systemd-system-.patch @@ -1,7 +1,7 @@ -From f01b73709d68d4581ad561fbb20c59f895132a99 Mon Sep 17 00:00:00 2001 +From 577b11afe38fc185d785ca8f125f518a4eb21a00 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov <ab@fmap.me> Date: Thu, 25 Jul 2019 20:46:58 +0300 -Subject: [PATCH 15/18] systemd-sleep: execute scripts in +Subject: [PATCH 15/19] systemd-sleep: execute scripts in /etc/systemd/system-sleep This is needed for NixOS to use such scripts as systemd directory is immutable. @@ -22,5 +22,5 @@ index 39ab554290..880ac7ccb0 100644 }; -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0016-kmod-static-nodes.service-Update-ConditionFileNotEmp.patch b/pkgs/os-specific/linux/systemd/0016-kmod-static-nodes.service-Update-ConditionFileNotEmp.patch index 887864baec3..ad19d910e1e 100644 --- a/pkgs/os-specific/linux/systemd/0016-kmod-static-nodes.service-Update-ConditionFileNotEmp.patch +++ b/pkgs/os-specific/linux/systemd/0016-kmod-static-nodes.service-Update-ConditionFileNotEmp.patch @@ -1,7 +1,7 @@ -From 3db343c08a09a0009da049f37e3f981519eac62f Mon Sep 17 00:00:00 2001 +From ba19f629c1806ca2d2ab58154e45bce4ae4a3f0c Mon Sep 17 00:00:00 2001 From: Florian Klink <flokli@flokli.de> Date: Sat, 7 Mar 2020 22:40:27 +0100 -Subject: [PATCH 16/18] kmod-static-nodes.service: Update ConditionFileNotEmpty +Subject: [PATCH 16/19] kmod-static-nodes.service: Update ConditionFileNotEmpty On NixOS, kernel modules of the currently booted systems are located at /run/booted-system/kernel-modules/lib/modules/%v/, not /lib/modules/%v/. @@ -23,5 +23,5 @@ index f4170d6a99..9a6a591bea 100644 [Service] Type=oneshot -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0017-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch b/pkgs/os-specific/linux/systemd/0017-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch index ad92291c258..585a0aa112e 100644 --- a/pkgs/os-specific/linux/systemd/0017-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch +++ b/pkgs/os-specific/linux/systemd/0017-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch @@ -1,7 +1,7 @@ -From 6f0e9a60dcd2160bcab01366bd521630f6f5dc76 Mon Sep 17 00:00:00 2001 +From c639f311bd27c2bff62a22c34bc92613aaf77587 Mon Sep 17 00:00:00 2001 From: Florian Klink <flokli@flokli.de> Date: Sun, 8 Mar 2020 01:05:54 +0100 -Subject: [PATCH 17/18] path-util.h: add placeholder for DEFAULT_PATH_NORMAL +Subject: [PATCH 17/19] path-util.h: add placeholder for DEFAULT_PATH_NORMAL This will be the $PATH used to lookup ExecStart= etc. options, which systemd itself uses extensively. @@ -29,5 +29,5 @@ index d613709f0b..5cced4c115 100644 #if HAVE_SPLIT_USR # define DEFAULT_PATH DEFAULT_PATH_SPLIT_USR -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0018-logind-seat-debus-show-CanMultiSession-again.patch b/pkgs/os-specific/linux/systemd/0018-logind-seat-debus-show-CanMultiSession-again.patch index 52a749a16b6..f634e74e663 100644 --- a/pkgs/os-specific/linux/systemd/0018-logind-seat-debus-show-CanMultiSession-again.patch +++ b/pkgs/os-specific/linux/systemd/0018-logind-seat-debus-show-CanMultiSession-again.patch @@ -1,7 +1,7 @@ -From 120b53a3279ba098ee8e5a346b39cb2b7ef4a106 Mon Sep 17 00:00:00 2001 +From ebb37f81c28aaa80acd9187a7d77dcb3cb3828db Mon Sep 17 00:00:00 2001 From: Thomas Tuegel <ttuegel@mailbox.org> Date: Mon, 26 Oct 2020 21:21:38 +0100 -Subject: [PATCH 18/18] logind-seat-debus: show CanMultiSession again +Subject: [PATCH 18/19] logind-seat-debus: show CanMultiSession again Fixes the "switch user" function in Plasma < 5.20. --- @@ -22,5 +22,5 @@ index a60ed2d3c2..69b6271075 100644 SD_BUS_PROPERTY("CanGraphical", "b", property_get_can_graphical, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), SD_BUS_PROPERTY("Sessions", "a(so)", property_get_sessions, 0, 0), -- -2.29.2 +2.30.1 diff --git a/pkgs/os-specific/linux/systemd/0019-Revert-pkg-config-prefix-is-not-really-configurable-.patch b/pkgs/os-specific/linux/systemd/0019-Revert-pkg-config-prefix-is-not-really-configurable-.patch deleted file mode 100644 index 11e61959328..00000000000 --- a/pkgs/os-specific/linux/systemd/0019-Revert-pkg-config-prefix-is-not-really-configurable-.patch +++ /dev/null @@ -1,72 +0,0 @@ -From cd5b1075499b8498d9c700a317ad11a3199c447a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> -Date: Sun, 6 Dec 2020 08:34:19 +0100 -Subject: [PATCH 19/19] Revert "pkg-config: prefix is not really configurable, - don't pretend it was" -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This reverts commit 6e65df89c348242dbd10036abc7dd5e8181cf733. - -Signed-off-by: Jörg Thalheim <joerg@thalheim.io> ---- - src/core/systemd.pc.in | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in -index ccb382e421..8a35e53a4a 100644 ---- a/src/core/systemd.pc.in -+++ b/src/core/systemd.pc.in -@@ -11,7 +11,7 @@ - # considered deprecated (though there is no plan to remove them). New names - # shall have underscores. - --prefix=/usr -+prefix=@prefix@ - root_prefix=@rootprefix_noslash@ - rootprefix=${root_prefix} - sysconf_dir=@sysconfdir@ -@@ -26,10 +26,10 @@ systemdsystemunitdir=${systemd_system_unit_dir} - systemd_system_preset_dir=${rootprefix}/lib/systemd/system-preset - systemdsystempresetdir=${systemd_system_preset_dir} - --systemd_user_unit_dir=/usr/lib/systemd/user -+systemd_user_unit_dir=${prefix}/lib/systemd/user - systemduserunitdir=${systemd_user_unit_dir} - --systemd_user_preset_dir=/usr/lib/systemd/user-preset -+systemd_user_preset_dir=${prefix}/lib/systemd/user-preset - systemduserpresetdir=${systemd_user_preset_dir} - - systemd_system_conf_dir=${sysconfdir}/systemd/system -@@ -48,7 +48,7 @@ systemduserunitpath=${systemd_user_unit_path} - systemd_system_generator_dir=${root_prefix}/lib/systemd/system-generators - systemdsystemgeneratordir=${systemd_system_generator_dir} - --systemd_user_generator_dir=/usr/lib/systemd/user-generators -+systemd_user_generator_dir=${prefix}/lib/systemd/user-generators - systemdusergeneratordir=${systemd_user_generator_dir} - - systemd_system_generator_path=/run/systemd/system-generators:/etc/systemd/system-generators:/usr/local/lib/systemd/system-generators:${systemd_system_generator_dir} -@@ -63,7 +63,7 @@ systemdsleepdir=${systemd_sleep_dir} - systemd_shutdown_dir=${root_prefix}/lib/systemd/system-shutdown - systemdshutdowndir=${systemd_shutdown_dir} - --tmpfiles_dir=/usr/lib/tmpfiles.d -+tmpfiles_dir=${prefix}/lib/tmpfiles.d - tmpfilesdir=${tmpfiles_dir} - - sysusers_dir=${rootprefix}/lib/sysusers.d -@@ -78,7 +78,7 @@ binfmtdir=${binfmt_dir} - modules_load_dir=${rootprefix}/lib/modules-load.d - modulesloaddir=${modules_load_dir} - --catalog_dir=/usr/lib/systemd/catalog -+catalog_dir=${prefix}/lib/systemd/catalog - catalogdir=${catalog_dir} - - system_uid_max=@SYSTEM_UID_MAX@ --- -2.29.2 - diff --git a/pkgs/os-specific/linux/systemd/0019-pkg-config-derive-prefix-from-prefix.patch b/pkgs/os-specific/linux/systemd/0019-pkg-config-derive-prefix-from-prefix.patch new file mode 100644 index 00000000000..2d93cdef9a3 --- /dev/null +++ b/pkgs/os-specific/linux/systemd/0019-pkg-config-derive-prefix-from-prefix.patch @@ -0,0 +1,33 @@ +From 5439a516995f9fd57fc91c2cdd016bb18f31aadf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> +Date: Sun, 6 Dec 2020 08:34:19 +0100 +Subject: [PATCH 19/19] pkg-config: derive prefix from --prefix + +Point prefix to the one configured, instead of `/usr` `systemd` has limited +support for making the pkgconfig prefix overridable, and interpolates those +values later down. + +So we only need to patch this one value to get the correct paths. +See systemd/systemd@bc4e6e27922a2873985ab9367d79fb099f70b505 for details. + +Co-Authored-By: Florian Klink <flokli@flokli.de> +--- + src/core/systemd.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in +index a701cd05f8..85d6911bdf 100644 +--- a/src/core/systemd.pc.in ++++ b/src/core/systemd.pc.in +@@ -11,7 +11,7 @@ + # considered deprecated (though there is no plan to remove them). New names + # shall have underscores. + +-prefix=/usr ++prefix=@prefix@ + root_prefix=@rootprefix_noslash@ + rootprefix=${root_prefix} + sysconf_dir=@sysconfdir@ +-- +2.30.1 + diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 1c02e1f602c..7302b363ecf 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -113,7 +113,7 @@ assert withCryptsetup -> let wantCurl = withRemote || withImportd; - version = "247.3"; + version = "247.6"; in stdenv.mkDerivation { inherit version pname; @@ -124,12 +124,12 @@ stdenv.mkDerivation { owner = "systemd"; repo = "systemd-stable"; rev = "v${version}"; - sha256 = "0zn0b74iwz3vxabqsk4yydwpgky3c5z4dl83wxbs1qi5d2dnbqa7"; + sha256 = "sha256-7XYEq3Qw25suwjbtPzx9lVPHUu9ZY/1bADXl2wQbkJc="; }; # If these need to be regenerated, `git am path/to/00*.patch` them into a # systemd worktree, rebase to the more recent systemd version, and export the - # patches again via `git format-patch v${version}`. + # patches again via `git -c format.signoff=false format-patch v${version}`. # Use `find . -name "*.patch" | sort` to get an up-to-date listing of all patches patches = [ ./0001-Start-device-units-for-uninitialised-encrypted-devic.patch @@ -150,7 +150,7 @@ stdenv.mkDerivation { ./0016-kmod-static-nodes.service-Update-ConditionFileNotEmp.patch ./0017-path-util.h-add-placeholder-for-DEFAULT_PATH_NORMAL.patch ./0018-logind-seat-debus-show-CanMultiSession-again.patch - ./0019-Revert-pkg-config-prefix-is-not-really-configurable-.patch + ./0019-pkg-config-derive-prefix-from-prefix.patch ]; postPatch = '' diff --git a/pkgs/os-specific/linux/teck-udev-rules/default.nix b/pkgs/os-specific/linux/teck-udev-rules/default.nix new file mode 100644 index 00000000000..eec5eac344e --- /dev/null +++ b/pkgs/os-specific/linux/teck-udev-rules/default.nix @@ -0,0 +1,22 @@ +{ lib, stdenv, teck-programmer }: + +stdenv.mkDerivation { + pname = "teck-udev-rules"; + version = lib.getVersion teck-programmer; + + inherit (teck-programmer) src; + + dontBuild = true; + + installPhase = '' + runHook preInstall + install 40-teck.rules -D -t $out/etc/udev/rules.d/ + runHook postInstall + ''; + + meta = { + description = "udev rules for TECK keyboards"; + inherit (teck-programmer.meta) license; + maintainers = [ lib.maintainers.lourkeur ]; + }; +} diff --git a/pkgs/os-specific/linux/trace-cmd/default.nix b/pkgs/os-specific/linux/trace-cmd/default.nix index 27dbc6f583a..0a7860c0238 100644 --- a/pkgs/os-specific/linux/trace-cmd/default.nix +++ b/pkgs/os-specific/linux/trace-cmd/default.nix @@ -1,9 +1,13 @@ { lib, stdenv, fetchgit, asciidoc, docbook_xsl, libxslt }: -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "trace-cmd"; - version = "2.9-dev"; + version = "2.9.1"; - src = fetchgit (import ./src.nix); + src = fetchgit { + url = "git://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/"; + rev = "trace-cmd-v${version}"; + sha256 = "19c63a0qmcppm1456qf4k6a0d1agcvpa6jnbzrdcyc520yax6khw"; + }; patches = [ ./fix-Makefiles.patch ]; diff --git a/pkgs/os-specific/linux/trace-cmd/fix-Makefiles.patch b/pkgs/os-specific/linux/trace-cmd/fix-Makefiles.patch index db194e16fdb..1e783999af6 100644 --- a/pkgs/os-specific/linux/trace-cmd/fix-Makefiles.patch +++ b/pkgs/os-specific/linux/trace-cmd/fix-Makefiles.patch @@ -1,30 +1,30 @@ diff --git a/Makefile b/Makefile -index bbdf15e..deb8ef7 100644 +index b034042..b8a06bc 100644 --- a/Makefile +++ b/Makefile -@@ -288,7 +288,7 @@ libtraceevent.a: $(LIBTRACEEVENT_STATIC) - libtracecmd.a: $(LIBTRACECMD_STATIC) - libtracecmd.so: $(LIBTRACECMD_SHARED) +@@ -338,6 +338,7 @@ libtracefs.a: $(LIBTRACEFS_STATIC) + libtracefs.so: $(LIBTRACEFS_SHARED) --libs: $(LIBTRACECMD_SHARED) $(LIBTRACEEVENT_SHARED) -+libs: $(LIBTRACECMD_SHARED) $(LIBTRACEEVENT_SHARED) $(LIBTRACECMD_STATIC) $(LIBTRACEEVENT_STATIC) + libs: $(LIBTRACECMD_SHARED) $(LIBTRACEEVENT_SHARED) $(LIBTRACEFS_SHARED) ++libs: $(LIBTRACECMD_STATIC) $(LIBTRACEEVENT_STATIC) $(LIBTRACEFS_STATIC) - plugins: force $(obj)/lib/traceevent/plugins/traceevent_plugin_dir $(obj)/lib/traceevent/plugins/trace_python_dir - $(Q)$(MAKE) -C $(src)/lib/traceevent/plugins -@@ -344,6 +344,8 @@ install_gui: install_cmd gui - install_libs: libs + test: force $(LIBTRACEEVENT_STATIC) $(LIBTRACEFS_STATIC) $(LIBTRACECMD_STATIC) + ifneq ($(CUNIT_INSTALLED),1) +@@ -414,6 +415,9 @@ install_libs: libs $(Q)$(call do_install,$(LIBTRACECMD_SHARED),$(libdir_SQ)/trace-cmd) $(Q)$(call do_install,$(LIBTRACEEVENT_SHARED),$(libdir_SQ)/traceevent) + $(Q)$(call do_install,$(LIBTRACEFS_SHARED),$(libdir_SQ)/tracefs) + $(Q)$(call do_install,$(LIBTRACECMD_STATIC),$(libdir_SQ)/trace-cmd) + $(Q)$(call do_install,$(LIBTRACEEVENT_STATIC),$(libdir_SQ)/traceevent) ++ $(Q)$(call do_install,$(LIBTRACEFS_STATIC),$(libdir_SQ)/tracefs) $(Q)$(call do_install,$(src)/include/traceevent/event-parse.h,$(includedir_SQ)/traceevent) $(Q)$(call do_install,$(src)/include/traceevent/trace-seq.h,$(includedir_SQ)/traceevent) $(Q)$(call do_install,$(src)/include/trace-cmd/trace-cmd.h,$(includedir_SQ)/trace-cmd) diff --git a/kernel-shark/src/CMakeLists.txt b/kernel-shark/src/CMakeLists.txt -index e20a030..7fce165 100644 +index 457c100..687e150 100644 --- a/kernel-shark/src/CMakeLists.txt +++ b/kernel-shark/src/CMakeLists.txt -@@ -93,7 +93,7 @@ if (Qt5Widgets_FOUND AND Qt5Network_FOUND) +@@ -92,7 +92,7 @@ if (Qt5Widgets_FOUND AND Qt5Network_FOUND) DESTINATION ${_INSTALL_PREFIX}/share/icons/${KS_APP_NAME}) install(FILES "${KS_DIR}/org.freedesktop.kshark-record.policy" diff --git a/pkgs/os-specific/linux/trace-cmd/kernelshark.nix b/pkgs/os-specific/linux/trace-cmd/kernelshark.nix index 594cf6bfc42..45d984c7863 100644 --- a/pkgs/os-specific/linux/trace-cmd/kernelshark.nix +++ b/pkgs/os-specific/linux/trace-cmd/kernelshark.nix @@ -1,9 +1,13 @@ { lib, mkDerivation, fetchgit, qtbase, cmake, asciidoc, docbook_xsl, json_c, mesa_glu, freeglut, trace-cmd, pkg-config }: -mkDerivation { +mkDerivation rec { pname = "kernelshark"; - version = "1.1.0"; + version = "1.2"; - src = fetchgit (import ./src.nix); + src = fetchgit { + url = "git://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/"; + rev = "kernelshark-v${version}"; + sha256 = "0wzzm2imk9n94v96v6sbvbff6j47lz4qj0snhiyv3nj3slg0anvh"; + }; patches = [ ./fix-Makefiles.patch ]; @@ -21,6 +25,7 @@ mkDerivation { "-DTRACECMD_INCLUDE_DIR=${trace-cmd.dev}/include" "-DTRACECMD_LIBRARY=${trace-cmd.lib}/lib/trace-cmd/libtracecmd.a" "-DTRACEEVENT_LIBRARY=${trace-cmd.lib}/lib/traceevent/libtraceevent.a" + "-DTRACEFS_LIBRARY=${trace-cmd.lib}/lib/tracefs/libtracefs.a" ]; preInstall = '' diff --git a/pkgs/os-specific/linux/trace-cmd/src.nix b/pkgs/os-specific/linux/trace-cmd/src.nix deleted file mode 100644 index 47c1b82fdd4..00000000000 --- a/pkgs/os-specific/linux/trace-cmd/src.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - url = "git://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/"; - rev = "ab370b78b9278fe16657742d46cb95c0a65b47d5"; # branch: kernelshark-v1.1 - sha256 = "0qngwc4qgadrkwlwpz73f12prdkx94kl0bg7g9hib95ipvsdmk1c"; -} diff --git a/pkgs/os-specific/linux/tuxedo-keyboard/default.nix b/pkgs/os-specific/linux/tuxedo-keyboard/default.nix index 3187ba6d4db..fabfebfcba1 100644 --- a/pkgs/os-specific/linux/tuxedo-keyboard/default.nix +++ b/pkgs/os-specific/linux/tuxedo-keyboard/default.nix @@ -1,16 +1,18 @@ -{ lib, stdenv, fetchFromGitHub, kernel, kmod }: +{ lib, stdenv, fetchFromGitHub, kernel, linuxHeaders}: stdenv.mkDerivation rec { pname = "tuxedo-keyboard-${kernel.version}"; - version = "2019-08-26"; + version = "3.0.5"; src = fetchFromGitHub { owner = "tuxedocomputers"; repo = "tuxedo-keyboard"; - rev = "d65e76e84cfd8169591fc2a0a7c9219fa19da1b5"; - sha256 = "1s48qpwybwh5pwqas2d1v2a7x4r97sm4hr9i4902r1d7h384bv17"; + rev = "v${version}"; + sha256 = "123ady2bi2dwbajy3pgv10l3g2pyhi5k31c1ii0zcrvl2qqhndck"; }; + buildInputs = [ linuxHeaders ]; + makeFlags = [ "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ]; installPhase = '' @@ -21,7 +23,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Full color keyboard driver for tuxedo computers laptops"; homepage = "https://github.com/tuxedocomputers/tuxedo-keyboard/"; - license = licenses.gpl2; + license = licenses.gpl3Plus; platforms = platforms.linux; maintainers = [ maintainers.blanky0230 ]; }; diff --git a/pkgs/os-specific/linux/usbip/default.nix b/pkgs/os-specific/linux/usbip/default.nix index 923eab71b7a..43c22a8fd12 100644 --- a/pkgs/os-specific/linux/usbip/default.nix +++ b/pkgs/os-specific/linux/usbip/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, kernel, udev, autoconf, automake, libtool, kernelOlder }: +{ lib, stdenv, kernel, udev, autoconf, automake, libtool, hwdata, kernelOlder }: stdenv.mkDerivation { name = "usbip-${kernel.name}"; @@ -22,10 +22,12 @@ stdenv.mkDerivation { ./autogen.sh ''; + configureFlags = [ "--with-usbids-dir=${hwdata}/share/hwdata/" ]; + meta = with lib; { homepage = "https://github.com/torvalds/linux/tree/master/tools/usb/usbip"; description = "allows to pass USB device from server to client over the network"; - license = licenses.gpl2; + license = with licenses; [ gpl2Only gpl2Plus ]; platforms = platforms.linux; broken = kernelOlder "4.10"; }; diff --git a/pkgs/os-specific/linux/util-linux/default.nix b/pkgs/os-specific/linux/util-linux/default.nix index d7629f0df04..73f321f2631 100644 --- a/pkgs/os-specific/linux/util-linux/default.nix +++ b/pkgs/os-specific/linux/util-linux/default.nix @@ -1,22 +1,17 @@ -{ lib, stdenv, fetchurl, fetchpatch, pkg-config, zlib, shadow +{ lib, stdenv, fetchurl, pkg-config, zlib, shadow, libcap_ng , ncurses ? null, perl ? null, pam, systemd ? null, minimal ? false }: stdenv.mkDerivation rec { pname = "util-linux"; - version = "2.36.1"; + version = "2.36.2"; src = fetchurl { url = "mirror://kernel/linux/utils/util-linux/v${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1vbyydl1b13lx73di4bhc4br9ih24hcqv7bky0kyrn1c2x1c5yh9"; + sha256 = "0psc0asjp1rmfx1j7468zfnk9nphlphybw2n8dcl74v8v2lnnlgp"; }; patches = [ ./rtcwake-search-PATH-for-shutdown.patch - # Remove patch below in 2.36.2, see https://github.com/karelzak/util-linux/issues/1193 - (fetchpatch { - url = "https://github.com/karelzak/util-linux/commit/52f730e47869ce630fafb24fd46f755dc7ffc691.patch"; - sha256 = "1fz3p9127lfvmrdj1j1s8jds0jjz2dzkvmia66555ihv7hcfajbg"; - }) ]; outputs = [ "bin" "dev" "out" "man" ]; @@ -57,7 +52,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkg-config ]; buildInputs = - [ zlib pam ] + [ zlib pam libcap_ng ] ++ lib.filter (p: p != null) [ ncurses systemd perl ]; doCheck = false; # "For development purpose only. Don't execute on production system!" @@ -71,7 +66,9 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://www.kernel.org/pub/linux/utils/util-linux/"; description = "A set of system utilities for Linux"; - license = licenses.gpl2; # also contains parts under more permissive licenses + changelog = "https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v${lib.versions.majorMinor version}/v${version}-ReleaseNotes"; + # https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/tree/README.licensing + license = with licenses; [ gpl2Only gpl2Plus gpl3Plus lgpl21Plus bsd3 bsdOriginalUC publicDomain ]; platforms = platforms.linux; priority = 6; # lower priority than coreutils ("kill") and shadow ("login" etc.) packages }; diff --git a/pkgs/os-specific/linux/vendor-reset/default.nix b/pkgs/os-specific/linux/vendor-reset/default.nix new file mode 100644 index 00000000000..8f1bde7ecbd --- /dev/null +++ b/pkgs/os-specific/linux/vendor-reset/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchFromGitHub, kernel, lib }: + +stdenv.mkDerivation rec { + name = "vendor-reset-${version}-${kernel.version}"; + version = "unstable-2021-02-16"; + + src = fetchFromGitHub { + owner = "gnif"; + repo = "vendor-reset"; + rev = "225a49a40941e350899e456366265cf82b87ad25"; + sha256 = "sha256-xa7P7+mRk4FVgi+YYCcsFLfyNqPmXvy3xhGoTDVqPxw="; + }; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + hardeningDisable = [ "pic" ]; + + makeFlags = [ + "KVER=${kernel.modDirVersion}" + "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + ]; + + installPhase = '' + install -D vendor-reset.ko -t "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/misc/" + ''; + + meta = with lib; { + description = "Linux kernel vendor specific hardware reset module"; + homepage = "https://github.com/gnif/vendor-reset"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ wedens ]; + platforms = [ "x86_64-linux" ]; + broken = kernel.kernelOlder "4.19"; + }; +} diff --git a/pkgs/os-specific/linux/wpa_supplicant/0001-Implement-read-only-mode-for-ssids.patch b/pkgs/os-specific/linux/wpa_supplicant/0001-Implement-read-only-mode-for-ssids.patch new file mode 100644 index 00000000000..d459de8a7f3 --- /dev/null +++ b/pkgs/os-specific/linux/wpa_supplicant/0001-Implement-read-only-mode-for-ssids.patch @@ -0,0 +1,130 @@ +From 99ae610f0ae3608a12c864caedf396f14e68327d Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch <maximilian@mbosch.me> +Date: Fri, 19 Feb 2021 19:44:21 +0100 +Subject: [PATCH] Implement read-only mode for ssids + +With this change it's possible to define `network=`-sections in a second +config file specified via `-I` without having changes written to +`/etc/wpa_supplicant.conf`. + +This is helpful on e.g. NixOS to allow both declarative (i.e. read-only) +and imperative (i.e. mutable) networks. +--- + wpa_supplicant/config.h | 2 +- + wpa_supplicant/config_file.c | 5 +++-- + wpa_supplicant/config_none.c | 2 +- + wpa_supplicant/config_ssid.h | 2 ++ + wpa_supplicant/wpa_supplicant.c | 8 ++++---- + 5 files changed, 11 insertions(+), 8 deletions(-) + +diff --git a/wpa_supplicant/config.h b/wpa_supplicant/config.h +index 6a297ecfe..adaf4d398 100644 +--- a/wpa_supplicant/config.h ++++ b/wpa_supplicant/config.h +@@ -1614,7 +1614,7 @@ const char * wpa_config_get_global_field_name(unsigned int i, int *no_var); + * + * Each configuration backend needs to implement this function. + */ +-struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp); ++struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp, int ro); + + /** + * wpa_config_write - Write or update configuration data +diff --git a/wpa_supplicant/config_file.c b/wpa_supplicant/config_file.c +index 77c326df5..d5ed051b9 100644 +--- a/wpa_supplicant/config_file.c ++++ b/wpa_supplicant/config_file.c +@@ -373,7 +373,7 @@ static int wpa_config_process_blob(struct wpa_config *config, FILE *f, + #endif /* CONFIG_NO_CONFIG_BLOBS */ + + +-struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp) ++struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp, int ro) + { + FILE *f; + char buf[512], *pos; +@@ -415,6 +415,7 @@ struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp) + while (wpa_config_get_line(buf, sizeof(buf), f, &line, &pos)) { + if (os_strcmp(pos, "network={") == 0) { + ssid = wpa_config_read_network(f, &line, id++); ++ ssid->ro = ro; + if (ssid == NULL) { + wpa_printf(MSG_ERROR, "Line %d: failed to " + "parse network block.", line); +@@ -1591,7 +1592,7 @@ int wpa_config_write(const char *name, struct wpa_config *config) + } + + for (ssid = config->ssid; ssid; ssid = ssid->next) { +- if (ssid->key_mgmt == WPA_KEY_MGMT_WPS || ssid->temporary) ++ if (ssid->key_mgmt == WPA_KEY_MGMT_WPS || ssid->temporary || ssid->ro) + continue; /* do not save temporary networks */ + if (wpa_key_mgmt_wpa_psk(ssid->key_mgmt) && !ssid->psk_set && + !ssid->passphrase) +diff --git a/wpa_supplicant/config_none.c b/wpa_supplicant/config_none.c +index 2aac28fa3..02191b425 100644 +--- a/wpa_supplicant/config_none.c ++++ b/wpa_supplicant/config_none.c +@@ -17,7 +17,7 @@ + #include "base64.h" + + +-struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp) ++struct wpa_config * wpa_config_read(const char *name, struct wpa_config *cfgp, int ro) + { + struct wpa_config *config; + +diff --git a/wpa_supplicant/config_ssid.h b/wpa_supplicant/config_ssid.h +index d5c5c00a9..fd80c079c 100644 +--- a/wpa_supplicant/config_ssid.h ++++ b/wpa_supplicant/config_ssid.h +@@ -93,6 +93,8 @@ struct wpa_ssid { + */ + int id; + ++ int ro; ++ + /** + * priority - Priority group + * +diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c +index 911d79d17..cb0cb99b1 100644 +--- a/wpa_supplicant/wpa_supplicant.c ++++ b/wpa_supplicant/wpa_supplicant.c +@@ -1052,14 +1052,14 @@ int wpa_supplicant_reload_configuration(struct wpa_supplicant *wpa_s) + + if (wpa_s->confname == NULL) + return -1; +- conf = wpa_config_read(wpa_s->confname, NULL); ++ conf = wpa_config_read(wpa_s->confname, NULL, 0); + if (conf == NULL) { + wpa_msg(wpa_s, MSG_ERROR, "Failed to parse the configuration " + "file '%s' - exiting", wpa_s->confname); + return -1; + } + if (wpa_s->confanother && +- !wpa_config_read(wpa_s->confanother, conf)) { ++ !wpa_config_read(wpa_s->confanother, conf, 1)) { + wpa_msg(wpa_s, MSG_ERROR, + "Failed to parse the configuration file '%s' - exiting", + wpa_s->confanother); +@@ -5638,7 +5638,7 @@ static int wpa_supplicant_init_iface(struct wpa_supplicant *wpa_s, + #else /* CONFIG_BACKEND_FILE */ + wpa_s->confname = os_strdup(iface->confname); + #endif /* CONFIG_BACKEND_FILE */ +- wpa_s->conf = wpa_config_read(wpa_s->confname, NULL); ++ wpa_s->conf = wpa_config_read(wpa_s->confname, NULL, 0); + if (wpa_s->conf == NULL) { + wpa_printf(MSG_ERROR, "Failed to read or parse " + "configuration '%s'.", wpa_s->confname); +@@ -5646,7 +5646,7 @@ static int wpa_supplicant_init_iface(struct wpa_supplicant *wpa_s, + } + wpa_s->confanother = os_rel2abs_path(iface->confanother); + if (wpa_s->confanother && +- !wpa_config_read(wpa_s->confanother, wpa_s->conf)) { ++ !wpa_config_read(wpa_s->confanother, wpa_s->conf, 1)) { + wpa_printf(MSG_ERROR, + "Failed to read or parse configuration '%s'.", + wpa_s->confanother); +-- +2.29.2 + diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix index d9767cbdd93..51af6abde8c 100644 --- a/pkgs/os-specific/linux/wpa_supplicant/default.nix +++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix @@ -1,5 +1,7 @@ { lib, stdenv, fetchurl, fetchpatch, openssl, pkg-config, libnl , dbus, readline ? null, pcsclite ? null + +, readOnlyModeSSIDs ? false }: with lib; @@ -37,6 +39,15 @@ stdenv.mkDerivation rec { url = "https://w1.fi/security/2021-1/0001-P2P-Fix-a-corner-case-in-peer-addition-based-on-PD-R.patch"; sha256 = "04cnds7hmbqc44jasabjvrdnh66i5hwvk2h2m5z94pmgbzncyh3z"; }) + # In wpa_supplicant and hostapd 2.9, forging attacks may occur because AlgorithmIdentifier parameters are mishandled in tls/pkcs1.c and tls/x509v3.c. + (fetchpatch { + name = "CVE-2021-30004.patch"; + url = "https://w1.fi/cgit/hostap/patch/?id=a0541334a6394f8237a4393b7372693cd7e96f15"; + sha256 = "1gbhlz41x1ar1hppnb76pqxj6vimiypy7c4kq6h658637s4am3xg"; + }) + ] ++ lib.optionals readOnlyModeSSIDs [ + # Allow read-only networks + ./0001-Implement-read-only-mode-for-ssids.patch ]; # TODO: Patch epoll so that the dbus actually responds @@ -75,6 +86,7 @@ stdenv.mkDerivation rec { CONFIG_P2P=y CONFIG_TDLS=y CONFIG_BGSCAN_SIMPLE=y + CONFIG_BGSCAN_LEARN=y '' + optionalString (pcsclite != null) '' CONFIG_EAP_SIM=y CONFIG_EAP_AKA=y @@ -127,7 +139,7 @@ stdenv.mkDerivation rec { homepage = "https://w1.fi/wpa_supplicant/"; description = "A tool for connecting to WPA and WPA2-protected wireless networks"; license = licenses.bsd3; - maintainers = with maintainers; [ marcweber ]; + maintainers = with maintainers; [ marcweber ma27 ]; platforms = platforms.linux; }; } diff --git a/pkgs/os-specific/linux/xpadneo/default.nix b/pkgs/os-specific/linux/xpadneo/default.nix index e0e2bcc21d9..3007e54639d 100644 --- a/pkgs/os-specific/linux/xpadneo/default.nix +++ b/pkgs/os-specific/linux/xpadneo/default.nix @@ -2,25 +2,19 @@ stdenv.mkDerivation rec { pname = "xpadneo"; - version = "0.8.4"; + version = "0.9.1"; src = fetchFromGitHub { owner = "atar-axis"; repo = pname; rev = "v${version}"; - sha256 = "113xa2mxs2hc4fpjdk3jhhchy81kli6jxdd6vib7zz61n10cjb85"; + hash = "sha256-VUcS4OzvPj0o627ZWIOBqEAQJ4JuMCMjgaZoMkL/IHc="; }; setSourceRoot = '' export sourceRoot=$(pwd)/source/hid-xpadneo/src ''; - postPatch = '' - # Set kernel module version - substituteInPlace hid-xpadneo.c \ - --subst-var-by DO_NOT_CHANGE ${version} - ''; - nativeBuildInputs = kernel.moduleBuildDependencies; buildInputs = [ bluez ]; @@ -28,6 +22,7 @@ stdenv.mkDerivation rec { "-C" "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" "M=$(sourceRoot)" + "VERSION=${version}" ]; buildFlags = [ "modules" ]; diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index 15c8df3cb13..adfd0cda819 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -157,7 +157,7 @@ let done ''; - outputs = [ "out" ] ++ optionals buildUser [ "lib" "dev" ]; + outputs = [ "out" ] ++ optionals buildUser [ "dev" ]; passthru = { inherit enableMail; @@ -210,9 +210,9 @@ in { kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.12"; # this package should point to a version / git revision compatible with the latest kernel release - version = "2.0.4"; + version = "2.1.0-rc4"; - sha256 = "sha256-ySTt0K3Lc0Le35XTwjiM5l+nIf9co7wBn+Oma1r8YHo="; + sha256 = "sha256-eakOEA7LCJOYDsZH24Y5JbEd2wh1KfCN+qX3QxQZ4e8="; isUnstable = true; }; diff --git a/pkgs/os-specific/windows/cygwin-setup/default.nix b/pkgs/os-specific/windows/cygwin-setup/default.nix index c51cafa9ace..91dad81f1f5 100644 --- a/pkgs/os-specific/windows/cygwin-setup/default.nix +++ b/pkgs/os-specific/windows/cygwin-setup/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchcvs, autoconf, automake, libtool, flex, bison, pkg-config -, zlib, bzip2, lzma, libgcrypt +, zlib, bzip2, xz, libgcrypt }: with lib; @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { buildInputs = map mkStatic (o.buildInputs or []); propagatedBuildInputs = map mkStatic (o.propagatedBuildInputs or []); }); - in map mkStatic [ zlib bzip2 lzma libgcrypt ]; + in map mkStatic [ zlib bzip2 xz libgcrypt ]; configureFlags = [ "--disable-shared" ]; diff --git a/pkgs/os-specific/windows/libgnurx/default.nix b/pkgs/os-specific/windows/libgnurx/default.nix index 85a3c463a28..e760bddabfb 100644 --- a/pkgs/os-specific/windows/libgnurx/default.nix +++ b/pkgs/os-specific/windows/libgnurx/default.nix @@ -10,6 +10,11 @@ in stdenv.mkDerivation rec { sha256 = "0xjxcxgws3bblybw5zsp9a4naz2v5bs1k3mk8dw00ggc0vwbfivi"; }; + # file looks for libgnurx.a when compiling statically + postInstall = lib.optionalString stdenv.hostPlatform.isStatic '' + ln -s $out/lib/libgnurx{.dll.a,.a} + ''; + meta = { platforms = lib.platforms.windows; }; |