diff options
Diffstat (limited to 'pkgs/os-specific')
44 files changed, 366 insertions, 159 deletions
diff --git a/pkgs/os-specific/darwin/m-cli/default.nix b/pkgs/os-specific/darwin/m-cli/default.nix index f19f5a0275bc..939ff36ef0ce 100644 --- a/pkgs/os-specific/darwin/m-cli/default.nix +++ b/pkgs/os-specific/darwin/m-cli/default.nix @@ -35,7 +35,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Swiss Army Knife for macOS"; inherit (src.meta) homepage; - repositories.git = "git://github.com/rgcr/m-cli.git"; license = licenses.mit; diff --git a/pkgs/os-specific/darwin/moltenvk/default.nix b/pkgs/os-specific/darwin/moltenvk/default.nix index ba8bc605e8b4..dc7f3f58fd3a 100644 --- a/pkgs/os-specific/darwin/moltenvk/default.nix +++ b/pkgs/os-specific/darwin/moltenvk/default.nix @@ -43,6 +43,10 @@ stdenvNoCC.mkDerivation rec { # MoltenVK requires specific versions of its dependencies. # Pin them here except for cereal, which is four years old and has several CVEs. passthru = { + # The patch required to support DXVK may different from version to version. This should never + # be used except with DXVK, so there’s no package for it. To emphasize that this patch should + # never be used except with DXVK, `dxvk` provides a function for applying this patch. + dxvkPatch = ./dxvk-moltenvk-compat.patch; glslang = (glslang.overrideAttrs (old: { src = fetchFromGitHub { owner = "KhronosGroup"; diff --git a/pkgs/os-specific/darwin/moltenvk/dxvk-moltenvk-compat.patch b/pkgs/os-specific/darwin/moltenvk/dxvk-moltenvk-compat.patch new file mode 100644 index 000000000000..7d16fdf70331 --- /dev/null +++ b/pkgs/os-specific/darwin/moltenvk/dxvk-moltenvk-compat.patch @@ -0,0 +1,59 @@ +Source: https://github.com/Gcenx/MoltenVK/commit/1f268bd45f6c928784d7cb90dedce382895f10ae + +Fake extensions for DXVK; +- _features.geometryShader +- _features.tessellationShader +- _features.shaderCullDistance + +Enabled defaults; +- MVK_ALLOW_METAL_FENCES=1 +- MVK_CONFIG_RESUME_LOST_DEVICE=1 +--- + MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm | 3 +++ + MoltenVK/MoltenVK/Utility/MVKEnvironment.h | 4 ++-- + 2 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm +index bc6d19df..e1959c6e 100644 +--- a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm ++++ b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm +@@ -1656,6 +1656,8 @@ + _features.robustBufferAccess = true; // XXX Required by Vulkan spec + _features.fullDrawIndexUint32 = true; + _features.independentBlend = true; ++ _features.geometryShader = true; // XXX Required by DXVK for D3D10 ++ _features.tessellationShader = true; // XXX Required by DXVK for D3D11 + _features.sampleRateShading = true; + _features.depthBiasClamp = true; + _features.fillModeNonSolid = true; +@@ -1669,6 +1671,7 @@ + _features.shaderUniformBufferArrayDynamicIndexing = true; + _features.shaderStorageBufferArrayDynamicIndexing = true; + _features.shaderClipDistance = true; ++ _features.shaderCullDistance = true; // XXX Required by DXVK for 10level9 + _features.shaderInt16 = true; + _features.multiDrawIndirect = true; + _features.inheritedQueries = true; +diff --git a/MoltenVK/MoltenVK/Utility/MVKEnvironment.h b/MoltenVK/MoltenVK/Utility/MVKEnvironment.h +index 81d0defc..80c414d3 100644 +--- a/MoltenVK/MoltenVK/Utility/MVKEnvironment.h ++++ b/MoltenVK/MoltenVK/Utility/MVKEnvironment.h +@@ -240,7 +240,7 @@ void mvkSetConfig(const MVKConfiguration& mvkConfig); + # define MVK_ALLOW_METAL_EVENTS 1 + #endif + #ifndef MVK_ALLOW_METAL_FENCES +-# define MVK_ALLOW_METAL_FENCES 0 ++# define MVK_ALLOW_METAL_FENCES 1 // XXX Required by DXVK for Apple/NVidia GPUs (better FPS than CPU Emulation) + #endif + + /** Substitute Metal 2D textures for Vulkan 1D images. Enabled by default. */ +@@ -275,7 +275,7 @@ void mvkSetConfig(const MVKConfiguration& mvkConfig); + + /** Resume MVKDevice VK_ERROR_DEVICE_LOST errors that do not cause MVKPhysicalDevice errors. Disabled by default. */ + #ifndef MVK_CONFIG_RESUME_LOST_DEVICE +-# define MVK_CONFIG_RESUME_LOST_DEVICE 0 ++# define MVK_CONFIG_RESUME_LOST_DEVICE 1 + #endif + + /** Support Metal argument buffers. Disabled by default. */ + \ No newline at end of file diff --git a/pkgs/os-specific/linux/bluez/default.nix b/pkgs/os-specific/linux/bluez/default.nix index fb75b99f03d9..ab9b7055fdda 100644 --- a/pkgs/os-specific/linux/bluez/default.nix +++ b/pkgs/os-specific/linux/bluez/default.nix @@ -135,6 +135,5 @@ in stdenv.mkDerivation rec { homepage = "http://www.bluez.org/"; license = with licenses; [ gpl2 lgpl21 ]; platforms = platforms.linux; - repositories.git = "https://git.kernel.org/pub/scm/bluetooth/bluez.git"; }; } diff --git a/pkgs/os-specific/linux/disk-indicator/default.nix b/pkgs/os-specific/linux/disk-indicator/default.nix index 8a083b8b894d..ac30a947ad91 100644 --- a/pkgs/os-specific/linux/disk-indicator/default.nix +++ b/pkgs/os-specific/linux/disk-indicator/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation { version = "unstable-2014-05-19"; src = fetchgit { - url = "git://github.com/MeanEYE/Disk-Indicator.git"; + url = "https://github.com/MeanEYE/Disk-Indicator.git"; rev = "51ef4afd8141b8d0659cbc7dc62189c56ae9c2da"; sha256 = "10jx6mx9qarn21p2l2jayxkn1gmqhvck1wymgsr4jmbwxl8ra5kd"; }; diff --git a/pkgs/os-specific/linux/displaylink/default.nix b/pkgs/os-specific/linux/displaylink/default.nix index f1e942a43993..e7e572ce18e1 100644 --- a/pkgs/os-specific/linux/displaylink/default.nix +++ b/pkgs/os-specific/linux/displaylink/default.nix @@ -20,22 +20,22 @@ let in stdenv.mkDerivation rec { pname = "displaylink"; - version = "5.5.0-beta-59.118"; + version = "5.5.0-59.151"; src = requireFile rec { name = "displaylink-55.zip"; - sha256 = "0mid6p1mnkhbl96cr763ngdwrlgnpgs6c137rwc2sjf4v33g59ma"; + sha256 = "0pswmczzrqqq0s0ksp6rfnkm693ligq4nblki1v53jdh0y7d1gff"; message = '' In order to install the DisplayLink drivers, you must first comply with DisplayLink's EULA and download the binaries and sources from here: - https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu-5.5-Beta + https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu-5.5 Once you have downloaded the file, please use the following commands and re-run the installation: - mv \$PWD/"DisplayLink USB Graphics Software for Ubuntu (Beta)5.5 Beta-EXE.zip" \$PWD/${name} + mv \$PWD/"DisplayLink USB Graphics Software for Ubuntu5.5-EXE.zip" \$PWD/${name} nix-prefetch-url file://\$PWD/${name} ''; }; diff --git a/pkgs/os-specific/linux/dmtcp/default.nix b/pkgs/os-specific/linux/dmtcp/default.nix index 50124a2bf452..6315d361ed68 100644 --- a/pkgs/os-specific/linux/dmtcp/default.nix +++ b/pkgs/os-specific/linux/dmtcp/default.nix @@ -1,16 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, bash, perl, python2 }: - -# There are fixes for python3 compatibility on master +{ lib, stdenv, fetchFromGitHub, bash, perl, python3 }: stdenv.mkDerivation rec { pname = "dmtcp"; - version = "unstable-2021-03-01"; + version = "unstable-2022-02-28"; src = fetchFromGitHub { owner = pname; repo = pname; - rev = "f999adbb8e88fe452a0e57ceb43b6eed7b4409f9"; - sha256 = "sha256-codCHQui3fGfUZSNq8GuH4ad/GjD6I/S9rX83o8oFPc="; + rev = "133687764c6742906006a1d247e3b83cd860fa1d"; + hash = "sha256-9Vr8IhoeATCfyt7Lp7kYe/7e87mFX9KMNGTqxJgIztE="; }; dontDisableStatic = true; @@ -30,7 +28,7 @@ stdenv.mkDerivation rec { substituteInPlace test/autotest.py \ --replace /bin/bash ${bash}/bin/bash \ --replace /usr/bin/perl ${perl}/bin/perl \ - --replace /usr/bin/python ${python2}/bin/python \ + --replace /usr/bin/python ${python3.interpreter} \ --replace "os.environ['USER']" "\"nixbld1\"" \ --replace "os.getenv('USER')" "\"nixbld1\"" ''; diff --git a/pkgs/os-specific/linux/earlyoom/default.nix b/pkgs/os-specific/linux/earlyoom/default.nix index 46e83609722a..ad7468bac0f5 100644 --- a/pkgs/os-specific/linux/earlyoom/default.nix +++ b/pkgs/os-specific/linux/earlyoom/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, pandoc, installShellFiles, withManpage ? false }: +{ lib, stdenv, fetchFromGitHub, pandoc, installShellFiles, withManpage ? false, nixosTests }: stdenv.mkDerivation rec { pname = "earlyoom"; @@ -23,6 +23,10 @@ stdenv.mkDerivation rec { installManPage earlyoom.1 ''; + passthru.tests = { + inherit (nixosTests) earlyoom; + }; + meta = with lib; { description = "Early OOM Daemon for Linux"; homepage = "https://github.com/rfjakob/earlyoom"; diff --git a/pkgs/os-specific/linux/firmware/rt5677/default.nix b/pkgs/os-specific/linux/firmware/rt5677/default.nix index f5d84179fd29..f21d34bbe533 100644 --- a/pkgs/os-specific/linux/firmware/rt5677/default.nix +++ b/pkgs/os-specific/linux/firmware/rt5677/default.nix @@ -1,15 +1,15 @@ -{ lib, stdenv, fetchgit }: +{ lib, stdenv, fetchFromGitHub }: stdenv.mkDerivation { name = "rt5677-firmware"; - src = fetchgit { - url = "https://github.com/raphael/linux-samus"; + src = fetchFromGitHub { + owner = "raphael"; + repo = "linux-samus"; rev = "995de6c2093797905fbcd79f1a3625dd3f50be37"; - sha256 = "0a6lz9wadm47cmva136q6wd0lw03bmymf9ispnzb091a7skwacry"; + sha256 = "sha256-PjPFpz4qJLC+vTomV31dA3AKGjfYjKB2ZYfUpnj61Cg="; }; - installPhase = '' mkdir -p $out/lib/firmware cp ./firmware/rt5677_elf_vad $out/lib/firmware diff --git a/pkgs/os-specific/linux/hostapd/default.nix b/pkgs/os-specific/linux/hostapd/default.nix index 8124da489aee..3fdbaa9149a6 100644 --- a/pkgs/os-specific/linux/hostapd/default.nix +++ b/pkgs/os-specific/linux/hostapd/default.nix @@ -73,7 +73,6 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://hostap.epitest.fi"; - repositories.git = "git://w1.fi/hostap.git"; description = "A user space daemon for access point and authentication servers"; license = licenses.gpl2; maintainers = with maintainers; [ ninjatrappeur hexa ]; diff --git a/pkgs/os-specific/linux/i7z/default.nix b/pkgs/os-specific/linux/i7z/default.nix index 7de8046483d4..9af2aba3d806 100644 --- a/pkgs/os-specific/linux/i7z/default.nix +++ b/pkgs/os-specific/linux/i7z/default.nix @@ -49,7 +49,6 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A better i7 (and now i3, i5) reporting tool for Linux"; homepage = "https://github.com/DimitryAndric/i7z"; - repositories.git = "https://github.com/DimitryAndric/i7z.git"; license = licenses.gpl2; maintainers = with maintainers; [ bluescreen303 ]; # broken on ARM diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 068aedf31213..153b41194b85 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -60,16 +60,16 @@ let }; power-management = { - PM_ADVANCED_DEBUG = yes; - X86_INTEL_LPSS = yes; - X86_INTEL_PSTATE = yes; - INTEL_IDLE = yes; CPU_FREQ_DEFAULT_GOV_PERFORMANCE = yes; CPU_FREQ_GOV_SCHEDUTIL = yes; + PM_ADVANCED_DEBUG = yes; PM_WAKELOCKS = yes; - # Power-capping framework and support for INTEL RAPL POWERCAP = yes; + } // optionalAttrs (stdenv.hostPlatform.isx86) { + INTEL_IDLE = yes; INTEL_RAPL = whenAtLeast "5.3" module; + X86_INTEL_LPSS = yes; + X86_INTEL_PSTATE = yes; }; external-firmware = { @@ -269,8 +269,6 @@ let DRM_GMA600 = whenOlder "5.13" yes; DRM_GMA3600 = whenOlder "5.12" yes; DRM_VMWGFX_FBCON = yes; - # necessary for amdgpu polaris support - DRM_AMD_POWERPLAY = whenBetween "4.5" "4.9" yes; # (experimental) amdgpu support for verde and newer chipsets DRM_AMDGPU_SI = yes; # (stable) amdgpu support for bonaire and newer chipsets @@ -383,7 +381,7 @@ let EXT4_FS_POSIX_ACL = yes; EXT4_FS_SECURITY = yes; - EXT4_ENCRYPTION = { optional = true; tristate = if (versionOlder version "4.8") then "m" else "y"; }; + EXT4_ENCRYPTION = option yes; REISERFS_FS_XATTR = option yes; REISERFS_FS_POSIX_ACL = option yes; @@ -461,7 +459,7 @@ let # https://googleprojectzero.blogspot.com/2019/11/bad-binder-android-in-wild-exploit.html DEBUG_LIST = yes; # Detect writes to read-only module pages - DEBUG_SET_MODULE_RONX = { optional = true; tristate = whenOlder "4.11" "y"; }; + DEBUG_SET_MODULE_RONX = whenOlder "4.11" (option yes); RANDOMIZE_BASE = option yes; STRICT_DEVMEM = mkDefault yes; # Filter access to /dev/mem IO_STRICT_DEVMEM = mkDefault yes; @@ -479,6 +477,7 @@ let DEFAULT_SECURITY_APPARMOR = yes; RANDOM_TRUST_CPU = whenAtLeast "4.19" yes; # allow RDRAND to seed the RNG + RANDOM_TRUST_BOOTLOADER = whenAtLeast "5.4" yes; # allow the bootloader to seed the RNG MODULE_SIG = no; # r13y, generates a random key during build and bakes it in # Depends on MODULE_SIG and only really helps when you sign your modules @@ -547,7 +546,7 @@ let UPROBE_EVENT = { optional = true; tristate = whenOlder "4.11" "y";}; UPROBE_EVENTS = { optional = true; tristate = whenAtLeast "4.11" "y";}; BPF_SYSCALL = yes; - BPF_UNPRIV_DEFAULT_OFF = whenBetween "5.10" "5.15" yes; + BPF_UNPRIV_DEFAULT_OFF = whenBetween "5.10" "5.16" yes; BPF_EVENTS = yes; FUNCTION_PROFILER = yes; RING_BUFFER_BENCHMARK = no; @@ -560,8 +559,8 @@ let PARAVIRT_SPINLOCKS = option yes; KVM_ASYNC_PF = yes; - KVM_COMPAT = { optional = true; tristate = whenBetween "4.0" "4.12" "y"; }; - KVM_DEVICE_ASSIGNMENT = { optional = true; tristate = whenBetween "3.10" "4.12" "y"; }; + KVM_COMPAT = whenOlder "4.12" (option yes); + KVM_DEVICE_ASSIGNMENT = whenOlder "4.12" (option yes); KVM_GENERIC_DIRTYLOG_READ_PROTECT = yes; KVM_GUEST = yes; KVM_MMIO = yes; @@ -769,7 +768,6 @@ let AIC79XX_DEBUG_ENABLE = no; AIC7XXX_DEBUG_ENABLE = no; AIC94XX_DEBUG = no; - B43_PCMCIA = { optional=true; tristate = whenOlder "4.4" "y";}; BLK_DEV_INTEGRITY = yes; @@ -790,7 +788,9 @@ let BT_RFCOMM_TTY = option yes; # RFCOMM TTY support BT_QCA = module; # enables QCA6390 bluetooth - CLEANCACHE = option yes; + # Removed on 5.17 as it was unused + # upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0a4ee518185e902758191d968600399f3bc2be31 + CLEANCACHE = whenOlder "5.17" (option yes); CRASH_DUMP = option no; DVB_DYNAMIC_MINORS = option yes; # we use udev diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix index 9daf9c4bd190..0683e7d6ad4d 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "4.14.272"; + version = "4.14.274"; # 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,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "0scx13pc5y5jmm5xa17my242gsgb1mf0cgqzjx656g7kkh4phqcv"; + sha256 = "1bbz1w5l7im7dspq6g6iy5vahsxcaa1b2ykrw49m3pw8rf7m6hib"; }; } // (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 c4bd2f8fc5da..6121fccf15fa 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.19.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "4.19.235"; + version = "4.19.237"; # 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,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1615y3ma9icmqqr7lisl8nd8zvvkh77a81yl39yvy6qi9345l32k"; + sha256 = "1n0c4bmmbj145zsp662a5rxh294fpq4dkillpz16wj6c098z7zxs"; }; } // (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 9eae11205caa..ad58c3ef6413 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.9.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix @@ -1,12 +1,12 @@ { buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args: buildLinux (args // rec { - version = "4.9.307"; + version = "4.9.309"; extraMeta.branch = "4.9"; extraMeta.broken = stdenv.isAarch64; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1xyhz7hq8yyclxyavzk36sbl41vlb74pccd56240kq34ma1hyis7"; + sha256 = "05468rk4hlz9ag1zb7shngn5rl42npw7haqbi5mpaa0yksl5asp8"; }; } // (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 dec0ebb154ac..7b5c9cba1444 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.10.106"; + version = "5.10.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,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "0yjrlghcxw3lhd6nc2m4zy4gk536w3a3w6mxdsml690fqz4531n6"; + sha256 = "1p0k46isy2wzzms801lrnb59f1nb9mhywjj7fnkrwrj9nbn25yqq"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.15.nix b/pkgs/os-specific/linux/kernel/linux-5.15.nix index 7b76ab0c8a51..dab27c119aa5 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.15.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.15.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.15.29"; + version = "5.15.32"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -15,6 +15,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "0vl7xm4xs59z071wfjna392yada3hg5h6h3dfjaswircc22fc1ar"; + sha256 = "11nz2w6hgwy6va6sxf4ic1s4kv24zbpssgjxsq6n321h4bxcsqql"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-5.16.nix b/pkgs/os-specific/linux/kernel/linux-5.16.nix index 1fadc0d420e1..4dcb71c4f5cd 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.16.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.16.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.16.15"; + version = "5.16.18"; # 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,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1mi41npkk1inqchm3yp14xmzc5lrp50d7vbpazwxwq5kw04c8c4g"; + sha256 = "096f80m2czj8khvil7s037pqdf1s6pklqn5d9419jqkz7v70piry"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-5.17.nix b/pkgs/os-specific/linux/kernel/linux-5.17.nix new file mode 100644 index 000000000000..edd5339e103d --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-5.17.nix @@ -0,0 +1,18 @@ +{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args: + +with lib; + +buildLinux (args // rec { + version = "5.17.1"; + + # 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; + + # branchVersion needs to be x.y + extraMeta.branch = versions.majorMinor version; + + src = fetchurl { + url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; + sha256 = "092cx18va108lb27kxx2b00ma3l9g22nmkk81034apx26bacbmbw"; + }; +} // (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 c234b4f898c4..65c9f6c4b26d 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.4.185"; + version = "5.4.188"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "11rp3x05bq9cs9gwy4x36ynkgl7nb5ss29zi6m7n5ywvczdfjpyi"; + sha256 = "1g7xf2jx1hx580f42yirfgv9v0f9f88wzxxx0wiwx7wcqbyqpg4z"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix index 8c4dc41e8f50..16bbbf614aa9 100644 --- a/pkgs/os-specific/linux/kernel/linux-libre.nix +++ b/pkgs/os-specific/linux/kernel/linux-libre.nix @@ -1,8 +1,8 @@ { stdenv, lib, fetchsvn, linux , scripts ? fetchsvn { url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; - rev = "18635"; - sha256 = "0d74hji2cms9z3h3s1j4i7qnw1350a95vafrqargf9s2zz0bkgfc"; + rev = "18664"; + sha256 = "0yvgnqf355wr7wmfd0r8zydbr7icic06cp5hjp060vv0m9bf87xi"; } , ... }: diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix index 50b3f18e9e21..cf0744bce681 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix @@ -6,7 +6,7 @@ , ... } @ args: let - version = "5.10.104-rt63"; # updated by ./update-rt.sh + version = "5.10.106-rt64"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in buildLinux (args // { @@ -18,14 +18,14 @@ in buildLinux (args // { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; - sha256 = "1wb2ql58md45wi49bp3rck7ppgisyjdl7lxarzqd094fx9kr4jir"; + sha256 = "0yjrlghcxw3lhd6nc2m4zy4gk536w3a3w6mxdsml690fqz4531n6"; }; kernelPatches = let rt-patch = { name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "17ivd6dm49axc9k6cqf39wjjqrjqbj5xd3n7lqk7vv95rg9fg0g7"; + sha256 = "0z5gyi1vyjyd05vyccmk9yfgvm5v1lc8vbfywahx495xzpp9i8xb"; }; }; in [ rt-patch ] ++ kernelPatches; diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix index 63d47dd8a384..e86f6fced569 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix @@ -1,9 +1,9 @@ { lib , fetchpatch , kernel -, date ? "2022-03-09" -, commit ? "2280551cebc1735f74eef75d650dd5e175461657" -, diffHash ? "1mrrydidbapdq0fs0vpqhs88k6ghdrvmjpk2zi7xlwj7j32h0nwp" +, date ? "2022-03-21" +, commit ? "c38b7167aa5f3b1b91dcc93ade57f30e95064590" +, diffHash ? "04lgwnng7p2rlz9sxn74n22750kh524xwfws3agqs12pcrvfsm0j" , kernelPatches # must always be defined in bcachefs' all-packages.nix entry because it's also a top-level attribute supplied by callPackage , argsOverride ? {} , ... diff --git a/pkgs/os-specific/linux/kernel/linux-zen.nix b/pkgs/os-specific/linux/kernel/linux-zen.nix index d990d6d4ed1e..0e6cc394a549 100644 --- a/pkgs/os-specific/linux/kernel/linux-zen.nix +++ b/pkgs/os-specific/linux/kernel/linux-zen.nix @@ -2,13 +2,14 @@ let # having the full version string here makes it easier to update - modDirVersion = "5.16.11-zen1"; + modDirVersion = "5.17.0-zen1"; parts = lib.splitString "-" modDirVersion; version = lib.elemAt parts 0; suffix = lib.elemAt parts 1; numbers = lib.splitString "." version; branch = "${lib.elemAt numbers 0}.${lib.elemAt numbers 1}"; + rev = if ((lib.elemAt numbers 2) == "0") then "v${branch}-${suffix}" else "v${modDirVersion}"; in buildLinux (args // { @@ -18,8 +19,8 @@ buildLinux (args // { src = fetchFromGitHub { owner = "zen-kernel"; repo = "zen-kernel"; - rev = "v${modDirVersion}"; - sha256 = "sha256-aCmHtWTOlFo9r6g0pcOXMzksAH3spcOqElE9hynFbFo="; + inherit rev; + sha256 = "sha256-8DCcO2oPnwXjjm3PW7vNZKbB3S7XsEB/svAMhbPRJIo="; }; structuredExtraConfig = with lib.kernel; { diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index 1ac9cbe00ead..220f09ed8b50 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -301,7 +301,6 @@ let + ")"); license = lib.licenses.gpl2Only; homepage = "https://www.kernel.org/"; - repositories.git = "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"; maintainers = lib.teams.linux-kernel.members ++ [ maintainers.thoughtpolice ]; diff --git a/pkgs/os-specific/linux/ldm/default.nix b/pkgs/os-specific/linux/ldm/default.nix index 072b53b02ec2..f8a519de847e 100644 --- a/pkgs/os-specific/linux/ldm/default.nix +++ b/pkgs/os-specific/linux/ldm/default.nix @@ -4,7 +4,6 @@ assert mountPath != ""; let version = "0.5"; - git = "https://github.com/LemonBoy/ldm.git"; in stdenv.mkDerivation rec { pname = "ldm"; @@ -13,7 +12,7 @@ stdenv.mkDerivation rec { # There is a stable release, but we'll use the lvm branch, which # contains important fixes for LVM setups. src = fetchgit { - url = meta.repositories.git; + url = "https://github.com/LemonBoy/ldm"; rev = "refs/tags/v${version}"; sha256 = "0lxfypnbamfx6p9ar5k9wra20gvwn665l4pp2j4vsx4yi5q7rw2n"; }; @@ -36,8 +35,6 @@ stdenv.mkDerivation rec { meta = { description = "A lightweight device mounter, with libudev as only dependency"; license = lib.licenses.mit; - platforms = lib.platforms.linux; - repositories.git = git; }; } diff --git a/pkgs/os-specific/linux/lightum/default.nix b/pkgs/os-specific/linux/lightum/default.nix index 8da12d78bc93..95b766aec05b 100644 --- a/pkgs/os-specific/linux/lightum/default.nix +++ b/pkgs/os-specific/linux/lightum/default.nix @@ -1,12 +1,14 @@ -{ lib, stdenv, fetchgit, libX11, libXScrnSaver, libXext, glib, dbus, pkg-config, systemd }: +{ lib, stdenv, fetchFromGitHub, libX11, libXScrnSaver, libXext, glib, dbus, pkg-config, systemd }: stdenv.mkDerivation { pname = "lightum"; version = "unstable-2014-06-07"; - src = fetchgit { - url = "https://github.com/poliva/lightum"; + + src = fetchFromGitHub { + owner = "poliva"; + repo = "lightum"; rev = "123e6babe0669b23d4c1dfa5511088608ff2baa8"; - sha256 = "01x24rcrkgksyvqpgkr9zafg3jgs8nqng8yf0hx0kbmcimar8dbp"; + sha256 = "sha256-dzWUVY2srgk6BM6jZ7FF+snxnPopz3fx9nq+mVkmogc="; }; buildInputs = [ diff --git a/pkgs/os-specific/linux/lttng-modules/default.nix b/pkgs/os-specific/linux/lttng-modules/default.nix index 99ffb7756da0..706ee95fb70a 100644 --- a/pkgs/os-specific/linux/lttng-modules/default.nix +++ b/pkgs/os-specific/linux/lttng-modules/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "lttng-modules-${kernel.version}"; - version = "2.13.1"; + version = "2.13.2"; src = fetchurl { url = "https://lttng.org/files/lttng-modules/lttng-modules-${version}.tar.bz2"; - sha256 = "0hzksx2fw008jdsgfzpws9g7imy6ryw09ai5y0knvrmvr68nvj57"; + sha256 = "sha256-39VH2QQcjFRa5be/7z8O8tnyUg1qtEGIyeqN5W1dKYo="; }; nativeBuildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/os-specific/linux/nix-ld/default.nix b/pkgs/os-specific/linux/nix-ld/default.nix new file mode 100644 index 000000000000..dcab99cabfe4 --- /dev/null +++ b/pkgs/os-specific/linux/nix-ld/default.nix @@ -0,0 +1,49 @@ +{ stdenv, meson, ninja, lib, nixosTests, fetchFromGitHub }: +let + self = stdenv.mkDerivation { + name = "nix-ld"; + src = fetchFromGitHub { + owner = "Mic92"; + repo = "nix-ld"; + rev = "1.0.0"; + sha256 = "sha256-QYPg8wPpq7q5Xd1jW17Lh36iKFSsVkN/gWYoQRv2XoU="; + }; + + doCheck = true; + + nativeBuildInputs = [ meson ninja ]; + + mesonFlags = [ + "-Dnix-system=${stdenv.system}" + ]; + + hardeningDisable = [ + "stackprotector" + ]; + + postInstall = '' + mkdir -p $out/nix-support + basename $(< ${stdenv.cc}/nix-support/dynamic-linker) > $out/nix-support/ld-name + ''; + + passthru.tests.nix-ld = nixosTests.nix-ld; + passthru.ldPath = let + libDir = if stdenv.system == "x86_64-linux" || + stdenv.system == "mips64-linux" || + stdenv.system == "powerpc64le-linux" + then + "/lib64" + else + "/lib"; + ldName = lib.fileContents "${self}/nix-support/ld-name"; + in "${libDir}/${ldName}"; + + meta = with lib; { + description = "Run unpatched dynamic binaries on NixOS"; + homepage = "https://github.com/Mic92/nix-ld"; + license = licenses.mit; + maintainers = with maintainers; [ mic92 ]; + platforms = platforms.linux; + }; + }; +in self diff --git a/pkgs/os-specific/linux/nixos-rebuild/default.nix b/pkgs/os-specific/linux/nixos-rebuild/default.nix index 58712835d60f..34611d3f4009 100644 --- a/pkgs/os-specific/linux/nixos-rebuild/default.nix +++ b/pkgs/os-specific/linux/nixos-rebuild/default.nix @@ -25,4 +25,12 @@ substituteAll { passthru.tests = { simple-installer-test = nixosTests.installer.simple; }; + + meta = { + description = "Rebuild your NixOS configuration and switch to it, on local hosts and remote."; + homepage = "https://github.com/NixOS/nixpkgs/tree/master/pkgs/os-specific/linux/nixos-rebuild"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.Profpatsch ]; + mainProgram = "nixos-rebuild"; + }; } diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh index e7c6bd016048..795bedb99d4d 100755 --- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh +++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh @@ -32,9 +32,15 @@ buildHost=localhost targetHost= remoteSudo= verboseScript= +noFlake= # comma separated list of vars to preserve when using sudo preservedSudoVars=NIXOS_INSTALL_BOOTLOADER +# log the given argument to stderr +log() { + echo "$@" >&2 +} + while [ "$#" -gt 0 ]; do i="$1"; shift 1 case "$i" in @@ -46,7 +52,7 @@ while [ "$#" -gt 0 ]; do action="$i" ;; --install-grub) - echo "$0: --install-grub deprecated, use --install-bootloader instead" >&2 + log "$0: --install-grub deprecated, use --install-bootloader instead" export NIXOS_INSTALL_BOOTLOADER=1 ;; --install-bootloader) @@ -65,14 +71,14 @@ while [ "$#" -gt 0 ]; do upgrade=1 upgrade_all=1 ;; - -s|--use-substitutes) + --use-substitutes|-s) copyClosureFlags+=("$i") ;; - --max-jobs|-j|--cores|-I|--builders) + -I|--max-jobs|-j|--cores|--builders) j="$1"; shift 1 extraBuildFlags+=("$i" "$j") ;; - --show-trace|--keep-failed|-K|--keep-going|-k|--fallback|--repair|--no-build-output|-Q|-j*|-L|--print-build-logs|--refresh|--no-net|--offline|--impure) + -j*|--quiet|--print-build-logs|-L|--no-build-output|-Q| --show-trace|--keep-going|-k|--keep-failed|-K|--fallback|--refresh|--repair|--impure|--offline|--no-net) extraBuildFlags+=("$i") ;; --verbose|-v|-vv|-vvv|-vvvv|-vvvvv) @@ -90,7 +96,7 @@ while [ "$#" -gt 0 ]; do ;; --profile-name|-p) if [ -z "$1" ]; then - echo "$0: ‘--profile-name’ requires an argument" + log "$0: ‘--profile-name’ requires an argument" exit 1 fi if [ "$1" != system ]; then @@ -115,6 +121,9 @@ while [ "$#" -gt 0 ]; do flakeFlags=(--extra-experimental-features 'nix-command flakes') shift 1 ;; + --no-flake) + noFlake=1 + ;; --recreate-lock-file|--no-update-lock-file|--no-write-lock-file|--no-registries|--commit-lock-file) lockFlags+=("$i") ;; @@ -128,7 +137,7 @@ while [ "$#" -gt 0 ]; do lockFlags+=("$i" "$j" "$k") ;; *) - echo "$0: unknown option \`$i'" + log "$0: unknown option \`$i'" exit 1 ;; esac @@ -235,7 +244,7 @@ nixBuild() { NIX_SSHOPTS=$SSHOPTS runCmd nix-copy-closure --to "$buildHost" "$drv" buildHostCmd nix-store -r "$drv" "${buildArgs[@]}" else - echo "nix-instantiate failed" + log "nix-instantiate failed" exit 1 fi fi @@ -286,7 +295,7 @@ nixFlakeBuild() { NIX_SSHOPTS=$SSHOPTS runCmd nix "${flakeFlags[@]}" copy --derivation --to "ssh://$buildHost" "$drv" buildHostCmd nix-store -r "$drv" "${buildArgs[@]}" else - echo "nix eval failed" + log "nix eval failed" exit 1 fi fi @@ -339,20 +348,10 @@ fi # Use /etc/nixos/flake.nix if it exists. It can be a symlink to the # actual flake. -if [[ -z $flake && -e /etc/nixos/flake.nix ]]; then +if [[ -z $flake && -e /etc/nixos/flake.nix && -z $noFlake ]]; then flake="$(dirname "$(readlink -f /etc/nixos/flake.nix)")" fi -# Re-execute nixos-rebuild from the Nixpkgs tree. -# FIXME: get nixos-rebuild from $flake. -if [[ -z $_NIXOS_REBUILD_REEXEC && -n $canRun && -z $fast && -z $flake ]]; then - if p=$(runCmd nix-build --no-out-link --expr 'with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild' "${extraBuildFlags[@]}"); then - export _NIXOS_REBUILD_REEXEC=1 - runCmd exec "$p/bin/nixos-rebuild" "${origArgs[@]}" - exit 1 - fi -fi - # For convenience, use the hostname as the default configuration to # build from the flake. if [[ -n $flake ]]; then @@ -371,6 +370,40 @@ if [[ -n $flake ]]; then fi fi + +tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX) + +cleanup() { + for ctrl in "$tmpDir"/ssh-*; do + ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true + done + rm -rf "$tmpDir" +} +trap cleanup EXIT + + +# Re-execute nixos-rebuild from the Nixpkgs tree. +if [[ -z $_NIXOS_REBUILD_REEXEC && -n $canRun && -z $fast ]]; then + if [[ -z $flake ]]; then + if p=$(runCmd nix-build --no-out-link --expr 'with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild' "${extraBuildFlags[@]}"); then + SHOULD_REEXEC=1 + fi + else + runCmd nix "${flakeFlags[@]}" build --out-link "${tmpDir}/nixos-rebuild" "$flake#$flakeAttr.config.system.build.nixos-rebuild" "${extraBuildFlags[@]}" "${lockFlags[@]}" + if p=$(readlink -e "${tmpDir}/nixos-rebuild"); then + SHOULD_REEXEC=1 + fi + fi + + if [[ -n $SHOULD_REEXEC ]]; then + export _NIXOS_REBUILD_REEXEC=1 + # Manually call cleanup as the EXIT trap is not triggered when using exec + cleanup + runCmd exec "$p/bin/nixos-rebuild" "${origArgs[@]}" + exit 1 + fi +fi + # Find configuration.nix and open editor instead of building. if [ "$action" = edit ]; then if [[ -z $flake ]]; then @@ -385,19 +418,8 @@ if [ "$action" = edit ]; then exit 1 fi - -tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX) SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60" -cleanup() { - for ctrl in "$tmpDir"/ssh-*; do - ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true - done - rm -rf "$tmpDir" -} -trap cleanup EXIT - - # First build Nix, since NixOS may require a newer version than the # current one. if [[ -n "$rollback" || "$action" = dry-build ]]; then @@ -421,13 +443,13 @@ prebuiltNix() { elif [[ "$machine" = aarch64 ]]; then echo @nix_aarch64_linux@ else - echo "$0: unsupported platform" + log "$0: unsupported platform" exit 1 fi } if [[ -n $buildNix && -z $flake ]]; then - echo "building Nix..." >&2 + log "building Nix..." nixDrv= if ! nixDrv="$(runCmd nix-instantiate '<nixpkgs/nixos>' --add-root "$tmpDir/nix.drv" --indirect -A config.nix.package.out "${extraBuildFlags[@]}")"; then if ! nixDrv="$(runCmd nix-instantiate '<nixpkgs>' --add-root "$tmpDir/nix.drv" --indirect -A nix "${extraBuildFlags[@]}")"; then @@ -436,7 +458,7 @@ if [[ -n $buildNix && -z $flake ]]; then fi if ! runCmd nix-store -r "$nixStorePath" --add-root "${tmpDir}/nix" --indirect \ --option extra-binary-caches https://cache.nixos.org/; then - echo "warning: don't know how to get latest Nix" >&2 + log "warning: don't know how to get latest Nix" fi # Older version of nix-store -r don't support --add-root. [ -e "$tmpDir/nix" ] || ln -sf "$nixStorePath" "$tmpDir/nix" @@ -446,7 +468,7 @@ if [[ -n $buildNix && -z $flake ]]; then if ! buildHostCmd nix-store -r "$remoteNixStorePath" \ --option extra-binary-caches https://cache.nixos.org/ >/dev/null; then remoteNix= - echo "warning: don't know how to get latest Nix" >&2 + log "warning: don't know how to get latest Nix" fi fi fi @@ -486,7 +508,7 @@ fi # or "boot"), or just build it and create a symlink "result" in the # current directory (for "build" and "test"). if [ -z "$rollback" ]; then - echo "building the system configuration..." >&2 + log "building the system configuration..." if [[ "$action" = switch || "$action" = boot ]]; then if [[ -z $flake ]]; then pathToConfig="$(nixBuild '<nixpkgs/nixos>' --no-out-link -A system "${extraBuildFlags[@]}")" @@ -543,7 +565,7 @@ fi # default and/or activate it now. if [[ "$action" = switch || "$action" = boot || "$action" = test || "$action" = dry-activate ]]; then if ! targetHostCmd "$pathToConfig/bin/switch-to-configuration" "$action"; then - echo "warning: error(s) occurred while switching to the new configuration" >&2 + log "warning: error(s) occurred while switching to the new configuration" exit 1 fi fi diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 145265017855..246295eb7340 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -19,10 +19,10 @@ rec { # Policy: use the highest stable version as the default (on our master). stable = if stdenv.hostPlatform.system == "x86_64-linux" then generic { - version = "510.54"; - sha256_64bit = "TCDezK4/40et/Q5piaMG+QJP2t+DGtwejmCFVnUzUWE="; - settingsSha256 = "ZWz5UN6Pa69NlmerKu30G+X8WfGlAwnVerDrO7TRO6w="; - persistencedSha256 = "MgWrBjKXJeRqF+ouT72tTiLPtn+lsS/Cp3oS61AWV8Q="; + version = "510.60.02"; + sha256_64bit = "sha256-qADfwFSQeP2Mbo5ngO+47uh4cuYFXH9fOGpHaM4H4AM="; + settingsSha256 = "sha256-Voa1JZ2qqJ1t+bfwKh/mssEi/hjzLTPwef2XG/gAC+0="; + persistencedSha256 = "sha256-THgK2GpRcttqSN2WxcuJu5My++Q+Y34jG8hm7daxhAQ="; } else legacy_390; diff --git a/pkgs/os-specific/linux/projecteur/default.nix b/pkgs/os-specific/linux/projecteur/default.nix new file mode 100644 index 000000000000..63de7453935c --- /dev/null +++ b/pkgs/os-specific/linux/projecteur/default.nix @@ -0,0 +1,32 @@ +{ lib, mkDerivation, fetchFromGitHub, + cmake, pkg-config, + qtbase, qtgraphicaleffects, wrapQtAppsHook }: +mkDerivation rec { + pname = "projecteur"; + version = "0.9.2"; + + src = fetchFromGitHub { + owner = "jahnf"; + repo = "Projecteur"; + rev = "v${version}"; + fetchSubmodules = false; + sha256 = "sha256-kg6oYtJ4H5A6RNATBg+XvMfCb9FlhEBFjfxamGosMQg="; + }; + + buildInputs = [ qtbase qtgraphicaleffects ]; + nativeBuildInputs = [ wrapQtAppsHook cmake pkg-config ]; + + cmakeFlags = [ + "-DCMAKE_INSTALL_PREFIX:PATH=${placeholder "out"}" + "-DPACKAGE_TARGETS=OFF" + "-DCMAKE_INSTALL_UDEVRULESDIR=${placeholder "out"}/lib/udev/rules.d" + ]; + + meta = with lib; { + description = "Linux/X11 application for the Logitech Spotlight device (and similar devices)."; + homepage = "https://github.com/jahnf/Projecteur"; + license = licenses.mit; + platforms = platforms.linux; + maintainers = with maintainers; [ benneti ]; + }; +} diff --git a/pkgs/os-specific/linux/r8168/default.nix b/pkgs/os-specific/linux/r8168/default.nix index 680cc531af42..bcf5fb8956ab 100644 --- a/pkgs/os-specific/linux/r8168/default.nix +++ b/pkgs/os-specific/linux/r8168/default.nix @@ -10,7 +10,7 @@ in stdenv.mkDerivation rec { # This is a mirror. The original website[1] doesn't allow non-interactive # downloads, instead emailing you a download link. - # [1] http://www.realtek.com.tw/downloads/downloadsView.aspx?PFid=5&Level=5&Conn=4&DownTypeID=3 + # [1] https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software # I've verified manually (`diff -r`) that the source code for version 8.046.00 # is the same as the one available on the realtek website. src = fetchFromGitHub { @@ -54,5 +54,6 @@ in stdenv.mkDerivation rec { license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = with maintainers; [ timokau ]; + broken = kernel.kernelAtLeast "5.17"; }; } diff --git a/pkgs/os-specific/linux/rtl8189es/default.nix b/pkgs/os-specific/linux/rtl8189es/default.nix index d6b5785210b0..c1032473db10 100644 --- a/pkgs/os-specific/linux/rtl8189es/default.nix +++ b/pkgs/os-specific/linux/rtl8189es/default.nix @@ -42,5 +42,6 @@ stdenv.mkDerivation rec { license = licenses.gpl2; platforms = platforms.linux; maintainers = with maintainers; [ danielfullmer lheckemann ]; + broken = kernel.kernelAtLeast "5.17"; }; } diff --git a/pkgs/os-specific/linux/rtl8192eu/default.nix b/pkgs/os-specific/linux/rtl8192eu/default.nix index 6fa15358582c..de4dd52e511c 100644 --- a/pkgs/os-specific/linux/rtl8192eu/default.nix +++ b/pkgs/os-specific/linux/rtl8192eu/default.nix @@ -6,13 +6,13 @@ let modDestDir = "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wi in stdenv.mkDerivation rec { pname = "rtl8192eu"; - version = "${kernel.version}-4.4.1.20211023"; + version = "${kernel.version}-4.4.1.20220313"; src = fetchFromGitHub { owner = "Mange"; repo = "rtl8192eu-linux-driver"; - rev = "744bbe52976e51895fce2c1d4075f97a98dca2b2"; - sha256 = "1ayb3fljvpljwcgi47h8vj2d2w5imqyjxc7mvmfrvmilzg5d5cj7"; + rev = "e0f967cea1d0037c730246c572f7fef000865ff7"; + sha256 = "sha256-Wgp1MZ/z8AxbZPYsmR6t7Q4nsL0TFEqTEsrkkWPI6gI="; }; hardeningDisable = [ "pic" ]; diff --git a/pkgs/os-specific/linux/rtl8814au/default.nix b/pkgs/os-specific/linux/rtl8814au/default.nix index f12adf73d5f3..dce8733c0cca 100644 --- a/pkgs/os-specific/linux/rtl8814au/default.nix +++ b/pkgs/os-specific/linux/rtl8814au/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation { pname = "rtl8814au"; - version = "${kernel.version}-unstable-2021-10-25"; + version = "${kernel.version}-unstable-2022-02-21"; src = fetchFromGitHub { owner = "morrownr"; repo = "8814au"; - rev = "d36c0874716b0776ac6c7dcd6110598ef0f6dd53"; - sha256 = "0lk3ldff489ggbqmlfi4zvnp1cvxj1b06m0fhpzai82070klzzmj"; + rev = "a538e3878c4b7b0b012f2d2fe7804390caaebd90"; + sha256 = "sha256-xBGbcy/WonFrNflMlFCD/JQOFKhPrv0J3j2XcXWc6hk="; }; nativeBuildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/os-specific/linux/rtl8821ce/default.nix b/pkgs/os-specific/linux/rtl8821ce/default.nix index 27303c029802..62743c226889 100644 --- a/pkgs/os-specific/linux/rtl8821ce/default.nix +++ b/pkgs/os-specific/linux/rtl8821ce/default.nix @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/tomaspinho/rtl8821ce"; license = licenses.gpl2Only; platforms = platforms.linux; - broken = stdenv.isAarch64; + broken = stdenv.isAarch64 || kernel.kernelAtLeast "5.17"; maintainers = with maintainers; [ hhm ivar ]; }; } diff --git a/pkgs/os-specific/linux/rtl8821cu/default.nix b/pkgs/os-specific/linux/rtl8821cu/default.nix index 0ea0682214bf..a3d767d2ee67 100644 --- a/pkgs/os-specific/linux/rtl8821cu/default.nix +++ b/pkgs/os-specific/linux/rtl8821cu/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "rtl8821cu"; - version = "${kernel.version}-unstable-2021-10-21"; + version = "${kernel.version}-unstable-2022-03-08"; src = fetchFromGitHub { owner = "morrownr"; - repo = "8821cu"; - rev = "4e2d84c5e70245f850877f355e8bf293f252f61c"; - sha256 = "1j32psvfgzfs5b1pdff6xk76iz7j8scakji6zm3vgqb2ssbxx1k1"; + repo = "8821cu-20210118"; + rev = "4bdd7c8668562e43564cd5d786055633e591ad4d"; + sha256 = "sha256-dfvDpjsra/nHwIGywOkZICTEP/Ex7ooH4zzkXqAaDkI="; }; hardeningDisable = [ "pic" ]; diff --git a/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix b/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix index 1f27c262e673..f975cc2b420b 100644 --- a/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix +++ b/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub, kernel }: let - rev = "307d694076b056588c652c2bdaa543a89eb255d9"; + rev = "37e27f9165300c89607144b646545fac576ec510"; in stdenv.mkDerivation rec { pname = "rtl88xxau-aircrack"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { owner = "aircrack-ng"; repo = "rtl8812au"; inherit rev; - sha256 = "sha256-iSJnKWc+LxGHUhb/wbFSMh7w6Oi9v4v5V+R+LI96X7w="; + sha256 = "sha256-TpmpueKAaCe7Nlmv8pMvgMXGVmXVa/1mBwtEoy4JyCY="; }; buildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/os-specific/linux/upower/default.nix b/pkgs/os-specific/linux/upower/default.nix index 51ae7b002f9a..aff9125c236d 100644 --- a/pkgs/os-specific/linux/upower/default.nix +++ b/pkgs/os-specific/linux/upower/default.nix @@ -8,7 +8,7 @@ , ninja , python3 , gtk-doc -, docbook_xsl +, docbook-xsl-nons , udev , libgudev , libusb1 @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { pname = "upower"; - version = "0.99.15"; + version = "0.99.17"; outputs = [ "out" "dev" "devdoc" ]; @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "upower"; repo = "upower"; rev = "v${version}"; - sha256 = "sha256-GlLy2MPip21KOabdW8Vw6NVe3xhzsd9htxQ2xO/hZ/4="; + sha256 = "xvvqzGxgkuGcvnO12jnLURNJUoSlnMw2g/mnII+i6Bs="; }; nativeBuildInputs = [ @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { ninja python3 gtk-doc - docbook_xsl + docbook-xsl-nons gettext gobject-introspection libxslt @@ -99,7 +99,9 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://upower.freedesktop.org/"; + changelog = "https://gitlab.freedesktop.org/upower/upower/-/blob/v${version}/NEWS"; description = "A D-Bus service for power management"; + maintainers = teams.freedesktop.members; platforms = platforms.linux; license = licenses.gpl2Plus; }; diff --git a/pkgs/os-specific/linux/usermount/default.nix b/pkgs/os-specific/linux/usermount/default.nix index 87b38b9af6e4..934367dcd11b 100644 --- a/pkgs/os-specific/linux/usermount/default.nix +++ b/pkgs/os-specific/linux/usermount/default.nix @@ -1,13 +1,14 @@ -{ lib, stdenv, fetchgit, pkg-config, dbus, libnotify, udisks2, gdk-pixbuf }: +{ lib, stdenv, fetchFromGitHub, pkg-config, dbus, libnotify, udisks2, gdk-pixbuf }: stdenv.mkDerivation { pname = "usermount"; version = "0.1"; - src = fetchgit { - url = "https://github.com/tom5760/usermount.git"; + src = fetchFromGitHub { + owner = "tom5760"; + repo = "usermount"; rev = "0d6aba3c1f8fec80de502f5b92fd8b28041cc8e4"; - sha256 = "0gpp0vwiwr7kgbhh26jspv3255662mnvnav6g8i2h0qxar8hf8w2"; + sha256 = "sha256-giMHUVYdAygiemYru20VxpQixr5aGgHhevNkHvkG9z4="; }; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/os-specific/linux/x86info/default.nix b/pkgs/os-specific/linux/x86info/default.nix index e842b59651e7..db5b040da3a2 100644 --- a/pkgs/os-specific/linux/x86info/default.nix +++ b/pkgs/os-specific/linux/x86info/default.nix @@ -1,32 +1,45 @@ -{lib, stdenv, fetchurl, pciutils, python2}: +{ lib +, stdenv +, fetchFromGitHub +, pciutils +, pkg-config +, python3 +}: stdenv.mkDerivation rec { - version = "1.30"; pname = "x86info"; + version = "unstable-2021-08-07"; - src = fetchurl { - url = "http://codemonkey.org.uk/projects/x86info/${pname}-${version}.tgz"; - sha256 = "0a4lzka46nabpsrg3n7akwr46q38f96zfszd73xcback1s2hjc7y"; + src = fetchFromGitHub { + owner = "kernelslacker"; + repo = pname; + rev = "061ea35ecb0697761b6260998fa2045b8bb0be68"; + hash = "sha256-/qWioC4dV1bQkU4SiTR8duYqoGIMIH7s8vuAXi75juo="; }; - preConfigure = '' - patchShebangs . + nativeBuildInputs = [ + pkg-config + python3 + ]; - # ignore warnings - sed -i 's/-Werror -Wall//' Makefile - ''; + buildInputs = [ + pciutils + ]; - buildInputs = [ pciutils python2 ]; + postBuild = '' + patchShebangs lsmsr/createheader.py + make -C lsmsr + ''; installPhase = '' mkdir -p $out/bin - cp x86info lsmsr $out/bin + cp x86info $out/bin + cp lsmsr/lsmsr $out/bin ''; meta = { description = "Identification utility for the x86 series of processors"; - longDescription = - '' + longDescription = '' x86info will identify all Intel/AMD/Centaur/Cyrix/VIA CPUs. It leverages the cpuid kernel module where possible. it supports parsing model specific registers (MSRs) via the msr kernel module. it will approximate processor @@ -34,7 +47,7 @@ stdenv.mkDerivation rec { ''; platforms = [ "i686-linux" "x86_64-linux" ]; license = lib.licenses.gpl2; - homepage = "http://codemonkey.org.uk/projects/x86info/"; - maintainers = with lib.maintainers; [jcumming]; + homepage = "https://github.com/kernelslacker/x86info"; + maintainers = with lib.maintainers; [ jcumming ]; }; } diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index b5260d47caa4..6747d511694b 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -16,7 +16,7 @@ , enablePython ? true # for determining the latest compatible linuxPackages -, linuxPackages_5_16 ? pkgs.linuxKernel.packages.linux_5_16 +, linuxPackages_5_17 ? pkgs.linuxKernel.packages.linux_5_17 }: let @@ -216,28 +216,28 @@ in { # to be adapted zfsStable = common { # check the release notes for compatible kernels - kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.17"; - latestCompatibleLinuxPackages = linuxPackages_5_16; + kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.18"; + latestCompatibleLinuxPackages = linuxPackages_5_17; # this package should point to the latest release. - version = "2.1.3"; + version = "2.1.4"; - sha256 = "10p9s835wj5msspqwnqbfbnh8jmcazzd2v0gj4hn7vvni4p48gfl"; + sha256 = "sha256-pHz1N2j+d9p1xleEBwwrmK9mN5gEyM69Suy0dsrkZT4="; }; zfsUnstable = common { # check the release notes for compatible kernels - kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.17"; - latestCompatibleLinuxPackages = linuxPackages_5_16; + kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.18"; + latestCompatibleLinuxPackages = linuxPackages_5_17; # this package should point to a version / git revision compatible with the latest kernel release # IMPORTANT: Always use a tagged release candidate or commits from the # zfs-<version>-staging branch, because this is tested by the OpenZFS # maintainers. - version = "2.1.3"; + version = "2.1.4"; # rev = "0000000000000000000000000000000000000000"; - sha256 = "10p9s835wj5msspqwnqbfbnh8jmcazzd2v0gj4hn7vvni4p48gfl"; + sha256 = "sha256-pHz1N2j+d9p1xleEBwwrmK9mN5gEyM69Suy0dsrkZT4="; isUnstable = true; }; |