lol

Merge remote-tracking branch 'origin/master' into staging-next

+609 -221
+18
doc/builders/fetchers.chapter.md
··· 40 40 41 41 Additionally the following optional arguments can be given: `fetchSubmodules = true` makes `fetchgit` also fetch the submodules of a repository. If `deepClone` is set to true, the entire repository is cloned as opposing to just creating a shallow clone. `deepClone = true` also implies `leaveDotGit = true` which means that the `.git` directory of the clone won't be removed after checkout. 42 42 43 + If only parts of the repository are needed, `sparseCheckout` can be used. This will prevent git from fetching unnecessary blobs from server, see [git sparse-checkout](https://git-scm.com/docs/git-sparse-checkout) and [git clone --filter](https://git-scm.com/docs/git-clone#Documentation/git-clone.txt---filterltfilter-specgt) for more infomation: 44 + 45 + ```nix 46 + { stdenv, fetchgit }: 47 + 48 + stdenv.mkDerivation { 49 + name = "hello"; 50 + src = fetchgit { 51 + url = "https://..."; 52 + sparseCheckout = '' 53 + path/to/be/included 54 + another/path 55 + ''; 56 + sha256 = "0000000000000000000000000000000000000000000000000000"; 57 + }; 58 + } 59 + ``` 60 + 43 61 ## `fetchfossil` {#fetchfossil} 44 62 45 63 Used with Fossil. Expects `url` to a Fossil archive, `rev`, and `sha256`.
+3 -2
lib/default.nix
··· 122 122 mkRenamedOptionModule mkMergedOptionModule mkChangedOptionModule 123 123 mkAliasOptionModule mkDerivedConfig doRename; 124 124 inherit (self.options) isOption mkEnableOption mkSinkUndeclaredOptions 125 - mergeDefaultOption mergeOneOption mergeEqualOption getValues 126 - getFiles optionAttrSetToDocList optionAttrSetToDocList' 125 + mergeDefaultOption mergeOneOption mergeEqualOption mergeUniqueOption 126 + getValues getFiles 127 + optionAttrSetToDocList optionAttrSetToDocList' 127 128 scrubOptionValue literalExpression literalExample literalDocBook 128 129 showOption showFiles unknownModule mkOption; 129 130 inherit (self.types) isType setType defaultTypeMerge defaultFunctor
+7 -5
lib/options.nix
··· 172 172 else if all isInt list && all (x: x == head list) list then head list 173 173 else throw "Cannot merge definitions of `${showOption loc}'. Definition values:${showDefs defs}"; 174 174 175 - mergeOneOption = loc: defs: 176 - if defs == [] then abort "This case should never happen." 177 - else if length defs != 1 then 178 - throw "The unique option `${showOption loc}' is defined multiple times. Definition values:${showDefs defs}" 179 - else (head defs).value; 175 + mergeOneOption = mergeUniqueOption { message = ""; }; 176 + 177 + mergeUniqueOption = { message }: loc: defs: 178 + if length defs == 1 179 + then (head defs).value 180 + else assert length defs > 1; 181 + throw "The option `${showOption loc}' is defined multiple times.\n${message}\nDefinition values:${showDefs defs}"; 180 182 181 183 /* "Merge" option definitions by checking that they all have the same value. */ 182 184 mergeEqualOption = loc: defs:
+14 -1
lib/types.nix
··· 32 32 last 33 33 length 34 34 tail 35 - unique 36 35 ; 37 36 inherit (lib.attrsets) 38 37 attrNames ··· 48 47 mergeDefaultOption 49 48 mergeEqualOption 50 49 mergeOneOption 50 + mergeUniqueOption 51 51 showFiles 52 52 showOption 53 53 ; ··· 470 470 nestedTypes.elemType = elemType; 471 471 }; 472 472 473 + unique = { message }: type: mkOptionType rec { 474 + name = "unique"; 475 + inherit (type) description check; 476 + merge = mergeUniqueOption { inherit message; }; 477 + emptyValue = type.emptyValue; 478 + getSubOptions = type.getSubOptions; 479 + getSubModules = type.getSubModules; 480 + substSubModules = m: uniq (type.substSubModules m); 481 + functor = (defaultFunctor name) // { wrapped = type; }; 482 + nestedTypes.elemType = type; 483 + }; 484 + 473 485 # Null or value of ... 474 486 nullOr = elemType: mkOptionType rec { 475 487 name = "nullOr"; ··· 599 611 # A value from a set of allowed ones. 600 612 enum = values: 601 613 let 614 + inherit (lib.lists) unique; 602 615 show = v: 603 616 if builtins.isString v then ''"${v}"'' 604 617 else if builtins.isInt v then builtins.toString v
+6
nixos/doc/manual/development/option-types.section.md
··· 250 250 : Ensures that type *`t`* cannot be merged. It is used to ensure option 251 251 definitions are declared only once. 252 252 253 + `types.unique` `{ message = m }` *`t`* 254 + 255 + : Ensures that type *`t`* cannot be merged. Prints the message *`m`*, after 256 + the line `The option <option path> is defined multiple times.` and before 257 + a list of definition locations. 258 + 253 259 `types.either` *`t1 t2`* 254 260 255 261 : Type *`t1`* or type *`t2`*, e.g. `with types; either int str`.
+16
nixos/doc/manual/from_md/development/option-types.section.xml
··· 498 498 </varlistentry> 499 499 <varlistentry> 500 500 <term> 501 + <literal>types.unique</literal> 502 + <literal>{ message = m }</literal> 503 + <emphasis><literal>t</literal></emphasis> 504 + </term> 505 + <listitem> 506 + <para> 507 + Ensures that type <emphasis><literal>t</literal></emphasis> 508 + cannot be merged. Prints the message 509 + <emphasis><literal>m</literal></emphasis>, after the line 510 + <literal>The option &lt;option path&gt; is defined multiple times.</literal> 511 + and before a list of definition locations. 512 + </para> 513 + </listitem> 514 + </varlistentry> 515 + <varlistentry> 516 + <term> 501 517 <literal>types.either</literal> 502 518 <emphasis><literal>t1 t2</literal></emphasis> 503 519 </term>
+1 -1
nixos/modules/services/hardware/triggerhappy.nix
··· 70 70 type = types.listOf (types.submodule bindingCfg); 71 71 default = []; 72 72 example = lib.literalExpression '' 73 - [ { keys = ["PLAYPAUSE"]; cmd = "''${pkgs.mpc_cli}/bin/mpc -q toggle"; } ] 73 + [ { keys = ["PLAYPAUSE"]; cmd = "''${pkgs.mpc-cli}/bin/mpc -q toggle"; } ] 74 74 ''; 75 75 description = '' 76 76 Key bindings for <command>triggerhappy</command>.
+45 -12
nixos/modules/system/activation/top-level.nix
··· 109 109 utillinux = pkgs.util-linux; 110 110 111 111 kernelParams = config.boot.kernelParams; 112 - installBootLoader = 113 - config.system.build.installBootLoader 114 - or "echo 'Warning: do not know how to make this configuration bootable; please enable a boot loader.' 1>&2; true"; 112 + installBootLoader = config.system.build.installBootLoader; 115 113 activationScript = config.system.activationScripts.script; 116 114 dryActivationScript = config.system.dryActivationScript; 117 115 nixosLabel = config.system.nixos.label; ··· 135 133 pkgs.replaceDependency { inherit oldDependency newDependency drv; } 136 134 ) baseSystemAssertWarn config.system.replaceRuntimeDependencies; 137 135 136 + /* Workaround until https://github.com/NixOS/nixpkgs/pull/156533 137 + Call can be replaced by argument when that's merged. 138 + */ 139 + tmpFixupSubmoduleBoundary = subopts: 140 + lib.mkOption { 141 + type = lib.types.submoduleWith { 142 + modules = [ { options = subopts; } ]; 143 + }; 144 + }; 145 + 138 146 in 139 147 140 148 { 141 149 imports = [ 150 + ../build.nix 142 151 (mkRemovedOptionModule [ "nesting" "clone" ] "Use `specialisation.«name» = { inheritParentConfig = true; configuration = { ... }; }` instead.") 143 152 (mkRemovedOptionModule [ "nesting" "children" ] "Use `specialisation.«name».configuration = { ... }` instead.") 144 153 ]; 145 154 146 155 options = { 147 - 148 - system.build = mkOption { 149 - internal = true; 150 - default = {}; 151 - type = with types; lazyAttrsOf (uniq unspecified); 152 - description = '' 153 - Attribute set of derivations used to setup the system. 154 - ''; 155 - }; 156 156 157 157 specialisation = mkOption { 158 158 default = {}; ··· 223 223 Name of the initrd file to be passed to the bootloader. 224 224 ''; 225 225 }; 226 + 227 + system.build = tmpFixupSubmoduleBoundary { 228 + installBootLoader = mkOption { 229 + internal = true; 230 + # "; true" => make the `$out` argument from switch-to-configuration.pl 231 + # go to `true` instead of `echo`, hiding the useless path 232 + # from the log. 233 + default = "echo 'Warning: do not know how to make this configuration bootable; please enable a boot loader.' 1>&2; true"; 234 + description = '' 235 + A program that writes a bootloader installation script to the path passed in the first command line argument. 236 + 237 + See <literal>nixos/modules/system/activation/switch-to-configuration.pl</literal>. 238 + ''; 239 + type = types.unique { 240 + message = '' 241 + Only one bootloader can be enabled at a time. This requirement has not 242 + been checked until NixOS 22.05. Earlier versions defaulted to the last 243 + definition. Change your configuration to enable only one bootloader. 244 + ''; 245 + } (types.either types.str types.package); 246 + }; 247 + 248 + toplevel = mkOption { 249 + type = types.package; 250 + readOnly = true; 251 + description = '' 252 + This option contains the store path that typically represents a NixOS system. 253 + 254 + You can read this path in a custom deployment tool for example. 255 + ''; 256 + }; 257 + }; 258 + 226 259 227 260 system.copySystemConfiguration = mkOption { 228 261 type = types.bool;
+21
nixos/modules/system/build.nix
··· 1 + { lib, ... }: 2 + let 3 + inherit (lib) mkOption types; 4 + in 5 + { 6 + options = { 7 + 8 + system.build = mkOption { 9 + default = {}; 10 + description = '' 11 + Attribute set of derivations used to set up the system. 12 + ''; 13 + type = types.submoduleWith { 14 + modules = [{ 15 + freeformType = with types; lazyAttrsOf (uniq unspecified); 16 + }]; 17 + }; 18 + }; 19 + 20 + }; 21 + }
+1 -1
nixos/tests/mpd.nix
··· 96 96 }; 97 97 98 98 testScript = '' 99 - mpc = "${pkgs.mpc_cli}/bin/mpc --wait" 99 + mpc = "${pkgs.mpc-cli}/bin/mpc --wait" 100 100 101 101 # Connects to the given server and attempts to play a tune. 102 102 def play_some_music(server):
+19 -6
pkgs/applications/audio/clerk/default.nix
··· 3 3 , fetchFromGitHub 4 4 , makeWrapper 5 5 , rofi 6 - , mpc_cli 6 + , mpc-cli 7 7 , perl 8 8 , util-linux 9 9 , python3Packages ··· 28 28 29 29 strictDeps = true; 30 30 31 - installPhase = '' 32 - DESTDIR=$out PREFIX=/ make install 33 - wrapProgram $out/bin/clerk \ 34 - --prefix PATH : "${lib.makeBinPath [ rofi mpc_cli perl util-linux libnotify ]}" 35 - ''; 31 + installPhase = 32 + let 33 + binPath = lib.makeBinPath [ 34 + libnotify 35 + mpc-cli 36 + perl 37 + rofi 38 + util-linux 39 + ]; 40 + in 41 + '' 42 + runHook preInstall 43 + 44 + DESTDIR=$out PREFIX=/ make install 45 + wrapProgram $out/bin/clerk --prefix PATH : "${binPath}" 46 + 47 + runHook postInstall 48 + ''; 36 49 37 50 meta = with lib; { 38 51 description = "An MPD client built on top of rofi";
+31 -12
pkgs/applications/audio/mpc/default.nix
··· 2 2 , stdenv 3 3 , fetchFromGitHub 4 4 , fetchpatch 5 + , installShellFiles 6 + , libiconv 7 + , libmpdclient 5 8 , meson 6 9 , ninja 7 10 , pkg-config 8 - , libmpdclient 9 11 , sphinx 10 - , libiconv 11 12 }: 12 13 13 14 stdenv.mkDerivation rec { ··· 15 16 version = "0.34"; 16 17 17 18 src = fetchFromGitHub { 18 - owner = "MusicPlayerDaemon"; 19 - repo = "mpc"; 20 - rev = "v${version}"; 21 - sha256 = "sha256-2FjYBfak0IjibuU+CNQ0y9Ei8hTZhynS/BK2DNerhVw="; 19 + owner = "MusicPlayerDaemon"; 20 + repo = pname; 21 + rev = "v${version}"; 22 + hash = "sha256-2FjYBfak0IjibuU+CNQ0y9Ei8hTZhynS/BK2DNerhVw="; 22 23 }; 23 24 24 25 patches = [ ··· 29 30 }) 30 31 ]; 31 32 32 - buildInputs = [ libmpdclient ] ++ lib.optionals stdenv.isDarwin [ libiconv ]; 33 + buildInputs = [ 34 + libmpdclient 35 + ] 36 + ++ lib.optionals stdenv.isDarwin [ libiconv ]; 37 + 38 + nativeBuildInputs = [ 39 + installShellFiles 40 + meson 41 + ninja 42 + pkg-config 43 + sphinx 44 + ]; 45 + 46 + postInstall = '' 47 + installShellCompletion --cmd mpc --bash $out/share/doc/mpc/contrib/mpc-completion.bash 48 + ''; 33 49 34 - nativeBuildInputs = [ meson ninja pkg-config sphinx ]; 50 + postFixup = '' 51 + rm $out/share/doc/mpc/contrib/mpc-completion.bash 52 + ''; 35 53 36 54 meta = with lib; { 37 - description = "A minimalist command line interface to MPD"; 38 55 homepage = "https://www.musicpd.org/clients/mpc/"; 39 - license = licenses.gpl2; 40 - maintainers = with maintainers; [ algorith ncfavier ]; 41 - platforms = with platforms; linux ++ darwin; 56 + description = "A minimalist command line interface to MPD"; 57 + changelog = "https://raw.githubusercontent.com/MusicPlayerDaemon/mpc/v${version}/NEWS"; 58 + license = licenses.gpl2Plus; 59 + maintainers = with maintainers; [ AndersonTorres ]; 60 + platforms = with platforms; unix; 42 61 }; 43 62 }
+2 -2
pkgs/applications/misc/nwg-wrapper/default.nix
··· 2 2 3 3 python3Packages.buildPythonPackage rec { 4 4 pname = "nwg-wrapper"; 5 - version = "0.1.0"; 5 + version = "0.1.2"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "nwg-piotr"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "0xkxyfbj8zljx7k5wbniz3x9jg0l4jnbbjv8hy5y5p4l10m0vpjs"; 11 + sha256 = "114y55mv2rgnp75a3c7rk46v5v84d1zqb6wkha7x16ab6xa9phzl"; 12 12 }; 13 13 14 14 nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+2 -2
pkgs/applications/networking/irc/wraith/configure.patch
··· 1 1 --- a/configure 2 2 +++ b/configure 3 - @@ -6029,53 +6029,8 @@ 3 + @@ -6143,53 +6143,8 @@ rm -f confcache 4 + #AC_CHECK_HEADERS(openssl/ssl.h openssl/crypto.h) 4 5 #AC_CHECK_HEADERS(zlib.h) 5 - #EGG_CHECK_ZLIB 6 6 7 7 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for path to OpenSSL" >&5 8 8 -$as_echo_n "checking for path to OpenSSL... " >&6; }
+2 -2
pkgs/applications/networking/irc/wraith/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "wraith"; 5 - version = "1.4.7"; 5 + version = "1.4.10"; 6 6 src = fetchurl { 7 7 url = "mirror://sourceforge/wraithbotpack/wraith-v${version}.tar.gz"; 8 - sha256 = "0h6liac5y7im0jfm2sj18mibvib7d1l727fjs82irsjj1v9kif3j"; 8 + sha256 = "1h8159g6wh1hi69cnhqkgwwwa95fa6z1zrzjl219mynbf6vjjzkw"; 9 9 }; 10 10 hardeningDisable = [ "format" ]; 11 11 buildInputs = [ openssl ];
+6 -6
pkgs/applications/networking/irc/wraith/dlopen.patch
··· 1 1 diff --git a/src/libcrypto.cc b/src/libcrypto.cc 2 - index 0339258..68746c8 100644 2 + index 5139f66..517103f 100644 3 3 --- a/src/libcrypto.cc 4 4 +++ b/src/libcrypto.cc 5 - @@ -95,17 +95,9 @@ int load_libcrypto() { 5 + @@ -100,17 +100,9 @@ int load_libcrypto() { 6 6 } 7 7 8 8 sdprintf("Loading libcrypto"); 9 9 + dlerror(); // Clear Errors 10 10 + libcrypto_handle = dlopen("@openssl@/lib/libcrypto.so", RTLD_LAZY|RTLD_GLOBAL); 11 11 12 - - bd::Array<bd::String> libs_list(bd::String("libcrypto.so." SHLIB_VERSION_NUMBER " libcrypto.so libcrypto.so.0.9.8 libcrypto.so.7 libcrypto.so.6").split(' ')); 12 + - bd::Array<bd::String> libs_list(bd::String("libcrypto.so." SHLIB_VERSION_NUMBER " libcrypto.so libcrypto.so.1.1 libcrypto.so.1.0.0 libcrypto.so.0.9.8 libcrypto.so.10 libcrypto.so.9 libcrypto.so.8 libcrypto.so.7 libcrypto.so.6").split(' ')); 13 13 - 14 14 - for (size_t i = 0; i < libs_list.length(); ++i) { 15 15 - dlerror(); // Clear Errors ··· 23 23 fprintf(stderr, STR("Unable to find libcrypto\n")); 24 24 return(1); 25 25 diff --git a/src/libssl.cc b/src/libssl.cc 26 - index b432c7b..8940998 100644 26 + index 6010abc..86e29fc 100644 27 27 --- a/src/libssl.cc 28 28 +++ b/src/libssl.cc 29 - @@ -68,17 +68,9 @@ int load_libssl() { 29 + @@ -78,17 +78,9 @@ int load_libssl() { 30 30 } 31 31 32 32 sdprintf("Loading libssl"); 33 33 + dlerror(); // Clear Errors 34 34 + libssl_handle = dlopen("@openssl@/lib/libssl.so", RTLD_LAZY); 35 35 36 - - bd::Array<bd::String> libs_list(bd::String("libssl.so." SHLIB_VERSION_NUMBER " libssl.so libssl.so.0.9.8 libssl.so.7 libssl.so.6").split(' ')); 36 + - bd::Array<bd::String> libs_list(bd::String("libssl.so." SHLIB_VERSION_NUMBER " libssl.so libssl.so.1.1 libssl.so.1.0.0 libssl.so.0.9.8 libssl.so.10 libssl.so.9 libssl.so.8 libssl.so.7 libssl.so.6").split(' ')); 37 37 - 38 38 - for (size_t i = 0; i < libs_list.length(); ++i) { 39 39 - dlerror(); // Clear Errors
+11 -19
pkgs/applications/window-managers/qtile/default.nix
··· 1 - { lib, fetchFromGitHub, python3, mypy, glib, cairo, pango, pkg-config, libxcb, xcbutilcursor }: 1 + { lib, fetchFromGitHub, python3, python3Packages, mypy, glib, pango, pkg-config, xcbutilcursor }: 2 2 3 3 let 4 - enabled-xcffib = cairocffi-xcffib: cairocffi-xcffib.override { 5 - withXcffib = true; 6 - }; 7 - 8 - # make it easier to reference python 9 - python = python3; 10 - pythonPackages = python.pkgs; 11 - 12 - unwrapped = pythonPackages.buildPythonPackage rec { 4 + unwrapped = python3Packages.buildPythonPackage rec { 13 5 pname = "qtile"; 14 6 version = "0.19.0"; 15 7 ··· 33 25 34 26 nativeBuildInputs = [ 35 27 pkg-config 36 - ] ++ (with pythonPackages; [ 28 + ] ++ (with python3Packages; [ 37 29 setuptools-scm 38 30 ]); 39 31 40 - propagatedBuildInputs = with pythonPackages; [ 32 + propagatedBuildInputs = with python3Packages; [ 41 33 xcffib 42 - (enabled-xcffib cairocffi) 34 + (cairocffi.override { withXcffib = true; }) 43 35 setuptools 44 36 python-dateutil 45 37 dbus-python ··· 68 60 }; 69 61 }; 70 62 in 71 - (python.withPackages (ps: [ unwrapped ])).overrideAttrs (_: { 72 - # otherwise will be exported as "env", this restores `nix search` behavior 73 - name = "${unwrapped.pname}-${unwrapped.version}"; 74 - # export underlying qtile package 75 - passthru = { inherit unwrapped; }; 76 - }) 63 + (python3.withPackages (_: [ unwrapped ])).overrideAttrs (_: { 64 + # otherwise will be exported as "env", this restores `nix search` behavior 65 + name = "${unwrapped.pname}-${unwrapped.version}"; 66 + # export underlying qtile package 67 + passthru = { inherit unwrapped; }; 68 + })
+1
pkgs/build-support/fetchgit/builder.sh
··· 11 11 ${fetchLFS:+--fetch-lfs} \ 12 12 ${deepClone:+--deepClone} \ 13 13 ${fetchSubmodules:+--fetch-submodules} \ 14 + ${sparseCheckout:+--sparse-checkout "$sparseCheckout"} \ 14 15 ${branchName:+--branch-name "$branchName"} 15 16 16 17 runHook postFetch
+2 -1
pkgs/build-support/fetchgit/default.nix
··· 15 15 { url, rev ? "HEAD", md5 ? "", sha256 ? "", hash ? "", leaveDotGit ? deepClone 16 16 , fetchSubmodules ? true, deepClone ? false 17 17 , branchName ? null 18 + , sparseCheckout ? "" 18 19 , name ? urlToName url rev 19 20 , # Shell code executed after the file has been fetched 20 21 # successfully. This can do things like check or transform the file. ··· 74 75 else 75 76 lib.fakeSha256; 76 77 77 - inherit url rev leaveDotGit fetchLFS fetchSubmodules deepClone branchName postFetch; 78 + inherit url rev leaveDotGit fetchLFS fetchSubmodules deepClone branchName sparseCheckout postFetch; 78 79 79 80 postHook = if netrcPhase == null then null else '' 80 81 ${netrcPhase}
+7 -1
pkgs/build-support/fetchgit/nix-prefetch-git
··· 48 48 --rev ref Any sha1 or references (such as refs/heads/master) 49 49 --hash h Expected hash. 50 50 --branch-name Branch name to check out into 51 + --sparse-checkout Only fetch and checkout part of the repository. 51 52 --deepClone Clone the entire repository. 52 53 --no-deepClone Make a shallow clone of just the required ref. 53 54 --leave-dotGit Keep the .git directories. ··· 75 76 --hash) argfun=set_hashType;; 76 77 --branch-name) argfun=set_branchName;; 77 78 --deepClone) deepClone=true;; 79 + --sparse-checkout) argfun=set_sparseCheckout;; 78 80 --quiet) QUIET=true;; 79 81 --no-deepClone) deepClone=;; 80 82 --leave-dotGit) leaveDotGit=true;; ··· 96 98 case $argfun in 97 99 set_*) 98 100 var=${argfun#set_} 99 - eval $var=$arg 101 + eval "$var=$(printf %q "$arg")" 100 102 ;; 101 103 esac 102 104 argfun="" ··· 112 114 local url=$1 113 115 clean_git init --initial-branch=master 114 116 clean_git remote add origin "$url" 117 + if [ -n "$sparseCheckout" ]; then 118 + git config remote.origin.partialclonefilter "blob:none" 119 + echo "$sparseCheckout" | git sparse-checkout set --stdin 120 + fi 115 121 ( [ -n "$http_proxy" ] && clean_git config http.proxy "$http_proxy" ) || true 116 122 } 117 123
+11
pkgs/build-support/fetchgit/tests.nix
··· 7 7 rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a"; 8 8 sha256 = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY="; 9 9 }; 10 + 11 + sparseCheckout = invalidateFetcherByDrvHash fetchgit { 12 + name = "nix-source"; 13 + url = "https://github.com/NixOS/nix"; 14 + rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a"; 15 + sparseCheckout = '' 16 + src 17 + tests 18 + ''; 19 + sha256 = "sha256-FknO6C/PSnMPfhUqObD4vsW4PhkwdmPa9blNzcNvJQ4="; 20 + }; 10 21 }
+3 -2
pkgs/build-support/fetchgithub/default.nix
··· 3 3 { owner, repo, rev, name ? "source" 4 4 , fetchSubmodules ? false, leaveDotGit ? null 5 5 , deepClone ? false, private ? false, forceFetchGit ? false 6 + , sparseCheckout ? "" 6 7 , githubBase ? "github.com", varPrefix ? null 7 8 , ... # For hash agility 8 9 }@args: ··· 10 11 baseUrl = "https://${githubBase}/${owner}/${repo}"; 11 12 passthruAttrs = removeAttrs args [ "owner" "repo" "rev" "fetchSubmodules" "forceFetchGit" "private" "githubBase" "varPrefix" ]; 12 13 varBase = "NIX${if varPrefix == null then "" else "_${varPrefix}"}_GITHUB_PRIVATE_"; 13 - useFetchGit = fetchSubmodules || (leaveDotGit == true) || deepClone || forceFetchGit; 14 + useFetchGit = fetchSubmodules || (leaveDotGit == true) || deepClone || forceFetchGit || (sparseCheckout != ""); 14 15 # We prefer fetchzip in cases we don't need submodules as the hash 15 16 # is more stable in that case. 16 17 fetcher = if useFetchGit then fetchgit else fetchzip; ··· 30 31 }; 31 32 fetcherArgs = (if useFetchGit 32 33 then { 33 - inherit rev deepClone fetchSubmodules; url = "${baseUrl}.git"; 34 + inherit rev deepClone fetchSubmodules sparseCheckout; url = "${baseUrl}.git"; 34 35 } // lib.optionalAttrs (leaveDotGit != null) { inherit leaveDotGit; } 35 36 else { url = "${baseUrl}/archive/${rev}.tar.gz"; } 36 37 ) // privateAttrs // passthruAttrs // { inherit name; };
+3 -1
pkgs/development/coq-modules/coq-ext-lib/default.nix
··· 5 5 owner = "coq-ext-lib"; 6 6 inherit version; 7 7 defaultVersion = with versions; switch coq.coq-version [ 8 + { case = range "8.8" "8.15"; out = "0.11.6"; } 8 9 { case = range "8.8" "8.14"; out = "0.11.4"; } 9 10 { case = range "8.8" "8.13"; out = "0.11.3"; } 10 11 { case = "8.7"; out = "0.9.7"; } 11 12 { case = "8.6"; out = "0.9.5"; } 12 13 { case = "8.5"; out = "0.9.4"; } 13 14 ] null; 14 - release."0.11.4".sha256 = "sha256:0yp8mhrhkc498nblvhq1x4j6i9aiidkjza4wzvrkp9p8rgx5g5y3"; 15 + release."0.11.6".sha256 = "0w6iyrdszz7zc8kaybhy3mwjain2d2f83q79xfd5di0hgdayh7q7"; 16 + release."0.11.4".sha256 = "0yp8mhrhkc498nblvhq1x4j6i9aiidkjza4wzvrkp9p8rgx5g5y3"; 15 17 release."0.11.3".sha256 = "1w99nzpk72lffxis97k235axss5lmzhy5z3lga2i0si95mbpil42"; 16 18 release."0.11.2".sha256 = "0iyka81g26x5n99xic7kqn8vxqjw8rz7vw9rs27iw04lf137vzv6"; 17 19 release."0.10.3".sha256 = "0795gs2dlr663z826mp63c8h2zfadn541dr8q0fvnvi2z7kfyslb";
+2 -1
pkgs/development/coq-modules/coq-record-update/default.nix
··· 5 5 owner = "tchajed"; 6 6 inherit version; 7 7 defaultVersion = with versions; switch coq.coq-version [ 8 - { case = range "8.10" "8.14"; out = "0.3.0"; } 8 + { case = range "8.10" "8.15"; out = "0.3.0"; } 9 9 ] null; 10 10 release."0.3.0".sha256 = "1ffr21dd6hy19gxnvcd4if2450iksvglvkd6q5713fajd72hmc0z"; 11 11 releaseRev = v: "v${v}"; 12 + buildFlags = "NO_TEST=1"; 12 13 meta = { 13 14 description = "Library to create Coq record update functions"; 14 15 maintainers = with maintainers; [ ineol ];
+1 -1
pkgs/development/coq-modules/deriving/default.nix
··· 9 9 10 10 inherit version; 11 11 defaultVersion = with versions; switch coq.coq-version [ 12 - { case = range "8.11" "8.14"; out = "0.1.0"; } 12 + { case = range "8.11" "8.15"; out = "0.1.0"; } 13 13 ] null; 14 14 15 15 releaseRev = v: "v${v}";
+9 -6
pkgs/development/coq-modules/equations/default.nix
··· 6 6 repo = "Coq-Equations"; 7 7 inherit version; 8 8 defaultVersion = switch coq.coq-version [ 9 - { case = "8.14"; out = "1.3-8.14"; } 10 - { case = "8.13"; out = "1.3-8.13"; } 9 + { case = "8.15"; out = "1.3+8.15"; } 10 + { case = "8.14"; out = "1.3+8.14"; } 11 + { case = "8.13"; out = "1.3+8.13"; } 11 12 { case = "8.12"; out = "1.2.4+coq8.12"; } 12 13 { case = "8.11"; out = "1.2.4+coq8.11"; } 13 14 { case = "8.10"; out = "1.2.1+coq8.10-2"; } ··· 44 45 release."1.2.4+coq8.12".sha256 = "1n0w8is464qcq8mk2mv7amaf0khbjz5mpc9phf0rhpjm0lb22cb3"; 45 46 release."1.2.4+coq8.13".rev = "v1.2.4-8.13"; 46 47 release."1.2.4+coq8.13".sha256 = "0i014lshsdflzw6h0qxra9d2f0q82vffxv2f29awbb9ad0p4rq4q"; 47 - release."1.3-8.13".rev = "v1.3-8.13"; 48 - release."1.3-8.13".sha256 = "1jwjbkkkk4bwf6pz4zzz8fy5bb17aqyf4smkja59rgj9ya6nrdhg"; 49 - release."1.3-8.14".rev = "v1.3-8.14"; 50 - release."1.3-8.14".sha256 = "19bj9nncd1r9g4273h5qx35gs3i4bw5z9bhjni24b413hyj55hkv"; 48 + release."1.3+8.13".rev = "v1.3-8.13"; 49 + release."1.3+8.13".sha256 = "1jwjbkkkk4bwf6pz4zzz8fy5bb17aqyf4smkja59rgj9ya6nrdhg"; 50 + release."1.3+8.14".rev = "v1.3-8.14"; 51 + release."1.3+8.14".sha256 = "19bj9nncd1r9g4273h5qx35gs3i4bw5z9bhjni24b413hyj55hkv"; 52 + release."1.3+8.15".rev = "v1.3-8.15"; 53 + release."1.3+8.15".sha256 = "1vfcfpsp9zyj0sw0cwibk76nj6n0r6gwh8m1aa3lbvc0b1kbm32k"; 51 54 52 55 mlPlugin = true; 53 56 preBuild = "coq_makefile -f _CoqProject -o Makefile";
+1 -1
pkgs/development/coq-modules/reglang/default.nix
··· 10 10 11 11 inherit version; 12 12 defaultVersion = with versions; switch coq.coq-version [ 13 - { case = range "8.10" "8.14"; out = "1.1.2"; } 13 + { case = range "8.10" "8.15"; out = "1.1.2"; } 14 14 ] null; 15 15 16 16
+22
pkgs/development/libraries/libusbgx/default.nix
··· 1 + { stdenv, lib, fetchFromGitHub, cmake, bash-completion, pkg-config, libconfig, autoreconfHook }: 2 + stdenv.mkDerivation { 3 + pname = "libusbgx"; 4 + version = "unstable-2021-10-31"; 5 + src = fetchFromGitHub { 6 + owner = "linux-usb-gadgets"; 7 + repo = "libusbgx"; 8 + rev = "060784424609d5a4e3bce8355f788c93f09802a5"; 9 + sha256 = "172qh8gva17jr18ldhf9zi960w2bqzmp030w6apxq57c9nv6d8k7"; 10 + }; 11 + nativeBuildInputs = [ autoreconfHook pkg-config ]; 12 + buildInputs = [ libconfig ]; 13 + meta = { 14 + description = "C library encapsulating the kernel USB gadget-configfs userspace API functionality"; 15 + license = with lib.licenses; [ 16 + lgpl21Plus # library 17 + gpl2Plus # examples 18 + ]; 19 + maintainers = with lib.maintainers; [ lheckemann ]; 20 + platforms = lib.platforms.linux; 21 + }; 22 + }
+2 -2
pkgs/development/python-modules/aioesphomeapi/default.nix
··· 12 12 13 13 buildPythonPackage rec { 14 14 pname = "aioesphomeapi"; 15 - version = "10.6.0"; 15 + version = "10.8.0"; 16 16 format = "setuptools"; 17 17 18 18 disabled = pythonOlder "3.7"; ··· 21 21 owner = "esphome"; 22 22 repo = pname; 23 23 rev = "v${version}"; 24 - sha256 = "1z9pybis8yi938i3cgzma4w452ik9vggyyhs3y542zpk4183d7xw"; 24 + sha256 = "1349b2as6r3m9sxlfss8plzafn31kf3rihwa58b4f7cmc4dhb2s8"; 25 25 }; 26 26 27 27 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/aiohwenergy/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "aiohwenergy"; 11 - version = "0.6.0"; 11 + version = "0.7.0"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.7"; ··· 17 17 owner = "DCSBL"; 18 18 repo = pname; 19 19 rev = version; 20 - sha256 = "006q2kgc28dn43skk2x76d13fp51sy073nm8f2hrxn4wqwkccsx3"; 20 + sha256 = "0pgk9ky4kfb1kp0mpyxdinwql1q85a3bl5w34pr88wqdqdw467ms"; 21 21 }; 22 22 23 23 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/aiounifi/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "aiounifi"; 14 - version = "29"; 14 + version = "30"; 15 15 16 16 disabled = pythonOlder "3.7"; 17 17 ··· 19 19 owner = "Kane610"; 20 20 repo = pname; 21 21 rev = "v${version}"; 22 - sha256 = "sha256-A2+jLxKpha7HV1m3uzy00o8tsjwx0Uuwn5x3DO9daTI="; 22 + sha256 = "036yx1g80rc32g9mqx4khn8iqhmwl4kfch35pjslnna9kw3kb9i8"; 23 23 }; 24 24 25 25 propagatedBuildInputs = [
+78
pkgs/development/python-modules/datafusion/Cargo.lock.patch
··· 1 + diff --git a/Cargo.lock b/Cargo.lock 2 + index fa84a54c..3d790e1c 100644 3 + --- a/Cargo.lock 4 + +++ b/Cargo.lock 5 + @@ -57,9 +57,9 @@ checksum = "be4dc07131ffa69b8072d35f5007352af944213cde02545e2103680baed38fcd" 6 + 7 + [[package]] 8 + name = "arrow" 9 + -version = "6.0.0" 10 + +version = "6.5.0" 11 + source = "registry+https://github.com/rust-lang/crates.io-index" 12 + -checksum = "337e668497751234149fd607f5cb41a6ae7b286b6329589126fe67f0ac55d637" 13 + +checksum = "216c6846a292bdd93c2b93c1baab58c32ff50e2ab5e8d50db333ab518535dd8b" 14 + dependencies = [ 15 + "bitflags", 16 + "chrono", 17 + @@ -212,9 +212,9 @@ dependencies = [ 18 + 19 + [[package]] 20 + name = "comfy-table" 21 + -version = "4.1.1" 22 + +version = "5.0.0" 23 + source = "registry+https://github.com/rust-lang/crates.io-index" 24 + -checksum = "11e95a3e867422fd8d04049041f5671f94d53c32a9dcd82e2be268714942f3f3" 25 + +checksum = "c42350b81f044f576ff88ac750419f914abb46a03831bb1747134344ee7a4e64" 26 + dependencies = [ 27 + "strum", 28 + "strum_macros", 29 + @@ -279,7 +279,7 @@ dependencies = [ 30 + 31 + [[package]] 32 + name = "datafusion" 33 + -version = "5.1.0" 34 + +version = "6.0.0" 35 + dependencies = [ 36 + "ahash", 37 + "arrow", 38 + @@ -310,7 +310,7 @@ dependencies = [ 39 + 40 + [[package]] 41 + name = "datafusion-python" 42 + -version = "0.3.0" 43 + +version = "0.4.0" 44 + dependencies = [ 45 + "datafusion", 46 + "pyo3", 47 + @@ -877,9 +877,9 @@ dependencies = [ 48 + 49 + [[package]] 50 + name = "parquet" 51 + -version = "6.0.0" 52 + +version = "6.5.0" 53 + source = "registry+https://github.com/rust-lang/crates.io-index" 54 + -checksum = "d263b9b59ba260518de9e57bd65931c3f765fea0fabacfe84f40d6fde38e841a" 55 + +checksum = "788d9953f4cfbe9db1beff7bebd54299d105e34680d78b82b1ddc85d432cac9d" 56 + dependencies = [ 57 + "arrow", 58 + "base64", 59 + @@ -1228,15 +1228,15 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 60 + 61 + [[package]] 62 + name = "strum" 63 + -version = "0.21.0" 64 + +version = "0.22.0" 65 + source = "registry+https://github.com/rust-lang/crates.io-index" 66 + -checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2" 67 + +checksum = "f7ac893c7d471c8a21f31cfe213ec4f6d9afeed25537c772e08ef3f005f8729e" 68 + 69 + [[package]] 70 + name = "strum_macros" 71 + -version = "0.21.1" 72 + +version = "0.22.0" 73 + source = "registry+https://github.com/rust-lang/crates.io-index" 74 + -checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec" 75 + +checksum = "339f799d8b549e3744c7ac7feb216383e4005d94bdb22561b3ab8f3b808ae9fb" 76 + dependencies = [ 77 + "heck", 78 + "proc-macro2",
+90
pkgs/development/python-modules/datafusion/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , buildPythonPackage 5 + , fetchPypi 6 + , fetchFromGitHub 7 + , rustPlatform 8 + , maturin 9 + , pytestCheckHook 10 + , libiconv 11 + , numpy 12 + , pandas 13 + , pyarrow 14 + , pytest 15 + }: 16 + let 17 + # le sigh, the perils of unrelated versions of software living in the same 18 + # repo: there's no obvious way to map the top level source repo 19 + # (arrow-datafusion) version to the version of contained repo 20 + # (arrow-datafusion/python) 21 + # 22 + # A commit hash will do in a pinch, and ultimately the sha256 has the final 23 + # say of what the content is when building 24 + cargoLock = fetchurl { 25 + url = "https://raw.githubusercontent.com/apache/arrow-datafusion/6.0.0/python/Cargo.lock"; 26 + sha256 = "sha256-xiv3drEU5jOGsEIh0U01ZQ1NBKobxO2ctp4mxy9iigw="; 27 + }; 28 + 29 + postUnpack = '' 30 + cp "${cargoLock}" $sourceRoot/Cargo.lock 31 + chmod u+w $sourceRoot/Cargo.lock 32 + ''; 33 + in 34 + buildPythonPackage rec { 35 + pname = "datafusion"; 36 + version = "0.4.0"; 37 + format = "pyproject"; 38 + 39 + src = fetchPypi { 40 + inherit pname version; 41 + sha256 = "sha256-+YqogteKfNhtI2QbVXv/5CIWm3PcOH653dwONm5ZcL8="; 42 + }; 43 + 44 + inherit postUnpack; 45 + 46 + # TODO: remove the patch hacking and postUnpack hooks after 47 + # https://github.com/apache/arrow-datafusion/pull/1508 is merged 48 + # 49 + # the lock file isn't up to date as of 6.0.0 so we need to patch the source 50 + # lockfile and the vendored cargo deps lockfile 51 + patches = [ ./Cargo.lock.patch ]; 52 + cargoDeps = rustPlatform.fetchCargoTarball { 53 + inherit src pname version postUnpack; 54 + sha256 = "sha256-JGyDxpfBXzduJaMF1sbmRm7KJajHYdVSj+WbiSETiY0="; 55 + patches = [ ./Cargo.lock.patch ]; 56 + }; 57 + 58 + nativeBuildInputs = with rustPlatform; [ 59 + cargoSetupHook 60 + maturinBuildHook 61 + ]; 62 + 63 + buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; 64 + 65 + propagatedBuildInputs = [ 66 + numpy 67 + pandas 68 + pyarrow 69 + ]; 70 + 71 + checkInputs = [ pytest ]; 72 + pythonImportsCheck = [ "datafusion" ]; 73 + 74 + checkPhase = '' 75 + runHook preCheck 76 + pytest --pyargs "${pname}" 77 + runHook postCheck 78 + ''; 79 + 80 + meta = with lib; { 81 + description = "Extensible query execution framework"; 82 + longDescription = '' 83 + DataFusion is an extensible query execution framework, written in Rust, 84 + that uses Apache Arrow as its in-memory format. 85 + ''; 86 + homepage = "https://arrow.apache.org/datafusion/"; 87 + license = with licenses; [ asl20 ]; 88 + maintainers = with maintainers; [ cpcloud ]; 89 + }; 90 + }
+2 -2
pkgs/development/python-modules/django-taggit/default.nix
··· 9 9 10 10 buildPythonPackage rec { 11 11 pname = "django-taggit"; 12 - version = "2.0.0"; 12 + version = "2.1.0"; 13 13 format = "setuptools"; 14 14 disabled = pythonOlder "3.6"; 15 15 16 16 src = fetchPypi { 17 17 inherit pname version; 18 - sha256 = "a23ca776ee2709b455c3a95625be1e4b891ddf1ffb4173153c41806de4038d72"; 18 + sha256 = "a9f41e4ad58efe4b28d86f274728ee87eb98eeae90c9eb4b4efad39e5068184e"; 19 19 }; 20 20 21 21 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/flux-led/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "flux-led"; 11 - version = "0.28.10"; 11 + version = "0.28.11"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.7"; ··· 17 17 owner = "Danielhiversen"; 18 18 repo = "flux_led"; 19 19 rev = version; 20 - sha256 = "sha256-kH+0W+MgdA7+owqC5KsOnqCidErCaQ3mEueZdP8eAS0="; 20 + sha256 = "sha256-6EBHFqfCCDKMY9T8suPDIOoiA2LugMJh0OJiHoICioU="; 21 21 }; 22 22 23 23 propagatedBuildInputs = [
+3 -1
pkgs/development/python-modules/gigalixir/default.nix
··· 24 24 }; 25 25 26 26 postPatch = '' 27 - substituteInPlace setup.py --replace "'pytest-runner'," "" 27 + substituteInPlace setup.py \ 28 + --replace "'pytest-runner'," "" \ 29 + --replace "cryptography==" "cryptography>=" 28 30 ''; 29 31 30 32 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/glom/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "glom"; 14 - version = "20.11.0"; 14 + version = "22.1.0"; 15 15 format = "setuptools"; 16 16 17 17 disabled = pythonOlder "3.7"; 18 18 19 19 src = fetchPypi { 20 20 inherit pname version; 21 - hash = "sha256-VAUQcrzMnNs+u9ivBVkZUTemHTCPBL/xlnjkthNQ6xI="; 21 + hash = "sha256-FRDGWHqPnGSiRmQbcAM8vF696Z8CrSRWk2eAOOghrrU="; 22 22 }; 23 23 24 24 propagatedBuildInputs = [
+21 -6
pkgs/development/python-modules/jdatetime/default.nix
··· 1 - { lib, buildPythonPackage, fetchPypi, six }: 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , six 5 + , pythonOlder 6 + }: 2 7 3 8 buildPythonPackage rec { 4 9 pname = "jdatetime"; 5 - version = "3.8.0"; 10 + version = "3.8.1"; 11 + format = "setuptools"; 12 + 13 + disabled = pythonOlder "3.7"; 6 14 7 15 src = fetchPypi { 8 16 inherit pname version; 9 - sha256 = "389a0723a8011379a5e34386ec466cb3f65b2d5cb5422702c1d3aecb6ac192d0"; 17 + sha256 = "db57ee517356b1bfc1603ef412f5da61eae92241ba0bcaf0851028cae424780c"; 10 18 }; 11 19 12 - propagatedBuildInputs = [ six ]; 20 + propagatedBuildInputs = [ 21 + six 22 + ]; 23 + 24 + pythonImportsCheck = [ 25 + "jdatetime" 26 + ]; 13 27 14 28 meta = with lib; { 15 - description = "Jalali datetime binding for python"; 16 - homepage = "https://pypi.python.org/pypi/jdatetime"; 29 + description = "Jalali datetime binding"; 30 + homepage = "https://github.com/slashmili/python-jalali"; 17 31 license = licenses.psfl; 32 + maintainers = with maintainers; [ ]; 18 33 }; 19 34 }
+2 -2
pkgs/development/python-modules/levenshtein/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "levenshtein"; 11 - version = "0.16.0"; 11 + version = "0.17.0"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.6"; ··· 17 17 owner = "maxbachmann"; 18 18 repo = "Levenshtein"; 19 19 rev = "v${version}"; 20 - sha256 = "agshUVkkqogj4FbonFd/rrGisMOomS62NND66YKZvjg="; 20 + sha256 = "1a14cw2314jb5lrm979zipzk3av4630lxdr4jzj2wl5qh3yw4w52"; 21 21 }; 22 22 23 23 postPatch = ''
+2 -2
pkgs/development/python-modules/markdown-it-py/default.nix
··· 14 14 15 15 buildPythonPackage rec { 16 16 pname = "markdown-it-py"; 17 - version = "2.0.0"; 17 + version = "2.0.1"; 18 18 format = "pyproject"; 19 19 20 20 disabled = pythonOlder "3.6"; ··· 23 23 owner = "executablebooks"; 24 24 repo = pname; 25 25 rev = "v${version}"; 26 - sha256 = "sha256-ahg+aAVpAh07PZ1mfrne0EP9K2J4tb8eLp5XXFpWp00="; 26 + sha256 = "0qrsl4ajhi2263i5q1kivp2s3n7naq3byfbsv11rni18skw3i2a6"; 27 27 }; 28 28 29 29 propagatedBuildInputs = [
+15 -5
pkgs/development/python-modules/rollbar/default.nix
··· 1 - { aiocontextvars 1 + { lib 2 + , aiocontextvars 2 3 , blinker 3 4 , buildPythonPackage 4 5 , fetchPypi 6 + , fetchpatch 5 7 , httpx 6 - , lib 7 8 , mock 8 9 , pytestCheckHook 9 10 , requests 10 11 , six 11 - , unittest2 12 + , pythonOlder 12 13 , webob 13 14 }: 14 15 15 16 buildPythonPackage rec { 16 17 pname = "rollbar"; 17 18 version = "0.16.2"; 19 + format = "setuptools"; 20 + 21 + disabled = pythonOlder "3.7"; 18 22 19 23 src = fetchPypi { 20 24 inherit pname version; ··· 29 33 checkInputs = [ 30 34 webob 31 35 blinker 32 - unittest2 33 36 mock 34 37 httpx 35 38 aiocontextvars 36 39 pytestCheckHook 37 40 ]; 38 41 39 - pythonImportsCheck = [ "rollbar" ]; 42 + # Still supporting unittest2 43 + # https://github.com/rollbar/pyrollbar/pull/346 44 + # https://github.com/rollbar/pyrollbar/pull/340 45 + doCheck = false; 46 + 47 + pythonImportsCheck = [ 48 + "rollbar" 49 + ]; 40 50 41 51 meta = with lib; { 42 52 description = "Error tracking and logging from Python to Rollbar";
+2 -2
pkgs/development/tools/database/sqlfluff/default.nix
··· 5 5 6 6 python3.pkgs.buildPythonApplication rec { 7 7 pname = "sqlfluff"; 8 - version = "0.9.1"; 8 + version = "0.9.2"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = pname; 12 12 repo = pname; 13 13 rev = version; 14 - hash = "sha256-sA9iMTDQ7SjaRG0/Uy+wGQ/2yQDqbZP6M5r1lFLBex4="; 14 + hash = "sha256-BzO7S2sxZeklzIh1qRHJ4mGLsKLNpg8PuGGRVAkPlzc="; 15 15 }; 16 16 17 17 propagatedBuildInputs = with python3.pkgs; [
+3 -3
pkgs/games/shattered-pixel-dungeon/default.nix
··· 10 10 11 11 let 12 12 pname = "shattered-pixel-dungeon"; 13 - version = "1.1.0"; 13 + version = "1.1.2"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "00-Evan"; 17 17 repo = "shattered-pixel-dungeon"; 18 18 # NOTE: always use the commit sha, not the tag. Tags _will_ disappear! 19 19 # https://github.com/00-Evan/shattered-pixel-dungeon/issues/596 20 - rev = "7f29a03078647ea503d3c866476568511aa5af84"; 21 - sha256 = "sha256-+d8X7WFGX8YGb2rGu8jVO82QdlF9ec+6+Ti5wGEIwRg="; 20 + rev = "5d1a2dce6b554b40f6737ead45d411fd98f4c67d"; 21 + sha256 = "sha256-Vu7K0NnqFY298BIQV9AwNEahV0eJl14tAeq+rw6KrtM="; 22 22 }; 23 23 24 24 postPatch = ''
+2 -2
pkgs/games/vintagestory/default.nix
··· 17 17 18 18 stdenv.mkDerivation rec { 19 19 pname = "vintagestory"; 20 - version = "1.16.0"; 20 + version = "1.16.1"; 21 21 22 22 src = fetchurl { 23 23 url = "https://cdn.vintagestory.at/gamefiles/stable/vs_archive_${version}.tar.gz"; 24 - sha256 = "sha256-1lAcE+RwK16xPTGxGCz2Pdq6GhmXFwy60CSZyq3hgnM="; 24 + sha256 = "sha256-o3FMuMvWxj9ECj77H/q5QkpcFbcZ0eNQ1OS51pUal3c="; 25 25 }; 26 26 27 27 nativeBuildInputs = [ makeWrapper copyDesktopItems ];
+40
pkgs/misc/sagetex/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchFromGitHub 4 + , texlive 5 + }: 6 + 7 + stdenv.mkDerivation rec { 8 + pname = "sagetex"; 9 + version = "3.6"; 10 + passthru.tlType = "run"; 11 + 12 + src = fetchFromGitHub { 13 + owner = "sagemath"; 14 + repo = "sagetex"; 15 + rev = "v${version}"; 16 + sha256 = "8iHcJbaY/dh0vmvYyd6zj1ZbuJRaJGb6bUBK1v4gXWU="; 17 + }; 18 + 19 + buildInputs = [ 20 + texlive.combined.scheme-basic 21 + ]; 22 + 23 + buildPhase = '' 24 + make sagetex.sty 25 + ''; 26 + 27 + installPhase = '' 28 + path="$out/tex/latex/sagetex" 29 + mkdir -p "$path" 30 + cp -va *.sty *.cfg *.def "$path/" 31 + ''; 32 + 33 + meta = with lib; { 34 + description = "Embed code, results of computations, and plots from Sage into LaTeX documents"; 35 + homepage = "https://github.com/sagemath/sagetex"; 36 + license = licenses.gpl2Plus; 37 + maintainers = with maintainers; [ alexnortung ]; 38 + platforms = platforms.all; 39 + }; 40 + }
+29
pkgs/os-specific/linux/gt/default.nix
··· 1 + { stdenv, lib, fetchFromGitHub, cmake, bash-completion, pkg-config, libconfig 2 + , asciidoc 3 + , libusbgx 4 + }: 5 + stdenv.mkDerivation { 6 + pname = "gt"; 7 + version = "unstable-2021-09-30"; 8 + 9 + src = fetchFromGitHub { 10 + owner = "linux-usb-gadgets"; 11 + repo = "gt"; 12 + rev = "7247547a14b2d092dc03fd83218ae65c2f7ff7d6"; 13 + sha256 = "1has9q2sghd5vyi25l3h2hd4d315vvpld076iwwsg01fx4d9vjmg"; 14 + }; 15 + sourceRoot = "source"; 16 + 17 + preConfigure = '' 18 + cmakeFlagsArray+=("-DBASH_COMPLETION_COMPLETIONSDIR=$out/share/bash-completions/completions") 19 + ''; 20 + nativeBuildInputs = [ cmake pkg-config asciidoc ]; 21 + buildInputs = [ bash-completion libconfig libusbgx]; 22 + 23 + meta = { 24 + description = "Linux command line tool for setting up USB gadgets using configfs"; 25 + license = with lib.licenses; [ asl20 ]; 26 + maintainers = with lib.maintainers; [ lheckemann ]; 27 + platforms = lib.platforms.linux; 28 + }; 29 + }
+3 -5
pkgs/os-specific/linux/ima-evm-utils/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "ima-evm-utils"; 5 - version = "1.1"; 5 + version = "1.4"; 6 6 7 7 src = fetchgit { 8 8 url = "git://git.code.sf.net/p/linux-ima/ima-evm-utils"; 9 9 rev = "v${version}"; 10 - sha256 = "1dhfw6d9z4dv82q9zg2g025hgr179kamz9chy7v5w9b71aam8jf8"; 10 + sha256 = "1zmyv82232lzqk52m0s7fap9zb9hb1x6nsi5gznk0cbsnq2m67pc"; 11 11 }; 12 12 13 13 nativeBuildInputs = [ autoreconfHook pkg-config ]; 14 14 buildInputs = [ openssl attr keyutils asciidoc libxslt ]; 15 15 16 - patches = [ ./xattr.patch ]; 17 - 18 - buildPhase = "make prefix=$out MANPAGE_DOCBOOK_XSL=${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl"; 16 + MANPAGE_DOCBOOK_XSL = "${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl"; 19 17 20 18 meta = { 21 19 description = "evmctl utility to manage digital signatures of the Linux kernel integrity subsystem (IMA/EVM)";
-73
pkgs/os-specific/linux/ima-evm-utils/xattr.patch
··· 1 - commit 6aea54d2ad2287b3e8894c262ee895f3d4a60516 2 - Author: André Draszik <git@andred.net> 3 - Date: Mon Oct 17 12:45:32 2016 +0100 4 - 5 - evmctl: use correct include for xattr.h 6 - 7 - The xattr API/ABI is provided by both the c-library, as well as by the 8 - libattr package. The c-library's header file is sys/xattr.h, whereas 9 - libattr's header file can be found in attr/xattr.h. 10 - 11 - Given none of the code here *links* against the libattr.so shared library, it 12 - is wrong to *compile* against libattr's API (header file). 13 - 14 - Doing so avoids confusion as to which xattr.h is used as the least problem, 15 - and potential ABI differences as the worst problem due the mismatching header 16 - file used. 17 - 18 - So make sure we compile and link against the same thing, the c-library in 19 - both cases. 20 - 21 - Signed-off-by: André Draszik <git@andred.net> 22 - Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com> 23 - 24 - diff --git a/configure.ac b/configure.ac 25 - index 0497eb7..a5b4288 100644 26 - --- a/configure.ac 27 - +++ b/configure.ac 28 - @@ -30,7 +30,7 @@ AC_SUBST(OPENSSL_LIBS) 29 - AC_CHECK_HEADER(unistd.h) 30 - AC_CHECK_HEADERS(openssl/conf.h) 31 - 32 - -AC_CHECK_HEADERS(attr/xattr.h, , [AC_MSG_ERROR([attr/xattr.h header not found. You need the libattr development package.])]) 33 - +AC_CHECK_HEADERS(sys/xattr.h, , [AC_MSG_ERROR([sys/xattr.h header not found. You need the c-library development package.])]) 34 - AC_CHECK_HEADERS(keyutils.h, , [AC_MSG_ERROR([keyutils.h header not found. You need the libkeyutils development package.])]) 35 - 36 - #debug support - yes for a while 37 - diff --git a/packaging/ima-evm-utils.spec b/packaging/ima-evm-utils.spec 38 - index a11a27a..63388d2 100644 39 - --- a/packaging/ima-evm-utils.spec 40 - +++ b/packaging/ima-evm-utils.spec 41 - @@ -11,7 +11,6 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root 42 - BuildRequires: autoconf 43 - BuildRequires: automake 44 - BuildRequires: openssl-devel 45 - -BuildRequires: libattr-devel 46 - BuildRequires: keyutils-libs-devel 47 - 48 - %description 49 - diff --git a/packaging/ima-evm-utils.spec.in b/packaging/ima-evm-utils.spec.in 50 - index 7ca6c6f..65c32f9 100644 51 - --- a/packaging/ima-evm-utils.spec.in 52 - +++ b/packaging/ima-evm-utils.spec.in 53 - @@ -11,7 +11,6 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root 54 - BuildRequires: autoconf 55 - BuildRequires: automake 56 - BuildRequires: openssl-devel 57 - -BuildRequires: libattr-devel 58 - BuildRequires: keyutils-libs-devel 59 - 60 - %description 61 - diff --git a/src/evmctl.c b/src/evmctl.c 62 - index 2ffee78..3fbcd33 100644 63 - --- a/src/evmctl.c 64 - +++ b/src/evmctl.c 65 - @@ -49,7 +49,7 @@ 66 - #include <stdint.h> 67 - #include <string.h> 68 - #include <dirent.h> 69 - -#include <attr/xattr.h> 70 - +#include <sys/xattr.h> 71 - #include <linux/xattr.h> 72 - #include <getopt.h> 73 - #include <keyutils.h>
+13 -3
pkgs/tools/filesystems/btrfs-progs/default.nix
··· 2 2 , asciidoc, docbook_xml_dtd_45, docbook_xsl, libxslt, pkg-config, python3, xmlto 3 3 , zstd 4 4 , acl, attr, e2fsprogs, libuuid, lzo, systemd, zlib 5 + , runCommand, btrfs-progs 5 6 }: 6 7 7 8 stdenv.mkDerivation rec { ··· 18 19 python3 python3.pkgs.setuptools 19 20 ]; 20 21 21 - buildInputs = [ acl attr e2fsprogs libuuid lzo python3 systemd zlib zstd ]; 22 + buildInputs = [ acl attr e2fsprogs libuuid lzo python3 zlib zstd ] ++ lib.optionals stdenv.hostPlatform.isGnu [ systemd ]; 22 23 23 24 # for python cross-compiling 24 25 _PYTHON_HOST_PLATFORM = stdenv.hostPlatform.config; ··· 31 32 install -v -m 444 -D btrfs-completion $out/share/bash-completion/completions/btrfs 32 33 ''; 33 34 34 - configureFlags = lib.optional stdenv.hostPlatform.isMusl "--disable-backtrace"; 35 + configureFlags = lib.optional stdenv.hostPlatform.isMusl "--disable-backtrace --disable-libudev"; 35 36 36 - makeFlags = [ "udevruledir=$(out)/lib/udev/rules.d" ]; 37 + makeFlags = lib.optionals stdenv.hostPlatform.isGnu [ "udevruledir=$(out)/lib/udev/rules.d" ]; 37 38 38 39 enableParallelBuilding = true; 39 40 41 + passthru.tests = { 42 + simple-filesystem = runCommand "btrfs-progs-create-fs" {} '' 43 + mkdir -p $out 44 + truncate -s110M $out/disc 45 + ${btrfs-progs}/bin/mkfs.btrfs $out/disc | tee $out/success 46 + ${btrfs-progs}/bin/btrfs check $out/disc | tee $out/success 47 + [ -e $out/success ] 48 + ''; 49 + }; 40 50 meta = with lib; { 41 51 description = "Utilities for the btrfs filesystem"; 42 52 homepage = "https://btrfs.wiki.kernel.org/";
+7 -3
pkgs/tools/security/cosign/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "cosign"; 5 - version = "1.4.1"; 5 + version = "1.5.0"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "sigstore"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-WjYW9Fo27wE1pg/BqYsdHd8jwd8jG5bk37HmU1DqnyE="; 11 + sha256 = "sha256-mxDLF9DQKySDR1c7jD/D0/xI+/R8a/ZlukliT/R4wCg="; 12 12 }; 13 13 14 14 buildInputs = lib.optional (stdenv.isLinux && pivKeySupport) (lib.getDev pcsclite) ··· 16 16 17 17 nativeBuildInputs = [ pkg-config installShellFiles ]; 18 18 19 - vendorSha256 = "sha256-6T98zu55BQ26e43a1i68rhebaLwY/iFM8CRqRcv2QwI="; 19 + vendorSha256 = "sha256-xqwwvVGXWFFKKBtH4a/+akFSlZ2hCOC1v1sO0d2p9fs="; 20 20 21 21 excludedPackages = "\\(sample\\|webhook\\|help\\)"; 22 22 23 23 tags = [] ++ lib.optionals pivKeySupport [ "pivkey" ] ++ lib.optionals pkcs11Support [ "pkcs11key" ]; 24 24 25 25 ldflags = [ "-s" "-w" "-X github.com/sigstore/cosign/pkg/version.GitVersion=v${version}" ]; 26 + 27 + postPatch = '' 28 + rm pkg/cosign/tuf/client_test.go # Require network access 29 + ''; 26 30 27 31 postInstall = '' 28 32 installShellCompletion --cmd cosign \
+2 -2
pkgs/tools/security/kubescape/default.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "kubescape"; 9 - version = "2.0.141"; 9 + version = "2.0.143"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "armosec"; 13 13 repo = pname; 14 14 rev = "v${version}"; 15 - hash = "sha256-4HVxPM+2SaFrhZiaRKwNuultE2df58aJMm9YSwbJBPM="; 15 + hash = "sha256-ylmH3vQTWT9I57J+Q771PG/r6t8t3P6zNC+sGIx3C1A="; 16 16 }; 17 17 18 18 nativeBuildInputs = [
+2 -2
pkgs/tools/security/lynis/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "lynis"; 5 - version = "3.0.6"; 5 + version = "3.0.7"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "CISOfy"; 9 9 repo = pname; 10 10 rev = version; 11 - sha256 = "sha256-RIz0GTuw3QJKSk25zl4c34o+HgMkpclzoPEbzKhCNqg="; 11 + sha256 = "sha256-tO9/egY4eNwQpCZU0zx8G3k4UYsf7S3tUdr6pCMTAWU="; 12 12 }; 13 13 14 14 nativeBuildInputs = [ installShellFiles makeWrapper ];
+3 -3
pkgs/tools/wayland/swayr/default.nix
··· 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "swayr"; 5 - version = "0.11.2"; 5 + version = "0.12.0"; 6 6 7 7 src = fetchFromSourcehut { 8 8 owner = "~tsdh"; 9 9 repo = "swayr"; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-IjOoQbKCiwuoCsh2bOmvcSH3/9KMmavmn1Ib1TLBH8w="; 11 + sha256 = "sha256-bmMfrwxdriE/o8fezLbmhorBDvjtC4vaVamwDtrxiMQ="; 12 12 }; 13 13 14 - cargoSha256 = "sha256-EYaISBnWKplKUAKa9SZufWcykeR/qeApvqwIGB9jt3Q="; 14 + cargoSha256 = "sha256-5hTiu2fGyMcbsg05hLngQXsjw3Vql2q8zlW5e6jD9Ok="; 15 15 16 16 patches = [ 17 17 ./icon-paths.patch
+1
pkgs/top-level/aliases.nix
··· 631 631 module_init_tools = kmod; # added 2016-04-22 632 632 mozart = mozart2-binary; # added 2019-09-23 633 633 mozart-binary = mozart2-binary; # added 2019-09-23 634 + mpc_cli = mpc-cli; # moved from top-level 2022-01-24 634 635 mpd_clientlib = libmpdclient; # added 2021-02-11 635 636 mpich2 = mpich; # added 2018-08-06 636 637 msf = metasploit; # added 2018-04-25
+10 -10
pkgs/top-level/all-packages.nix
··· 18630 18630 udev = systemdMinimal; 18631 18631 }; 18632 18632 18633 + libusbgx = callPackage ../development/libraries/libusbgx { }; 18634 + 18633 18635 libusbmuxd = callPackage ../development/libraries/libusbmuxd { }; 18634 18636 18635 18637 libutempter = callPackage ../development/libraries/libutempter { }; ··· 22326 22328 22327 22329 gradm = callPackage ../os-specific/linux/gradm { }; 22328 22330 22331 + gt = callPackage ../os-specific/linux/gt { }; 22332 + 22329 22333 inherit (nodePackages) gtop; 22330 22334 22331 22335 hd-idle = callPackage ../os-specific/linux/hd-idle { }; ··· 22358 22362 22359 22363 ifmetric = callPackage ../os-specific/linux/ifmetric {}; 22360 22364 22361 - ima-evm-utils = callPackage ../os-specific/linux/ima-evm-utils { 22362 - openssl = openssl_1_0_2; 22363 - }; 22365 + ima-evm-utils = callPackage ../os-specific/linux/ima-evm-utils {}; 22364 22366 22365 22367 intel2200BGFirmware = callPackage ../os-specific/linux/firmware/intel2200BGFirmware { }; 22366 22368 ··· 27354 27356 27355 27357 mpg321 = callPackage ../applications/audio/mpg321 { }; 27356 27358 27357 - mpc_cli = callPackage ../applications/audio/mpc { 27359 + mpc-cli = callPackage ../applications/audio/mpc { 27358 27360 inherit (python3Packages) sphinx; 27359 27361 }; 27360 27362 ··· 29347 29349 29348 29350 qpdfview = libsForQt5.callPackage ../applications/misc/qpdfview {}; 29349 29351 29350 - qtile = callPackage ../applications/window-managers/qtile { 29351 - inherit (xorg) libxcb; 29352 - }; 29352 + qtile = callPackage ../applications/window-managers/qtile { }; 29353 29353 29354 29354 vimpc = callPackage ../applications/audio/vimpc { }; 29355 29355 ··· 32061 32061 sage = callPackage ../applications/science/math/sage { }; 32062 32062 sageWithDoc = sage.override { withDoc = true; }; 32063 32063 32064 + sagetex = callPackage ../misc/sagetex { }; 32065 + 32064 32066 subread = callPackage ../applications/science/biology/subread { }; 32065 32067 32066 32068 suitesparse_4_2 = callPackage ../development/libraries/science/math/suitesparse/4.2.nix { }; ··· 33959 33961 33960 33962 wprecon = callPackage ../tools/security/wprecon { }; 33961 33963 33962 - wraith = callPackage ../applications/networking/irc/wraith { 33963 - openssl = openssl_1_0_2; 33964 - }; 33964 + wraith = callPackage ../applications/networking/irc/wraith { }; 33965 33965 33966 33966 wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { }; 33967 33967
+2
pkgs/top-level/python-packages.nix
··· 1994 1994 1995 1995 datadog = callPackage ../development/python-modules/datadog { }; 1996 1996 1997 + datafusion = callPackage ../development/python-modules/datafusion { }; 1998 + 1997 1999 datamodeldict = callPackage ../development/python-modules/datamodeldict { }; 1998 2000 1999 2001 dataset = callPackage ../development/python-modules/dataset { };