Merge staging-next into staging

authored by github-actions[bot] and committed by GitHub 8487dbbc 99d13e8c

+427 -267
+1 -1
doc/contributing/contributing-to-documentation.chapter.md
··· 7 7 ```ShellSession 8 8 $ cd /path/to/nixpkgs/doc 9 9 $ nix-shell 10 - [nix-shell]$ make $makeFlags 10 + [nix-shell]$ make 11 11 ``` 12 12 13 13 If you experience problems, run `make debug` to help understand the docbook errors.
+3 -4
doc/default.nix
··· 17 17 18 18 src = lib.cleanSource ./.; 19 19 20 - makeFlags = [ 21 - "PANDOC_LUA_FILTERS_DIR=${pkgs.pandoc-lua-filters}/share/pandoc/filters" 22 - ]; 23 - 24 20 postPatch = '' 25 21 ln -s ${doc-support} ./doc-support/result 26 22 ''; ··· 37 33 echo "doc manual $dest manual.html" >> $out/nix-support/hydra-build-products 38 34 echo "doc manual $dest nixpkgs-manual.epub" >> $out/nix-support/hydra-build-products 39 35 ''; 36 + 37 + # Environment variables 38 + PANDOC_LUA_FILTERS_DIR = "${pkgs.pandoc-lua-filters}/share/pandoc/filters"; 40 39 }
+2 -2
pkgs/applications/audio/bjumblr/default.nix
··· 1 1 { lib, stdenv, fetchFromGitHub, libX11, cairo, lv2, pkg-config, libsndfile }: 2 2 3 3 stdenv.mkDerivation rec { 4 - pname = "BJumblr"; 4 + pname = "bjumblr"; 5 5 version = "1.6.6"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "sjaehn"; 9 - repo = pname; 9 + repo = "BJumblr"; 10 10 rev = version; 11 11 sha256 = "1nbxi54023vck3qgmr385cjzinmdnvz62ywb6bcksmc3shl080mg"; 12 12 };
+2 -2
pkgs/applications/audio/bsequencer/default.nix
··· 1 1 { lib, stdenv, fetchFromGitHub, xorg, cairo, lv2, pkg-config }: 2 2 3 3 stdenv.mkDerivation rec { 4 - pname = "BSEQuencer"; 4 + pname = "bsequencer"; 5 5 version = "1.8.8"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "sjaehn"; 9 - repo = pname; 9 + repo = "BSEQuencer"; 10 10 rev = version; 11 11 sha256 = "sha256-OArIMf0XP9CKDdb3H4s8jMzVRjoLFQDPmTS9rS2KW3w="; 12 12 };
+2 -2
pkgs/applications/audio/bshapr/default.nix
··· 1 1 { lib, stdenv, fetchFromGitHub, xorg, cairo, lv2, pkg-config }: 2 2 3 3 stdenv.mkDerivation rec { 4 - pname = "BShapr"; 4 + pname = "bshapr"; 5 5 version = "0.12"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "sjaehn"; 9 - repo = pname; 9 + repo = "BShapr"; 10 10 rev = "v${version}"; 11 11 sha256 = "sha256-2DySlD5ZTxeQ2U++Dr67bek5oVbAiOHCxM6S5rTTZN0="; 12 12 };
+2 -2
pkgs/applications/audio/bslizr/default.nix
··· 1 1 { lib, stdenv, fetchFromGitHub, xorg, cairo, lv2, pkg-config }: 2 2 3 3 stdenv.mkDerivation rec { 4 - pname = "BSlizr"; 4 + pname = "bslizr"; 5 5 version = "1.2.14"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "sjaehn"; 9 - repo = pname; 9 + repo = "BSlizr"; 10 10 rev = version; 11 11 sha256 = "sha256-dut3I68tJWQH+X6acKROqb5HywufeBQ4/HkXFKsA3hY="; 12 12 };
+20 -5
pkgs/applications/networking/instant-messengers/ferdi/default.nix
··· 1 - { lib, mkFranzDerivation, fetchurl }: 1 + { lib, mkFranzDerivation, fetchurl, xorg, xdg-utils, buildEnv, writeShellScriptBin }: 2 2 3 - mkFranzDerivation rec { 3 + let 4 + mkFranzDerivation' = mkFranzDerivation.override { 5 + xdg-utils = buildEnv { 6 + name = "xdg-utils-for-ferdi"; 7 + paths = [ 8 + xdg-utils 9 + (lib.hiPrio (writeShellScriptBin "xdg-open" '' 10 + unset GDK_BACKEND 11 + exec ${xdg-utils}/bin/xdg-open "$@" 12 + '')) 13 + ]; 14 + }; 15 + }; 16 + in 17 + mkFranzDerivation' rec { 4 18 pname = "ferdi"; 5 19 name = "Ferdi"; 6 - version = "5.6.0-beta.5"; 20 + version = "5.6.0-beta.6"; 7 21 src = fetchurl { 8 22 url = "https://github.com/getferdi/ferdi/releases/download/v${version}/ferdi_${version}_amd64.deb"; 9 - sha256 = "sha256-fDUzYir53OQ3O4o9eG70sGD+FJ0/4SDNsTfh97WFRnQ="; 23 + sha256 = "sha256-Q1HSAEVcaxFyOq7oWqa6AJJpsBKRxbsKb9ydyK/gH/A="; 10 24 }; 25 + extraBuildInputs = [ xorg.libxshmfence ]; 11 26 meta = with lib; { 12 27 description = "Combine your favorite messaging services into one application"; 13 28 homepage = "https://getferdi.com/"; 14 29 license = licenses.asl20; 15 - maintainers = [ maintainers.davidtwco ]; 30 + maintainers = with maintainers; [ davidtwco ma27 ]; 16 31 platforms = [ "x86_64-linux" ]; 17 32 hydraPlatforms = [ ]; 18 33 };
+3 -2
pkgs/applications/networking/instant-messengers/franz/generic.nix
··· 28 28 29 29 # Helper function for building a derivation for Franz and forks. 30 30 31 - { pname, name, version, src, meta }: 31 + { pname, name, version, src, meta, extraBuildInputs ? [] }: 32 + 32 33 stdenv.mkDerivation rec { 33 34 inherit pname version src meta; 34 35 ··· 36 37 dontPatchELF = true; 37 38 38 39 nativeBuildInputs = [ autoPatchelfHook makeWrapper wrapGAppsHook dpkg ]; 39 - buildInputs = (with xorg; [ 40 + buildInputs = extraBuildInputs ++ (with xorg; [ 40 41 libXi 41 42 libXcursor 42 43 libXdamage
+4 -1
pkgs/applications/networking/instant-messengers/rambox/default.nix
··· 21 21 description = "Free and Open Source messaging and emailing app that combines common web applications into one"; 22 22 homepage = "https://rambox.pro"; 23 23 license = licenses.mit; 24 - maintainers = with maintainers; [ ma27 ]; 24 + maintainers = with maintainers; [ ]; 25 25 platforms = ["i686-linux" "x86_64-linux"]; 26 26 hydraPlatforms = []; 27 + knownVulnerabilities = [ 28 + "Electron 7.2.4 is EOL and contains at least the following vulnerabilities: CVE-2020-6458, CVE-2020-6460 and more (https://www.electronjs.org/releases/stable?version=7). Consider using an alternative such as `ferdi'." 29 + ]; 27 30 }; 28 31 }
+2 -2
pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
··· 28 28 else ""); 29 29 in stdenv.mkDerivation rec { 30 30 pname = "signal-desktop"; 31 - version = "5.3.0"; # Please backport all updates to the stable channel. 31 + version = "5.4.0"; # Please backport all updates to the stable channel. 32 32 # All releases have a limited lifetime and "expire" 90 days after the release. 33 33 # When releases "expire" the application becomes unusable until an update is 34 34 # applied. The expiration date for the current release can be extracted with: ··· 38 38 39 39 src = fetchurl { 40 40 url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; 41 - sha256 = "15lclxw3njih90zlh2n90v8ljg0wnglw5w8jrpa7rbd789yagvq7"; 41 + sha256 = "046xy033ars70ay5ryj39i5053py00xj92ajdg212pamq415z1zb"; 42 42 }; 43 43 44 44 nativeBuildInputs = [
+3 -2
pkgs/applications/networking/sniffers/wireshark/default.nix
··· 10 10 with lib; 11 11 12 12 let 13 - version = "3.4.5"; 13 + version = "3.4.6"; 14 14 variant = if withQt then "qt" else "cli"; 15 15 16 16 in stdenv.mkDerivation { ··· 20 20 21 21 src = fetchurl { 22 22 url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz"; 23 - sha256 = "sha256-3hqv0QCh4SB8hQ0YDpfdkauNoPXra+7FRfclzbFF0zM="; 23 + sha256 = "0a26kcj3n1a2kw1f3fc6s1x3rw3f3bj2cq6rp7k0kc4ciwh7i9hj"; 24 24 }; 25 25 26 26 cmakeFlags = [ ··· 93 93 94 94 meta = with lib; { 95 95 homepage = "https://www.wireshark.org/"; 96 + changelog = "https://www.wireshark.org/docs/relnotes/wireshark-${version}.html"; 96 97 description = "Powerful network protocol analyzer"; 97 98 license = licenses.gpl2Plus; 98 99
+1 -1
pkgs/applications/science/logic/acgtk/default.nix
··· 11 11 }; 12 12 13 13 buildInputs = [ dune_2 ] ++ (with ocamlPackages; [ 14 - ocaml findlib ansiterminal cairo2 cmdliner fmt logs menhir mtime yojson 14 + ocaml findlib ansiterminal cairo2 cmdliner fmt logs menhir menhirLib mtime yojson 15 15 ]); 16 16 17 17 buildPhase = "dune build --profile=release";
+1 -1
pkgs/applications/science/logic/why3/default.nix
··· 11 11 }; 12 12 13 13 buildInputs = with ocamlPackages; [ 14 - ocaml findlib ocamlgraph zarith menhir 14 + ocaml findlib ocamlgraph zarith menhir menhirLib 15 15 # Compressed Sessions 16 16 # Emacs compilation of why3.el 17 17 emacs
+1 -1
pkgs/development/compilers/compcert/default.nix
··· 5 5 }: 6 6 7 7 let 8 - ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir ]; 8 + ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir menhirLib ]; 9 9 ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux"; 10 10 inherit (coqPackages) coq flocq; 11 11 inherit (lib) optional optionalString;
+1 -1
pkgs/development/compilers/fstar/default.nix
··· 14 14 nativeBuildInputs = [ makeWrapper installShellFiles ]; 15 15 16 16 buildInputs = with ocamlPackages; [ 17 - z3 ocaml findlib batteries menhir stdint 17 + z3 ocaml findlib batteries menhir menhirLib stdint 18 18 zarith camlp4 yojson pprint 19 19 ulex ocaml-migrate-parsetree process ppx_deriving ppx_deriving_yojson ocamlbuild 20 20 ];
+34 -23
pkgs/development/compilers/go/1.14.nix
··· 1 - { lib, stdenv, fetchurl, tzdata, iana-etc, runCommand 2 - , perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation 3 - , mailcap, runtimeShell 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , tzdata 5 + , iana-etc 6 + , runCommand 7 + , perl 8 + , which 9 + , pkg-config 10 + , patch 11 + , procps 12 + , pcre 13 + , cacert 14 + , Security 15 + , Foundation 16 + , mailcap 17 + , runtimeShell 4 18 , buildPackages 5 19 , pkgsBuildTarget 6 20 , fetchpatch ··· 8 22 }: 9 23 10 24 let 11 - 12 - inherit (lib) optionals optionalString; 13 - 14 - version = "1.14.15"; 15 - 16 25 go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; 17 26 18 - goBootstrap = runCommand "go-bootstrap" {} '' 27 + goBootstrap = runCommand "go-bootstrap" { } '' 19 28 mkdir $out 20 29 cp -rf ${go_bootstrap}/* $out/ 21 30 chmod -R u+w $out ··· 41 50 42 51 stdenv.mkDerivation rec { 43 52 pname = "go"; 44 - inherit version; 53 + version = "1.14.15"; 45 54 46 55 src = fetchurl { 47 56 url = "https://dl.google.com/go/go${version}.src.tar.gz"; ··· 51 60 # perl is used for testing go vet 52 61 nativeBuildInputs = [ perl which pkg-config patch procps ]; 53 62 buildInputs = [ cacert pcre ] 54 - ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ] 55 - ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 63 + ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ] 64 + ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 56 65 57 - depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ]; 66 + depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ]; 58 67 59 68 hardeningDisable = [ "all" ]; 60 69 ··· 106 115 # Disable cgo lookup tests not works, they depend on resolver 107 116 rm src/net/cgo_unix_test.go 108 117 109 - '' + optionalString stdenv.isLinux '' 118 + '' + lib.optionalString stdenv.isLinux '' 110 119 # prepend the nix path to the zoneinfo files but also leave the original value for static binaries 111 120 # that run outside a nix server 112 121 sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go 113 122 114 - '' + optionalString stdenv.isAarch32 '' 123 + '' + lib.optionalString stdenv.isAarch32 '' 115 124 echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash 116 - '' + optionalString stdenv.isDarwin '' 125 + '' + lib.optionalString stdenv.isDarwin '' 117 126 substituteInPlace src/race.bash --replace \ 118 127 "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true 119 128 sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go ··· 183 192 184 193 # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those 185 194 # to be different from CC/CXX 186 - CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 195 + CC_FOR_TARGET = 196 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 187 197 "${targetCC}/bin/${targetCC.targetPrefix}cc" 188 198 else 189 199 null; 190 - CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 200 + CXX_FOR_TARGET = 201 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 191 202 "${targetCC}/bin/${targetCC.targetPrefix}c++" 192 203 else 193 204 null; 194 205 195 - GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); 206 + GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]); 196 207 GO386 = 387; # from Arch: don't assume sse2 on i686 197 208 CGO_ENABLED = 1; 198 209 # Hopefully avoids test timeouts on Hydra ··· 202 213 # Some tests assume things like home directories and users exists 203 214 GO_BUILDER_NAME = "nix"; 204 215 205 - GOROOT_BOOTSTRAP="${goBootstrap}/share/go"; 216 + GOROOT_BOOTSTRAP = "${goBootstrap}/share/go"; 206 217 207 218 postConfigure = '' 208 219 export GOCACHE=$TMPDIR/go-cache ··· 211 222 212 223 export PATH=$(pwd)/bin:$PATH 213 224 214 - ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 225 + ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 215 226 # Independent from host/target, CC should produce code for the building system. 216 227 # We only set it when cross-compiling. 217 228 export CC=${buildPackages.stdenv.cc}/bin/cc ··· 239 250 '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then '' 240 251 mv bin/*_*/* bin 241 252 rmdir bin/*_* 242 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 253 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 243 254 rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH} 244 255 ''} 245 256 '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then '' 246 257 rm -rf bin/*_* 247 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 258 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 248 259 rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH} 249 260 ''} 250 261 '' else "");
+34 -23
pkgs/development/compilers/go/1.15.nix
··· 1 - { lib, stdenv, fetchurl, tzdata, iana-etc, runCommand 2 - , perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation 3 - , mailcap, runtimeShell 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , tzdata 5 + , iana-etc 6 + , runCommand 7 + , perl 8 + , which 9 + , pkg-config 10 + , patch 11 + , procps 12 + , pcre 13 + , cacert 14 + , Security 15 + , Foundation 16 + , mailcap 17 + , runtimeShell 4 18 , buildPackages 5 19 , pkgsBuildTarget 6 20 , fetchpatch ··· 8 22 }: 9 23 10 24 let 11 - 12 - inherit (lib) optionals optionalString; 13 - 14 - version = "1.15.13"; 15 - 16 25 go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; 17 26 18 - goBootstrap = runCommand "go-bootstrap" {} '' 27 + goBootstrap = runCommand "go-bootstrap" { } '' 19 28 mkdir $out 20 29 cp -rf ${go_bootstrap}/* $out/ 21 30 chmod -R u+w $out ··· 41 50 42 51 stdenv.mkDerivation rec { 43 52 pname = "go"; 44 - inherit version; 53 + version = "1.15.13"; 45 54 46 55 src = fetchurl { 47 56 url = "https://dl.google.com/go/go${version}.src.tar.gz"; ··· 51 60 # perl is used for testing go vet 52 61 nativeBuildInputs = [ perl which pkg-config patch procps ]; 53 62 buildInputs = [ cacert pcre ] 54 - ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ] 55 - ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 63 + ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ] 64 + ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 56 65 57 - depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ]; 66 + depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ]; 58 67 59 68 hardeningDisable = [ "all" ]; 60 69 ··· 114 123 # Disable cgo lookup tests not works, they depend on resolver 115 124 rm src/net/cgo_unix_test.go 116 125 117 - '' + optionalString stdenv.isLinux '' 126 + '' + lib.optionalString stdenv.isLinux '' 118 127 # prepend the nix path to the zoneinfo files but also leave the original value for static binaries 119 128 # that run outside a nix server 120 129 sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go 121 130 122 - '' + optionalString stdenv.isAarch32 '' 131 + '' + lib.optionalString stdenv.isAarch32 '' 123 132 echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash 124 - '' + optionalString stdenv.isDarwin '' 133 + '' + lib.optionalString stdenv.isDarwin '' 125 134 substituteInPlace src/race.bash --replace \ 126 135 "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true 127 136 sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go ··· 186 195 187 196 # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those 188 197 # to be different from CC/CXX 189 - CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 198 + CC_FOR_TARGET = 199 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 190 200 "${targetCC}/bin/${targetCC.targetPrefix}cc" 191 201 else 192 202 null; 193 - CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 203 + CXX_FOR_TARGET = 204 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 194 205 "${targetCC}/bin/${targetCC.targetPrefix}c++" 195 206 else 196 207 null; 197 208 198 - GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); 209 + GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]); 199 210 GO386 = 387; # from Arch: don't assume sse2 on i686 200 211 CGO_ENABLED = 1; 201 212 # Hopefully avoids test timeouts on Hydra ··· 205 216 # Some tests assume things like home directories and users exists 206 217 GO_BUILDER_NAME = "nix"; 207 218 208 - GOROOT_BOOTSTRAP="${goBootstrap}/share/go"; 219 + GOROOT_BOOTSTRAP = "${goBootstrap}/share/go"; 209 220 210 221 postConfigure = '' 211 222 export GOCACHE=$TMPDIR/go-cache ··· 214 225 215 226 export PATH=$(pwd)/bin:$PATH 216 227 217 - ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 228 + ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 218 229 # Independent from host/target, CC should produce code for the building system. 219 230 # We only set it when cross-compiling. 220 231 export CC=${buildPackages.stdenv.cc}/bin/cc ··· 242 253 '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then '' 243 254 mv bin/*_*/* bin 244 255 rmdir bin/*_* 245 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 256 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 246 257 rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH} 247 258 ''} 248 259 '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then '' 249 260 rm -rf bin/*_* 250 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 261 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 251 262 rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH} 252 263 ''} 253 264 '' else "");
+36 -25
pkgs/development/compilers/go/1.16.nix
··· 1 - { lib, stdenv, fetchurl, tzdata, iana-etc, runCommand 2 - , perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation, xcbuild 3 - , mailcap, runtimeShell 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , tzdata 5 + , iana-etc 6 + , runCommand 7 + , perl 8 + , which 9 + , pkg-config 10 + , patch 11 + , procps 12 + , pcre 13 + , cacert 14 + , Security 15 + , Foundation 16 + , xcbuild 17 + , mailcap 18 + , runtimeShell 4 19 , buildPackages 5 20 , pkgsBuildTarget 6 - , fetchpatch 7 21 , callPackage 8 22 }: 9 23 10 24 let 11 - 12 - inherit (lib) optionals optionalString; 13 - 14 - version = "1.16.5"; 15 - 16 25 go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; 17 26 18 - goBootstrap = runCommand "go-bootstrap" {} '' 27 + goBootstrap = runCommand "go-bootstrap" { } '' 19 28 mkdir $out 20 29 cp -rf ${go_bootstrap}/* $out/ 21 30 chmod -R u+w $out ··· 41 50 42 51 stdenv.mkDerivation rec { 43 52 pname = "go"; 44 - inherit version; 53 + version = "1.16.5"; 45 54 46 55 src = fetchurl { 47 56 url = "https://dl.google.com/go/go${version}.src.tar.gz"; ··· 51 60 # perl is used for testing go vet 52 61 nativeBuildInputs = [ perl which pkg-config patch procps ]; 53 62 buildInputs = [ cacert pcre ] 54 - ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ] 55 - ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 63 + ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ] 64 + ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 56 65 57 - propagatedBuildInputs = optionals stdenv.isDarwin [ xcbuild ]; 66 + propagatedBuildInputs = lib.optionals stdenv.isDarwin [ xcbuild ]; 58 67 59 - depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ]; 68 + depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ]; 60 69 61 70 hardeningDisable = [ "all" ]; 62 71 ··· 116 125 # Disable cgo lookup tests not works, they depend on resolver 117 126 rm src/net/cgo_unix_test.go 118 127 119 - '' + optionalString stdenv.isLinux '' 128 + '' + lib.optionalString stdenv.isLinux '' 120 129 # prepend the nix path to the zoneinfo files but also leave the original value for static binaries 121 130 # that run outside a nix server 122 131 sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go 123 132 124 - '' + optionalString stdenv.isAarch32 '' 133 + '' + lib.optionalString stdenv.isAarch32 '' 125 134 echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash 126 - '' + optionalString stdenv.isDarwin '' 135 + '' + lib.optionalString stdenv.isDarwin '' 127 136 substituteInPlace src/race.bash --replace \ 128 137 "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true 129 138 sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go ··· 181 190 182 191 # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those 183 192 # to be different from CC/CXX 184 - CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 193 + CC_FOR_TARGET = 194 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 185 195 "${targetCC}/bin/${targetCC.targetPrefix}cc" 186 196 else 187 197 null; 188 - CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 198 + CXX_FOR_TARGET = 199 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 189 200 "${targetCC}/bin/${targetCC.targetPrefix}c++" 190 201 else 191 202 null; 192 203 193 - GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); 204 + GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]); 194 205 GO386 = "softfloat"; # from Arch: don't assume sse2 on i686 195 206 CGO_ENABLED = 1; 196 207 # Hopefully avoids test timeouts on Hydra ··· 200 211 # Some tests assume things like home directories and users exists 201 212 GO_BUILDER_NAME = "nix"; 202 213 203 - GOROOT_BOOTSTRAP="${goBootstrap}/share/go"; 214 + GOROOT_BOOTSTRAP = "${goBootstrap}/share/go"; 204 215 205 216 postConfigure = '' 206 217 export GOCACHE=$TMPDIR/go-cache ··· 209 220 210 221 export PATH=$(pwd)/bin:$PATH 211 222 212 - ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 223 + ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 213 224 # Independent from host/target, CC should produce code for the building system. 214 225 # We only set it when cross-compiling. 215 226 export CC=${buildPackages.stdenv.cc}/bin/cc ··· 237 248 '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then '' 238 249 mv bin/*_*/* bin 239 250 rmdir bin/*_* 240 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 251 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 241 252 rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH} 242 253 ''} 243 254 '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then '' 244 255 rm -rf bin/*_* 245 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 256 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 246 257 rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH} 247 258 ''} 248 259 '' else "");
+34 -22
pkgs/development/compilers/go/2-dev.nix
··· 1 - { pkgs, lib, stdenv, fetchurl, fetchgit, tzdata, iana-etc, runCommand 2 - , perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation 3 - , mailcap, runtimeShell 1 + { lib 2 + , stdenv 3 + , fetchgit 4 + , tzdata 5 + , iana-etc 6 + , runCommand 7 + , perl 8 + , which 9 + , pkg-config 10 + , patch 11 + , procps 12 + , pcre 13 + , cacert 14 + , Security 15 + , Foundation 16 + , mailcap 17 + , runtimeShell 4 18 , buildPackages 5 19 , pkgsBuildTarget 6 - , fetchpatch 7 20 , callPackage 8 21 }: 9 22 10 23 let 11 - 12 - inherit (lib) optionals optionalString; 13 - 14 24 go_bootstrap = buildPackages.callPackage ./bootstrap.nix { }; 15 25 16 - goBootstrap = runCommand "go-bootstrap" {} '' 26 + goBootstrap = runCommand "go-bootstrap" { } '' 17 27 mkdir $out 18 28 cp -rf ${go_bootstrap}/* $out/ 19 29 chmod -R u+w $out ··· 42 52 version = "2021-04-13"; 43 53 44 54 src = fetchgit { 45 - url = https://go.googlesource.com/go; 55 + url = "https://go.googlesource.com/go"; 46 56 rev = "9cd52cf2a93a958e8e001aea36886e7846c91f2f"; 47 57 sha256 = "sha256:0hybm93y4i4j7bs86y7h73nc1wqnspkq75if7n1032zf9bs8sm96"; 48 58 }; ··· 50 60 # perl is used for testing go vet 51 61 nativeBuildInputs = [ perl which pkg-config patch procps ]; 52 62 buildInputs = [ cacert pcre ] 53 - ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ] 54 - ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 63 + ++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ] 64 + ++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ]; 55 65 56 - depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ]; 66 + depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ]; 57 67 58 68 hardeningDisable = [ "all" ]; 59 69 ··· 114 124 # Disable cgo lookup tests not works, they depend on resolver 115 125 rm src/net/cgo_unix_test.go 116 126 117 - '' + optionalString stdenv.isLinux '' 127 + '' + lib.optionalString stdenv.isLinux '' 118 128 # prepend the nix path to the zoneinfo files but also leave the original value for static binaries 119 129 # that run outside a nix server 120 130 sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go 121 131 122 - '' + optionalString stdenv.isAarch32 '' 132 + '' + lib.optionalString stdenv.isAarch32 '' 123 133 echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash 124 - '' + optionalString stdenv.isDarwin '' 134 + '' + lib.optionalString stdenv.isDarwin '' 125 135 substituteInPlace src/race.bash --replace \ 126 136 "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true 127 137 sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go ··· 178 188 179 189 # {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those 180 190 # to be different from CC/CXX 181 - CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 191 + CC_FOR_TARGET = 192 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 182 193 "${targetCC}/bin/${targetCC.targetPrefix}cc" 183 194 else 184 195 null; 185 - CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then 196 + CXX_FOR_TARGET = 197 + if (stdenv.buildPlatform != stdenv.targetPlatform) then 186 198 "${targetCC}/bin/${targetCC.targetPrefix}c++" 187 199 else 188 200 null; 189 201 190 - GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); 202 + GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]); 191 203 GO386 = "softfloat"; # from Arch: don't assume sse2 on i686 192 204 CGO_ENABLED = 1; 193 205 # Hopefully avoids test timeouts on Hydra ··· 197 209 # Some tests assume things like home directories and users exists 198 210 GO_BUILDER_NAME = "nix"; 199 211 200 - GOROOT_BOOTSTRAP="${goBootstrap}/share/go"; 212 + GOROOT_BOOTSTRAP = "${goBootstrap}/share/go"; 201 213 202 214 postConfigure = '' 203 215 export GOCACHE=$TMPDIR/go-cache ··· 206 218 207 219 export PATH=$(pwd)/bin:$PATH 208 220 209 - ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 221 + ${lib.optionalString (stdenv.buildPlatform != stdenv.targetPlatform) '' 210 222 # Independent from host/target, CC should produce code for the building system. 211 223 # We only set it when cross-compiling. 212 224 export CC=${buildPackages.stdenv.cc}/bin/cc ··· 234 246 '' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then '' 235 247 mv bin/*_*/* bin 236 248 rmdir bin/*_* 237 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 249 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 238 250 rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH} 239 251 ''} 240 252 '' else if (stdenv.hostPlatform != stdenv.targetPlatform) then '' 241 253 rm -rf bin/*_* 242 - ${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 254 + ${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) '' 243 255 rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH} 244 256 ''} 245 257 '' else "");
+2 -1
pkgs/development/compilers/llvm/git/default.nix
··· 21 21 release_version = "12.0.0"; 22 22 candidate = ""; # empty or "rcN" 23 23 dash-candidate = lib.optionalString (candidate != "") "-${candidate}"; 24 + rev = ""; # When using a Git commit 24 25 version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs 25 26 targetConfig = stdenv.targetPlatform.config; 26 27 27 28 src = fetchFromGitHub { 28 29 owner = "llvm"; 29 30 repo = "llvm-project"; 30 - rev = "llvmorg-${version}"; 31 + rev = if rev != "" then rev else "llvmorg-${version}"; 31 32 sha256 = "07jz8pywc2qqa1srdnqg5p2y4lx3ki1inpigarzgxc3j20r4gb58"; 32 33 }; 33 34
+70
pkgs/development/compilers/llvm/update-git.py
··· 1 + #! /usr/bin/env nix-shell 2 + #! nix-shell -i python3 -p python3 nix 3 + 4 + import csv 5 + import fileinput 6 + import json 7 + import os 8 + import re 9 + import subprocess 10 + 11 + from codecs import iterdecode 12 + from datetime import datetime 13 + from urllib.request import urlopen, Request 14 + 15 + 16 + def get_latest_chromium_build(): 17 + HISTORY_URL = 'https://omahaproxy.appspot.com/history?os=linux' 18 + print(f'GET {HISTORY_URL}') 19 + with urlopen(HISTORY_URL) as resp: 20 + builds = csv.DictReader(iterdecode(resp, 'utf-8')) 21 + for build in builds: 22 + if build['channel'] != 'dev': 23 + continue 24 + return build 25 + 26 + 27 + def get_file_revision(revision, file_path): 28 + """Fetches the requested Git revision of the given Chromium file.""" 29 + url = f'https://raw.githubusercontent.com/chromium/chromium/{revision}/{file_path}' 30 + with urlopen(url) as http_response: 31 + return http_response.read().decode() 32 + 33 + 34 + def get_commit(ref): 35 + url = f'https://api.github.com/repos/llvm/llvm-project/commits/{ref}' 36 + headers = {'Accept': 'application/vnd.github.v3+json'} 37 + request = Request(url, headers=headers) 38 + with urlopen(request) as http_response: 39 + return json.loads(http_response.read().decode()) 40 + 41 + 42 + def nix_prefetch_url(url, algo='sha256'): 43 + """Prefetches the content of the given URL.""" 44 + print(f'nix-prefetch-url {url}') 45 + out = subprocess.check_output(['nix-prefetch-url', '--type', algo, '--unpack', url]) 46 + return out.decode('utf-8').rstrip() 47 + 48 + 49 + chromium_build = get_latest_chromium_build() 50 + chromium_version = chromium_build['version'] 51 + print(f'chromiumDev version: {chromium_version}') 52 + print('Getting LLVM commit...') 53 + clang_update_script = get_file_revision(chromium_version, 'tools/clang/scripts/update.py') 54 + clang_revision = re.search(r"^CLANG_REVISION = '(.+)'$", clang_update_script, re.MULTILINE).group(1) 55 + clang_commit_short = re.search(r"llvmorg-[0-9]+-init-[0-9]+-g([0-9a-f]{8})", clang_revision).group(1) 56 + release_version = re.search(r"^RELEASE_VERSION = '(.+)'$", clang_update_script, re.MULTILINE).group(1) 57 + commit = get_commit(clang_commit_short) 58 + date = datetime.fromisoformat(commit['commit']['committer']['date'].rstrip('Z')).date().isoformat() 59 + version = f'unstable-{date}' 60 + print('Prefetching source tarball...') 61 + hash = nix_prefetch_url(f'https://github.com/llvm/llvm-project/archive/{commit["sha"]}.tar.gz') 62 + print('Updating default.nix...') 63 + default_nix = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'git/default.nix') 64 + with fileinput.FileInput(default_nix, inplace=True) as f: 65 + for line in f: 66 + result = re.sub(r'^ release_version = ".+";', f' release_version = "{release_version}";', line) 67 + result = re.sub(r'^ version = ".+";', f' version = "{version}";', line) 68 + result = re.sub(r'^ rev = ".*";', f' rev = "{commit["sha"]}";', result) 69 + result = re.sub(r'^ sha256 = ".+";', f' sha256 = "{hash}";', result) 70 + print(result, end='')
+2 -2
pkgs/development/compilers/mezzo/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir, yojson, ulex, pprint, fix, functory }: 1 + { lib, stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir, menhirLib, yojson, ulex, pprint, fix, functory }: 2 2 3 3 if lib.versionAtLeast ocaml.version "4.06" 4 4 then throw "mezzo is not available for OCaml ${ocaml.version}" ··· 21 21 sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6"; 22 22 }; 23 23 24 - buildInputs = [ ocaml findlib ocamlbuild yojson menhir ulex pprint fix functory ]; 24 + buildInputs = [ ocaml findlib ocamlbuild yojson menhir menhirLib ulex pprint fix functory ]; 25 25 26 26 # Sets warning 3 as non-fatal 27 27 prePatch = lib.optionalString (check-ocaml-version "4.02") ''
+4 -4
pkgs/development/compilers/reason/default.nix
··· 1 1 { lib, stdenv, makeWrapper, fetchFromGitHub, ocaml, findlib, dune_2 2 - , fix, menhir, merlin-extend, ppx_tools_versioned, utop, cppo 2 + , fix, menhir, menhirLib, menhirSdk, merlin-extend, ppx_tools_versioned, utop, cppo 3 3 }: 4 4 5 5 stdenv.mkDerivation rec { ··· 13 13 sha256 = "0m6ldrci1a4j0qv1cbwh770zni3al8qxsphl353rv19f6rblplhs"; 14 14 }; 15 15 16 - nativeBuildInputs = [ makeWrapper ]; 16 + nativeBuildInputs = [ makeWrapper menhir ]; 17 17 18 - propagatedBuildInputs = [ menhir merlin-extend ppx_tools_versioned ]; 18 + propagatedBuildInputs = [ menhirLib merlin-extend ppx_tools_versioned ]; 19 19 20 - buildInputs = [ ocaml findlib dune_2 cppo fix utop menhir ]; 20 + buildInputs = [ ocaml findlib dune_2 cppo fix utop menhir menhirSdk ]; 21 21 22 22 buildFlags = [ "build" ]; # do not "make tests" before reason lib is installed 23 23
+1 -2
pkgs/development/libraries/libunwind/default.nix
··· 38 38 description = "A portable and efficient API to determine the call-chain of a program"; 39 39 maintainers = with maintainers; [ orivej ]; 40 40 platforms = platforms.linux; 41 + badPlatforms = [ "riscv32-linux" "riscv64-linux" ]; 41 42 license = licenses.mit; 42 43 }; 43 - 44 - passthru.supportsHost = !stdenv.hostPlatform.isRiscV; 45 44 }
+3 -3
pkgs/development/ocaml-modules/dolmen/default.nix
··· 1 - { stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir }: 1 + { stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, menhir, menhirLib }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 name = "ocaml${ocaml.version}-dolmen-${version}"; ··· 10 10 sha256 = "1b9mf8p6mic0n76acx8x82hhgm2n40sdv0jri95im65l52223saf"; 11 11 }; 12 12 13 - buildInputs = [ ocaml findlib ocamlbuild ]; 14 - propagatedBuildInputs = [ menhir ]; 13 + buildInputs = [ ocaml findlib ocamlbuild menhir ]; 14 + propagatedBuildInputs = [ menhirLib ]; 15 15 16 16 makeFlags = [ "-C" "src" ]; 17 17
+2 -2
pkgs/development/ocaml-modules/earlybird/default.nix
··· 1 1 { lib, fetchurl, ocaml, buildDunePackage 2 - , cmdliner, dap, fmt, iter, logs, lru, lwt_ppx, lwt_react, menhir, path_glob, ppx_deriving_yojson 2 + , cmdliner, dap, fmt, iter, logs, lru, lwt_ppx, lwt_react, menhir, menhirLib, path_glob, ppx_deriving_yojson 3 3 }: 4 4 5 5 if lib.versionAtLeast ocaml.version "4.13" ··· 19 19 sha256 = "1pwzhcr3pw24ra4j4d23vz71h0psz4xkyp7b12l2wl1slxzjbrxa"; 20 20 }; 21 21 22 - buildInputs = [ cmdliner dap fmt iter logs lru lwt_ppx lwt_react menhir path_glob ppx_deriving_yojson ]; 22 + buildInputs = [ cmdliner dap fmt iter logs lru lwt_ppx lwt_react menhir menhirLib path_glob ppx_deriving_yojson ]; 23 23 24 24 meta = { 25 25 homepage = "https://github.com/hackwaly/ocamlearlybird";
+13 -13
pkgs/development/ocaml-modules/menhir/default.nix
··· 1 - { lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild 2 - , version ? if lib.versionAtLeast (lib.getVersion ocaml) "4.02" then "20190626" else "20140422" 3 - }@args: 1 + { lib, fetchFromGitLab, buildDunePackage 2 + , menhirLib, menhirSdk 3 + }: 4 4 5 - let 6 - src = fetchurl ( 7 - if version == "20140422" then { url = "http://cristal.inria.fr/~fpottier/menhir/menhir-20140422.tar.gz"; sha256 = "1ki1f2id6a14h9xpv2k8yb6px7dyw8cvwh39csyzj4qpzx7wia0d"; } 8 - else if version == "20170712" then { url = "http://gallium.inria.fr/~fpottier/menhir/menhir-20170712.tar.gz"; sha256 = "006hq3bwj81j67f2k9cgzj5wr4hai8j36925p5n3sd2j01ljsj6a"; } 9 - else if version == "20181113" then { url = "https://gitlab.inria.fr/fpottier/menhir/repository/20181113/archive.tar.gz"; sha256 = "0hl611l0gyl7b2bm7m0sk7vjz14m0i7znrnjq3gw58pylj934dx4"; } 10 - else if version == "20190626" then { url = "https://gitlab.inria.fr/fpottier/menhir/repository/20190626/archive.tar.gz"; sha256 = "0nigjnskg89knyi2zj1w211mb1pvkrwfqpz9a0qbw80k3hm8gg0h"; } 11 - else throw ("menhir: unknown version " ++ version) 12 - ); 13 - in 5 + buildDunePackage rec { 6 + pname = "menhir"; 7 + 8 + inherit (menhirLib) version src useDune2; 9 + 10 + buildInputs = [ menhirLib menhirSdk ]; 14 11 15 - import ./generic.nix (args // { inherit version src; }) 12 + meta = menhirSdk.meta // { 13 + description = "A LR(1) parser generator for OCaml"; 14 + }; 15 + }
-43
pkgs/development/ocaml-modules/menhir/generic.nix
··· 1 - { version, src, lib, stdenv, ocaml, findlib, ocamlbuild, ... }: 2 - 3 - stdenv.mkDerivation { 4 - pname = "menhir"; 5 - inherit version; 6 - 7 - inherit src; 8 - 9 - buildInputs = [ ocaml findlib ocamlbuild ]; 10 - 11 - createFindlibDestdir = true; 12 - 13 - preBuild = '' 14 - # fix makefiles. 15 - RM=$(type -p rm) 16 - CHMOD=$(type -p chmod) 17 - for f in src/Makefile demos/OMakefile* demos/Makefile* 18 - do 19 - substituteInPlace $f \ 20 - --replace /bin/rm $RM \ 21 - --replace /bin/chmod $CHMOD 22 - done 23 - 24 - export PREFIX=$out 25 - ''; 26 - 27 - meta = with lib; { 28 - homepage = "http://pauillac.inria.fr/~fpottier/menhir/"; 29 - description = "A LR(1) parser generator for OCaml"; 30 - longDescription = '' 31 - Menhir is a LR(1) parser generator for the Objective Caml programming 32 - language. That is, Menhir compiles LR(1) grammar specifications down 33 - to OCaml code. Menhir was designed and implemented by François Pottier 34 - and Yann Régis-Gianas. 35 - ''; 36 - license = with licenses; [ 37 - (if versionAtLeast version "20170418" then gpl2 else qpl) /* generator */ 38 - lgpl2 /* library */ 39 - ]; 40 - platforms = ocaml.meta.platforms or []; 41 - maintainers = with maintainers; [ maggesi ]; 42 - }; 43 - }
+29
pkgs/development/ocaml-modules/menhir/lib.nix
··· 1 + { lib, fetchFromGitLab, buildDunePackage }: 2 + 3 + buildDunePackage rec { 4 + pname = "menhirLib"; 5 + version = "20210419"; 6 + 7 + src = fetchFromGitLab { 8 + domain = "gitlab.inria.fr"; 9 + owner = "fpottier"; 10 + repo = "menhir"; 11 + rev = version; 12 + sha256 = "0jcbr7s3iwfr7xxfybs3h407g76yfp5yq5r9i0wg2ahvvbqh03ky"; 13 + }; 14 + 15 + useDune2 = true; 16 + 17 + meta = with lib; { 18 + homepage = "http://pauillac.inria.fr/~fpottier/menhir/"; 19 + description = "Runtime support library for parsers generated by Menhir"; 20 + longDescription = '' 21 + Menhir is a LR(1) parser generator for the Objective Caml programming 22 + language. That is, Menhir compiles LR(1) grammar specifications down 23 + to OCaml code. Menhir was designed and implemented by François Pottier 24 + and Yann Régis-Gianas. 25 + ''; 26 + license = with licenses; [ lgpl2Only ]; 27 + maintainers = with maintainers; [ vbgl ]; 28 + }; 29 + }
+15
pkgs/development/ocaml-modules/menhir/sdk.nix
··· 1 + { lib, fetchFromGitLab, buildDunePackage 2 + , menhirLib 3 + }: 4 + 5 + buildDunePackage rec { 6 + pname = "menhirSdk"; 7 + 8 + inherit (menhirLib) version src useDune2; 9 + 10 + meta = menhirLib.meta // { 11 + description = "Compile-time library for auxiliary tools related to Menhir"; 12 + license = with lib.licenses; [ gpl2Only ]; 13 + }; 14 + } 15 +
+3 -3
pkgs/development/ocaml-modules/mustache/default.nix
··· 1 - { lib, buildDunePackage, fetchFromGitHub, ezjsonm, menhir, ounit }: 1 + { lib, buildDunePackage, fetchFromGitHub, ezjsonm, menhir, menhirLib, ounit }: 2 2 3 3 buildDunePackage rec { 4 4 pname = "mustache"; ··· 11 11 sha256 = "19v8rk8d8lkfm2rmhdawfgadji6wa267ir5dprh4w9l1sfj8a1py"; 12 12 }; 13 13 14 - buildInputs = [ ezjsonm ]; 15 - propagatedBuildInputs = [ menhir ]; 14 + buildInputs = [ ezjsonm menhir ]; 15 + propagatedBuildInputs = [ menhirLib ]; 16 16 17 17 doCheck = true; 18 18 checkInputs = [ ounit ];
+24
pkgs/development/ocaml-modules/stdcompat/default.nix
··· 1 + { stdenv, lib, fetchurl 2 + , ocaml, findlib 3 + }: 4 + 5 + stdenv.mkDerivation rec { 6 + pname = "ocaml${ocaml.version}-stdcompat"; 7 + version = "15"; 8 + 9 + src = fetchurl { 10 + url = "https://github.com/thierry-martinez/stdcompat/releases/download/v${version}/stdcompat-${version}.tar.gz"; 11 + sha256 = "1xcwb529m4lg9cbnxa9m3x2nnl9nxzz1x5lxpvdfflg4zxl6yx2y"; 12 + }; 13 + 14 + buildInputs = [ ocaml findlib ]; 15 + 16 + configureFlags = "--libdir=$(OCAMLFIND_DESTDIR)"; 17 + 18 + meta = { 19 + homepage = "https://github.com/thierry-martinez/stdcompat"; 20 + license = lib.licenses.bsd2; 21 + maintainers = [ lib.maintainers.vbgl ]; 22 + inherit (ocaml.meta) platforms; 23 + }; 24 + }
+8
pkgs/development/python-modules/aiomultiprocess/default.nix
··· 24 24 checkInputs = [ pytestCheckHook ]; 25 25 26 26 pytestFlagsArray = [ "aiomultiprocess/tests/*.py" ]; 27 + 28 + disabledTests = [ 29 + # tests are flaky and make the whole test suite time out 30 + "test_pool_worker_exceptions" 31 + "test_pool_worker_max_tasks" 32 + "test_pool_worker_stop" 33 + ]; 34 + 27 35 pythonImportsCheck = [ "aiomultiprocess" ]; 28 36 29 37 meta = with lib; {
-7
pkgs/development/python-modules/angrop/default.nix
··· 25 25 tqdm 26 26 ]; 27 27 28 - postPatch = '' 29 - # https://github.com/angr/angrop/issues/35 30 - substituteInPlace setup.py \ 31 - --replace "packages=['angrop']," "packages=find_packages()," \ 32 - --replace "from distutils.core import setup" "from setuptools import find_packages, setup" 33 - ''; 34 - 35 28 # Tests have additional requirements, e.g., angr binaries 36 29 # cle is executing the tests with the angr binaries already and is a requirement of angr 37 30 doCheck = false;
+11 -18
pkgs/development/python-modules/pyls-black/default.nix
··· 1 - { lib, buildPythonPackage, fetchFromGitHub, fetchpatch 2 - , black, toml, pytest, python-language-server, isPy3k 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , black 5 + , toml 6 + , pytestCheckHook 7 + , python-language-server 8 + , isPy3k 3 9 }: 4 10 5 11 buildPythonPackage rec { 6 12 pname = "pyls-black"; 7 - version = "0.4.6"; 13 + version = "0.4.7"; 8 14 9 15 src = fetchFromGitHub { 10 16 owner = "rupert"; 11 17 repo = "pyls-black"; 12 18 rev = "v${version}"; 13 - sha256 = "0cjf0mjn156qp0x6md6mncs31hdpzfim769c2lixaczhyzwywqnj"; 19 + sha256 = "0bkhfnlik89j3yamr20br4wm8975f20v33wabi2nyxvj10whr5dj"; 14 20 }; 15 21 16 - # Fix test failure with black 21.4b0+ 17 - # Remove if https://github.com/rupert/pyls-black/pull/39 merged. 18 - patches = [ 19 - (fetchpatch { 20 - url = "https://github.com/rupert/pyls-black/commit/728207b540d9c25eb0d1cd96419ebfda2e257f63.patch"; 21 - sha256 = "0i3w5myhjl5lq1lpkizagnmk6m8fkn3igfyv5f2qcrn5n7f119ak"; 22 - }) 23 - ]; 24 - 25 22 disabled = !isPy3k; 26 23 27 - checkPhase = '' 28 - pytest 29 - ''; 30 - 31 - checkInputs = [ pytest ]; 24 + checkInputs = [ pytestCheckHook ]; 32 25 33 26 propagatedBuildInputs = [ black toml python-language-server ]; 34 27
+1 -1
pkgs/development/python-modules/zipstream/default.nix
··· 15 15 description = "A zip archive generator"; 16 16 homepage = "https://github.com/allanlei/python-zipstream"; 17 17 license = lib.licenses.gpl3Plus; 18 - maintainers = with lib.maintainers; [ primeos ]; 18 + maintainers = with lib.maintainers; [ ]; 19 19 }; 20 20 }
+2 -2
pkgs/development/tools/analysis/frama-c/default.nix
··· 11 11 biniou 12 12 camlzip 13 13 easy-format 14 - menhir 14 + menhirLib 15 15 mlgmpidl 16 16 num 17 17 ocamlgraph ··· 37 37 nativeBuildInputs = [ autoconf wrapGAppsHook ]; 38 38 39 39 buildInputs = with ocamlPackages; [ 40 - ncurses ocaml findlib ltl2ba ocamlgraph yojson menhir camlzip 40 + ncurses ocaml findlib ltl2ba ocamlgraph yojson menhirLib camlzip 41 41 lablgtk coq graphviz zarith apron why3 mlgmpidl doxygen 42 42 gdk-pixbuf 43 43 ];
+2 -2
pkgs/development/tools/esbuild/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "esbuild"; 5 - version = "0.12.5"; 5 + version = "0.12.6"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "evanw"; 9 9 repo = "esbuild"; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-9EVlmdolr189vdnuA01UUrcrmZ9W0FtvCcJuuSX1nLs="; 11 + sha256 = "sha256-ncRHsYxG4XVT7TUJv+VgXMsLmQ52+/dXUlgMy8QnzNc="; 12 12 }; 13 13 14 14 vendorSha256 = "sha256-2ABWPqhK2Cf4ipQH7XvRrd+ZscJhYPc3SV2cGT0apdg=";
+5 -21
pkgs/development/tools/misc/coccinelle/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "coccinelle"; 5 - version = "1.0.6"; 5 + version = "1.1.0"; 6 6 7 7 src = fetchurl { 8 - url = "http://coccinelle.lip6.fr/distrib/${pname}-${version}.tgz"; 9 - sha256 = "02g9hmwkvfl838zz690yra5jzrqjg6y6ffxkrfcsx790bhkfsll4"; 8 + url = "https://coccinelle.gitlabpages.inria.fr/website/distrib/${pname}-${version}.tar.gz"; 9 + sha256 = "0k0x4qnxzj8fymkp6y9irggcah070hj7hxq8l6ddj8ccpmjbhnsb"; 10 10 }; 11 11 12 12 buildInputs = with ocamlPackages; [ 13 13 ocaml findlib menhir 14 - ocaml_pcre pycaml 14 + ocaml_pcre parmap stdcompat 15 15 python ncurses pkg-config 16 16 ]; 17 17 18 - doCheck = !stdenv.isDarwin; 19 - 20 - # The build system builds two versions of spgen: 21 - # 'spgen' with ocamlc -custom (bytecode specially linked) 22 - # and 'spgen.opt' using ocamlopt. 23 - # I'm not sure of the intentions here, but the way 24 - # the 'spgen' binary is produced results in an 25 - # invalid/incorrect interpreter path (/lib/ld-linux*). 26 - # We could patch it, but without knowing why it's 27 - # finding the wrong path it seems safer to use 28 - # the .opt version that is built correctly. 29 - # All that said, our fix here is simple: remove 'spgen'. 30 - # The bin/spgen entrypoint is really a bash script 31 - # and will use spgen.opt if 'spgen' doesn't exist. 32 - postInstall = '' 33 - rm $out/lib/coccinelle/spgen/spgen 34 - ''; 18 + doCheck = false; 35 19 36 20 meta = { 37 21 description = "Program to apply semantic patches to C code";
+3 -5
pkgs/development/tools/misc/strace/default.nix
··· 1 1 { lib, stdenv, fetchurl, perl, libunwind, buildPackages }: 2 2 3 - # libunwind does not have the supportsHost attribute on darwin, thus 4 - # when this package is evaluated it causes an evaluation error 5 - assert stdenv.isLinux; 6 - 7 3 stdenv.mkDerivation rec { 8 4 pname = "strace"; 9 5 version = "5.12"; ··· 16 12 depsBuildBuild = [ buildPackages.stdenv.cc ]; 17 13 nativeBuildInputs = [ perl ]; 18 14 19 - buildInputs = [ perl.out ] ++ lib.optional libunwind.supportsHost libunwind; # support -k 15 + # On RISC-V platforms, LLVM's libunwind implementation is unsupported by strace. 16 + # The build will silently fall back and -k will not work on RISC-V. 17 + buildInputs = [ perl.out libunwind ]; # support -k 20 18 21 19 postPatch = "patchShebangs --host strace-graph"; 22 20
+2 -2
pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
··· 1 1 { lib, fetchurl, buildDunePackage 2 2 , ocaml, cmdliner, cppo, yojson, ppxlib 3 - , menhir 3 + , menhir, menhirLib 4 4 }: 5 5 6 6 buildDunePackage rec { ··· 14 14 }; 15 15 16 16 nativeBuildInputs = [ cppo menhir ]; 17 - buildInputs = [ cmdliner ]; 17 + buildInputs = [ cmdliner menhirLib ]; 18 18 19 19 configurePlatforms = []; 20 20 propagatedBuildInputs = [ yojson ppxlib ];
+4
pkgs/development/tools/ocaml/merlin/4.x.nix
··· 10 10 , dot-merlin-reader 11 11 , jq 12 12 , menhir 13 + , menhirLib 14 + , menhirSdk 13 15 }: 14 16 15 17 let ··· 66 68 checkInputs = [ 67 69 jq 68 70 menhir 71 + menhirLib 72 + menhirSdk 69 73 ]; 70 74 71 75 meta = with lib; {
+8
pkgs/development/tools/ocaml/ocamlformat/generic.nix
··· 58 58 uutf 59 59 fix 60 60 menhir 61 + menhirLib 62 + menhirSdk 61 63 dune-build-info 62 64 ocaml-version 63 65 # Changed since 0.16.0: ··· 75 77 uutf 76 78 fix 77 79 menhir 80 + menhirLib 81 + menhirSdk 78 82 dune-build-info 79 83 ocaml-version 80 84 # Changed since 0.16.0: ··· 93 97 uutf 94 98 fix 95 99 menhir 100 + menhirLib 101 + menhirSdk 96 102 (ppxlib.override { version = "0.18.0"; }) 97 103 dune-build-info # lib.versionAtLeast version "0.16.0" 98 104 ocaml-version # lib.versionAtLeast version "0.16.0" ··· 110 116 uutf 111 117 fix 112 118 menhir 119 + menhirLib 120 + menhirSdk 113 121 ] else [ 114 122 base 115 123 cmdliner
+10 -2
pkgs/os-specific/linux/pam_u2f/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "pam_u2f"; 5 - version = "1.1.0"; 5 + version = "1.1.1"; 6 6 7 7 src = fetchurl { 8 8 url = "https://developers.yubico.com/pam-u2f/Releases/${pname}-${version}.tar.gz"; 9 - sha256 = "01fwbrfnjkv93vvqm54jywdcxa1p7d4r32azicwnx75nxfbbzhqd"; 9 + sha256 = "12p3pkrp32vzpg7707cgx8zgvgj8iqwhy39sm761k7plqi027mmp"; 10 10 }; 11 11 12 12 nativeBuildInputs = [ pkg-config ]; ··· 14 14 15 15 preConfigure = '' 16 16 configureFlagsArray+=("--with-pam-dir=$out/lib/security") 17 + ''; 18 + 19 + # a no-op makefile to prevent building the fuzz targets 20 + postConfigure = '' 21 + cat > fuzz/Makefile <<EOF 22 + all: 23 + install: 24 + EOF 17 25 ''; 18 26 19 27 meta = with lib; {
+1 -1
pkgs/tools/audio/liquidsoap/full.nix
··· 59 59 ocamlPackages.xmlm ocamlPackages.ocaml_pcre 60 60 ocamlPackages.camomile 61 61 ocamlPackages.fdkaac 62 - ocamlPackages.srt ocamlPackages.sedlex_2 ocamlPackages.menhir 62 + ocamlPackages.srt ocamlPackages.sedlex_2 ocamlPackages.menhir ocamlPackages.menhirLib 63 63 ]; 64 64 65 65 hardeningDisable = [ "format" "fortify" ];
+2 -2
pkgs/tools/misc/plantuml/default.nix
··· 1 1 { lib, stdenv, fetchurl, makeWrapper, jre, graphviz }: 2 2 3 3 stdenv.mkDerivation rec { 4 - version = "1.2021.3"; 4 + version = "1.2021.7"; 5 5 pname = "plantuml"; 6 6 7 7 src = fetchurl { 8 8 url = "mirror://sourceforge/project/plantuml/${version}/plantuml.${version}.jar"; 9 - sha256 = "sha256-Kx2fTx71oVkAgsytl1OFBcENMnJ1ZHmg8qvYDFTSS2M="; 9 + sha256 = "sha256-2hQIwUpkxLHGG+kx8AekSKJ1qO8inL8xnko0dlLC1Kg="; 10 10 }; 11 11 12 12 nativeBuildInputs = [ makeWrapper ];
+3 -3
pkgs/tools/misc/zellij/default.nix
··· 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "zellij"; 5 - version = "0.12.1"; 5 + version = "0.13.0"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "zellij-org"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-OgpSVyXvJeRpxHWfIoJjQbbkt2RSze0IL5za3igGE6s="; 11 + sha256 = "sha256-m7rAlFMhkX6+l+OceZ/RnusdhGew+Rjp7AmZ7vo2wr0="; 12 12 }; 13 13 14 - cargoSha256 = "sha256-LgJPhwOuzlKIw5smy4WJvC0CFoylnMlx6Re7gVPtiq8="; 14 + cargoSha256 = "sha256-iTPOlbS3gWlJ8E2VB7z/kOsOJcngPGof7R5cH3Z0xk0="; 15 15 16 16 nativeBuildInputs = [ installShellFiles ]; 17 17
+1 -1
pkgs/tools/typesetting/satysfi/default.nix
··· 53 53 nativeBuildInputs = [ ruby dune_2 ]; 54 54 55 55 buildInputs = [ camlpdf otfm yojson-with-position ] ++ (with ocamlPackages; [ 56 - ocaml findlib menhir 56 + ocaml findlib menhir menhirLib 57 57 batteries camlimages core_kernel ppx_deriving uutf omd cppo re 58 58 ]); 59 59
+4 -5
pkgs/top-level/all-packages.nix
··· 13074 13074 # Does not actually depend on Qt 5 13075 13075 inherit (plasma5Packages) extra-cmake-modules; 13076 13076 13077 - coccinelle = callPackage ../development/tools/misc/coccinelle { 13078 - ocamlPackages = ocaml-ng.ocamlPackages_4_05; 13079 - }; 13077 + coccinelle = callPackage ../development/tools/misc/coccinelle { }; 13080 13078 13081 13079 cpptest = callPackage ../development/libraries/cpptest { }; 13082 13080 ··· 16825 16823 16826 16824 libutempter = callPackage ../development/libraries/libutempter { }; 16827 16825 16828 - libunwind = if stdenv.isDarwin 16829 - then darwin.libunwind 16826 + libunwind = 16827 + if stdenv.isDarwin then darwin.libunwind 16828 + else if stdenv.hostPlatform.isRiscV then llvmPackages_latest.libunwind 16830 16829 else callPackage ../development/libraries/libunwind { }; 16831 16830 16832 16831 libuv = callPackage ../development/libraries/libuv {
+6
pkgs/top-level/ocaml-packages.nix
··· 643 643 644 644 menhir = callPackage ../development/ocaml-modules/menhir { }; 645 645 646 + menhirLib = callPackage ../development/ocaml-modules/menhir/lib.nix { }; 647 + 648 + menhirSdk = callPackage ../development/ocaml-modules/menhir/sdk.nix { }; 649 + 646 650 merlin = 647 651 if lib.versionAtLeast ocaml.version "4.11" 648 652 then callPackage ../development/tools/ocaml/merlin/4.x.nix { } ··· 1168 1172 }; 1169 1173 1170 1174 ssl = callPackage ../development/ocaml-modules/ssl { }; 1175 + 1176 + stdcompat = callPackage ../development/ocaml-modules/stdcompat { }; 1171 1177 1172 1178 stdlib-shims = callPackage ../development/ocaml-modules/stdlib-shims { }; 1173 1179