Merge staging-next into staging

authored by github-actions[bot] and committed by GitHub 1385a15f 86c7c091

+290 -56
+1
nixos/modules/module-list.nix
··· 827 ./services/networking/libreswan.nix 828 ./services/networking/lldpd.nix 829 ./services/networking/logmein-hamachi.nix 830 ./services/networking/lxd-image-server.nix 831 ./services/networking/magic-wormhole-mailbox-server.nix 832 ./services/networking/matterbridge.nix
··· 827 ./services/networking/libreswan.nix 828 ./services/networking/lldpd.nix 829 ./services/networking/logmein-hamachi.nix 830 + ./services/networking/lokinet.nix 831 ./services/networking/lxd-image-server.nix 832 ./services/networking/magic-wormhole-mailbox-server.nix 833 ./services/networking/matterbridge.nix
+157
nixos/modules/services/networking/lokinet.nix
···
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + let 4 + cfg = config.services.lokinet; 5 + dataDir = "/var/lib/lokinet"; 6 + settingsFormat = pkgs.formats.ini { listsAsDuplicateKeys = true; }; 7 + configFile = settingsFormat.generate "lokinet.ini" (lib.filterAttrsRecursive (n: v: v != null) cfg.settings); 8 + in with lib; { 9 + options.services.lokinet = { 10 + enable = mkEnableOption "Lokinet daemon"; 11 + 12 + package = mkOption { 13 + type = types.package; 14 + default = pkgs.lokinet; 15 + defaultText = literalExpression "pkgs.lokinet"; 16 + description = "Lokinet package to use."; 17 + }; 18 + 19 + useLocally = mkOption { 20 + type = types.bool; 21 + default = false; 22 + example = true; 23 + description = "Whether to use Lokinet locally."; 24 + }; 25 + 26 + settings = mkOption { 27 + type = with types; 28 + submodule { 29 + freeformType = settingsFormat.type; 30 + 31 + options = { 32 + dns = { 33 + bind = mkOption { 34 + type = str; 35 + default = "127.3.2.1"; 36 + description = "Address to bind to for handling DNS requests."; 37 + }; 38 + 39 + upstream = mkOption { 40 + type = listOf str; 41 + default = [ "9.9.9.10" ]; 42 + example = [ "1.1.1.1" "8.8.8.8" ]; 43 + description = '' 44 + Upstream resolver(s) to use as fallback for non-loki addresses. 45 + Multiple values accepted. 46 + ''; 47 + }; 48 + }; 49 + 50 + network = { 51 + exit = mkOption { 52 + type = bool; 53 + default = false; 54 + description = '' 55 + Whether to act as an exit node. Beware that this 56 + increases demand on the server and may pose liability concerns. 57 + Enable at your own risk. 58 + ''; 59 + }; 60 + 61 + exit-node = mkOption { 62 + type = nullOr (listOf str); 63 + default = null; 64 + example = '' 65 + exit-node = [ "example.loki" ]; # maps all exit traffic to example.loki 66 + exit-node = [ "example.loki:100.0.0.0/24" ]; # maps 100.0.0.0/24 to example.loki 67 + ''; 68 + description = '' 69 + Specify a `.loki` address and an optional ip range to use as an exit broker. 70 + See <link xlink:href="http://probably.loki/wiki/index.php?title=Exit_Nodes"/> for 71 + a list of exit nodes. 72 + ''; 73 + }; 74 + 75 + keyfile = mkOption { 76 + type = nullOr str; 77 + default = null; 78 + example = "snappkey.private"; 79 + description = '' 80 + The private key to persist address with. If not specified the address will be ephemeral. 81 + This keyfile is generated automatically if the specified file doesn't exist. 82 + ''; 83 + }; 84 + }; 85 + }; 86 + }; 87 + default = { }; 88 + example = literalExpression '' 89 + { 90 + dns = { 91 + bind = "127.3.2.1"; 92 + upstream = [ "1.1.1.1" "8.8.8.8" ]; 93 + }; 94 + 95 + network.exit-node = [ "example.loki" "example2.loki" ]; 96 + } 97 + ''; 98 + description = '' 99 + Configuration for Lokinet. 100 + Currently, the best way to view the available settings is by 101 + generating a config file using `lokinet -g`. 102 + ''; 103 + }; 104 + }; 105 + 106 + config = mkIf cfg.enable { 107 + networking.resolvconf.extraConfig = mkIf cfg.useLocally '' 108 + name_servers="${cfg.settings.dns.bind}" 109 + ''; 110 + 111 + systemd.services.lokinet = { 112 + description = "Lokinet"; 113 + after = [ "network-online.target" "network.target" ]; 114 + wants = [ "network-online.target" "network.target" ]; 115 + wantedBy = [ "multi-user.target" ]; 116 + 117 + preStart = '' 118 + ln -sf ${cfg.package}/share/bootstrap.signed ${dataDir} 119 + ${pkgs.coreutils}/bin/install -m 600 ${configFile} ${dataDir}/lokinet.ini 120 + 121 + ${optionalString (cfg.settings.network.keyfile != null) '' 122 + ${pkgs.crudini}/bin/crudini --set ${dataDir}/lokinet.ini network keyfile "${dataDir}/${cfg.settings.network.keyfile}" 123 + ''} 124 + ''; 125 + 126 + serviceConfig = { 127 + DynamicUser = true; 128 + StateDirectory = "lokinet"; 129 + AmbientCapabilities = [ "CAP_NET_ADMIN" "CAP_NET_BIND_SERVICE" ]; 130 + ExecStart = "${cfg.package}/bin/lokinet ${dataDir}/lokinet.ini"; 131 + Restart = "always"; 132 + RestartSec = "5s"; 133 + 134 + # hardening 135 + LockPersonality = true; 136 + MemoryDenyWriteExecute = true; 137 + NoNewPrivileges = true; 138 + PrivateTmp = true; 139 + PrivateMounts = true; 140 + ProtectControlGroups = true; 141 + ProtectHome = true; 142 + ProtectHostname = true; 143 + ProtectKernelLogs = true; 144 + ProtectKernelModules = true; 145 + ProtectKernelTunables = true; 146 + ProtectSystem = "strict"; 147 + ReadWritePaths = "/dev/net/tun"; 148 + RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" "AF_NETLINK" ]; 149 + RestrictNamespaces = true; 150 + RestrictRealtime = true; 151 + RestrictSUIDSGID = true; 152 + }; 153 + }; 154 + 155 + environment.systemPackages = [ cfg.package ]; 156 + }; 157 + }
+2 -2
pkgs/applications/networking/browsers/qutebrowser/default.nix
··· 32 33 in mkDerivationWith python3Packages.buildPythonApplication rec { 34 pname = "qutebrowser"; 35 - version = "2.5.1"; 36 37 # the release tarballs are different from the git checkout! 38 src = fetchurl { 39 url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz"; 40 - hash = "sha256-5ohYhqhM0WamumM3lKWKTGfYccJxiBJ+XdvFJ2127bw="; 41 }; 42 43 # Needs tox
··· 32 33 in mkDerivationWith python3Packages.buildPythonApplication rec { 34 pname = "qutebrowser"; 35 + version = "2.5.2"; 36 37 # the release tarballs are different from the git checkout! 38 src = fetchurl { 39 url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz"; 40 + hash = "sha256-qb/OFN3EA94N6y7t+YPCMc4APgdZmV7H706jTkl06Qg="; 41 }; 42 43 # Needs tox
+1
pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
··· 82 83 runtimeDependencies = [ 84 (lib.getLib systemd) 85 libnotify 86 libdbusmenu 87 xdg-utils
··· 82 83 runtimeDependencies = [ 84 (lib.getLib systemd) 85 + libappindicator-gtk3 86 libnotify 87 libdbusmenu 88 xdg-utils
+64
pkgs/applications/networking/p2p/lokinet/default.nix
···
··· 1 + { stdenv 2 + , lib 3 + , fetchFromGitHub 4 + , cmake 5 + , libevent 6 + , libsodium 7 + , libuv 8 + , nlohmann_json 9 + , pkg-config 10 + , sqlite 11 + , systemd 12 + , unbound 13 + , zeromq 14 + }: 15 + 16 + stdenv.mkDerivation rec { 17 + pname = "lokinet"; 18 + version = "0.9.9"; 19 + 20 + src = fetchFromGitHub { 21 + owner = "oxen-io"; 22 + repo = "lokinet"; 23 + rev = "v${version}"; 24 + fetchSubmodules = true; 25 + sha256 = "sha256-AaGsRg9S9Cng9emI/mN09QSOIRbE+x3916clWAwLnRs="; 26 + }; 27 + 28 + nativeBuildInputs = [ 29 + cmake 30 + pkg-config 31 + ]; 32 + 33 + buildInputs = [ 34 + libevent 35 + libuv 36 + libsodium 37 + nlohmann_json 38 + sqlite 39 + systemd 40 + unbound 41 + zeromq 42 + ]; 43 + 44 + cmakeFlags = [ 45 + "-DGIT_VERSION=v${version}" 46 + "-DWITH_BOOTSTRAP=OFF" # we provide bootstrap files manually 47 + "-DWITH_SETCAP=OFF" 48 + ]; 49 + 50 + # copy bootstrap files 51 + # see https://github.com/oxen-io/lokinet/issues/1765#issuecomment-938208774 52 + postInstall = '' 53 + mkdir -p $out/share/testnet 54 + cp $src/contrib/bootstrap/mainnet.signed $out/share/bootstrap.signed 55 + cp $src/contrib/bootstrap/testnet.signed $out/share/testnet/bootstrap.signed 56 + ''; 57 + 58 + meta = with lib; { 59 + description = "Anonymous, decentralized and IP based overlay network for the internet"; 60 + homepage = "https://lokinet.org/"; 61 + license = licenses.gpl3Plus; 62 + maintainers = with maintainers; [ wyndon ]; 63 + }; 64 + }
+2 -2
pkgs/desktops/pantheon/desktop/wingpanel-indicators/network/default.nix
··· 17 18 stdenv.mkDerivation rec { 19 pname = "wingpanel-indicator-network"; 20 - version = "2.3.2"; 21 22 src = fetchFromGitHub { 23 owner = "elementary"; 24 repo = pname; 25 rev = version; 26 - sha256 = "sha256-4Fg8/Gm9mUqaL3wEc8h+/pMvOfD75ILjo7LhLz6LQmo="; 27 }; 28 29 nativeBuildInputs = [
··· 17 18 stdenv.mkDerivation rec { 19 pname = "wingpanel-indicator-network"; 20 + version = "2.3.3"; 21 22 src = fetchFromGitHub { 23 owner = "elementary"; 24 repo = pname; 25 rev = version; 26 + sha256 = "sha256-fcR8gcexxIzSvR27SUyDhyCOlev+0r7YPPJlCNydCYM="; 27 }; 28 29 nativeBuildInputs = [
+3 -3
pkgs/development/python-modules/asana/default.nix
··· 11 12 buildPythonPackage rec { 13 pname = "asana"; 14 - version = "0.10.9"; 15 format = "setuptools"; 16 17 disabled = pythonOlder "3.7"; ··· 19 src = fetchFromGitHub { 20 owner = "asana"; 21 repo = "python-asana"; 22 - rev = "v${version}"; 23 - sha256 = "sha256-9gOkCMY15ChdhiFdzS0TjvWpVTKKEGt7XIcK6EhkSK8="; 24 }; 25 26 propagatedBuildInputs = [
··· 11 12 buildPythonPackage rec { 13 pname = "asana"; 14 + version = "1.0.0"; 15 format = "setuptools"; 16 17 disabled = pythonOlder "3.7"; ··· 19 src = fetchFromGitHub { 20 owner = "asana"; 21 repo = "python-asana"; 22 + rev = "refs/tags/v${version}"; 23 + sha256 = "sha256-SbYTLGBCfKbjhyzM5OnVX6kxEMnofwPIyzwuJvYORhw="; 24 }; 25 26 propagatedBuildInputs = [
+22 -17
pkgs/development/python-modules/hcloud/default.nix
··· 2 , buildPythonPackage 3 , fetchPypi 4 , future 5 - , requests 6 - , python-dateutil 7 - , flake8 8 - , isort 9 , mock 10 - , pytest 11 - , isPy27 12 }: 13 14 buildPythonPackage rec { 15 pname = "hcloud"; 16 - version = "1.16.0"; 17 - disabled = isPy27; 18 19 src = fetchPypi { 20 inherit pname version; 21 - sha256 = "c8b94557d93bcfe437f20a8176693ea4f54358b74986cc19d94ebc23f48e40cc"; 22 }; 23 24 - propagatedBuildInputs = [ future requests python-dateutil ]; 25 26 - checkInputs = [ flake8 isort mock pytest ]; 27 28 - # Skip integration tests since they require a separate external fake API endpoint. 29 - checkPhase = '' 30 - pytest --ignore=tests/integration 31 - ''; 32 33 meta = with lib; { 34 - description = "Official Hetzner Cloud python library"; 35 homepage = "https://github.com/hetznercloud/hcloud-python"; 36 license = licenses.mit; 37 - platforms = platforms.all; 38 maintainers = with maintainers; [ liff ]; 39 }; 40 }
··· 2 , buildPythonPackage 3 , fetchPypi 4 , future 5 , mock 6 + , pytestCheckHook 7 + , python-dateutil 8 + , pythonOlder 9 + , requests 10 }: 11 12 buildPythonPackage rec { 13 pname = "hcloud"; 14 + version = "1.17.0"; 15 + format = "setuptools"; 16 + 17 + disabled = pythonOlder "3.7"; 18 19 src = fetchPypi { 20 inherit pname version; 21 + hash = "sha256-+BQuBDi+J3xvod3uE67NXaFStIxt7H/Ulw3vG13CGeI="; 22 }; 23 24 + propagatedBuildInputs = [ 25 + future 26 + requests 27 + python-dateutil 28 + ]; 29 30 + checkInputs = [ 31 + mock 32 + pytestCheckHook 33 + ]; 34 35 + pythonImportsCheck = [ 36 + "hcloud" 37 + ]; 38 39 meta = with lib; { 40 + description = "Library for the Hetzner Cloud API"; 41 homepage = "https://github.com/hetznercloud/hcloud-python"; 42 license = licenses.mit; 43 maintainers = with maintainers; [ liff ]; 44 }; 45 }
+2 -2
pkgs/development/python-modules/pulumi-aws/default.nix
··· 12 buildPythonPackage rec { 13 pname = "pulumi-aws"; 14 # Version is independant of pulumi's. 15 - version = "5.9.1"; 16 format = "setuptools"; 17 18 disabled = pythonOlder "3.7"; ··· 21 owner = "pulumi"; 22 repo = "pulumi-aws"; 23 rev = "refs/tags/v${version}"; 24 - hash = "sha256-LYWxdqortazhev73JSTItrEyZZYFmeXkAko/2aFKaSw="; 25 }; 26 27 sourceRoot = "${src.name}/sdk/python";
··· 12 buildPythonPackage rec { 13 pname = "pulumi-aws"; 14 # Version is independant of pulumi's. 15 + version = "5.9.2"; 16 format = "setuptools"; 17 18 disabled = pythonOlder "3.7"; ··· 21 owner = "pulumi"; 22 repo = "pulumi-aws"; 23 rev = "refs/tags/v${version}"; 24 + hash = "sha256-5jeLSTG2HITEUdgQB3B9nQLAaNRliGspKnOgzUscCpU="; 25 }; 26 27 sourceRoot = "${src.name}/sdk/python";
+2 -2
pkgs/development/python-modules/qiskit-finance/default.nix
··· 22 23 buildPythonPackage rec { 24 pname = "qiskit-finance"; 25 - version = "0.3.2"; 26 27 disabled = pythonOlder "3.6"; 28 ··· 30 owner = "qiskit"; 31 repo = pname; 32 rev = "refs/tags/${version}"; 33 - sha256 = "sha256-ZmK4nYuv3DBJ0Ah819zGAh7inGVBWDnzJvl0FABJ6KU="; 34 }; 35 36 postPatch = ''
··· 22 23 buildPythonPackage rec { 24 pname = "qiskit-finance"; 25 + version = "0.3.3"; 26 27 disabled = pythonOlder "3.6"; 28 ··· 30 owner = "qiskit"; 31 repo = pname; 32 rev = "refs/tags/${version}"; 33 + sha256 = "sha256-1XM4gBuMsvjwU4GSdQJobMyyDFZOOTbwvnUPG0nXFoc="; 34 }; 35 36 postPatch = ''
+20 -20
pkgs/os-specific/linux/kernel/hardened/patches.json
··· 22 "5.10": { 23 "patch": { 24 "extra": "-hardened1", 25 - "name": "linux-hardened-5.10.125-hardened1.patch", 26 - "sha256": "04hdgzx7yqv26i74k6yzdh3k4dzyvcmxn9y93whdw0jyal34nj5w", 27 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.125-hardened1/linux-hardened-5.10.125-hardened1.patch" 28 }, 29 - "sha256": "0q4garkqdkr2280ygz44053cbmzv59yfd0lsn7q67h1j4nh6wddr", 30 - "version": "5.10.125" 31 }, 32 "5.15": { 33 "patch": { 34 "extra": "-hardened1", 35 - "name": "linux-hardened-5.15.50-hardened1.patch", 36 - "sha256": "0vridxhn9s21d3r877ndnm7zg5iyqpm9lm319ccw47fwyydwwh4y", 37 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.50-hardened1/linux-hardened-5.15.50-hardened1.patch" 38 }, 39 - "sha256": "03yp3gz45059gkzqbijbg503rxx4wihjg4c3ikz10f526xym0kam", 40 - "version": "5.15.50" 41 }, 42 "5.18": { 43 "patch": { 44 "extra": "-hardened1", 45 - "name": "linux-hardened-5.18.7-hardened1.patch", 46 - "sha256": "085skg598k5q0kgk5zb2ns6m0a6j5bpdi0aa5r8iidln1pqw2894", 47 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.18.7-hardened1/linux-hardened-5.18.7-hardened1.patch" 48 }, 49 - "sha256": "0nsj44p1wn7ysckhv4a99ncj0a9xxhvi54v63w1047sspxjd18m1", 50 - "version": "5.18.7" 51 }, 52 "5.4": { 53 "patch": { 54 "extra": "-hardened1", 55 - "name": "linux-hardened-5.4.201-hardened1.patch", 56 - "sha256": "1l0qgkwsp12wn2k78m04bpb88qknckbwn6610xj9jxvhq0n0qg4l", 57 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.201-hardened1/linux-hardened-5.4.201-hardened1.patch" 58 }, 59 - "sha256": "0qbfqfca4ism7k7y8grjqsxby3j50ach576szrljxxy140qxfgc1", 60 - "version": "5.4.201" 61 } 62 }
··· 22 "5.10": { 23 "patch": { 24 "extra": "-hardened1", 25 + "name": "linux-hardened-5.10.127-hardened1.patch", 26 + "sha256": "0lmsmmj1f0zqm5plb3c4sfqkq70msa24l1hcsrynavmzys8hndmq", 27 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.127-hardened1/linux-hardened-5.10.127-hardened1.patch" 28 }, 29 + "sha256": "100m4b6w1kbc1lc3gwlmkp8xl42xai0v5wdbx0mxrq8y1gp374j1", 30 + "version": "5.10.127" 31 }, 32 "5.15": { 33 "patch": { 34 "extra": "-hardened1", 35 + "name": "linux-hardened-5.15.51-hardened1.patch", 36 + "sha256": "0rfj0ypag0wn0ja77c920ppbqbik07i9yfrlhjanrz66vdip0z1r", 37 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.51-hardened1/linux-hardened-5.15.51-hardened1.patch" 38 }, 39 + "sha256": "1229m4r4n61n5l8anp2pcqdhajkwmavhr1z00n8gvx3yn9w4ifhz", 40 + "version": "5.15.51" 41 }, 42 "5.18": { 43 "patch": { 44 "extra": "-hardened1", 45 + "name": "linux-hardened-5.18.8-hardened1.patch", 46 + "sha256": "1i0y11flb4alxaqf2inms8x2yzar20zg6vc9s9gs507z97yh24v2", 47 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.18.8-hardened1/linux-hardened-5.18.8-hardened1.patch" 48 }, 49 + "sha256": "0dhaj1zcsr5sfg62byzvvkhm9j419px6v9v04ngcy0d0vc2yn8q8", 50 + "version": "5.18.8" 51 }, 52 "5.4": { 53 "patch": { 54 "extra": "-hardened1", 55 + "name": "linux-hardened-5.4.202-hardened1.patch", 56 + "sha256": "1gkgipw7ic0l3gh6haylcyss46wbph7zhx91fdp4na20jy4dxrzv", 57 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.202-hardened1/linux-hardened-5.4.202-hardened1.patch" 58 }, 59 + "sha256": "0gak58h5l2d8rmbmjw48460bgqi73yf1m7swsbbhfsmbkvhvr8aw", 60 + "version": "5.4.202" 61 } 62 }
+2 -2
pkgs/os-specific/linux/kernel/linux-5.10.nix
··· 3 with lib; 4 5 buildLinux (args // rec { 6 - version = "5.10.126"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "0qsg5mxvq11xdbssz3qsmd794c8nydq297jwmgfwbzwkx1ll61ci"; 17 }; 18 } // (args.argsOverride or {}))
··· 3 with lib; 4 5 buildLinux (args // rec { 6 + version = "5.10.127"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 + sha256 = "100m4b6w1kbc1lc3gwlmkp8xl42xai0v5wdbx0mxrq8y1gp374j1"; 17 }; 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.15.nix
··· 3 with lib; 4 5 buildLinux (args // rec { 6 - version = "5.15.50"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "03yp3gz45059gkzqbijbg503rxx4wihjg4c3ikz10f526xym0kam"; 17 }; 18 } // (args.argsOverride or { }))
··· 3 with lib; 4 5 buildLinux (args // rec { 6 + version = "5.15.51"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 + sha256 = "1229m4r4n61n5l8anp2pcqdhajkwmavhr1z00n8gvx3yn9w4ifhz"; 17 }; 18 } // (args.argsOverride or { }))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.18.nix
··· 3 with lib; 4 5 buildLinux (args // rec { 6 - version = "5.18.7"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "0nsj44p1wn7ysckhv4a99ncj0a9xxhvi54v63w1047sspxjd18m1"; 17 }; 18 } // (args.argsOverride or { }))
··· 3 with lib; 4 5 buildLinux (args // rec { 6 + version = "5.18.8"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 + sha256 = "0dhaj1zcsr5sfg62byzvvkhm9j419px6v9v04ngcy0d0vc2yn8q8"; 17 }; 18 } // (args.argsOverride or { }))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.4.nix
··· 3 with lib; 4 5 buildLinux (args // rec { 6 - version = "5.4.201"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "0qbfqfca4ism7k7y8grjqsxby3j50ach576szrljxxy140qxfgc1"; 17 }; 18 } // (args.argsOverride or {}))
··· 3 with lib; 4 5 buildLinux (args // rec { 6 + version = "5.4.202"; 7 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 14 src = fetchurl { 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 + sha256 = "0gak58h5l2d8rmbmjw48460bgqi73yf1m7swsbbhfsmbkvhvr8aw"; 17 }; 18 } // (args.argsOverride or {}))
+2
pkgs/top-level/all-packages.nix
··· 28235 portaudio = null; 28236 }; 28237 28238 losslesscut-bin = callPackage ../applications/video/losslesscut-bin { }; 28239 28240 loxodo = callPackage ../applications/misc/loxodo { };
··· 28235 portaudio = null; 28236 }; 28237 28238 + lokinet = callPackage ../applications/networking/p2p/lokinet { }; 28239 + 28240 losslesscut-bin = callPackage ../applications/video/losslesscut-bin { }; 28241 28242 loxodo = callPackage ../applications/misc/loxodo { };
+4
pkgs/top-level/linux-kernels.nix
··· 57 kernels = recurseIntoAttrs (lib.makeExtensible (self: with self; 58 let callPackage = newScope self; in { 59 60 linux_mptcp_95 = callPackage ../os-specific/linux/kernel/linux-mptcp-95.nix { 61 kernelPatches = linux_4_19.kernelPatches; 62 };
··· 57 kernels = recurseIntoAttrs (lib.makeExtensible (self: with self; 58 let callPackage = newScope self; in { 59 60 + # NOTE: PLEASE DO NOT ADD NEW VENDOR KERNELS TO NIXPKGS. 61 + # New vendor kernels should go to nixos-hardware instead. 62 + # e.g. https://github.com/NixOS/nixos-hardware/tree/master/microsoft/surface/kernel 63 + 64 linux_mptcp_95 = callPackage ../os-specific/linux/kernel/linux-mptcp-95.nix { 65 kernelPatches = linux_4_19.kernelPatches; 66 };