diff options
Diffstat (limited to 'pkgs/os-specific')
84 files changed, 474 insertions, 372 deletions
diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index 2d51c11f04a..b86891352f0 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 @@ -563,7 +563,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 +587,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"; 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/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/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/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/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix index 935b5e65b1f..bb0c0b45d6e 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/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/cifs-utils/default.nix b/pkgs/os-specific/linux/cifs-utils/default.nix index c4ed4d4fc0f..38f958fe9dd 100644 --- a/pkgs/os-specific/linux/cifs-utils/default.nix +++ b/pkgs/os-specific/linux/cifs-utils/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchurl, autoreconfHook, docutils, pkg-config -, kerberos, keyutils, pam, talloc, python3 }: +, libkrb5, keyutils, pam, talloc, python3 }: stdenv.mkDerivation rec { pname = "cifs-utils"; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { 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/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..7e0c48a439d 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 = '' 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/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/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/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 777a91241bb..213f344add1 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; 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..002799aa6a7 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.228-hardened1.patch", + "sha256": "0pf3c98m2zlgxv9p10p7xw44f6mqnh8ac47jl1abz3yy3hiag0cd", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.228-hardened1/linux-hardened-4.14.228-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.184-hardened1.patch", + "sha256": "1828kkq05808mahkfb0387b1k5qp6pysy4mny1xgpwqdphpp1pq9", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.184-hardened1/linux-hardened-4.19.184-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.27-hardened1.patch", + "sha256": "12pzv36p0pdaqqklwv6rpk15c1z1nz2syw1si24514p63v46wmhn", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.27-hardened1/linux-hardened-5.10.27-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.11-hardened1.patch", + "sha256": "0isq152z4h2kl3rviia9xlpsmdx331kx8p1x00jbf4gcw30amc78", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.11.11-hardened1/linux-hardened-5.11.11-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.109-hardened1.patch", + "sha256": "19likbds74lzym969p6hbchlfii4qnsp8y4ryfkba1vv6hv51zzj", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.109-hardened1/linux-hardened-5.4.109-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..fc647d10959 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.228"; # 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 = "0nw1jf6x5a990n69aw2da4s4lc1c7mnwiwcda40bl2rkmd24s1qm"; }; + + 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..b0e5a865724 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.184"; # 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 = "0z5pgal8775rf7pvpxq47dnghr42al2k9py0s9jl3js2wamgdyix"; }; + + 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..3a5f86db3a1 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.264"; extraMeta.branch = "4.4"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1qqh3n09pn87n6f7ain3am8k7j043vzm65qcvccq9as129y5w1a2"; + sha256 = "1b0d735qnk0bcqn9gdsjqxhk8pkb3597ya9f34lv1vjfaqkkxk7l"; }; + + 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..798a16d7a30 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.264"; extraMeta.branch = "4.9"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1dhmgyg6asqg1pmhnzqymwz4bm6gy8gi0n2gr794as38dhn2szwz"; + sha256 = "1df2dv26c9z6zsdlqzbcc60f2pszh0hx1n94v65jswlb72a2mipc"; }; + + 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..f35b0e432be 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.27"; # 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 = "1nb95ll66kxiz702gs903n3gy5ialz8cin58l19rqaai55kck7fr"; }; + + 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..1c8540d8934 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.11"; # 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 = "1fc3yl4srzla3cbihgnry0pqmgcc17zv0zlkk9zpx99371hpay0a"; }; + + 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..e9d72200eda 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.109"; # 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 = "1vmpc6yrr2zm4m3naflwik5111jr8hy0mnyddwk31l0p4xbg8smc"; }; + + kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_4 ]; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-lqx.nix b/pkgs/os-specific/linux/kernel/linux-lqx.nix index d8fc7a71b59..de625cebe49 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.11"; suffix = "lqx1"; in @@ -14,7 +14,7 @@ buildLinux (args // { owner = "zen-kernel"; repo = "zen-kernel"; rev = "v${version}-${suffix}"; - sha256 = "1zvd74l6vb0rwrkwwh67i8l6ipin0p981vzdmiwpbpfzasbw59xk"; + sha256 = "1wycqy0m6vjaa39rq7ngwr2qmksqfca27z1711nag7j68dk3ywak"; }; 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-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..efb87df6c97 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-xanmod.nix @@ -0,0 +1,27 @@ +{ lib, stdenv, buildLinux, fetchFromGitHub, ... } @ args: + +let + version = "5.11.12"; + suffix = "xanmod1-cacule"; +in + buildLinux (args // rec { + modDirVersion = "${version}-${suffix}"; + inherit version; + + src = fetchFromGitHub { + owner = "xanmod"; + repo = "linux"; + rev = modDirVersion; + sha256 = "sha256-omRZ9oAmW3mauUolPf/lgMFMwUCYU4YaZ+OS75Ag+lM="; + 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..8743c9ad551 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.11"; suffix = "zen1"; in @@ -14,7 +14,7 @@ buildLinux (args // { owner = "zen-kernel"; repo = "zen-kernel"; rev = "v${version}-${suffix}"; - sha256 = "1hb05shhqb6747m131sw30h36ak1m9bwzhfldjypn8phlfkflgkq"; + sha256 = "0rldvgvdbsqvshrbv2g335qvwzk76l7rpnp9dwzsiv2qphrzxazi"; }; extraMeta = { diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index 2fc63322f5b..e45b21ff35f 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; }; 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/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/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/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/openvswitch/lts.nix b/pkgs/os-specific/linux/openvswitch/lts.nix index f379633e198..4a6cf887c3b 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; 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/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/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 4f757862897..bd7c646c920 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/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/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/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/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" ]; |