From a37cb90707a2f683e112d045ced13a827f12295a Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Fri, 26 Oct 2018 23:02:34 +0200 Subject: [PATCH 001/106] kubicorn: init at 4c7f3623 --- pkgs/development/tools/kubicorn/default.nix | 26 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/tools/kubicorn/default.nix diff --git a/pkgs/development/tools/kubicorn/default.nix b/pkgs/development/tools/kubicorn/default.nix new file mode 100644 index 00000000000..fb76aed7b9e --- /dev/null +++ b/pkgs/development/tools/kubicorn/default.nix @@ -0,0 +1,26 @@ +{ stdenv, lib, buildGoPackage, fetchFromGitHub }: + +with stdenv.lib; + +buildGoPackage rec { + name = "kubicorn-${version}"; + version = "2018-10-13-${stdenv.lib.strings.substring 0 7 rev}"; + rev = "4c7f3623e9188fba43778271afe161a4facfb657"; + + src = fetchFromGitHub { + rev = rev; + owner = "kubicorn"; + repo = "kubicorn"; + sha256 = "18h5sj4lcivrwjq2hzn7c3g4mblw17zicb5nma8sh7sakwzyg1k9"; + }; + + subPackages = ["."]; + goPackagePath = "github.com/kubicorn/kubicorn"; + + meta = { + description = "Simple, cloud native infrastructure for Kubernetes"; + homepage = http://kubicorn.io/; + maintainers = with stdenv.lib.maintainers; [ offline ]; + license = stdenv.lib.licenses.asl20; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4782051575a..85e15ef7997 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8604,6 +8604,8 @@ with pkgs; kube-prompt = callPackage ../development/tools/kube-prompt { }; + kubicorn = callPackage ../development/tools/kubicorn { }; + kustomize = callPackage ../development/tools/kustomize { }; kythe = callPackage ../development/tools/kythe { }; From 4259f7575e5a715bf4001e22894ce95cdc06385a Mon Sep 17 00:00:00 2001 From: Ding Xiang Fei Date: Tue, 30 Oct 2018 15:44:00 +0800 Subject: [PATCH 002/106] use closure-info for building system tarball --- nixos/lib/make-system-tarball.nix | 20 ++++++++++++-------- nixos/lib/make-system-tarball.sh | 9 +++------ nixos/modules/profiles/docker-container.nix | 16 ++++++++++------ 3 files changed, 25 insertions(+), 20 deletions(-) diff --git a/nixos/lib/make-system-tarball.nix b/nixos/lib/make-system-tarball.nix index 846013b02d1..dee91a6ce3f 100644 --- a/nixos/lib/make-system-tarball.nix +++ b/nixos/lib/make-system-tarball.nix @@ -1,4 +1,4 @@ -{ stdenv, perl, pixz, pathsFromGraph +{ stdenv, closureInfo, pixz , # The file name of the resulting tarball fileName ? "nixos-system-${stdenv.hostPlatform.system}" @@ -29,24 +29,28 @@ , extraInputs ? [ pixz ] }: +let + symlinks = map (x: x.symlink) storeContents; + objects = map (x: x.object) storeContents; +in + stdenv.mkDerivation { name = "tarball"; builder = ./make-system-tarball.sh; - buildInputs = [ perl ] ++ extraInputs; + buildInputs = extraInputs; - inherit fileName pathsFromGraph extraArgs extraCommands compressCommand; + inherit fileName extraArgs extraCommands compressCommand; # !!! should use XML. sources = map (x: x.source) contents; targets = map (x: x.target) contents; # !!! should use XML. - objects = map (x: x.object) storeContents; - symlinks = map (x: x.symlink) storeContents; + inherit symlinks objects; - # For obtaining the closure of `storeContents'. - exportReferencesGraph = - map (x: [("closure-" + baseNameOf x.object) x.object]) storeContents; + closureInfo = closureInfo { + rootPaths = objects; + }; extension = compressionExtension; } diff --git a/nixos/lib/make-system-tarball.sh b/nixos/lib/make-system-tarball.sh index 1a52a284a25..1a0017a1799 100644 --- a/nixos/lib/make-system-tarball.sh +++ b/nixos/lib/make-system-tarball.sh @@ -3,7 +3,6 @@ source $stdenv/setup sources_=($sources) targets_=($targets) -echo $objects objects=($objects) symlinks=($symlinks) @@ -14,8 +13,6 @@ stripSlash() { if test "${res:0:1}" = /; then res=${res:1}; fi } -touch pathlist - # Add the individual files. for ((i = 0; i < ${#targets_[@]}; i++)); do stripSlash "${targets_[$i]}" @@ -25,9 +22,9 @@ done # Add the closures of the top-level store objects. +chmod +w . mkdir -p nix/store -storePaths=$(perl $pathsFromGraph closure-*) -for i in $storePaths; do +for i in $(< $closureInfo/store-paths); do cp -a "$i" "${i:1}" done @@ -35,7 +32,7 @@ done # TODO tar ruxo # Also include a manifest of the closures in a format suitable for # nix-store --load-db. -printRegistration=1 perl $pathsFromGraph closure-* > nix-path-registration +cp $closureInfo/registration nix-path-registration # Add symlinks to the top-level store objects. for ((n = 0; n < ${#objects[*]}; n++)); do diff --git a/nixos/modules/profiles/docker-container.nix b/nixos/modules/profiles/docker-container.nix index 7031d7d1d59..5d6b11498b5 100644 --- a/nixos/modules/profiles/docker-container.nix +++ b/nixos/modules/profiles/docker-container.nix @@ -15,15 +15,19 @@ in { # Create the tarball system.build.tarball = pkgs.callPackage ../../lib/make-system-tarball.nix { - contents = []; + contents = [ + { + source = "${config.system.build.toplevel}/."; + target = "./"; + } + ]; extraArgs = "--owner=0"; # Add init script to image - storeContents = [ - { object = config.system.build.toplevel + "/init"; - symlink = "/init"; - } - ] ++ (pkgs2storeContents [ pkgs.stdenv ]); + storeContents = pkgs2storeContents [ + config.system.build.toplevel + pkgs.stdenv + ]; # Some container managers like lxc need these extraCommands = "mkdir -p proc sys dev"; From 3678bc915b0d41a314b519d114300a8befac64af Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 18 Nov 2018 08:05:02 -0800 Subject: [PATCH 003/106] python36Packages.plotly: 3.3.0 -> 3.4.0 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/python3.6-plotly/versions --- pkgs/development/python-modules/plotly/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/plotly/default.nix b/pkgs/development/python-modules/plotly/default.nix index e2fb97d20d4..0b226aa8547 100644 --- a/pkgs/development/python-modules/plotly/default.nix +++ b/pkgs/development/python-modules/plotly/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "plotly"; - version = "3.3.0"; + version = "3.4.0"; src = fetchPypi { inherit pname version; - sha256 = "1bsjk4crf9p08lmgmiibmk8w8kmlrfadyly5l12zz1d330acijl1"; + sha256 = "1pq5k1b4gwdbdsb0alzgmr54zjvzf0csw5lq8s61zh5jnhfgn23y"; }; propagatedBuildInputs = [ From 918c87906c12bc43e0815eb1dadfc3eedf03b0fd Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Sun, 18 Nov 2018 16:02:42 -0600 Subject: [PATCH 004/106] lynx: 2.8.9dev.17 -> 2.8.9rel.1 https://lynx.invisible-island.net/current/CHANGES.html#index-v2.8.9rel.1 (includes notes for dev.18, dev.19, and pre.1 as well) --- pkgs/applications/networking/browsers/lynx/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/browsers/lynx/default.nix b/pkgs/applications/networking/browsers/lynx/default.nix index 6097c0e95f0..cb44e79839b 100644 --- a/pkgs/applications/networking/browsers/lynx/default.nix +++ b/pkgs/applications/networking/browsers/lynx/default.nix @@ -8,14 +8,14 @@ assert sslSupport -> openssl != null; stdenv.mkDerivation rec { name = "lynx-${version}"; - version = "2.8.9dev.17"; + version = "2.8.9rel.1"; src = fetchurl { urls = [ "ftp://ftp.invisible-island.net/lynx/tarballs/lynx${version}.tar.bz2" "https://invisible-mirror.net/archives/lynx/tarballs/lynx${version}.tar.bz2" ]; - sha256 = "1lvfsnrw5mmwrmn1m76q9mx287xwm3h5lg8sv7bcqilc0ywi2f54"; + sha256 = "15cmyyma2kz1hfaa6mwjgli8zwdzq3jv0q2cl6nwzycjfwyijzrq"; }; enableParallelBuilding = true; From b747257ca28508f93c6dd7b1546bec32a6f93938 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 18 Nov 2018 20:34:52 -0800 Subject: [PATCH 005/106] open-vm-tools: 10.3.0 -> 10.3.5 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/open-vm-tools/versions --- pkgs/applications/virtualization/open-vm-tools/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/virtualization/open-vm-tools/default.nix b/pkgs/applications/virtualization/open-vm-tools/default.nix index 49df39040db..a43e1733f06 100644 --- a/pkgs/applications/virtualization/open-vm-tools/default.nix +++ b/pkgs/applications/virtualization/open-vm-tools/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { name = "open-vm-tools-${version}"; - version = "10.3.0"; + version = "10.3.5"; src = fetchFromGitHub { owner = "vmware"; repo = "open-vm-tools"; rev = "stable-${version}"; - sha256 = "0arx4yd8c5qszfgw8rqyi65j37r46dxibmzqqxb096isxhxjymw6"; + sha256 = "10x24gkqcg9lnfxghq92nr76h40s5v3xrv0ymi9c7aqrqry404z7"; }; sourceRoot = "${src.name}/open-vm-tools"; From d03e4ffdbf9849f7e928c7a95be76aac69780c55 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 19 Nov 2018 17:18:27 +0100 Subject: [PATCH 006/106] autoPatchelfHook: Make easier to run autoPatchelf The autoPatchelf main function which is run against all of the outputs was pretty much tailored towards this specific setup-hook and was relying on $prefix to be set globally. So if you wanted to run autoPatchelf manually - let's say during buildPhase - you would have needed to run it like this: prefix=/some/directory autoPatchelf This is now more intuitive and all you need to do is run the following: autoPatchelf /some/directory Signed-off-by: aszlig --- pkgs/build-support/setup-hooks/auto-patchelf.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/setup-hooks/auto-patchelf.sh b/pkgs/build-support/setup-hooks/auto-patchelf.sh index d1ae317ff9a..59e9a933211 100644 --- a/pkgs/build-support/setup-hooks/auto-patchelf.sh +++ b/pkgs/build-support/setup-hooks/auto-patchelf.sh @@ -153,7 +153,7 @@ autoPatchelf() { # Add all shared objects of the current output path to the start of # cachedDependencies so that it's choosen first in findDependency. cachedDependencies+=( - $(find "$prefix" \! -type d \( -name '*.so' -o -name '*.so.*' \)) + $(find "$@" \! -type d \( -name '*.so' -o -name '*.so.*' \)) ) local elffile @@ -169,7 +169,7 @@ autoPatchelf() { LANG=C readelf -l "$file" | grep -q "^ *INTERP\\>" || continue fi autoPatchelfFile "$file" - done < <(find "$prefix" -type f -print0) + done < <(find "$@" -type f -print0) } # XXX: This should ultimately use fixupOutputHooks but we currently don't have @@ -181,5 +181,5 @@ autoPatchelf() { # behaviour as fixupOutputHooks because the setup hook for patchelf is run in # fixupOutput and the postFixup hook runs later. postFixupHooks+=( - 'for output in $outputs; do prefix="${!output}" autoPatchelf; done' + 'autoPatchelf $(for output in $outputs; do echo "${!output}"; done)' ) From e4fbb244ee313a3003144e8e148341c9e5c67295 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 19 Nov 2018 17:36:22 +0100 Subject: [PATCH 007/106] autoPatchelfHook: Allow to prevent automatic run If you want to only run autoPatchelf on a specific path and leave everything else alone, we now have a $dontAutoPatchelf environment variable, which causes the postFixup hook to not run at all. The name "dontAutoPatchelf" probably is a bit weird in conjunction with putting "autoPatchelfHook" in nativeBuildInputs, but unless someone comes up with a better name I keep it that way because it's consistent with all the other dontStrip, dontPatchShebangs, dontPatchELF and whatnot. A specific example where this is needed is when building the Android SDK emulator, which contains a few ARM binaries in subdirectories that should not be patched. If we were to run autoPatchelf on all outputs unconditionally we'd run into errors because some ARM libraries couldn't be found. Signed-off-by: aszlig --- pkgs/build-support/setup-hooks/auto-patchelf.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/setup-hooks/auto-patchelf.sh b/pkgs/build-support/setup-hooks/auto-patchelf.sh index 59e9a933211..62348d71ed0 100644 --- a/pkgs/build-support/setup-hooks/auto-patchelf.sh +++ b/pkgs/build-support/setup-hooks/auto-patchelf.sh @@ -180,6 +180,11 @@ autoPatchelf() { # So what we do here is basically run in postFixup and emulate the same # behaviour as fixupOutputHooks because the setup hook for patchelf is run in # fixupOutput and the postFixup hook runs later. -postFixupHooks+=( - 'autoPatchelf $(for output in $outputs; do echo "${!output}"; done)' -) +postFixupHooks+=(' + if [ -z "$dontAutoPatchelf" ]; then + autoPatchelf $(for output in $outputs; do + [ -e "${!output}" ] || continue + echo "${!output}" + done) + fi +') From 3ca35ce0b2dd1adb11044e03a816c77a72f7135d Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 19 Nov 2018 23:23:38 +0100 Subject: [PATCH 008/106] autoPatchelfHook: Add --no-recurse flag This is to be used with the autoPatchelf command and allows to only patch a specific file or directory without recursing into subdirectories. Apart from being able to run the command in a standalone way, as detailled in the previous commit this is also needed for the Android SDK emulator, because according to @svanderburg there are subdirectories we don't want to patch. The reason why I didn't use GNU getopt is that it might not be available on all operating systems and the getopts bash builtin doesn't support long arguments. Apart from that, the implementation for recognizing the flag is pretty trivial and it's also using bash builtins only, so if we want to do something really fancy someday, we can still change it. Signed-off-by: aszlig --- .../setup-hooks/auto-patchelf.sh | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/setup-hooks/auto-patchelf.sh b/pkgs/build-support/setup-hooks/auto-patchelf.sh index 62348d71ed0..43b1679670d 100644 --- a/pkgs/build-support/setup-hooks/auto-patchelf.sh +++ b/pkgs/build-support/setup-hooks/auto-patchelf.sh @@ -148,12 +148,32 @@ autoPatchelfFile() { } autoPatchelf() { + local -a findOpts=() + + while [ $# -gt 0 ]; do + case "$1" in + --) shift; break;; + --no-recurse) shift; findOpts+=("-maxdepth" 1);; + --*) + echo "autoPatchelf: ERROR: Invalid command line" \ + "argument: $1" >&2 + return 1;; + *) break;; + esac + done + + if [ $# -eq 0 ]; then + echo "autoPatchelf: No paths to patch specified." >&2 + return 1 + fi + echo "automatically fixing dependencies for ELF files" >&2 # Add all shared objects of the current output path to the start of # cachedDependencies so that it's choosen first in findDependency. cachedDependencies+=( - $(find "$@" \! -type d \( -name '*.so' -o -name '*.so.*' \)) + $(find "$@" "${findOpts[@]}" \! -type d \ + \( -name '*.so' -o -name '*.so.*' \)) ) local elffile @@ -169,7 +189,7 @@ autoPatchelf() { LANG=C readelf -l "$file" | grep -q "^ *INTERP\\>" || continue fi autoPatchelfFile "$file" - done < <(find "$@" -type f -print0) + done < <(find "$@" "${findOpts[@]}" -type f -print0) } # XXX: This should ultimately use fixupOutputHooks but we currently don't have @@ -182,7 +202,7 @@ autoPatchelf() { # fixupOutput and the postFixup hook runs later. postFixupHooks+=(' if [ -z "$dontAutoPatchelf" ]; then - autoPatchelf $(for output in $outputs; do + autoPatchelf -- $(for output in $outputs; do [ -e "${!output}" ] || continue echo "${!output}" done) From 503b41b9b2d726f10372e3daac713cc2042b8cf0 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 19 Nov 2018 23:33:44 +0100 Subject: [PATCH 009/106] doc/stdenv: Document autoPatchelfHook changes First of all, this makes the existing documentation a bit more clear on what autoPatchelfHook is all about, because after discussing with @svanderburg - who wrote a similar implementation - the rationale about autoPatchelfHook wasn't very clear in the documentation. I also added the recent changes around being able to use autoPatchelf manually and the new --no-recurse flag. Signed-off-by: aszlig --- doc/stdenv.xml | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/doc/stdenv.xml b/doc/stdenv.xml index 9ed9a448c61..e1e8090dcb8 100644 --- a/doc/stdenv.xml +++ b/doc/stdenv.xml @@ -2421,12 +2421,31 @@ addEnvHooks "$hostOffset" myBashFunction This is a special setup hook which helps in packaging proprietary software in that it automatically tries to find missing shared library - dependencies of ELF files. All packages within the - runtimeDependencies environment variable are - unconditionally added to executables, which is useful for programs that - use - dlopen - 3 to load libraries at runtime. + dependencies of ELF files based on the given + buildInputs and nativeBuildInputs. + + + You can also specify a runtimeDependencies environment + variable which lists dependencies that are unconditionally added to all + executables. + + + This is useful for programs that use + dlopen + 3 + to load libraries at runtime. + + + In certain situations you may want to run the main command + (autoPatchelf) of the setup hook on a file or a set + of directories instead of unconditionally patching all outputs. This + can be done by setting the dontAutoPatchelf environment + variable to a non-empty value. + + + The autoPatchelf command also recognizes a + --no-recurse command line flag, + which prevents it from recursing into subdirectories. From 8e8f692e22b16176fa1ba83adfdfea09c49d0dbf Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 13:12:02 +0100 Subject: [PATCH 010/106] gitlab-shell: move to pkgs/applications/version-management/gitlab --- .../version-management/{ => gitlab}/gitlab-shell/default.nix | 0 .../{ => gitlab}/gitlab-shell/remove-hardcoded-locations.patch | 0 pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/applications/version-management/{ => gitlab}/gitlab-shell/default.nix (100%) rename pkgs/applications/version-management/{ => gitlab}/gitlab-shell/remove-hardcoded-locations.patch (100%) diff --git a/pkgs/applications/version-management/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix similarity index 100% rename from pkgs/applications/version-management/gitlab-shell/default.nix rename to pkgs/applications/version-management/gitlab/gitlab-shell/default.nix diff --git a/pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch b/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch similarity index 100% rename from pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch rename to pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 719ff9a5d6b..7e1a9c1081b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2880,7 +2880,7 @@ with pkgs; gitlab-runner = callPackage ../development/tools/continuous-integration/gitlab-runner { }; - gitlab-shell = callPackage ../applications/version-management/gitlab-shell { }; + gitlab-shell = callPackage ../applications/version-management/gitlab/gitlab-shell { }; gitlab-workhorse = callPackage ../applications/version-management/gitlab-workhorse { }; From cb79c1e60bab5dca577d736a777d3758cec2ab15 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 13:17:53 +0100 Subject: [PATCH 011/106] gitaly: move to pkgs/applications/version-management/gitlab --- .../applications/version-management/{ => gitlab}/gitaly/Gemfile | 0 .../version-management/{ => gitlab}/gitaly/Gemfile.lock | 0 .../version-management/{ => gitlab}/gitaly/default.nix | 0 .../version-management/{ => gitlab}/gitaly/gemset.nix | 0 pkgs/top-level/all-packages.nix | 2 +- 5 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/applications/version-management/{ => gitlab}/gitaly/Gemfile (100%) rename pkgs/applications/version-management/{ => gitlab}/gitaly/Gemfile.lock (100%) rename pkgs/applications/version-management/{ => gitlab}/gitaly/default.nix (100%) rename pkgs/applications/version-management/{ => gitlab}/gitaly/gemset.nix (100%) diff --git a/pkgs/applications/version-management/gitaly/Gemfile b/pkgs/applications/version-management/gitlab/gitaly/Gemfile similarity index 100% rename from pkgs/applications/version-management/gitaly/Gemfile rename to pkgs/applications/version-management/gitlab/gitaly/Gemfile diff --git a/pkgs/applications/version-management/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock similarity index 100% rename from pkgs/applications/version-management/gitaly/Gemfile.lock rename to pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock diff --git a/pkgs/applications/version-management/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix similarity index 100% rename from pkgs/applications/version-management/gitaly/default.nix rename to pkgs/applications/version-management/gitlab/gitaly/default.nix diff --git a/pkgs/applications/version-management/gitaly/gemset.nix b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix similarity index 100% rename from pkgs/applications/version-management/gitaly/gemset.nix rename to pkgs/applications/version-management/gitlab/gitaly/gemset.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7e1a9c1081b..9785302321b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2884,7 +2884,7 @@ with pkgs; gitlab-workhorse = callPackage ../applications/version-management/gitlab-workhorse { }; - gitaly = callPackage ../applications/version-management/gitaly { }; + gitaly = callPackage ../applications/version-management/gitlab/gitaly { }; gitstats = callPackage ../applications/version-management/gitstats { }; From d768e3967fd02771e1c428bbd239cd3b344ff729 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 13:18:43 +0100 Subject: [PATCH 012/106] gitlab-workhorse: move to pkgs/applications/version-management/gitlab --- .../{ => gitlab}/gitlab-workhorse/default.nix | 0 .../{ => gitlab}/gitlab-workhorse/deterministic-build.patch | 0 .../{ => gitlab}/gitlab-workhorse/remove-hardcoded-paths.patch | 0 pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/applications/version-management/{ => gitlab}/gitlab-workhorse/default.nix (100%) rename pkgs/applications/version-management/{ => gitlab}/gitlab-workhorse/deterministic-build.patch (100%) rename pkgs/applications/version-management/{ => gitlab}/gitlab-workhorse/remove-hardcoded-paths.patch (100%) diff --git a/pkgs/applications/version-management/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix similarity index 100% rename from pkgs/applications/version-management/gitlab-workhorse/default.nix rename to pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix diff --git a/pkgs/applications/version-management/gitlab-workhorse/deterministic-build.patch b/pkgs/applications/version-management/gitlab/gitlab-workhorse/deterministic-build.patch similarity index 100% rename from pkgs/applications/version-management/gitlab-workhorse/deterministic-build.patch rename to pkgs/applications/version-management/gitlab/gitlab-workhorse/deterministic-build.patch diff --git a/pkgs/applications/version-management/gitlab-workhorse/remove-hardcoded-paths.patch b/pkgs/applications/version-management/gitlab/gitlab-workhorse/remove-hardcoded-paths.patch similarity index 100% rename from pkgs/applications/version-management/gitlab-workhorse/remove-hardcoded-paths.patch rename to pkgs/applications/version-management/gitlab/gitlab-workhorse/remove-hardcoded-paths.patch diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9785302321b..04cdcd74cb6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2882,7 +2882,7 @@ with pkgs; gitlab-shell = callPackage ../applications/version-management/gitlab/gitlab-shell { }; - gitlab-workhorse = callPackage ../applications/version-management/gitlab-workhorse { }; + gitlab-workhorse = callPackage ../applications/version-management/gitlab/gitlab-workhorse { }; gitaly = callPackage ../applications/version-management/gitlab/gitaly { }; From 8b51e837b993d3b8ed3165c4245297b72f032b68 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 13:22:50 +0100 Subject: [PATCH 013/106] gitlab-workhorse: drop deterministic-build.patch we already set VERSION in makeFlags below. --- .../gitlab/gitlab-workhorse/default.nix | 2 +- .../gitlab/gitlab-workhorse/deterministic-build.patch | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) delete mode 100644 pkgs/applications/version-management/gitlab/gitlab-workhorse/deterministic-build.patch diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix index 3fab965bf54..956515897a6 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix +++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { buildInputs = [ git go ]; - patches = [ ./remove-hardcoded-paths.patch ./deterministic-build.patch ]; + patches = [ ./remove-hardcoded-paths.patch ]; makeFlags = [ "PREFIX=$(out)" "VERSION=${version}" ]; diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/deterministic-build.patch b/pkgs/applications/version-management/gitlab/gitlab-workhorse/deterministic-build.patch deleted file mode 100644 index da6dc5493ac..00000000000 --- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/deterministic-build.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/Makefile 2018-10-08 12:45:15.206269937 +0200 -+++ b/Makefile 2018-10-08 12:45:24.435366307 +0200 -@@ -6,7 +6,7 @@ - BIN_BUILD_DIR := $(TARGET_DIR)/bin - PKG_BUILD_DIR := $(TARGET_DIR)/src/$(PKG) - COVERAGE_DIR := $(TARGET_DIR)/cover --VERSION := $(shell git describe)-$(shell date -u +%Y%m%d.%H%M%S) -+VERSION := 6.1.1 - GOBUILD := go build -ldflags "-X main.Version=$(VERSION)" - EXE_ALL := gitlab-zip-cat gitlab-zip-metadata gitlab-workhorse - INSTALL := install From 3233efb33be2a1a48419af894e91d79a2704b6cf Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 14:47:18 +0100 Subject: [PATCH 014/106] gitlab-workhorse: rename srcs attribute to src --- .../version-management/gitlab/gitlab-workhorse/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix index 956515897a6..548e34bb458 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix +++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { version = "7.0.0"; - srcs = fetchFromGitLab { + src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitlab-workhorse"; rev = "v${version}"; From 6d4643243cf6587d058105349d11175ead2b5d26 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 15:01:55 +0100 Subject: [PATCH 015/106] gitlab: add update.py script --- .../version-management/gitlab/update.py | 228 ++++++++++++++++++ 1 file changed, 228 insertions(+) create mode 100755 pkgs/applications/version-management/gitlab/update.py diff --git a/pkgs/applications/version-management/gitlab/update.py b/pkgs/applications/version-management/gitlab/update.py new file mode 100755 index 00000000000..02b173cc285 --- /dev/null +++ b/pkgs/applications/version-management/gitlab/update.py @@ -0,0 +1,228 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i python3 -p bundix common-updater-scripts nix nix-prefetch-git python3 python3Packages.requests python3Packages.lxml python3Packages.click python3Packages.click-log + +import click +import click_log +import os +import re +import logging +import subprocess +import json +import pathlib +from typing import Iterable + +import requests +from xml.etree import ElementTree + +logger = logging.getLogger(__name__) + + +class GitLabRepo: + def __init__(self, owner: str, repo: str): + self.owner = owner + self.repo = repo + + @property + def url(self): + return f"https://gitlab.com/{self.owner}/{self.repo}" + + @property + def tags(self) -> Iterable[str]: + r = requests.get(self.url + "/tags?format=atom", stream=True) + + tree = ElementTree.fromstring(r.content) + return sorted((e.text for e in tree.findall( + '{http://www.w3.org/2005/Atom}entry/{http://www.w3.org/2005/Atom}title')), reverse=True) + + def get_git_hash(self, rev: str): + out = subprocess.check_output(['nix-prefetch-git', self.url, rev]) + j = json.loads(out) + return j['sha256'] + + def get_deb_url(self, flavour: str, version: str, arch: str = 'amd64') -> str: + """ + gitlab builds debian packages, which we currently need as we don't build the frontend on our own + this returns the url of a given flavour, version and arch + :param flavour: 'ce' or 'ee' + :param version: a version, without 'v' prefix and '-ee' suffix + :param arch: amd64 + :return: url of the debian package + """ + if self.owner != "gitlab-org" or self.repo not in ['gitlab-ce', 'gitlab-ee']: + raise Exception(f"don't know how to get deb_url for {self.url}") + return f"https://packages.gitlab.com/gitlab/gitlab-{flavour}/packages" + \ + f"/debian/stretch/gitlab-{flavour}_{version}-{flavour}.0_{arch}.deb/download.deb" + + def get_deb_hash(self, flavour: str, version: str) -> str: + out = subprocess.check_output(['nix-prefetch-url', self.get_deb_url(flavour, version)]) + return out.decode('utf-8').strip() + + @staticmethod + def rev2version(tag: str) -> str: + """ + normalize a tag to a version number. + This obviously isn't very smart if we don't pass something that looks like a tag + :param tag: the tag to normalize + :return: a normalized version number + """ + # strip v prefix + version = re.sub(r"^v", '', tag) + # strip -ee suffix + return re.sub(r"-ee$", '', version) + + def get_file(self, filepath, rev): + """ + returns file contents at a given rev + :param filepath: the path to the file, relative to the repo root + :param rev: the rev to fetch at + :return: + """ + return requests.get(self.url + f"/raw/{rev}/{filepath}").text + + def get_data(self, rev, flavour): + version = self.rev2version(rev) + + passthru = {v: self.get_file(v, rev).strip() for v in ['GITALY_SERVER_VERSION', 'GITLAB_PAGES_VERSION', + 'GITLAB_SHELL_VERSION', 'GITLAB_WORKHORSE_VERSION']} + return dict(version=self.rev2version(rev), + repo_hash=self.get_git_hash(rev), + deb_hash=self.get_deb_hash(flavour, version), + deb_url=self.get_deb_url(flavour, version), + owner=self.owner, + repo=self.repo, + rev=rev, + passthru=passthru) + + +def _flavour2gitlabrepo(flavour: str): + if flavour not in ['ce', 'ee']: + raise Exception(f"unknown gitlab flavour: {flavour}, needs to be ce or ee") + + owner = 'gitlab-org' + repo = 'gitlab-' + flavour + + return GitLabRepo(owner, repo) + + +def _update_data_json(filename: str, repo: GitLabRepo, rev: str, flavour: str): + flavour_data = repo.get_data(rev, flavour) + + if not os.path.exists(filename): + with open(filename, 'w') as f: + json.dump({flavour: flavour_data}, f, indent=2) + else: + with open(filename, 'r+') as f: + data = json.load(f) + data[flavour] = flavour_data + f.seek(0) + json.dump(data, f, indent=2) + + +def _get_data_json(): + data_file_path = pathlib.Path(__file__).parent / 'data.json' + with open(data_file_path, 'r') as f: + return json.load(f) + + +def _call_update_source_version(pkg, version): + """calls update-source-version from nixpkgs root dir""" + nixpkgs_path = pathlib.Path(__file__).parent / '../../../../' + return subprocess.check_output(['update-source-version', pkg, version], cwd=nixpkgs_path) + + +@click_log.simple_verbosity_option(logger) +@click.group() +def cli(): + pass + + +@cli.command('update-data') +@click.option('--rev', default='latest', help='The rev to use, \'latest\' points to the latest (stable) tag') +@click.argument('flavour') +def update_data(rev: str, flavour: str): + """Update data.nix for a selected flavour""" + r = _flavour2gitlabrepo(flavour) + + if rev == 'latest': + # filter out pre and re releases + rev = next(filter(lambda x: not ('rc' in x or x.endswith('pre')), r.tags)) + logger.debug(f"Using rev {rev}") + + version = r.rev2version(rev) + logger.debug(f"Using version {version}") + + data_file_path = pathlib.Path(__file__).parent / 'data.json' + + _update_data_json(filename=data_file_path.as_posix(), + repo=r, + rev=rev, + flavour=flavour) + + +@cli.command('update-rubyenv') +@click.argument('flavour') +def update_rubyenv(flavour): + """Update rubyEnv-${flavour}""" + if flavour not in ['ce', 'ee']: + raise Exception(f"unknown gitlab flavour: {flavour}, needs to be ce or ee") + + r = _flavour2gitlabrepo(flavour) + rubyenv_dir = pathlib.Path(__file__).parent / f"rubyEnv-{flavour}" + + # load rev from data.json + data = _get_data_json() + rev = data[flavour]['rev'] + + for fn in ['Gemfile.lock', 'Gemfile']: + with open(rubyenv_dir / fn, 'w') as f: + f.write(r.get_file(fn, rev)) + + subprocess.check_output(['bundix'], cwd=rubyenv_dir) + + +@cli.command('update-gitaly') +def update_gitaly(): + """Update gitaly""" + data = _get_data_json() + gitaly_server_version = data['ce']['passthru']['GITALY_SERVER_VERSION'] + r = GitLabRepo('gitlab-org', 'gitaly') + rubyenv_dir = pathlib.Path(__file__).parent / 'gitaly' + + for fn in ['Gemfile.lock', 'Gemfile']: + with open(rubyenv_dir / fn, 'w') as f: + f.write(r.get_file(f"ruby/{fn}", f"v{gitaly_server_version}")) + + subprocess.check_output(['bundix'], cwd=rubyenv_dir) + _call_update_source_version('gitaly', gitaly_server_version) + + +@cli.command('update-gitlab-shell') +def update_gitlab_shell(): + """Update gitlab-shell""" + data = _get_data_json() + gitlab_shell_version = data['ce']['passthru']['GITLAB_SHELL_VERSION'] + _call_update_source_version('gitlab-shell', gitlab_shell_version) + + +@cli.command('update-gitlab-workhorse') +def update_gitlab_workhorse(): + """Update gitlab-shell""" + data = _get_data_json() + gitlab_workhorse_version = data['ce']['passthru']['GITLAB_WORKHORSE_VERSION'] + _call_update_source_version('gitlab-workhorse', gitlab_workhorse_version) + + +@cli.command('update-all') +@click.pass_context +def update_all(ctx): + """Update gitlab ce and ee data.nix and rubyenvs to the latest stable release""" + for flavour in ['ce', 'ee']: + ctx.invoke(update_data, rev='latest', flavour=flavour) + ctx.invoke(update_rubyenv, flavour=flavour) + ctx.invoke(update_gitaly) + ctx.invoke(update_gitlab_shell) + ctx.invoke(update_gitlab_workhorse) + + +if __name__ == '__main__': + cli() From 50daffc4b828894e076c190fbd88bac19148b4f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Fri, 23 Nov 2018 15:40:10 +0000 Subject: [PATCH 016/106] nixos/docker-image: add example usage --- nixos/modules/virtualisation/docker-image.nix | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/nixos/modules/virtualisation/docker-image.nix b/nixos/modules/virtualisation/docker-image.nix index 2f304094d55..baac3a35a78 100644 --- a/nixos/modules/virtualisation/docker-image.nix +++ b/nixos/modules/virtualisation/docker-image.nix @@ -17,3 +17,41 @@ # Socket activated ssh presents problem in Docker. services.openssh.startWhenNeeded = false; } + +# Example usage: +# +## default.nix +# let +# nixos = import { +# configuration = ./configuration.nix; +# system = "x86_64-linux"; +# }; +# in +# nixos.config.system.build.tarball +# +## configuration.nix +# { pkgs, config, lib, ... }: +# { +# imports = [ +# +# +# ]; +# +# documentation.doc.enable = false; +# +# environment.systemPackages = with pkgs; [ +# bashInteractive +# cacert +# nix +# ]; +# } +# +## Run +# Build the tarball: +# $ nix-build default.nix +# Load into docker: +# $ docker import result/tarball/nixos-system-*.tar.xz nixos-docker +# Boots into systemd +# $ docker run --privileged -it nixos-docker /init +# Log into the container +# $ docker exec -it /run/current-system/sw/bin/bash From 625e66d879fab8a771e1635185be8f69b785f638 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 15:03:02 +0100 Subject: [PATCH 017/106] gitlab: 11.4.4 -> 11.5.0, add data.json, make default.nix use it --- .../version-management/gitlab/data.json | 32 +++++++++++++++++ .../version-management/gitlab/default.nix | 34 ++++++++----------- 2 files changed, 46 insertions(+), 20 deletions(-) create mode 100644 pkgs/applications/version-management/gitlab/data.json diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json new file mode 100644 index 00000000000..e2be6fb2a90 --- /dev/null +++ b/pkgs/applications/version-management/gitlab/data.json @@ -0,0 +1,32 @@ +{ + "ce": { + "version": "11.5.0", + "repo_hash": "0cjkkap3n9g9zahrxk99a330ahyb6cvx97dsnrxcdsn0cbrsxsrb", + "deb_hash": "0kn7mg1lk4gvc3x76z4rbh0j03b0wk6x1p5938wx8sc50k0bgrcp", + "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.5.0-ce.0_amd64.deb/download.deb", + "owner": "gitlab-org", + "repo": "gitlab-ce", + "rev": "v11.5.0", + "passthru": { + "GITALY_SERVER_VERSION": "0.129.0", + "GITLAB_PAGES_VERSION": "1.3.0", + "GITLAB_SHELL_VERSION": "8.4.1", + "GITLAB_WORKHORSE_VERSION": "7.1.0" + } + }, + "ee": { + "version": "11.5.0", + "repo_hash": "1s2jr7vhbpklpcfjxgxnmq0zq14hh2aa6akdsb7ld7fj5lmzp00z", + "deb_hash": "108mgmlf947h200qrwg71ilhq5ihr4awxns6lqs2wa90ph9yq25c", + "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.5.0-ee.0_amd64.deb/download.deb", + "owner": "gitlab-org", + "repo": "gitlab-ee", + "rev": "v11.5.0-ee", + "passthru": { + "GITALY_SERVER_VERSION": "0.129.0", + "GITLAB_PAGES_VERSION": "1.3.0", + "GITLAB_SHELL_VERSION": "8.4.1", + "GITLAB_WORKHORSE_VERSION": "7.1.0" + } + } +} \ No newline at end of file diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix index c1c4d20feac..2ffe1141b5a 100644 --- a/pkgs/applications/version-management/gitlab/default.nix +++ b/pkgs/applications/version-management/gitlab/default.nix @@ -11,32 +11,22 @@ let groups = [ "default" "unicorn" "ed25519" "metrics" ]; }; - version = "11.4.4"; + flavour = if gitlabEnterprise then "ee" else "ce"; + data = (builtins.fromJSON (builtins.readFile ./data.json)).${flavour}; - sources = if gitlabEnterprise then { - gitlabDeb = fetchurl { - url = "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_${version}-ee.0_amd64.deb/download.deb"; - sha256 = "15lpcdjcw6lpmzlhqnpd6pgaxh7wvx2mldjd1vqr414r4bcnhgy4"; - }; + version = data.version; + sources = { gitlab = fetchFromGitLab { - owner = "gitlab-org"; - repo = "gitlab-ee"; - rev = "v${version}-ee"; - sha256 = "046hchr7q4jnx3j4yxg3rdixfzlva35al3ci26pf9vxrbbl5y8cg"; + owner = data.owner; + repo = data.repo; + rev = data.rev; + sha256 = data.repo_hash; }; - } else { gitlabDeb = fetchurl { - url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_${version}-ce.0_amd64.deb/download.deb"; - sha256 = "02p7azyjgb984bk491q6f4zk1mikbcd38rif08kl07bjjzzkir81"; - }; - gitlab = fetchFromGitLab { - owner = "gitlab-org"; - repo = "gitlab-ce"; - rev = "v${version}"; - sha256 = "1hq9iyp0xrxwmncn61ja3pdj9h2hmdy1l63d1ic3r1dyacybaf2g"; + url = data.deb_url; + sha256 = data.deb_hash; }; }; - in stdenv.mkDerivation rec { @@ -101,6 +91,10 @@ stdenv.mkDerivation rec { passthru = { inherit rubyEnv; ruby = rubyEnv.wrappedRuby; + GITALY_SERVER_VERSION = data.passthru.GITALY_SERVER_VERSION; + GITLAB_PAGES_VERSION = data.passthru.GITLAB_PAGES_VERSION; + GITLAB_SHELL_VERSION = data.passthru.GITLAB_SHELL_VERSION; + GITLAB_WORKHORSE_VERSION = data.passthru.GITLAB_WORKHORSE_VERSION; }; meta = with lib; { From 293a631081baf9a5973e2583f4602512bfcb6c5f Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 15:29:38 +0100 Subject: [PATCH 018/106] gitlab-shell: 8.3.3 -> 8.4.1 --- .../gitlab/gitlab-shell/default.nix | 4 +- .../remove-hardcoded-locations.patch | 42 +++++++++++++------ 2 files changed, 32 insertions(+), 14 deletions(-) diff --git a/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix index 69c4b9a255e..c9f21047e5b 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix +++ b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix @@ -1,14 +1,14 @@ { stdenv, ruby, bundler, fetchFromGitLab, go }: stdenv.mkDerivation rec { - version = "8.3.3"; + version = "8.4.1"; name = "gitlab-shell-${version}"; src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitlab-shell"; rev = "v${version}"; - sha256 = "1qapw0yvlw1nxjik7jpbbbl3yx299sfvdx67zsd5ai7bhk1gd8xl"; + sha256 = "00jzrpdfqgrba2qi5ngc0g07p7gmip7my563hw542gg8l88d27xq"; }; buildInputs = [ ruby bundler go ]; diff --git a/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch b/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch index 38181399eec..6d29f5f9e6c 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch +++ b/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch @@ -1,23 +1,41 @@ diff --git a/go/internal/config/config.go b/go/internal/config/config.go -index c57b4de..88cfc95 100644 +index 435cb29..078c1df 100644 --- a/go/internal/config/config.go +++ b/go/internal/config/config.go -@@ -27,7 +27,7 @@ func New() (*Config, error) { - } - cfg.RootDir = dir +@@ -2,7 +2,6 @@ package config -- configBytes, err := ioutil.ReadFile(path.Join(cfg.RootDir, configFile)) -+ configBytes, err := ioutil.ReadFile("/run/gitlab/shell-config.yml") - if err != nil { - return nil, err - } + import ( + "io/ioutil" +- "os" + "path" + + yaml "gopkg.in/yaml.v2" +@@ -26,16 +25,13 @@ type Config struct { + } + + func New() (*Config, error) { +- dir, err := os.Getwd() +- if err != nil { +- return nil, err +- } ++ dir := "/run/gitlab" + + return NewFromDir(dir) + } + + func NewFromDir(dir string) (*Config, error) { +- return newFromFile(path.Join(dir, configFile)) ++ return newFromFile(path.Join(dir, "shell-config.yml")) + } + + func newFromFile(filename string) (*Config, error) { diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb -index 1452f95..2b40327 100644 +index 57c70f5..700569b 100644 --- a/lib/gitlab_shell.rb +++ b/lib/gitlab_shell.rb -@@ -180,7 +180,8 @@ class GitlabShell - end +@@ -187,7 +187,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength + args = [executable, gitaly_address, json_args] # We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is. - Kernel.exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH) + # Except we don't, because we're already in the right directory on nixos! From a33622e4d424e29609b8161c63a578f20ae19506 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 15:31:53 +0100 Subject: [PATCH 019/106] gitlab-workhorse: 7.0.0 -> 7.1.0 --- .../version-management/gitlab/gitlab-workhorse/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix index 548e34bb458..e77dbc323a3 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix +++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "gitlab-workhorse-${version}"; - version = "7.0.0"; + version = "7.1.0"; src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitlab-workhorse"; rev = "v${version}"; - sha256 = "1mmfb7h5sbva2kv9h9cxfg7dyksxrwwikq7jwggfawqaadzwm677"; + sha256 = "1jq28z2kf58wnbv8jkwfx2bm8ki22hpm9ssdy2ymza22gq0zx00g"; }; buildInputs = [ git go ]; From 2f2dce92f2ad2d0e9edc8f264fb07ee79e49a3b9 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 16:09:13 +0100 Subject: [PATCH 020/106] update.py: lazy workaround for wrong meta.position on go packages --- pkgs/applications/version-management/gitlab/update.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/version-management/gitlab/update.py b/pkgs/applications/version-management/gitlab/update.py index 02b173cc285..765f984fba5 100755 --- a/pkgs/applications/version-management/gitlab/update.py +++ b/pkgs/applications/version-management/gitlab/update.py @@ -193,7 +193,13 @@ def update_gitaly(): f.write(r.get_file(f"ruby/{fn}", f"v{gitaly_server_version}")) subprocess.check_output(['bundix'], cwd=rubyenv_dir) - _call_update_source_version('gitaly', gitaly_server_version) + # currently broken, as `gitaly.meta.position` returns + # pkgs/development/go-modules/generic/default.nix + # so update-source-version doesn't know where to update hashes + # _call_update_source_version('gitaly', gitaly_server_version) + gitaly_hash = r.get_git_hash(f"v{gitaly_server_version}") + click.echo(f"Please update gitaly/default.nix to version {gitaly_server_version} and hash {gitaly_hash}") + @cli.command('update-gitlab-shell') From 63f25471cbccc9e2f574a2cb76a761cd846d2996 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 16:09:35 +0100 Subject: [PATCH 021/106] gitaly: 0.125.1 -> 0.129.0 --- .../version-management/gitlab/gitaly/Gemfile | 17 +- .../gitlab/gitaly/Gemfile.lock | 127 ++++---- .../gitlab/gitaly/default.nix | 4 +- .../gitlab/gitaly/gemset.nix | 282 +++++++++--------- 4 files changed, 224 insertions(+), 206 deletions(-) diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile b/pkgs/applications/version-management/gitlab/gitaly/Gemfile index 2b752992fec..016f80284da 100644 --- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile +++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile @@ -1,14 +1,17 @@ source 'https://rubygems.org' -gem 'rugged', '~> 0.27.4' +# Require bundler >= 1.16.5 to avoid this bug: https://github.com/bundler/bundler/issues/6537 +gem 'bundler', '>= 1.16.5' + +gem 'rugged', '~> 0.27' gem 'github-linguist', '~> 6.1', require: 'linguist' gem 'gitlab-markup', '~> 1.6.4' -gem 'gitaly-proto', '~> 0.116.0', require: 'gitaly' +gem 'gitaly-proto', '~> 0.123.0', require: 'gitaly' gem 'activesupport', '~> 5.0.2' gem 'rdoc', '~> 4.2' gem 'gitlab-gollum-lib', '~> 4.2', require: false gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4', require: false -gem 'grpc', '~> 1.11.0' +gem 'grpc', '~> 1.15.0' gem 'sentry-raven', '~> 2.7.2', require: false gem 'faraday', '~> 0.12' @@ -16,10 +19,12 @@ gem 'faraday', '~> 0.12' # This version needs to be in sync with GitLab CE/EE gem 'licensee', '~> 8.9.0' -# Locked until https://github.com/google/protobuf/issues/4210 is closed -gem 'google-protobuf', '= 3.5.1' +gem 'google-protobuf', '~> 3.6' group :development, :test do - gem 'gitlab-styles', '~> 2.0.0', require: false + gem 'rubocop', '~> 0.50', require: false gem 'rspec', require: false + gem 'rspec-parameterized', require: false + gem 'timecop', require: false + gem 'factory_bot', require: false end diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock index d76ba86c398..0340853524b 100644 --- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock +++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock @@ -1,26 +1,37 @@ GEM remote: https://rubygems.org/ specs: + abstract_type (0.0.7) activesupport (5.0.6) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (~> 0.7) minitest (~> 5.1) tzinfo (~> 1.1) - addressable (2.5.2) - public_suffix (>= 2.0.2, < 4.0) - ast (2.3.0) + adamantium (0.2.0) + ice_nine (~> 0.11.0) + memoizable (~> 0.4.0) + ast (2.4.0) + binding_of_caller (0.8.0) + debug_inspector (>= 0.0.1) charlock_holmes (0.7.6) + coderay (1.1.2) + concord (0.1.5) + adamantium (~> 0.2.0) + equalizer (~> 0.0.9) concurrent-ruby (1.0.5) crass (1.0.4) + debug_inspector (0.0.3) diff-lcs (1.3) + equalizer (0.0.11) escape_utils (1.2.1) - faraday (0.12.2) + factory_bot (4.11.1) + activesupport (>= 3.0.0) + faraday (0.15.3) multipart-post (>= 1.2, < 3) gemojione (3.3.0) json - gitaly-proto (0.116.0) - google-protobuf (~> 3.1) - grpc (~> 1.10) + gitaly-proto (0.123.0) + grpc (~> 1.0) github-linguist (6.2.0) charlock_holmes (~> 0.7.6) escape_utils (~> 1.2.0) @@ -44,60 +55,44 @@ GEM mime-types (>= 1.16) posix-spawn (~> 0.3) gitlab-markup (1.6.4) - gitlab-styles (2.0.0) - rubocop (~> 0.49) - rubocop-gitlab-security (~> 0.1.0) - rubocop-rspec (~> 1.15) gollum-grit_adapter (1.0.1) gitlab-grit (~> 2.7, >= 2.7.1) - google-protobuf (3.5.1) - googleapis-common-protos-types (1.0.1) + google-protobuf (3.6.1) + googleapis-common-protos-types (1.0.2) google-protobuf (~> 3.0) - googleauth (0.6.2) - faraday (~> 0.12) - jwt (>= 1.4, < 3.0) - logging (~> 2.0) - memoist (~> 0.12) - multi_json (~> 1.11) - os (~> 0.9) - signet (~> 0.7) - grpc (1.11.0) + grpc (1.15.0) google-protobuf (~> 3.1) googleapis-common-protos-types (~> 1.0.0) - googleauth (>= 0.5.1, < 0.7) i18n (0.8.1) + ice_nine (0.11.2) json (2.1.0) - jwt (2.1.0) licensee (8.9.2) rugged (~> 0.24) - little-plugger (1.1.4) - logging (2.2.2) - little-plugger (~> 1.1) - multi_json (~> 1.10) - memoist (0.16.0) + memoizable (0.4.2) + thread_safe (~> 0.3, >= 0.3.1) mime-types (3.2.2) mime-types-data (~> 3.2015) mime-types-data (3.2018.0812) mini_portile2 (2.3.0) minitest (5.9.1) - multi_json (1.13.1) multipart-post (2.0.0) nokogiri (1.8.4) mini_portile2 (~> 2.3.0) nokogumbo (1.5.0) nokogiri - os (0.9.6) - parallel (1.12.0) - parser (2.4.0.0) - ast (~> 2.2) + parallel (1.12.1) + parser (2.5.1.2) + ast (~> 2.4.0) posix-spawn (0.3.13) - powerpack (0.1.1) - public_suffix (3.0.2) - rainbow (2.2.2) - rake - rake (12.1.0) + powerpack (0.1.2) + proc_to_ast (0.1.0) + coderay + parser + unparser + procto (0.0.3) + rainbow (3.0.0) rdoc (4.3.0) - rouge (3.2.1) + rouge (3.3.0) rspec (3.7.0) rspec-core (~> 3.7.0) rspec-expectations (~> 3.7.0) @@ -110,56 +105,66 @@ GEM rspec-mocks (3.7.0) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.7.0) + rspec-parameterized (0.4.0) + binding_of_caller + parser + proc_to_ast + rspec (>= 2.13, < 4) + unparser rspec-support (3.7.1) - rubocop (0.50.0) + rubocop (0.54.0) parallel (~> 1.10) - parser (>= 2.3.3.1, < 3.0) + parser (>= 2.5) powerpack (~> 0.1) - rainbow (>= 2.2.2, < 3.0) + rainbow (>= 2.2.2, < 4.0) ruby-progressbar (~> 1.7) unicode-display_width (~> 1.0, >= 1.0.1) - rubocop-gitlab-security (0.1.0) - rubocop (>= 0.47.1) - rubocop-rspec (1.17.0) - rubocop (>= 0.50.0) - ruby-progressbar (1.8.3) - rugged (0.27.4) + ruby-progressbar (1.10.0) + rugged (0.27.5) sanitize (4.6.6) crass (~> 1.0.2) nokogiri (>= 1.4.4) nokogumbo (~> 1.4) sentry-raven (2.7.2) faraday (>= 0.7.6, < 1.0) - signet (0.8.1) - addressable (~> 2.3) - faraday (~> 0.9) - jwt (>= 1.5, < 3.0) - multi_json (~> 1.10) stringex (2.8.4) thread_safe (0.3.6) + timecop (0.9.1) tzinfo (1.2.2) thread_safe (~> 0.1) - unicode-display_width (1.3.0) + unicode-display_width (1.4.0) + unparser (0.2.8) + abstract_type (~> 0.0.7) + adamantium (~> 0.2.0) + concord (~> 0.1.5) + diff-lcs (~> 1.3) + equalizer (~> 0.0.9) + parser (>= 2.3.1.2, < 2.6) + procto (~> 0.0.2) PLATFORMS ruby DEPENDENCIES activesupport (~> 5.0.2) + bundler (>= 1.16.5) + factory_bot faraday (~> 0.12) - gitaly-proto (~> 0.116.0) + gitaly-proto (~> 0.123.0) github-linguist (~> 6.1) gitlab-gollum-lib (~> 4.2) gitlab-gollum-rugged_adapter (~> 0.4.4) gitlab-markup (~> 1.6.4) - gitlab-styles (~> 2.0.0) - google-protobuf (= 3.5.1) - grpc (~> 1.11.0) + google-protobuf (~> 3.6) + grpc (~> 1.15.0) licensee (~> 8.9.0) rdoc (~> 4.2) rspec - rugged (~> 0.27.4) + rspec-parameterized + rubocop (~> 0.50) + rugged (~> 0.27) sentry-raven (~> 2.7.2) + timecop BUNDLED WITH - 1.16.4 + 1.17.1 diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix index 88bd0b9f10d..951dbf0bf25 100644 --- a/pkgs/applications/version-management/gitlab/gitaly/default.nix +++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix @@ -7,14 +7,14 @@ let gemdir = ./.; }; in buildGoPackage rec { - version = "0.125.1"; + version = "0.129.0"; name = "gitaly-${version}"; src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitaly"; rev = "v${version}"; - sha256 = "0vbxjqjs1r5c350r67812andasby5zk25xlaqp201lmlvamiv0ni"; + sha256 = "0lidqa0w0vy87p5xfmqrfvbyzvl9wj2p918qs2f5rc7shzm38rn6"; }; goPackagePath = "gitlab.com/gitlab-org/gitaly"; diff --git a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix index 0717555b382..9bf5601bf63 100644 --- a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix +++ b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix @@ -1,4 +1,12 @@ { + abstract_type = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14"; + type = "gem"; + }; + version = "0.0.7"; + }; activesupport = { dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"]; source = { @@ -8,22 +16,31 @@ }; version = "5.0.6"; }; - addressable = { - dependencies = ["public_suffix"]; + adamantium = { + dependencies = ["ice_nine" "memoizable"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk"; + sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak"; type = "gem"; }; - version = "2.5.2"; + version = "0.2.0"; }; ast = { source = { remotes = ["https://rubygems.org"]; - sha256 = "0pp82blr5fakdk27d1d21xq9zchzb6vmyb1zcsl520s3ygvprn8m"; + sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7"; type = "gem"; }; - version = "2.3.0"; + version = "2.4.0"; + }; + binding_of_caller = { + dependencies = ["debug_inspector"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05syqlks7463zsy1jdfbbdravdhj9hpj5pv2m74blqpv8bq4vv5g"; + type = "gem"; + }; + version = "0.8.0"; }; charlock_holmes = { source = { @@ -33,6 +50,23 @@ }; version = "0.7.6"; }; + coderay = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y"; + type = "gem"; + }; + version = "1.1.2"; + }; + concord = { + dependencies = ["adamantium" "equalizer"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg"; + type = "gem"; + }; + version = "0.1.5"; + }; concurrent-ruby = { source = { remotes = ["https://rubygems.org"]; @@ -49,6 +83,14 @@ }; version = "1.0.4"; }; + debug_inspector = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vxr0xa1mfbkfcrn71n7c4f2dj7la5hvphn904vh20j3x4j5lrx0"; + type = "gem"; + }; + version = "0.0.3"; + }; diff-lcs = { source = { remotes = ["https://rubygems.org"]; @@ -57,6 +99,14 @@ }; version = "1.3"; }; + equalizer = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4"; + type = "gem"; + }; + version = "0.0.11"; + }; escape_utils = { source = { remotes = ["https://rubygems.org"]; @@ -65,14 +115,23 @@ }; version = "1.2.1"; }; + factory_bot = { + dependencies = ["activesupport"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13q1b7imb591068plg4ashgsqgzarvfjz6xxn3jk6klzikz5zhg1"; + type = "gem"; + }; + version = "4.11.1"; + }; faraday = { dependencies = ["multipart-post"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2"; + sha256 = "16hwxc8v0z6gkanckjhx0ffgqmzpc4ywz4dfhxpjlz2mbz8d5m52"; type = "gem"; }; - version = "0.12.2"; + version = "0.15.3"; }; gemojione = { dependencies = ["json"]; @@ -84,13 +143,13 @@ version = "3.3.0"; }; gitaly-proto = { - dependencies = ["google-protobuf" "grpc"]; + dependencies = ["grpc"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "15946776v5v8c2jisknjm82s4q3b3q9x2xygjf4bkk4m45n766w1"; + sha256 = "16b9sdaimhcda401z2s7apf0nz6y0lxs74xhkwlz4jzf6ms44mgg"; type = "gem"; }; - version = "0.116.0"; + version = "0.123.0"; }; github-linguist = { dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"]; @@ -144,15 +203,6 @@ }; version = "1.6.4"; }; - gitlab-styles = { - dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"]; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1k8xrkjx8rcny8p0gsp18wskvn1qbw4rfgdp1f6x0p4xp6dlhjf4"; - type = "gem"; - }; - version = "2.0.0"; - }; gollum-grit_adapter = { dependencies = ["gitlab-grit"]; source = { @@ -165,37 +215,28 @@ google-protobuf = { source = { remotes = ["https://rubygems.org"]; - sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi"; + sha256 = "134d3ini9ymdwxpz445m28ss9x0m6vcpijcdkzvgk4n538wdmppf"; type = "gem"; }; - version = "3.5.1"; + version = "3.6.1"; }; googleapis-common-protos-types = { dependencies = ["google-protobuf"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck"; + sha256 = "01ds7g01pxqm3mg283xjzy0lhhvvhvzw3m7gf7szd1r7la4wf0qq"; type = "gem"; }; - version = "1.0.1"; - }; - googleauth = { - dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"]; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "08z4zfj9cwry13y8c2w5p4xylyslxxjq4wahd95bk1ddl5pknd4f"; - type = "gem"; - }; - version = "0.6.2"; + version = "1.0.2"; }; grpc = { - dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"]; + dependencies = ["google-protobuf" "googleapis-common-protos-types"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1is4czi3i7y6zyxzyrpsma1z91axmc0jz2ngr6ckixqd3629npkz"; + sha256 = "0m2wspnm1cfkmhlbp7yqv5bb4vsfh246cm0aavxra67aw4l8plhb"; type = "gem"; }; - version = "1.11.0"; + version = "1.15.0"; }; i18n = { source = { @@ -205,6 +246,14 @@ }; version = "0.8.1"; }; + ice_nine = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x"; + type = "gem"; + }; + version = "0.11.2"; + }; json = { source = { remotes = ["https://rubygems.org"]; @@ -213,14 +262,6 @@ }; version = "2.1.0"; }; - jwt = { - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky"; - type = "gem"; - }; - version = "2.1.0"; - }; licensee = { dependencies = ["rugged"]; source = { @@ -230,30 +271,14 @@ }; version = "8.9.2"; }; - little-plugger = { + memoizable = { + dependencies = ["thread_safe"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym"; + sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c"; type = "gem"; }; - version = "1.1.4"; - }; - logging = { - dependencies = ["little-plugger" "multi_json"]; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn"; - type = "gem"; - }; - version = "2.2.2"; - }; - memoist = { - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0pq8fhqh8w25qcw9v3vzfb0i6jp0k3949ahxc3wrwz2791dpbgbh"; - type = "gem"; - }; - version = "0.16.0"; + version = "0.4.2"; }; mime-types = { dependencies = ["mime-types-data"]; @@ -288,14 +313,6 @@ }; version = "5.9.1"; }; - multi_json = { - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv"; - type = "gem"; - }; - version = "1.13.1"; - }; multipart-post = { source = { remotes = ["https://rubygems.org"]; @@ -322,30 +339,22 @@ }; version = "1.5.0"; }; - os = { - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1llv8w3g2jwggdxr5a5cjkrnbbfnvai3vxacxxc0fy84xmz3hymz"; - type = "gem"; - }; - version = "0.9.6"; - }; parallel = { source = { remotes = ["https://rubygems.org"]; - sha256 = "0qv2yj4sxr36ga6xdxvbq9h05hn10bwcbkqv6j6q1fiixhsdnnzd"; + sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67"; type = "gem"; }; - version = "1.12.0"; + version = "1.12.1"; }; parser = { dependencies = ["ast"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "130rfk8a2ws2fyq52hmi1n0xakylw39wv4x1qhai4z17x2b0k9cq"; + sha256 = "1zp89zg7iypncszxsjp8kiccrpbdf728jl449g6cnfkz990fyb5k"; type = "gem"; }; - version = "2.4.0.0"; + version = "2.5.1.2"; }; posix-spawn = { source = { @@ -358,35 +367,35 @@ powerpack = { source = { remotes = ["https://rubygems.org"]; - sha256 = "1fnn3fli5wkzyjl4ryh0k90316shqjfnhydmc7f8lqpi0q21va43"; + sha256 = "1r51d67wd467rpdfl6x43y84vwm8f5ql9l9m85ak1s2sp3nc5hyv"; type = "gem"; }; - version = "0.1.1"; + version = "0.1.2"; }; - public_suffix = { + proc_to_ast = { + dependencies = ["coderay" "parser" "unparser"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1x5h1dh1i3gwc01jbg01rly2g6a1qwhynb1s8a30ic507z1nh09s"; + sha256 = "14c65w48bbzp5lh1cngqd1y25kqvfnq1iy49hlzshl12dsk3z9wj"; type = "gem"; }; - version = "3.0.2"; + version = "0.1.0"; + }; + procto = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c"; + type = "gem"; + }; + version = "0.0.3"; }; rainbow = { - dependencies = ["rake"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w"; + sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk"; type = "gem"; }; - version = "2.2.2"; - }; - rake = { - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0mfqgpp3m69s5v1rd51lfh5qpjwyia5p4rg337pw8c8wzm6pgfsw"; - type = "gem"; - }; - version = "12.1.0"; + version = "3.0.0"; }; rdoc = { source = { @@ -399,10 +408,10 @@ rouge = { source = { remotes = ["https://rubygems.org"]; - sha256 = "0h79gn2wmn1wix2d27lgiaimccyj8gvizrllyym500pir408x62f"; + sha256 = "1digsi2s8wyzx8vsqcxasw205lg6s7izx8jypl8rrpjwshmv83ql"; type = "gem"; }; - version = "3.2.1"; + version = "3.3.0"; }; rspec = { dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; @@ -440,6 +449,15 @@ }; version = "3.7.0"; }; + rspec-parameterized = { + dependencies = ["binding_of_caller" "parser" "proc_to_ast" "rspec" "unparser"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0arynbr6cfjhccwc8gy2xf87nybdnncsnmfwknnh8s7d4mj730p0"; + type = "gem"; + }; + version = "0.4.0"; + }; rspec-support = { source = { remotes = ["https://rubygems.org"]; @@ -452,44 +470,26 @@ dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1hpd7zcv4y9y750wj630abvmcjwv39dsrj1fjff60ik7gfri0xlz"; + sha256 = "106y99lq0fg62k3vk1w5wwb4vq16pnh4l61skc82xck627z0h8is"; type = "gem"; }; - version = "0.50.0"; - }; - rubocop-gitlab-security = { - dependencies = ["rubocop"]; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0aw9qmyc6xj6fi0jxp8m4apk358rd91z492ragn6jp4rghkqj5cy"; - type = "gem"; - }; - version = "0.1.0"; - }; - rubocop-rspec = { - dependencies = ["rubocop"]; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1hf48ng67yswvshmv4cyysj1rs1z3fnvlycr50jdcgwlynpyxkhs"; - type = "gem"; - }; - version = "1.17.0"; + version = "0.54.0"; }; ruby-progressbar = { source = { remotes = ["https://rubygems.org"]; - sha256 = "029kv0q3kfq53rjyak4ypn7196l8z4hflfmv4p5787n78z7baiqf"; + sha256 = "1cv2ym3rl09svw8940ny67bav7b2db4ms39i4raaqzkf59jmhglk"; type = "gem"; }; - version = "1.8.3"; + version = "1.10.0"; }; rugged = { source = { remotes = ["https://rubygems.org"]; - sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72"; + sha256 = "1jv4nw9hvlxp8hhhlllrfcznki82i50fp1sj65zsjllfl2bvz8x6"; type = "gem"; }; - version = "0.27.4"; + version = "0.27.5"; }; sanitize = { dependencies = ["crass" "nokogiri" "nokogumbo"]; @@ -509,15 +509,6 @@ }; version = "2.7.2"; }; - signet = { - dependencies = ["addressable" "faraday" "jwt" "multi_json"]; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0js81lxqirdza8gf2f6avh11fny49ygmxfi1qx7jp8l9wrhznbkv"; - type = "gem"; - }; - version = "0.8.1"; - }; stringex = { source = { remotes = ["https://rubygems.org"]; @@ -534,6 +525,14 @@ }; version = "0.3.6"; }; + timecop = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp"; + type = "gem"; + }; + version = "0.9.1"; + }; tzinfo = { dependencies = ["thread_safe"]; source = { @@ -546,9 +545,18 @@ unicode-display_width = { source = { remotes = ["https://rubygems.org"]; - sha256 = "12pi0gwqdnbx1lv5136v3vyr0img9wr0kxcn4wn54ipq4y41zxq8"; + sha256 = "0040bsdpcmvp8w31lqi2s9s4p4h031zv52401qidmh25cgyh4a57"; type = "gem"; }; - version = "1.3.0"; + version = "1.4.0"; + }; + unparser = { + dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rh1649846ac17av30x0b0v9l45v0x1j2y1i8m1a7xdd0v4sld0z"; + type = "gem"; + }; + version = "0.2.8"; }; } \ No newline at end of file From 6870eafe724a4f864ae54a5ae75cb6e00a4f76ad Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 23 Nov 2018 19:36:14 +0100 Subject: [PATCH 022/106] gitlab tests: enable recommendedProxySettings, test redirection works as it should The nixos test is a bit misleading, as the given nginx configuration would always cause gitlab to redirect to localhost, which is clearly not what you want in a production setup. Instead we now enable services.nginx.recommendedProxySettings, curl against http://gitlab, and assure we get redirected to that same hostname, too. --- nixos/tests/gitlab.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nixos/tests/gitlab.nix b/nixos/tests/gitlab.nix index 661caa8aa83..269da8aa215 100644 --- a/nixos/tests/gitlab.nix +++ b/nixos/tests/gitlab.nix @@ -16,6 +16,7 @@ import ./make-test.nix ({ pkgs, lib, ...} : with lib; { services.nginx = { enable = true; + recommendedProxySettings = true; virtualHosts = { "localhost" = { locations."/".proxyPass = "http://unix:/run/gitlab/gitlab-workhorse.socket"; @@ -75,7 +76,8 @@ import ./make-test.nix ({ pkgs, lib, ...} : with lib; { $gitlab->waitForUnit("gitlab.service"); $gitlab->waitForUnit("gitlab-sidekiq.service"); $gitlab->waitForFile("/var/gitlab/state/tmp/sockets/gitlab.socket"); - $gitlab->waitUntilSucceeds("curl -sSf http://localhost/users/sign_in"); + $gitlab->waitUntilSucceeds("curl -sSf http://gitlab/users/sign_in"); + $gitlab->succeed("curl -isSf http://gitlab | grep -i location | grep -q http://gitlab/users/sign_in"); $gitlab->succeed("${pkgs.sudo}/bin/sudo -u gitlab -H gitlab-rake gitlab:check 1>&2") ''; }) From b6c96c6419a71ff3cd50d0e6b5c0bf370503eee6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 24 Nov 2018 16:58:45 +0100 Subject: [PATCH 023/106] dovecot: 2.3.3 -> 2.3.4, dovecot_pigeonhole: 0.5.3 -> 0.5.4 --- pkgs/servers/mail/dovecot/default.nix | 4 ++-- pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix index f80a01e20f8..6c6ddf651e6 100644 --- a/pkgs/servers/mail/dovecot/default.nix +++ b/pkgs/servers/mail/dovecot/default.nix @@ -9,7 +9,7 @@ }: stdenv.mkDerivation rec { - name = "dovecot-2.3.3"; + name = "dovecot-2.3.4"; nativeBuildInputs = [ perl pkgconfig ]; buildInputs = @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://dovecot.org/releases/2.3/${name}.tar.gz"; - sha256 = "13kd0rxdg9scwnx6n24p6mv8p6dyh7v8s7sqv55gp2i54pp2gbqm"; + sha256 = "01ggzf7b3jpl89mjiqr7xbpbs181g2gjf6wzg70qaqfzz3ppc6yr"; }; preConfigure = '' diff --git a/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix b/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix index a0b03193729..73d6b5d593c 100644 --- a/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix +++ b/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "dovecot-pigeonhole-${version}"; - version = "0.5.3"; + version = "0.5.4"; src = fetchurl { url = "https://pigeonhole.dovecot.org/releases/2.3/dovecot-2.3-pigeonhole-${version}.tar.gz"; - sha256 = "08i6vw6k2v906s4sc6wl9ffpz6blzdga6vglqpqjm7jzq10jfbz0"; + sha256 = "05l5y0gc8ycswdbl58j7kbx5gq1z7mjkazjccmgbq6h0gbk9jyal"; }; buildInputs = [ dovecot openssl ]; From aff92495ab9759b6720574d53470bf3643a58288 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sun, 25 Nov 2018 03:57:22 -0500 Subject: [PATCH 024/106] wal-g: 0.1.12 -> 0.2.0 --- pkgs/tools/backup/wal-g/default.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/backup/wal-g/default.nix b/pkgs/tools/backup/wal-g/default.nix index 0cd18dae1c2..ce9237a7c6b 100644 --- a/pkgs/tools/backup/wal-g/default.nix +++ b/pkgs/tools/backup/wal-g/default.nix @@ -1,16 +1,20 @@ -{ stdenv, buildGoPackage, fetchFromGitHub }: +{ stdenv, buildGoPackage, fetchFromGitHub, brotli }: buildGoPackage rec { name = "wal-g-${version}"; - version = "0.1.12"; + version = "0.2.0"; src = fetchFromGitHub { owner = "wal-g"; repo = "wal-g"; rev = "v${version}"; - sha256 = "06k71xz96jpg6966xj48a8j07v0vk37b5v2k1bnqrbin4sma3s0c"; + sha256 = "08lk7by1anxpd9v97xbf9443kk4n1w63zaar2nz86w8i3k3b4id9"; }; + buildInputs = [ brotli ]; + + doCheck = true; + goPackagePath = "github.com/wal-g/wal-g"; meta = { inherit (src.meta) homepage; From 0d753af6617bb74535af0601a2cdce1a8c647889 Mon Sep 17 00:00:00 2001 From: Brian Olsen Date: Sun, 25 Nov 2018 06:10:30 +0100 Subject: [PATCH 025/106] nixos/rspamd: Allow worker type to be proxy again When reworking the rspamd workers I disallowed `proxy` as a type and instead used `rspamd_proxy` which is the correct name for that worker type. That change breaks peoples existing config and so I have made this commit which allows `proxy` as a worker type again but makes it behave as `rspamd_proxy` and prints a warning if you use it. --- nixos/modules/services/mail/rspamd.nix | 17 ++++++++++++++--- nixos/tests/rspamd.nix | 1 + 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/mail/rspamd.nix b/nixos/modules/services/mail/rspamd.nix index 1c37ae41e07..c9ba8678021 100644 --- a/nixos/modules/services/mail/rspamd.nix +++ b/nixos/modules/services/mail/rspamd.nix @@ -45,7 +45,9 @@ let else "${config.socket}${maybeOption "mode"}${maybeOption "owner"}${maybeOption "group"}"; }; - workerOpts = { name, ... }: { + traceWarning = w: x: builtins.trace "warning: ${w}" x; + + workerOpts = { name, options, ... }: { options = { enable = mkOption { type = types.nullOr types.bool; @@ -59,9 +61,18 @@ let }; type = mkOption { type = types.nullOr (types.enum [ - "normal" "controller" "fuzzy_storage" "rspamd_proxy" "lua" + "normal" "controller" "fuzzy_storage" "rspamd_proxy" "lua" "proxy" ]); - description = "The type of this worker"; + description = '' + The type of this worker. The type proxy is + deprecated and only kept for backwards compatibility and should be + replaced with rspamd_proxy. + ''; + apply = let + from = "services.rspamd.workers.\”${name}\".type"; + files = options.type.files; + warning = "The option `${from}` defined in ${showFiles files} has enum value `proxy` which has been renamed to `rspamd_proxy`"; + in x: if x == "proxy" then traceWarning warning "rspamd_proxy" else x; }; bindSockets = mkOption { type = types.listOf (types.either types.str (types.submodule bindSocketOpts)); diff --git a/nixos/tests/rspamd.nix b/nixos/tests/rspamd.nix index e16a9e6ffbc..396cd5b67d8 100644 --- a/nixos/tests/rspamd.nix +++ b/nixos/tests/rspamd.nix @@ -235,6 +235,7 @@ in services.rspamd = { enable = true; postfix.enable = true; + workers.rspamd_proxy.type = "proxy"; }; }; testScript = '' From 2faf905f98eeb9f674ef845ae9bf9fd7f1279d1e Mon Sep 17 00:00:00 2001 From: aszlig Date: Sun, 25 Nov 2018 16:17:14 +0100 Subject: [PATCH 026/106] autoPatchelfHook: Add addAutoPatchelfSearchPath This function is useful if autoPatchelf is invoked during some of the phases of a build and allows to add arbitrary shared objects to the search path. So far the same functionality was in autoPatchelf itself, but not available as a separate function, so when adding shared objects to the dependency cache one would have to do so manually. The function also has the --no-recurse flag, which prevents recursing into subdirectories. Signed-off-by: aszlig --- .../setup-hooks/auto-patchelf.sh | 35 +++++++++++++++---- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/pkgs/build-support/setup-hooks/auto-patchelf.sh b/pkgs/build-support/setup-hooks/auto-patchelf.sh index 43b1679670d..61bdafa88c3 100644 --- a/pkgs/build-support/setup-hooks/auto-patchelf.sh +++ b/pkgs/build-support/setup-hooks/auto-patchelf.sh @@ -147,13 +147,38 @@ autoPatchelfFile() { fi } -autoPatchelf() { +# Can be used to manually add additional directories with shared object files +# to be included for the next autoPatchelf invocation. +addAutoPatchelfSearchPath() { local -a findOpts=() + # XXX: Somewhat similar to the one in the autoPatchelf function, maybe make + # it DRY someday... while [ $# -gt 0 ]; do case "$1" in --) shift; break;; --no-recurse) shift; findOpts+=("-maxdepth" 1);; + --*) + echo "addAutoPatchelfSearchPath: ERROR: Invalid command line" \ + "argument: $1" >&2 + return 1;; + *) break;; + esac + done + + cachedDependencies+=( + $(find "$@" "${findOpts[@]}" \! -type d \ + \( -name '*.so' -o -name '*.so.*' \)) + ) +} + +autoPatchelf() { + local -a norecurse= + + while [ $# -gt 0 ]; do + case "$1" in + --) shift; break;; + --no-recurse) shift; norecurse=1;; --*) echo "autoPatchelf: ERROR: Invalid command line" \ "argument: $1" >&2 @@ -171,11 +196,7 @@ autoPatchelf() { # Add all shared objects of the current output path to the start of # cachedDependencies so that it's choosen first in findDependency. - cachedDependencies+=( - $(find "$@" "${findOpts[@]}" \! -type d \ - \( -name '*.so' -o -name '*.so.*' \)) - ) - local elffile + addAutoPatchelfSearchPath ${norecurse:+--no-recurse} -- "$@" # Here we actually have a subshell, which also means that # $cachedDependencies is final at this point, so whenever we want to run @@ -189,7 +210,7 @@ autoPatchelf() { LANG=C readelf -l "$file" | grep -q "^ *INTERP\\>" || continue fi autoPatchelfFile "$file" - done < <(find "$@" "${findOpts[@]}" -type f -print0) + done < <(find "$@" ${norecurse:+-maxdepth 1} -type f -print0) } # XXX: This should ultimately use fixupOutputHooks but we currently don't have From bda40a20d8aed1d41d1a7bc378a11ffe7ed34d8b Mon Sep 17 00:00:00 2001 From: Renaud Date: Sun, 25 Nov 2018 17:08:16 +0100 Subject: [PATCH 027/106] crack-attack: enable custom sounds crack-attack will search for user-provided musics and sounds under ~/.crack-attack/ --- pkgs/games/crack-attack/default.nix | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/pkgs/games/crack-attack/default.nix b/pkgs/games/crack-attack/default.nix index d8de785ef1f..838bdfc9e49 100644 --- a/pkgs/games/crack-attack/default.nix +++ b/pkgs/games/crack-attack/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, gtk2, freeglut, SDL, libGLU_combined, libXi, libXmu}: +{ stdenv, fetchurl, pkgconfig, gtk2, freeglut, SDL, SDL_mixer, libGLU_combined, libXi, libXmu }: stdenv.mkDerivation { name = "crack-attack-1.1.14"; @@ -8,10 +8,18 @@ stdenv.mkDerivation { sha256 = "1sakj9a2q05brpd7lkqxi8q30bccycdzd96ns00s6jbxrzjlijkm"; }; + patches = [ + ./crack-attack-1.1.14-gcc43.patch + ./crack-attack-1.1.14-glut.patch + ]; + + configureFlags = [ "--enable-sound=yes" ]; + nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ gtk2 freeglut SDL libGLU_combined libXi libXmu ]; + buildInputs = [ gtk2 freeglut SDL SDL_mixer libGLU_combined libXi libXmu ]; hardeningDisable = [ "format" ]; + enableParallelBuilding = true; meta = { description = "A fast-paced puzzle game inspired by the classic Super NES title Tetris Attack!"; @@ -20,9 +28,4 @@ stdenv.mkDerivation { platforms = stdenv.lib.platforms.linux; maintainers = [ stdenv.lib.maintainers.piotr ]; }; - - patches = [ - ./crack-attack-1.1.14-gcc43.patch - ./crack-attack-1.1.14-glut.patch - ]; } From 2fbde72556c981b5005e2dbe8599b5d3adb5c13f Mon Sep 17 00:00:00 2001 From: Timo Kaufmann Date: Sun, 25 Nov 2018 17:38:45 +0100 Subject: [PATCH 028/106] sage: add tkinter as matplotlib backend (#51032) Fixes #50959. --- pkgs/applications/science/math/sage/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/science/math/sage/default.nix b/pkgs/applications/science/math/sage/default.nix index 6403b649af4..832b2f11056 100644 --- a/pkgs/applications/science/math/sage/default.nix +++ b/pkgs/applications/science/math/sage/default.nix @@ -110,6 +110,7 @@ let sympy fpylll matplotlib + tkinter # optional, as a matplotlib backend (use with `%matplotlib tk`) scipy ipywidgets rpy2 From 9762e2c3bd28d01a12c8fb5ecd70c91b2a4f4877 Mon Sep 17 00:00:00 2001 From: c0bw3b Date: Sun, 25 Nov 2018 18:20:42 +0100 Subject: [PATCH 029/106] confuse: remove and replace with libconfuse - confuse is a duplicate of libconfuse - upstream name is libconfuse so keep this one - replace confuse with libconfuse in packages depending on it --- pkgs/applications/misc/tilda/default.nix | 12 +++++------ .../window-managers/i3/status.nix | 4 ++-- .../development/libraries/confuse/default.nix | 17 ---------------- pkgs/development/libraries/libftdi/1.x.nix | 6 +++--- .../linux/pommed-light/default.nix | 20 +++++++++---------- .../os-specific/linux/udisks-glue/default.nix | 6 +++--- pkgs/tools/X11/dispad/default.nix | 4 ++-- pkgs/tools/misc/bmon/default.nix | 4 ++-- pkgs/tools/misc/xburst-tools/default.nix | 6 +++--- pkgs/top-level/all-packages.nix | 4 +--- 10 files changed, 32 insertions(+), 51 deletions(-) delete mode 100644 pkgs/development/libraries/confuse/default.nix diff --git a/pkgs/applications/misc/tilda/default.nix b/pkgs/applications/misc/tilda/default.nix index d5b927bb536..4172660182d 100644 --- a/pkgs/applications/misc/tilda/default.nix +++ b/pkgs/applications/misc/tilda/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchurl, pkgconfig +{ stdenv, fetchzip, pkgconfig , autoreconfHook, gettext, expat -, confuse, vte, gtk +, libconfuse, vte, gtk , makeWrapper }: stdenv.mkDerivation rec { @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { name = "tilda-${version}"; version = "1.4.1"; - src = fetchurl { + src = fetchzip { url = "https://github.com/lanoxx/tilda/archive/${name}.tar.gz"; - sha256 = "0w2hry2bqcqrkik4l100b1a9jlsih6sq8zwhfpl8zzfq20i00lfs"; + sha256 = "154rsldqjv2m1bddisb930qicb0y35kx7bxq392n2hn68jr2pxkj"; }; - nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ gettext confuse vte gtk makeWrapper ]; + nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig ]; + buildInputs = [ gettext libconfuse vte gtk ]; LD_LIBRARY_PATH = "${expat.out}/lib"; # ugly hack for xgettext to work during build diff --git a/pkgs/applications/window-managers/i3/status.nix b/pkgs/applications/window-managers/i3/status.nix index ae6d8bd22b7..65180846c64 100644 --- a/pkgs/applications/window-managers/i3/status.nix +++ b/pkgs/applications/window-managers/i3/status.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, confuse, yajl, alsaLib, libpulseaudio, libnl, pkgconfig +{ fetchurl, stdenv, libconfuse, yajl, alsaLib, libpulseaudio, libnl, pkgconfig }: stdenv.mkDerivation rec { @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ confuse yajl alsaLib libpulseaudio libnl ]; + buildInputs = [ libconfuse yajl alsaLib libpulseaudio libnl ]; makeFlags = [ "all" "PREFIX=$(out)" ]; diff --git a/pkgs/development/libraries/confuse/default.nix b/pkgs/development/libraries/confuse/default.nix deleted file mode 100644 index 3257dfe5d37..00000000000 --- a/pkgs/development/libraries/confuse/default.nix +++ /dev/null @@ -1,17 +0,0 @@ -{stdenv, fetchurl}: - -stdenv.mkDerivation rec { - name = "confuse-${version}"; - version = "3.2.1"; - src = fetchurl { - url = "https://github.com/martinh/libconfuse/releases/download/v${version}/${name}.tar.xz"; - sha256 = "0pnjmlj9i0alp407qd7c0vq83sz7gpsjrbdgpcn4xvzjp9r35ii3"; - }; - - meta = { - homepage = http://www.nongnu.org/confuse/; - description = "Configuration file parser library"; - license = stdenv.lib.licenses.isc; - platforms = stdenv.lib.platforms.unix; - }; -} diff --git a/pkgs/development/libraries/libftdi/1.x.nix b/pkgs/development/libraries/libftdi/1.x.nix index b59bf9a06ac..1b00ff4c0fb 100644 --- a/pkgs/development/libraries/libftdi/1.x.nix +++ b/pkgs/development/libraries/libftdi/1.x.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, cmake, pkgconfig, libusb1, confuse +{ stdenv, fetchurl, cmake, pkgconfig, libusb1, libconfuse , cppSupport ? true, boost ? null , pythonSupport ? true, python ? null, swig ? null , docSupport ? true, doxygen ? null @@ -16,8 +16,8 @@ stdenv.mkDerivation rec { sha256 = "0x0vncf6i92slgrn0h7ghkskqbglbs534220qa84d0qg114zndpc"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = with stdenv.lib; [ cmake confuse ] + nativeBuildInputs = [ cmake pkgconfig ]; + buildInputs = with stdenv.lib; [ libconfuse ] ++ optionals cppSupport [ boost ] ++ optionals pythonSupport [ python swig ] ++ optionals docSupport [ doxygen ]; diff --git a/pkgs/os-specific/linux/pommed-light/default.nix b/pkgs/os-specific/linux/pommed-light/default.nix index 3ee5e312d23..06ea49034a0 100644 --- a/pkgs/os-specific/linux/pommed-light/default.nix +++ b/pkgs/os-specific/linux/pommed-light/default.nix @@ -1,8 +1,7 @@ -{ - stdenv -, fetchurl +{ stdenv +, fetchFromGitHub , pciutils -, confuse +, libconfuse , alsaLib , audiofile , pkgconfig @@ -15,10 +14,11 @@ stdenv.mkDerivation rec { version = "1.51lw"; name = "${pkgname}-${version}"; - src = fetchurl { - url = "https://github.com/bytbox/${pkgname}/archive/v${version}.tar.gz"; - - sha256 = "11wi17bh2br1hp8gmq40b1hm5drm6h969505f7432zam3cm8mc8q"; + src = fetchFromGitHub { + owner = "bytbox"; + repo = pkgname; + rev = "v${version}"; + sha256 = "18fvdwwhcl6s4bpf2f2i389s71c8k4g0yb81am9rdddqmzaw27iy"; }; postPatch = '' @@ -28,12 +28,12 @@ stdenv.mkDerivation rec { substituteInPlace pommed/cd_eject.c --replace /usr/bin/eject ${eject}/bin/eject ''; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ pciutils - confuse + libconfuse alsaLib audiofile - pkgconfig zlib eject ]; diff --git a/pkgs/os-specific/linux/udisks-glue/default.nix b/pkgs/os-specific/linux/udisks-glue/default.nix index 56e237a9fad..37af3c92ea5 100644 --- a/pkgs/os-specific/linux/udisks-glue/default.nix +++ b/pkgs/os-specific/linux/udisks-glue/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, automake, autoconf, udisks1, dbus-glib, glib, confuse }: +{ stdenv, fetchurl, pkgconfig, automake, autoconf, udisks1, dbus-glib, glib, libconfuse }: stdenv.mkDerivation { name = "udisks-glue-1.3.5"; @@ -9,7 +9,7 @@ stdenv.mkDerivation { }; nativeBuildInputs = [ pkgconfig automake autoconf ]; - buildInputs = [ udisks1 dbus-glib glib confuse ]; + buildInputs = [ udisks1 dbus-glib glib libconfuse ]; preConfigure = "sh autogen.sh"; @@ -18,6 +18,6 @@ stdenv.mkDerivation { description = "A tool to associate udisks events to user-defined actions"; platforms = stdenv.lib.platforms.linux; maintainers = with stdenv.lib.maintainers; [pSub]; - license = stdenv.lib.licenses.free; + license = stdenv.lib.licenses.bsd2; }; } diff --git a/pkgs/tools/X11/dispad/default.nix b/pkgs/tools/X11/dispad/default.nix index 853feb08002..1d119220e58 100644 --- a/pkgs/tools/X11/dispad/default.nix +++ b/pkgs/tools/X11/dispad/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, libX11, libXi, confuse }: +{ stdenv, fetchFromGitHub, libX11, libXi, libconfuse }: stdenv.mkDerivation rec { name = "dispad-${version}"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { sha256 = "0y0n9mf1hs3s706gkpmg1lh74m6vvkqc9rdbzgc6s2k7vdl2zp1y"; }; - buildInputs = [ libX11 libXi confuse ]; + buildInputs = [ libX11 libXi libconfuse ]; meta = with stdenv.lib; { description = "A small daemon for disabling trackpads while typing"; diff --git a/pkgs/tools/misc/bmon/default.nix b/pkgs/tools/misc/bmon/default.nix index 9c7eafe351f..fc10538bbbb 100644 --- a/pkgs/tools/misc/bmon/default.nix +++ b/pkgs/tools/misc/bmon/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, ncurses, confuse +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, ncurses, libconfuse , libnl }: stdenv.mkDerivation rec { @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ ncurses confuse libnl ]; + buildInputs = [ ncurses libconfuse libnl ]; meta = with stdenv.lib; { description = "Network bandwidth monitor"; diff --git a/pkgs/tools/misc/xburst-tools/default.nix b/pkgs/tools/misc/xburst-tools/default.nix index ca642035a0b..aad5b35c79f 100644 --- a/pkgs/tools/misc/xburst-tools/default.nix +++ b/pkgs/tools/misc/xburst-tools/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchgit, libusb, libusb1, autoconf, automake, confuse, pkgconfig +{ stdenv, fetchgit, libusb, libusb1, autoconf, automake, libconfuse, pkgconfig , gccCross ? null }: @@ -28,8 +28,8 @@ stdenv.mkDerivation { # Not to strip cross build binaries (this is for the gcc-cross-wrapper) dontCrossStrip = true; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ libusb libusb1 autoconf automake confuse ] ++ + nativeBuildInputs = [ autoconf automake pkgconfig ]; + buildInputs = [ libusb libusb1 libconfuse ] ++ stdenv.lib.optional (gccCross != null) gccCross; meta = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7dbe7fc283a..59382e0e4fe 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9344,8 +9344,6 @@ with pkgs; commoncpp2 = callPackage ../development/libraries/commoncpp2 { }; - confuse = callPackage ../development/libraries/confuse { }; - coredumper = callPackage ../development/libraries/coredumper { }; ctl = callPackage ../development/libraries/ctl { }; @@ -22672,7 +22670,7 @@ with pkgs; vimUtils = callPackage ../misc/vim-plugins/vim-utils.nix { }; - vimPlugins = recurseIntoAttrs (callPackage ../misc/vim-plugins { + vimPlugins = recurseIntoAttrs (callPackage ../misc/vim-plugins { llvmPackages = llvmPackages_6; }); From 47c273905936b125eb47a83c41bef6a62ff6db66 Mon Sep 17 00:00:00 2001 From: c0bw3b Date: Sun, 25 Nov 2018 18:51:52 +0100 Subject: [PATCH 030/106] pommed: remove - homepage / source / patch are all gone - marked as broken since 16.03 - pommed module already relies on pommed_light --- pkgs/os-specific/linux/pommed/default.nix | 80 ------------------- .../linux/pommed/find-eject-in-path.patch | 12 --- pkgs/top-level/all-packages.nix | 2 - 3 files changed, 94 deletions(-) delete mode 100644 pkgs/os-specific/linux/pommed/default.nix delete mode 100644 pkgs/os-specific/linux/pommed/find-eject-in-path.patch diff --git a/pkgs/os-specific/linux/pommed/default.nix b/pkgs/os-specific/linux/pommed/default.nix deleted file mode 100644 index 3698b2b281f..00000000000 --- a/pkgs/os-specific/linux/pommed/default.nix +++ /dev/null @@ -1,80 +0,0 @@ -{ - stdenv -, fetchurl -, pciutils -, confuse -, dbus, dbus-glib -, alsaLib -, audiofile -, pkgconfig -, gtk2 -, gettext -, libXpm -}: - -let - - build_flags_patch = fetchurl { - url = http://patch-tracker.debian.org/patch/series/dl/pommed/1.39~dfsg-2/build_flags.patch; - sha256 = "109n5v0m91fqf8vqnpqg1zw8mk8fi9pkzqsfrmlavalg4xz49x9j"; - }; - -in - -stdenv.mkDerivation rec { - name = "pommed-1.39"; - - src = fetchurl { - url = "http://alioth.debian.org/frs/download.php/3583/${name}.tar.gz"; - sha256 = "18lxywmikanjr5pk1jdqda88dxd2579fpyd332xn4njjhlgwy5fp"; - }; - - patches = [ build_flags_patch ./find-eject-in-path.patch ]; - - buildInputs = [ - pciutils - confuse - dbus - alsaLib - audiofile - dbus-glib - pkgconfig - gtk2 - gettext - libXpm - ]; - - installPhase = '' - mkdir -pv $out/bin $out/etc/init.d $out/etc/dbus-1/system.d \ - $out/share/pommed $out/share/gpomme $out/share/applications \ - $out/share/icons/hicolor/scalable/apps $out/share/pixmaps - - install -v -m755 pommed/pommed wmpomme/wmpomme gpomme/gpomme $out/bin - install -v -m644 pommed/data/* $out/share/pommed - install -v -m644 pommed.conf.mactel $out/etc/pommed.conf - install -v -m644 pommed.init $out/etc/init.d - install -v -m644 dbus-policy.conf $out/etc/dbus-1/system.d/pommed.conf - - cp -av gpomme/themes $out/share/gpomme - for lang in de es fr it ja; do - mkdir -pv $out/share/locale/"$lang"/LC_MESSAGES - install -v -m644 gpomme/po/"$lang".mo $out/share/locale/"$lang"/LC_MESSAGES/gpomme.mo - done - install -v -m644 gpomme/gpomme*.desktop $out/share/applications - for size in 128 16 192 22 24 32 36 48 64 72 96; do - mkdir -pv $out/share/icons/hicolor/"$size"x"$size"/apps - install -v -m644 icons/gpomme_"$size"x"$size".png \ - $out/share/icons/hicolor/"$size"x"$size"/apps - done - install -v -m644 icons/gpomme.svg $out/share/icons/hicolor/scalable/apps - - install -v -m644 icons/gpomme_192x192.xpm $out/share/pixmaps/wmpomme.xpm - ''; - - meta = { - description = "A tool to handle hotkeys on Apple laptop keyboards"; - homepage = http://www.technologeek.org/projects/pommed/index.html; - license = stdenv.lib.licenses.gpl2; - broken = true; # hash changed, and it's quite suspicious - }; -} diff --git a/pkgs/os-specific/linux/pommed/find-eject-in-path.patch b/pkgs/os-specific/linux/pommed/find-eject-in-path.patch deleted file mode 100644 index d021a0290ee..00000000000 --- a/pkgs/os-specific/linux/pommed/find-eject-in-path.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur pommed-1.39-orig/pommed/cd_eject.c pommed-1.39/pommed/cd_eject.c ---- pommed-1.39-orig/pommed/cd_eject.c 2011-06-02 05:24:05.000000000 -0400 -+++ pommed-1.39/pommed/cd_eject.c 2012-03-20 14:25:33.397712520 -0400 -@@ -100,7 +100,7 @@ - for (fd = 3; fd < max_fd; fd++) - close(fd); - -- execve("/usr/bin/eject", eject_argv, eject_envp); -+ execvpe("eject", eject_argv, eject_envp); - - logmsg(LOG_ERR, "Could not execute eject: %s", strerror(errno)); - exit(1); diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 59382e0e4fe..1bd3238d997 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18569,8 +18569,6 @@ with pkgs; poezio = python3Packages.poezio; - pommed = callPackage ../os-specific/linux/pommed {}; - pommed_light = callPackage ../os-specific/linux/pommed-light {}; polymake = callPackage ../applications/science/math/polymake { }; From 042e81ae533b38bfa3f7cace6090c4638a63876f Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Mon, 2 Jul 2018 12:52:22 -0400 Subject: [PATCH 031/106] fusee-launcher: init at unstable-2018-07-14 --- .../tools/fusee-launcher/default.nix | 43 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 45 insertions(+) create mode 100644 pkgs/development/tools/fusee-launcher/default.nix diff --git a/pkgs/development/tools/fusee-launcher/default.nix b/pkgs/development/tools/fusee-launcher/default.nix new file mode 100644 index 00000000000..6210361eb88 --- /dev/null +++ b/pkgs/development/tools/fusee-launcher/default.nix @@ -0,0 +1,43 @@ +{ stdenv +, lib +, python3Packages +, python3 +, fetchFromGitHub +, pkgsCross +, makeWrapper +} : + +stdenv.mkDerivation rec { + name = "fusee-launcher-${version}"; + version = "unstable-2018-07-14"; + + src = fetchFromGitHub { + owner = "Cease-and-DeSwitch"; + repo = "fusee-launcher"; + rev = "265e8f3e1987751ec41db6f1946d132b296aba43"; + sha256 = "1pqkgw5bk0xcz9x7pc1f0r0b9nsc8jnnvcs1315d8ml8mx23fshm"; + }; + + installPhase = '' + mkdir -p $out/bin $out/share + cp fusee-launcher.py $out/bin/fusee-launcher + cp intermezzo.bin $out/share/intermezzo.bin + + # Wrap with path to intermezzo.bin relocator binary in /share + wrapProgram $out/bin/fusee-launcher \ + --add-flags "--relocator $out/share/intermezzo.bin" \ + --prefix PYTHONPATH : "$PYTHONPATH:$(toPythonPath $out)" + ''; + + nativeBuildInputs = [ pkgsCross.arm-embedded.buildPackages.gcc makeWrapper python3Packages.wrapPython ]; + buildInputs = [ python3 python3Packages.pyusb ]; + pythonPath = with python3Packages; [ pyusb ]; + + meta = with stdenv.lib; { + homepage = https://github.com/Cease-and-DeSwitch/fusee-launcher; + description = "Work-in-progress launcher for one of the Tegra X1 bootROM exploits"; + license = licenses.gpl2; + maintainers = with maintainers; [ pneumaticat ]; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fc9803590ab..f45e962cf39 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2768,6 +2768,8 @@ with pkgs; fuse-7z-ng = callPackage ../tools/filesystems/fuse-7z-ng { }; + fusee-launcher = callPackage ../development/tools/fusee-launcher { }; + fwknop = callPackage ../tools/security/fwknop { }; exfat = callPackage ../tools/filesystems/exfat { }; From 42f872e331fac20d7a46f79a4d8307a914eb0721 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Sun, 25 Nov 2018 15:43:01 -0300 Subject: [PATCH 032/106] nordic: 1.2.1 -> 1.3.0 (#51038) --- pkgs/misc/themes/nordic/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/misc/themes/nordic/default.nix b/pkgs/misc/themes/nordic/default.nix index 3945a7310cd..c375e21e3ae 100644 --- a/pkgs/misc/themes/nordic/default.nix +++ b/pkgs/misc/themes/nordic/default.nix @@ -2,16 +2,16 @@ stdenv.mkDerivation rec { name = "nordic-${version}"; - version = "1.2.1"; + version = "1.3.0"; srcs = [ (fetchurl { url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic.tar.xz"; - sha256 = "1k8fzvjb92wcqha378af5hk6r75xanff9iwlx51jmi67ny8z28pn"; + sha256 = "04axs2yldppcx159nwj70g4cyw0hbbzk5250677i9ny8b0w3gr9x"; }) (fetchurl { url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic-standard-buttons.tar.xz"; - sha256 = "12w01z88rqkds1wm2kskql1x5c6prpgpc9cxxnl0b11knsfhi6jn"; + sha256 = "0xnj1am1q26xppp8y07iik648hhgn3gmzqvkdhg3il4qnkndjvld"; }) ]; From 3ec6262ccae46322d54c00cf3c11b633e2834111 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 25 Nov 2018 18:55:38 +0000 Subject: [PATCH 033/106] rake: 12.0.0 -> 12.3.1 Fixes https://github.com/NixOS/nixpkgs/issues/36912. --- pkgs/development/tools/build-managers/rake/Gemfile.lock | 4 ++-- pkgs/development/tools/build-managers/rake/gemset.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/tools/build-managers/rake/Gemfile.lock b/pkgs/development/tools/build-managers/rake/Gemfile.lock index c7f89c32c3f..6f6bcc41f9b 100644 --- a/pkgs/development/tools/build-managers/rake/Gemfile.lock +++ b/pkgs/development/tools/build-managers/rake/Gemfile.lock @@ -1,7 +1,7 @@ GEM remote: https://rubygems.org/ specs: - rake (12.0.0) + rake (12.3.1) PLATFORMS ruby @@ -10,4 +10,4 @@ DEPENDENCIES rake BUNDLED WITH - 1.14.6 + 1.17.1 diff --git a/pkgs/development/tools/build-managers/rake/gemset.nix b/pkgs/development/tools/build-managers/rake/gemset.nix index d5dc29e378a..c1a3a511b22 100644 --- a/pkgs/development/tools/build-managers/rake/gemset.nix +++ b/pkgs/development/tools/build-managers/rake/gemset.nix @@ -2,9 +2,9 @@ rake = { source = { remotes = ["https://rubygems.org"]; - sha256 = "01j8fc9bqjnrsxbppncai05h43315vmz9fwg28qdsgcjw9ck1d7n"; + sha256 = "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg"; type = "gem"; }; - version = "12.0.0"; + version = "12.3.1"; }; } \ No newline at end of file From 21773f1d431a6181e6bbd94abaeba7d36bdb204a Mon Sep 17 00:00:00 2001 From: Samuel Ruprecht Date: Sun, 25 Nov 2018 20:14:34 +0100 Subject: [PATCH 034/106] cadence: fix wrong wrappings (#50610) * cadence: fix wrong wrappings (#50610) * cadence: split native build inputs + fix license : this is under GPL2+ and not MIT * cadence: use fetchzip Because GitHub archives are not stable over time so better to compute the hash of the unpacked content * cadence: limit to x64-linux Broken on aarch64 because the Makefile pass "-msse -mfpmath=sse" flags (x86 only) --- pkgs/applications/audio/cadence/default.nix | 80 ++++++++++++--------- 1 file changed, 48 insertions(+), 32 deletions(-) diff --git a/pkgs/applications/audio/cadence/default.nix b/pkgs/applications/audio/cadence/default.nix index 87dbb310995..c4e34ff7ce7 100644 --- a/pkgs/applications/audio/cadence/default.nix +++ b/pkgs/applications/audio/cadence/default.nix @@ -1,5 +1,5 @@ { stdenv -, fetchurl +, fetchzip , pkgconfig , qtbase , makeWrapper @@ -12,31 +12,13 @@ version = "0.9.0"; name = "cadence"; - src = fetchurl { + src = fetchzip { url = "https://github.com/falkTX/Cadence/archive/v${version}.tar.gz"; - sha256 = "07z1mnb0bmldb3i31bgw816pnvlvr9gawr51rpx3mhixg5wpiqzb"; + sha256 = "08vcggypkdfr70v49innahs5s11hi222dhhnm5wcqzdgksphqzwx"; }; - buildInputs = [ - makeWrapper - pkgconfig - qtbase - ]; - - apps = [ - "cadence" - "cadence-jacksettings" - "cadence-pulse2loopback" - "claudia" - "cadence-aloop-daemon" - "cadence-logs" - "cadence-render" - "catarina" - "claudia-launcher" - "cadence-pulse2jack" - "cadence-session-start" - "catia" - ]; + nativeBuildInputs = [ makeWrapper pkgconfig ]; + buildInputs = [ qtbase ]; makeFlags = '' PREFIX="" @@ -46,20 +28,54 @@ propagatedBuildInputs = with python3Packages; [ pyqt5 ]; postInstall = '' - # replace with our own wrappers. - for app in $apps; do - rm $out/bin/$app - makeWrapper ${python3Packages.python.interpreter} $out/bin/$app \ - --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ - --add-flags "-O $out/share/cadence/src/$app.py" - done + # replace with our own wrappers. They need to be changed manually since it wouldn't work otherwise + rm $out/bin/cadence + makeWrapper ${python3Packages.python.interpreter} $out/bin/cadence \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/cadence.py" + rm $out/bin/claudia + makeWrapper ${python3Packages.python.interpreter} $out/bin/claudia \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/claudia.py" + rm $out/bin/catarina + makeWrapper ${python3Packages.python.interpreter} $out/bin/catarina \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/catarina.py" + rm $out/bin/catia + makeWrapper ${python3Packages.python.interpreter} $out/bin/catia \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/catia.py" + rm $out/bin/cadence-jacksettings + makeWrapper ${python3Packages.python.interpreter} $out/bin/cadence-jacksettings \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/jacksettings.py" + rm $out/bin/cadence-aloop-daemon + makeWrapper ${python3Packages.python.interpreter} $out/bin/cadence-aloop-daemon \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/cadence_aloop_daemon.py" + rm $out/bin/cadence-logs + makeWrapper ${python3Packages.python.interpreter} $out/bin/cadence-logs \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/logs.py" + rm $out/bin/cadence-render + makeWrapper ${python3Packages.python.interpreter} $out/bin/cadence-render \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/render.py" + rm $out/bin/claudia-launcher + makeWrapper ${python3Packages.python.interpreter} $out/bin/claudia-launcher \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/claudia_launcher.py" + rm $out/bin/cadence-session-start + makeWrapper ${python3Packages.python.interpreter} $out/bin/cadence-session-start \ + --set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \ + --add-flags "-O $out/share/cadence/src/cadence_session_start.py" ''; meta = { homepage = https://github.com/falkTX/Cadence/; description = "Collection of tools useful for audio production"; - license = stdenv.lib.licenses.mit; + license = stdenv.lib.licenses.gpl2Plus; maintainers = with stdenv.lib.maintainers; [ genesis ]; - platforms = stdenv.lib.platforms.linux; + platforms = [ "x86_64-linux" ]; }; } From 604b0f34c96e0c72640719d59bcc92cb64550ff0 Mon Sep 17 00:00:00 2001 From: Renaud Date: Sun, 25 Nov 2018 20:51:59 +0100 Subject: [PATCH 035/106] taglib_1_9: refresh meta --- pkgs/development/libraries/taglib/1.9.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/taglib/1.9.nix b/pkgs/development/libraries/taglib/1.9.nix index 99892a41fa4..8992c7e75c0 100644 --- a/pkgs/development/libraries/taglib/1.9.nix +++ b/pkgs/development/libraries/taglib/1.9.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation rec { name = "taglib-1.9.1"; src = fetchurl { - url = http://taglib.github.io/releases/taglib-1.9.1.tar.gz; + url = https://taglib.github.io/releases/taglib-1.9.1.tar.gz; sha256 = "06n7gnbcqa3r6c9gv00y0y1r48dyyazm6yj403i7ma0r2k6p3lvj"; }; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { buildInputs = [ zlib ]; meta = { - homepage = http://developer.kde.org/~wheeler/taglib.html; + homepage = https://taglib.org/; repositories.git = git://github.com/taglib/taglib.git; description = "A library for reading and editing the meta-data of several popular audio formats"; inherit (cmake.meta) platforms; From 6760af490e5e9e99dbdd80967055c83e91c0c457 Mon Sep 17 00:00:00 2001 From: Tobias Happ Date: Sun, 25 Nov 2018 21:13:04 +0100 Subject: [PATCH 036/106] dwm-status: 1.2.0 -> 1.4.0 --- pkgs/applications/window-managers/dwm/dwm-status.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/window-managers/dwm/dwm-status.nix b/pkgs/applications/window-managers/dwm/dwm-status.nix index 028bb8c87ee..16a67030736 100644 --- a/pkgs/applications/window-managers/dwm/dwm-status.nix +++ b/pkgs/applications/window-managers/dwm/dwm-status.nix @@ -3,13 +3,13 @@ rustPlatform.buildRustPackage rec { name = "dwm-status-${version}"; - version = "1.2.0"; + version = "1.4.0"; src = fetchFromGitHub { owner = "Gerschtli"; repo = "dwm-status"; rev = version; - sha256 = "0bv1jkqkf509akg3dvdy8b2q1kh8i75vw4n6a9rjvslx9s9nh6ca"; + sha256 = "1v9ksv8hdxhpm7vs71p9s1y3gnahczza0w4wyrk2fsc6x2kwlh6x"; }; nativeBuildInputs = [ makeWrapper pkgconfig ]; From ed99c2266f76e93ed22e60337061208b9891afc4 Mon Sep 17 00:00:00 2001 From: Stephen Date: Sun, 25 Nov 2018 12:35:17 -0800 Subject: [PATCH 037/106] terragrunt: 0.17.2 -> 0.17.3 (#51035) --- pkgs/applications/networking/cluster/terragrunt/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terragrunt/default.nix b/pkgs/applications/networking/cluster/terragrunt/default.nix index cb8cae47ab3..ab884a1b97c 100644 --- a/pkgs/applications/networking/cluster/terragrunt/default.nix +++ b/pkgs/applications/networking/cluster/terragrunt/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { name = "terragrunt-${version}"; - version = "0.17.2"; + version = "0.17.3"; goPackagePath = "github.com/gruntwork-io/terragrunt"; @@ -10,7 +10,7 @@ buildGoPackage rec { owner = "gruntwork-io"; repo = "terragrunt"; rev = "v${version}"; - sha256 = "069l9ynyl96rfs9zw6w6n1yzjjin27731nj1ajr9jsyc8rhd84wv"; + sha256 = "1b0fwql9nr00qpvcbsbdymxf1wrgr590gkms7yz3yirb4xfl3gl3"; }; goDeps = ./deps.nix; From 50001295d579bbbe23c7ff3bbdb95428d7de63a1 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sun, 25 Nov 2018 15:44:58 -0500 Subject: [PATCH 038/106] pythonPackages.nvchecker: 1.1 -> 1.2.7 --- pkgs/development/python-modules/nvchecker/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/nvchecker/default.nix b/pkgs/development/python-modules/nvchecker/default.nix index 6e70f90e370..a015a124738 100644 --- a/pkgs/development/python-modules/nvchecker/default.nix +++ b/pkgs/development/python-modules/nvchecker/default.nix @@ -1,16 +1,15 @@ -{ stdenv, buildPythonPackage, fetchPypi, pythonOlder, pytest, setuptools, structlog, pytest-asyncio, pytest_xdist, flaky, tornado }: +{ stdenv, buildPythonPackage, fetchPypi, pythonOlder, pytest, setuptools, structlog, pytest-asyncio, pytest_xdist, flaky, tornado, pycurl }: buildPythonPackage rec { pname = "nvchecker"; - version = "1.1"; + version = "1.2.7"; src = fetchPypi { inherit pname version; - sha256 = "1nk9ff26s5r6v5v7w4l9110qi5kmhllvwk5kh20zyyhdvxv72m3i"; + sha256 = "19qc2wwkdr701mx94r75ayq5h2jz3q620hcqaj2ng9qdgxm90940"; }; - # tornado is not present in the tarball setup.py but is required by the executable - propagatedBuildInputs = [ setuptools structlog tornado ]; + propagatedBuildInputs = [ setuptools structlog tornado pycurl ]; checkInputs = [ pytest pytest-asyncio pytest_xdist flaky ]; # Disable tests for now, because our version of pytest seems to be too new From 3a43ca11345cb139bd1d90e2689f4d9a1812620a Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sun, 25 Nov 2018 15:57:23 -0500 Subject: [PATCH 039/106] vale: 1.0.3 -> 1.2.6 --- pkgs/tools/text/vale/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/text/vale/default.nix b/pkgs/tools/text/vale/default.nix index 5fe4ab5d723..dc2e330e013 100644 --- a/pkgs/tools/text/vale/default.nix +++ b/pkgs/tools/text/vale/default.nix @@ -2,22 +2,21 @@ buildGoPackage rec { name = "vale-${version}"; - version = "1.0.3"; - rev = "v${version}"; + version = "1.2.6"; goPackagePath = "github.com/errata-ai/vale"; src = fetchFromGitHub { - inherit rev; owner = "errata-ai"; repo = "vale"; - sha256 = "132zzgry19alcdn3m3q62sp2lm3yxc4kil12lm309jl7b3n0850h"; + rev = "v${version}"; + sha256 = "1mhynasikncwz9dkk9z27qvwk03j7q0vx0wjnqg69pd97lgrp7zp"; }; goDeps = ./deps.nix; meta = with stdenv.lib; { - homepage = https://errata.ai/vale/getting-started/; + homepage = https://errata-ai.github.io/vale/; description = "Vale is an open source linter for prose"; license = licenses.mit; maintainers = [ maintainers.marsam ]; From 02e9d06e5e54550c99814402bcebaedc261b6da2 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 24 Nov 2018 20:19:34 -0500 Subject: [PATCH 040/106] keybase-gui: 2.7.0 -> 2.11.0 - Use `autoPatchelfHook` - Don't explicitly set phases - Part of #28910 - Correct `version` by hoisting out the suffix --- pkgs/tools/security/keybase/gui.nix | 55 ++++++++++++++++++----------- 1 file changed, 35 insertions(+), 20 deletions(-) diff --git a/pkgs/tools/security/keybase/gui.nix b/pkgs/tools/security/keybase/gui.nix index 8831f26a42d..422ca4ac9cf 100644 --- a/pkgs/tools/security/keybase/gui.nix +++ b/pkgs/tools/security/keybase/gui.nix @@ -1,9 +1,26 @@ -{ stdenv, fetchurl, alsaLib, atk, cairo, cups -, dbus, expat, fontconfig, freetype, gcc, gdk_pixbuf, glib, gnome2, gtk3 -, libnotify, nspr, nss, pango, systemd, xorg }: +{ stdenv, fetchurl, alsaLib, atk, cairo, cups, udev, hicolor-icon-theme +, dbus, expat, fontconfig, freetype, gdk_pixbuf, glib, gnome2, gtk3, gnome3 +, libnotify, nspr, nss, pango, systemd, xorg, autoPatchelfHook, wrapGAppsHook }: let - libPath = stdenv.lib.makeLibraryPath [ + versionSuffix = "20181121195344.99751ac04f"; +in + +stdenv.mkDerivation rec { + name = "keybase-gui-${version}"; + version = "2.11.0"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages + + src = fetchurl { + url = "https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_${version + "-" + versionSuffix}_amd64.deb"; + sha256 = "1gh7brdw2p4xfdgc43vrmv0lvki2f3691mfh6lvksy1dv43yb8zl"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + wrapGAppsHook + ]; + + buildInputs = [ alsaLib atk cairo @@ -12,10 +29,10 @@ let expat fontconfig freetype - gcc.cc gdk_pixbuf glib gnome2.GConf + gnome3.gsettings-desktop-schemas gtk3 libnotify nspr @@ -23,7 +40,7 @@ let pango systemd xorg.libX11 - xorg.libxcb + xorg.libXScrnSaver xorg.libXcomposite xorg.libXcursor xorg.libXdamage @@ -32,22 +49,23 @@ let xorg.libXi xorg.libXrandr xorg.libXrender - xorg.libXScrnSaver xorg.libXtst + xorg.libxcb ]; -in -stdenv.mkDerivation rec { - name = "keybase-gui-${version}"; - version = "2.7.0-20180926133747.0d62c866fc"; - src = fetchurl { - url = "https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_${version}_amd64.deb"; - sha256 = "0a0ax3skfw398vcjl7822qp7160lbll1snwdqsa13dy8qrjl1byp"; - }; - phases = ["unpackPhase" "installPhase" "fixupPhase"]; + + runtimeDependencies = [ + udev.lib + ]; + + dontBuild = true; + dontConfigure = true; + dontPatchElf = true; + unpackPhase = '' ar xf $src tar xf data.tar.xz ''; + installPhase = '' mkdir -p $out/bin mv usr/share $out/share @@ -83,13 +101,10 @@ stdenv.mkDerivation rec { substituteInPlace $out/share/applications/keybase.desktop \ --replace run_keybase $out/bin/keybase-gui ''; - postFixup = '' - patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) --set-rpath "${libPath}:\$ORIGIN" "$out/share/keybase/Keybase" - ''; meta = with stdenv.lib; { homepage = https://www.keybase.io/; - description = "The Keybase official GUI."; + description = "The Keybase official GUI"; platforms = platforms.linux; maintainers = with maintainers; [ puffnfresh np ]; license = licenses.bsd3; From 3fdbd985d992c1dfc5f2e043bd2e6abdeeec5972 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 24 Nov 2018 20:32:18 -0500 Subject: [PATCH 041/106] keybase: 2.7.3 -> 2.10.1 --- pkgs/tools/security/keybase/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/security/keybase/default.nix b/pkgs/tools/security/keybase/default.nix index 720c382ebd6..a13adad037d 100644 --- a/pkgs/tools/security/keybase/default.nix +++ b/pkgs/tools/security/keybase/default.nix @@ -5,7 +5,7 @@ buildGoPackage rec { name = "keybase-${version}"; - version = "2.7.3"; + version = "2.10.1"; goPackagePath = "github.com/keybase/client"; subPackages = [ "go/keybase" ]; @@ -16,7 +16,7 @@ buildGoPackage rec { owner = "keybase"; repo = "client"; rev = "v${version}"; - sha256 = "1sw6v3vf544vp8grw8p287cx078mr9v0v1wffcj6f9p9shlwj7ic"; + sha256 = "1gfxnqzs8msxmykg1zrhrrl2slmb29gl7b8s4m2g44zxaj91gfi9"; }; buildInputs = lib.optionals stdenv.isDarwin [ From b49ed49c68e5950c9f77e000ddeb68dd665e5563 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sun, 25 Nov 2018 03:44:28 -0500 Subject: [PATCH 042/106] kbfs: 2.6.0 -> 2.10.1 --- pkgs/tools/security/kbfs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/security/kbfs/default.nix b/pkgs/tools/security/kbfs/default.nix index f5b2ba3803c..e8824bd73fc 100644 --- a/pkgs/tools/security/kbfs/default.nix +++ b/pkgs/tools/security/kbfs/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { name = "kbfs-${version}"; - version = "2.6.0"; + version = "2.10.1"; goPackagePath = "github.com/keybase/kbfs"; subPackages = [ "kbfsfuse" "kbfsgit/git-remote-keybase" ]; @@ -13,7 +13,7 @@ buildGoPackage rec { owner = "keybase"; repo = "kbfs"; rev = "v${version}"; - sha256 = "0i4f1bc0gcnax572s749m7zcpy53a0f9yzi4lwc312zzxi7krz2f"; + sha256 = "0c03jm4pxqh4cfg1d7c833hdl8l57f1sbfqxwdq16y5s2cac1yss"; }; buildFlags = [ "-tags production" ]; From 7eeb02d47b388ac4f66f4b77cddffa409042a8d8 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Sun, 25 Nov 2018 15:51:37 -0600 Subject: [PATCH 043/106] Revert "make-derivation: add disallowedReferences in strictDeps" This reverts commit 8dbfb61e4617050917ce6bb7c5f4efc902c2a36c. Also reverts commit fc99c337edd29d9596379667063bc3a8f3cea5b3. Fixes #50915 --- pkgs/stdenv/generic/make-derivation.nix | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index 60d6f1bd92c..6c0c94487de 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -228,22 +228,6 @@ rec { inherit doCheck doInstallCheck; inherit outputs; - } // lib.optionalAttrs strictDeps { - # Make sure "build" dependencies don’t leak into outputs. We - # want to disallow references to depsBuildBuild, - # nativeBuildInputs, and depsBuildTarget. But depsHostHost, - # buildInputs, and depsTargetTarget is okay, so we subtract - # those from disallowedReferences in case a dependency is - # listed in multiple dependency lists. We also include - # propagated dependencies here as well. - disallowedReferences = (attrs.disallowedReferences or []) - ++ (lib.subtractLists - (lib.concatLists ((lib.elemAt propagatedDependencies 0) ++ - (lib.elemAt propagatedDependencies 1) ++ - (lib.elemAt dependencies 1) ++ - (lib.elemAt propagatedDependencies 2) ++ - (lib.elemAt dependencies 2) ) ) - (lib.concatLists ((lib.elemAt dependencies 0)) ) ); } // lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) { cmakeFlags = (/**/ if lib.isString cmakeFlags then [cmakeFlags] From 1268b3825433cd019d673bc43cd5fa23b2a787c4 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 25 Nov 2018 22:47:25 +0000 Subject: [PATCH 044/106] Revert "Use older version of jailbreak-cabal with ghcHEAD" This reverts commit d13f7c54e30b5eb9e90f226d2a947f66a0ce1b38. ghc802 is no longer in Nixpkgs as of 2f0de54ddbfdb03540128f8d2abcc47221d42b25. The Cabal bug that ghc802 was a workaround for was fixed in Cabal 2.2, though, so this shouldn't be necessary any more. Upstream bugs: https://github.com/peti/jailbreak-cabal/issues/13 https://github.com/haskell/cabal/issues/4719 Fixes https://github.com/NixOS/nixpkgs/issues/51042. --- pkgs/development/haskell-modules/configuration-ghc-head.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/haskell-modules/configuration-ghc-head.nix b/pkgs/development/haskell-modules/configuration-ghc-head.nix index 99f4cd87ce5..b71f75033f0 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-head.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-head.nix @@ -40,7 +40,7 @@ self: super: { xhtml = null; # jailbreak-cabal can use the native Cabal library. - jailbreak-cabal = pkgs.haskell.packages.ghc802.jailbreak-cabal; + jailbreak-cabal = super.jailbreak-cabal.override { Cabal = null; }; # haddock: No input file(s). nats = dontHaddock super.nats; From 40589583c509e87cba70e9eed50c1939b092a0b5 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 25 Nov 2018 23:00:40 +0000 Subject: [PATCH 045/106] pew: fix build Fixes https://github.com/NixOS/nixpkgs/issues/51034. --- pkgs/development/tools/pew/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/tools/pew/default.nix b/pkgs/development/tools/pew/default.nix index 73046165b1a..7ad68d8844b 100644 --- a/pkgs/development/tools/pew/default.nix +++ b/pkgs/development/tools/pew/default.nix @@ -11,6 +11,8 @@ with python3Packages; buildPythonApplication rec { propagatedBuildInputs = [ virtualenv virtualenv-clone setuptools ]; + LC_ALL = "en_US.UTF-8"; + postFixup = '' set -euo pipefail PEW_SITE="$out/lib/${python.libPrefix}/site-packages" From debe712d7a4fe9b26f1182074d5eb28e96a1d8c8 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 25 Nov 2018 23:06:41 +0000 Subject: [PATCH 046/106] pew: add homepage --- pkgs/development/tools/pew/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/tools/pew/default.nix b/pkgs/development/tools/pew/default.nix index 7ad68d8844b..6f26a48b9c4 100644 --- a/pkgs/development/tools/pew/default.nix +++ b/pkgs/development/tools/pew/default.nix @@ -26,6 +26,7 @@ with python3Packages; buildPythonApplication rec { ''; meta = with stdenv.lib; { + homepage = https://github.com/berdario/pew; description = "Tools to manage multiple virtualenvs written in pure python"; license = licenses.mit; platforms = platforms.all; From b5cce32ea95791514b043d786a56218d0c7fe77f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benno=20F=C3=BCnfst=C3=BCck?= Date: Mon, 26 Nov 2018 00:20:43 +0100 Subject: [PATCH 047/106] linux_rpi: enable aarch64 build on hydra --- pkgs/os-specific/linux/kernel/linux-rpi.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix index 096b3ecde22..2d0fe730451 100644 --- a/pkgs/os-specific/linux/kernel/linux-rpi.nix +++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix @@ -25,7 +25,7 @@ lib.overrideDerivation (buildLinux (args // rec { efiBootStub = false; } // (args.features or {}); - extraMeta.hydraPlatforms = []; + extraMeta.hydraPlatforms = with stdenv.lib.platforms; [ aarch64 ]; })) (oldAttrs: { postConfigure = '' # The v7 defconfig has this set to '-v7' which screws up our modDirVersion. From dd4c1d0ea0afd3381ddf12436ec38f2a147633a5 Mon Sep 17 00:00:00 2001 From: Roman Volosatovs Date: Mon, 26 Nov 2018 01:00:25 +0100 Subject: [PATCH 048/106] pythonPackages.simplekml: Init at 1.3.1 (#50883) * pythonPackages.simplekml: Init at 1.3.1 * pythonPackages.simplekml: correct description --- .../python-modules/simplekml/default.nix | 20 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 22 insertions(+) create mode 100644 pkgs/development/python-modules/simplekml/default.nix diff --git a/pkgs/development/python-modules/simplekml/default.nix b/pkgs/development/python-modules/simplekml/default.nix new file mode 100644 index 00000000000..d97c1b0c963 --- /dev/null +++ b/pkgs/development/python-modules/simplekml/default.nix @@ -0,0 +1,20 @@ +{ lib , buildPythonPackage , fetchPypi }: + +buildPythonPackage rec { + pname = "simplekml"; + version = "1.3.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "30c121368ce1d73405721730bf766721e580cae6fbb7424884c734c89ec62ad7"; + }; + + doCheck = false; # no tests are defined in 1.3.1 + + meta = with lib; { + description = "Generate KML with as little effort as possible"; + homepage = https://readthedocs.org/projects/simplekml/; + license = licenses.lgpl3Plus; + maintainers = with maintainers; [ rvolosatovs ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9e0bcb1b52d..020f0aaa239 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3829,6 +3829,8 @@ in { simplejson = callPackage ../development/python-modules/simplejson { }; + simplekml = callPackage ../development/python-modules/simplekml { }; + slimit = callPackage ../development/python-modules/slimit { }; snowballstemmer = callPackage ../development/python-modules/snowballstemmer { }; From 5518f1ce58a914056fa7952f99d6b7b4c68bf24f Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sun, 25 Nov 2018 19:06:07 -0500 Subject: [PATCH 049/106] pythonPackages.pandas: don't run tests on aarch64 --- pkgs/development/python-modules/pandas/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/pandas/default.nix b/pkgs/development/python-modules/pandas/default.nix index 02427a52425..839e7f1e819 100644 --- a/pkgs/development/python-modules/pandas/default.nix +++ b/pkgs/development/python-modules/pandas/default.nix @@ -87,6 +87,8 @@ in buildPythonPackage rec { "test_clipboard" ]); + doCheck = !stdenv.isAarch64; # upstream doesn't test this architecture + checkPhase = '' runHook preCheck '' From e446261e51c0e95fa2290b8fc638f5d26c092a5f Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 26 Nov 2018 01:13:14 +0100 Subject: [PATCH 050/106] nix-zsh-completions: 0.4.0 -> 0.4.1 Contains several bugfixes that improve the ZSH completion for nix* commands. For further reference: https://github.com/spwhitt/nix-zsh-completions/releases/tag/0.4.1 --- pkgs/shells/zsh/nix-zsh-completions/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/shells/zsh/nix-zsh-completions/default.nix b/pkgs/shells/zsh/nix-zsh-completions/default.nix index 4405902ec3e..861a6d05df6 100644 --- a/pkgs/shells/zsh/nix-zsh-completions/default.nix +++ b/pkgs/shells/zsh/nix-zsh-completions/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub }: let - version = "0.4.0"; + version = "0.4.1"; in stdenv.mkDerivation rec { @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { owner = "spwhitt"; repo = "nix-zsh-completions"; rev = "${version}"; - sha256 = "0m8b9xgbz2nvk1q7m0gqy83gbqa49n062gymhk9x93zhbdh8vwky"; + sha256 = "1p2y1sg6jghixv2j3fwxnkyl3idj44gcm71bbn25mnqfhm0z25hr"; }; installPhase = '' From 9f23a63f79e1a9d4a7f51444c12605d73ec770e1 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 26 Nov 2018 01:13:59 +0100 Subject: [PATCH 051/106] autoPatchelfHook: Fix type of norecurse variable While declaring it as an array doesn't do any harm in our usage, it might be a bit confusing when reading the code. Signed-off-by: aszlig --- pkgs/build-support/setup-hooks/auto-patchelf.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/setup-hooks/auto-patchelf.sh b/pkgs/build-support/setup-hooks/auto-patchelf.sh index 61bdafa88c3..9a124f415b8 100644 --- a/pkgs/build-support/setup-hooks/auto-patchelf.sh +++ b/pkgs/build-support/setup-hooks/auto-patchelf.sh @@ -173,7 +173,7 @@ addAutoPatchelfSearchPath() { } autoPatchelf() { - local -a norecurse= + local norecurse= while [ $# -gt 0 ]; do case "$1" in From b7c28485f1e5dff220a7b60a497522d0f73a751e Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sat, 27 Oct 2018 07:39:49 -0500 Subject: [PATCH 052/106] pgcenter: init at 0.5.0 --- pkgs/tools/misc/pgcenter/default.nix | 24 ++++++ pkgs/tools/misc/pgcenter/deps.nix | 112 +++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 138 insertions(+) create mode 100644 pkgs/tools/misc/pgcenter/default.nix create mode 100644 pkgs/tools/misc/pgcenter/deps.nix diff --git a/pkgs/tools/misc/pgcenter/default.nix b/pkgs/tools/misc/pgcenter/default.nix new file mode 100644 index 00000000000..81a98b562f7 --- /dev/null +++ b/pkgs/tools/misc/pgcenter/default.nix @@ -0,0 +1,24 @@ +{ stdenv, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + name = "pgcenter-${version}"; + version = "0.5.0"; + + goPackagePath = "github.com/lesovsky/pgcenter"; + + src = fetchFromGitHub { + owner = "lesovsky"; + repo = "pgcenter"; + rev = "v${version}"; + sha256 = "1bbpzli8hh5356gink6byk085zyfwxi8wigdy5cbadppx4qnk078"; + }; + + goDeps = ./deps.nix; + + meta = with stdenv.lib; { + homepage = https://pgcenter.org/; + description = "Command-line admin tool for observing and troubleshooting PostgreSQL"; + license = licenses.bsd3; + maintainers = [ maintainers.marsam ]; + }; +} diff --git a/pkgs/tools/misc/pgcenter/deps.nix b/pkgs/tools/misc/pgcenter/deps.nix new file mode 100644 index 00000000000..1b12538155c --- /dev/null +++ b/pkgs/tools/misc/pgcenter/deps.nix @@ -0,0 +1,112 @@ +[ + + { + goPackagePath = "github.com/inconshreveable/mousetrap"; + fetch = { + type = "git"; + url = "https://github.com/inconshreveable/mousetrap"; + rev = "v1.0.0"; + sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152"; + }; + } + + { + goPackagePath = "github.com/jehiah/go-strftime"; + fetch = { + type = "git"; + url = "https://github.com/jehiah/go-strftime"; + rev = "1d33003b3869"; + sha256 = "056zagn4zhmrcqg8y5k5wql01x4ijbxn4pv75bh1bn45by6qx1gv"; + }; + } + + { + goPackagePath = "github.com/jroimartin/gocui"; + fetch = { + type = "git"; + url = "https://github.com/jroimartin/gocui"; + rev = "v0.4.0"; + sha256 = "1b1cbjg925l1c5v3ls8amni9716190yzf847cqs9wjnj82z8qa47"; + }; + } + + { + goPackagePath = "github.com/lib/pq"; + fetch = { + type = "git"; + url = "https://github.com/lib/pq"; + rev = "v1.0.0"; + sha256 = "1zqnnyczaf00xi6xh53vq758v5bdlf0iz7kf22l02cal4i6px47i"; + }; + } + + { + goPackagePath = "github.com/mattn/go-runewidth"; + fetch = { + type = "git"; + url = "https://github.com/mattn/go-runewidth"; + rev = "v0.0.3"; + sha256 = "0lc39b6xrxv7h3v3y1kgz49cgi5qxwlygs715aam6ba35m48yi7g"; + }; + } + + { + goPackagePath = "github.com/nsf/termbox-go"; + fetch = { + type = "git"; + url = "https://github.com/nsf/termbox-go"; + rev = "b66b20ab708e"; + sha256 = "0wrgnwfdxrspni5q15vzr5q1bxnzb7m6q4xjhllcyddgn2zqprsa"; + }; + } + + { + goPackagePath = "github.com/pkg/errors"; + fetch = { + type = "git"; + url = "https://github.com/pkg/errors"; + rev = "v0.8.0"; + sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5"; + }; + } + + { + goPackagePath = "github.com/spf13/cobra"; + fetch = { + type = "git"; + url = "https://github.com/spf13/cobra"; + rev = "v0.0.3"; + sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd"; + }; + } + + { + goPackagePath = "github.com/spf13/pflag"; + fetch = { + type = "git"; + url = "https://github.com/spf13/pflag"; + rev = "v1.0.2"; + sha256 = "005598piihl3l83a71ahj10cpq9pbhjck4xishx1b4dzc02r9xr2"; + }; + } + + { + goPackagePath = "golang.org/x/crypto"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/crypto"; + rev = "0e37d006457b"; + sha256 = "1fj8rvrhgv5j8pmckzphvm3sqkzhcqp3idkxvgv13qrjdfycsa5r"; + }; + } + + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "ee1b12c67af4"; + sha256 = "0cgp0xzbhg3fr77n2qrfmmsvhc287srnwi4mghwcjdxp6rx0s988"; + }; + } +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76f9067f787..4dcf945662f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4794,6 +4794,8 @@ with pkgs; pg_top = callPackage ../tools/misc/pg_top { }; + pgcenter = callPackage ../tools/misc/pgcenter { }; + pgmetrics = callPackage ../tools/misc/pgmetrics { }; pdsh = callPackage ../tools/networking/pdsh { From 4a6e3e4185dcbe53c3d5eceaf2570d51516ad2b4 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 26 Nov 2018 01:58:36 +0100 Subject: [PATCH 053/106] autoPatchelfHook: Skip on missing segment headers If the file in question is not a shared object file but an ELF, we really want to skip the file, because we won't have anything to patch there. For example if the file is created via "gcc -c -o foo.o foo.c", we don't get a segment header and so far autoPatchelf was trying to patch such a file. By checking for missing segment headers, we're now no longer going to attempt patching such a file. Signed-off-by: aszlig Reported-by: Sander van der Burg --- pkgs/build-support/setup-hooks/auto-patchelf.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/setup-hooks/auto-patchelf.sh b/pkgs/build-support/setup-hooks/auto-patchelf.sh index 9a124f415b8..5bedd1a9f9c 100644 --- a/pkgs/build-support/setup-hooks/auto-patchelf.sh +++ b/pkgs/build-support/setup-hooks/auto-patchelf.sh @@ -205,9 +205,12 @@ autoPatchelf() { # outside of this function. while IFS= read -r -d $'\0' file; do isELF "$file" || continue + segmentHeaders="$(LANG=C readelf -l "$file")" + # Skip if the ELF file doesn't have segment headers (eg. object files). + echo "$segmentHeaders" | grep -q '^Program Headers:' || continue if isExecutable "$file"; then # Skip if the executable is statically linked. - LANG=C readelf -l "$file" | grep -q "^ *INTERP\\>" || continue + echo "$segmentHeaders" | grep -q "^ *INTERP\\>" || continue fi autoPatchelfFile "$file" done < <(find "$@" ${norecurse:+-maxdepth 1} -type f -print0) From bff473b034df75a530919e33fbfe8beb4c776d69 Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Sun, 25 Nov 2018 20:02:22 -0500 Subject: [PATCH 054/106] linux: 4.20-rc3 -> 4.20-rc4 --- pkgs/os-specific/linux/kernel/linux-testing.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index 36aafe9a4a2..0c4158790bd 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,13 +1,13 @@ { stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args: buildLinux (args // rec { - version = "4.20-rc3"; - modDirVersion = "4.20.0-rc3"; + version = "4.20-rc4"; + modDirVersion = "4.20.0-rc4"; extraMeta.branch = "4.20"; src = fetchurl { url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; - sha256 = "0iin34alr5ax15pvilhdn5pifqav4gkxalb7vqb8zvxnhsm6kk58"; + sha256 = "0kni1l1gk9mva7ym091mrkn9f2bdbh80i7589ahk6j5blpj9m3ns"; }; # Should the testing kernels ever be built on Hydra? From 5095c08374e957e55151bdb2a1bca7f464c61002 Mon Sep 17 00:00:00 2001 From: ryan4729 <40183301+ryan4729@users.noreply.github.com> Date: Sun, 25 Nov 2018 18:09:56 -0800 Subject: [PATCH 055/106] pythonPackages.yattag: init at 1.10.1 (#51056) * pythonPackages.yattag: init at 1.10.1 * pythonPackages.yattag: add license --- .../python-modules/yattag/default.nix | 17 +++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 19 insertions(+) create mode 100644 pkgs/development/python-modules/yattag/default.nix diff --git a/pkgs/development/python-modules/yattag/default.nix b/pkgs/development/python-modules/yattag/default.nix new file mode 100644 index 00000000000..cd31f7c2d55 --- /dev/null +++ b/pkgs/development/python-modules/yattag/default.nix @@ -0,0 +1,17 @@ +{ lib, stdenv, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "yattag"; + version = "1.10.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0r3pwfygvpkgc0hzxc6z8dl56g6brlh52r0x8kcjhywr1biahqb2"; + }; + + meta = with lib; { + description = "Generate HTML or XML in a pythonic way. Pure python alternative to web template engines. Can fill HTML forms with default values and error messages."; + license = [ licenses.lgpl21 ]; + homepage = http://www.yattag.org/; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 020f0aaa239..ad0f5b29ebb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4980,6 +4980,8 @@ in { simpy = callPackage ../development/python-modules/simpy { }; + yattag = callPackage ../development/python-modules/yattag { }; + z3 = (toPythonModule (pkgs.z3.override { inherit python; })).python; From aadeacfd5dfff4380c34266bec8814104d98edf1 Mon Sep 17 00:00:00 2001 From: Christopher Ostrouchov Date: Mon, 26 Nov 2018 05:37:23 -0500 Subject: [PATCH 056/106] sqlite-web: init at 0.3.5 (#50955) --- .../tools/database/sqlite-web/default.nix | 25 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/tools/database/sqlite-web/default.nix diff --git a/pkgs/development/tools/database/sqlite-web/default.nix b/pkgs/development/tools/database/sqlite-web/default.nix new file mode 100644 index 00000000000..a1b8ece1236 --- /dev/null +++ b/pkgs/development/tools/database/sqlite-web/default.nix @@ -0,0 +1,25 @@ +{ lib +, python3Packages +}: + +python3Packages.buildPythonApplication rec { + pname = "sqlite-web"; + version = "0.3.5"; + + src = python3Packages.fetchPypi { + inherit pname version; + sha256 = "9e0c8938434b0129423544162d4ca6975abf7042c131445f79661a4b9c885d47"; + }; + + propagatedBuildInputs = with python3Packages; [ flask peewee pygments ]; + + # no tests in repository + doCheck = false; + + meta = with lib; { + description = "Web-based SQLite database browser"; + homepage = https://github.com/coleifer/sqlite-web; + license = licenses.mit; + maintainers = [ maintainers.costrouc ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4dcf945662f..4739fa18c06 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8964,6 +8964,8 @@ with pkgs; sqlitebrowser = libsForQt5.callPackage ../development/tools/database/sqlitebrowser { }; + sqlite-web = callPackage ../development/tools/database/sqlite-web { }; + sselp = callPackage ../tools/X11/sselp{ }; stm32flash = callPackage ../development/tools/misc/stm32flash { }; From 5229c876f8df4fbeb0bfaf328c01e0b32071bfab Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Mon, 26 Nov 2018 06:29:46 -0500 Subject: [PATCH 057/106] pythonPackages.manuel: 1.8.0 -> 1.10.1 (#51029) --- pkgs/development/python-modules/manuel/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/manuel/default.nix b/pkgs/development/python-modules/manuel/default.nix index 1030ee21556..f9fa3a090eb 100644 --- a/pkgs/development/python-modules/manuel/default.nix +++ b/pkgs/development/python-modules/manuel/default.nix @@ -7,14 +7,15 @@ buildPythonPackage rec { pname = "manuel"; - version = "1.8.0"; + version = "1.10.1"; src = fetchPypi { inherit pname version; - sha256 = "1diyj6a8bvz2cdf9m0g2bbx9z2yjjnn3ylbg1zinpcjj6vldfx59"; + sha256 = "1bdzay7j70fly5fy6wbdi8fbrxjrrlxnxnw226rwry1c8a351rpy"; }; - propagatedBuildInputs = [ six zope_testing ]; + propagatedBuildInputs = [ six ]; + checkInputs = [ zope_testing ]; meta = with stdenv.lib; { description = "A documentation builder"; From 3324503824b76d32a5bb67994b66372535b92076 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 26 Nov 2018 11:54:23 +0000 Subject: [PATCH 058/106] doc: add example usage for breakpointHook (#51005) --- doc/stdenv.xml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/doc/stdenv.xml b/doc/stdenv.xml index 208b5e9cf30..40ff17aafa0 100644 --- a/doc/stdenv.xml +++ b/doc/stdenv.xml @@ -2455,7 +2455,17 @@ addEnvHooks "$hostOffset" myBashFunction use the cntr exec subcommand. Note that cntr also needs to be executed on the machine that is doing the build, which might be not the case when remote builders are enabled. - cntr is only supported on linux based platforms. + cntr is only supported on Linux-based platforms. To + use it first add cntr to your + environment.systemPackages on NixOS or alternatively to + the root user on non-NixOS systems. Then in the package that is supposed + to be inspected, add breakpointHook to + nativeBuildInputs. + + nativeBuildInputs = [ breakpointHook ]; + + When a build failure happens there will be an instruction printed that + shows how to attach with cntr to the build sandbox. From 962bc254a0dfb80d36191321fb8e2ebdc5ff923b Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:12:22 +0100 Subject: [PATCH 059/106] pythonPackages.affine: init at 2.2.1 --- .../python-modules/affine/default.nix | 22 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/development/python-modules/affine/default.nix diff --git a/pkgs/development/python-modules/affine/default.nix b/pkgs/development/python-modules/affine/default.nix new file mode 100644 index 00000000000..5bd957ae731 --- /dev/null +++ b/pkgs/development/python-modules/affine/default.nix @@ -0,0 +1,22 @@ +{ buildPythonPackage, pytest, lib, fetchPypi }: + +buildPythonPackage rec { + pname = "affine"; + version = "2.2.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0j3mvcnmgjvvm0znqyf7xylq7i89zjf4dq0g8280xs6bwbl5cvih"; + }; + + checkInputs = [ pytest ]; + checkPhase = "py.test"; + + meta = with lib; { + description = "Matrices describing affine transformation of the plane"; + license = licenses.bsd3; + homepage = https://github.com/sgillies/affine; + maintainers = with maintainers; [ mredaelli ]; + }; + +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9e0bcb1b52d..56af19f73f2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -744,6 +744,8 @@ in { adal = callPackage ../development/python-modules/adal { }; + affine = callPackage ../development/python-modules/affine { }; + aioconsole = callPackage ../development/python-modules/aioconsole { }; aiodns = callPackage ../development/python-modules/aiodns { }; From d9d8bcbb99f6d025979271cddfffc04a01d23727 Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:15:30 +0100 Subject: [PATCH 060/106] pythonPackages.pyepsg: init at 0.3.2 --- .../python-modules/pyepsg/default.nix | 23 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/python-modules/pyepsg/default.nix diff --git a/pkgs/development/python-modules/pyepsg/default.nix b/pkgs/development/python-modules/pyepsg/default.nix new file mode 100644 index 00000000000..dd8c987401d --- /dev/null +++ b/pkgs/development/python-modules/pyepsg/default.nix @@ -0,0 +1,23 @@ +{ buildPythonPackage, lib, fetchPypi, requests }: + +buildPythonPackage rec { + pname = "pyepsg"; + version = "0.3.2"; + + src = fetchPypi { + inherit pname version; + sha256 = "0ng0k140kzq3xcffi4vy10py4cmwzfy8anccysw3vgn1x30ghzjr"; + }; + + propagatedBuildInputs = [ requests ]; + + doCheck = false; + + meta = with lib; { + description = "Simple Python interface to epsg.io"; + license = licenses.lgpl3; + homepage = https://pyepsg.readthedocs.io/en/latest/; + maintainers = with maintainers; [ mredaelli ]; + }; + +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 56af19f73f2..10c53813221 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1053,6 +1053,8 @@ in { pyechonest = callPackage ../development/python-modules/pyechonest { }; + pyepsg = callPackage ../development/python-modules/pyepsg { }; + pyezminc = callPackage ../development/python-modules/pyezminc { }; billiard = callPackage ../development/python-modules/billiard { }; From 7fbc7acb2b26ca3a030b28169f3ccdae3db6e495 Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:20:03 +0100 Subject: [PATCH 061/106] pythonPackages.gentools: init at 1.1.0 --- .../python-modules/gentools/default.nix | 31 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/development/python-modules/gentools/default.nix diff --git a/pkgs/development/python-modules/gentools/default.nix b/pkgs/development/python-modules/gentools/default.nix new file mode 100644 index 00000000000..b9d272ba0e5 --- /dev/null +++ b/pkgs/development/python-modules/gentools/default.nix @@ -0,0 +1,31 @@ +{ buildPythonPackage, lib, fetchFromGitHub, pytest +, typing, funcsigs, pythonOlder +}: + +buildPythonPackage rec { + pname = "gentools"; + version = "1.1.0"; + + # Pypi doesn't ship the tests, so we fetch directly from GitHub + src = fetchFromGitHub { + owner = "ariebovenberg"; + repo = pname; + rev = "v${version}"; + sha256 = "1sm6cqi7fv2k3pc68r7wvvjjz8y6cjmz8bvxgqfa4v4wxibwnwrl"; + }; + + propagatedBuildInputs = + lib.optionals (pythonOlder "3.5") [ typing ] ++ + lib.optionals (pythonOlder "3.4") [ funcsigs ]; + + checkInputs = [ pytest ]; + checkPhase = "pytest"; + + meta = with lib; { + description = "Tools for generators, generator functions, and generator-based coroutines"; + license = licenses.mit; + homepage = http://gentools.readthedocs.io/; + maintainers = with maintainers; [ mredaelli ]; + }; + +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 10c53813221..4cd43577ba3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2417,6 +2417,8 @@ in { genshi = callPackage ../development/python-modules/genshi { }; + gentools = callPackage ../development/python-modules/gentools { }; + gevent = callPackage ../development/python-modules/gevent { }; geventhttpclient = callPackage ../development/python-modules/geventhttpclient { }; From 440f19a36fee0e61061f7ab26e89e256efdbae6c Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:21:28 +0100 Subject: [PATCH 062/106] pythonPackages.snug: init at 1.3.4 --- .../python-modules/snug/default.nix | 37 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 39 insertions(+) create mode 100644 pkgs/development/python-modules/snug/default.nix diff --git a/pkgs/development/python-modules/snug/default.nix b/pkgs/development/python-modules/snug/default.nix new file mode 100644 index 00000000000..0b3adbe15d9 --- /dev/null +++ b/pkgs/development/python-modules/snug/default.nix @@ -0,0 +1,37 @@ +{ buildPythonPackage, lib, fetchFromGitHub, glibcLocales +, pytest, pytest-mock, gentools +, typing, singledispatch, pythonOlder +}: + +buildPythonPackage rec { + pname = "snug"; + version = "1.3.4"; + + # Pypi doesn't ship the tests, so we fetch directly from GitHub + src = fetchFromGitHub { + owner = "ariebovenberg"; + repo = "snug"; + rev = "v${version}"; + sha256 = "0jmg0sivz9ljazlnsrrqaizrb3r7asy5pa0dj3idx49gbig4589i"; + }; + + # Prevent unicode decoding error in setup.py + # while reading README.rst and HISTORY.rst + buildInputs = [ glibcLocales ]; + LC_ALL = "en_US.UTF-8"; + + propagatedBuildInputs = + lib.optionals (pythonOlder "3.4") [ singledispatch ] ++ + lib.optionals (pythonOlder "3.5") [ typing ]; + + checkInputs = [ pytest pytest-mock gentools ]; + checkPhase = "pytest"; + + meta = with lib; { + description = "Tiny toolkit for writing reusable interactions with web APIs"; + license = licenses.mit; + homepage = https://snug.readthedocs.io/en/latest/; + maintainers = with maintainers; [ mredaelli ]; + }; + +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4cd43577ba3..54937a1e757 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3839,6 +3839,8 @@ in { snowballstemmer = callPackage ../development/python-modules/snowballstemmer { }; + snug = callPackage ../development/python-modules/snug { }; + spake2 = callPackage ../development/python-modules/spake2 { }; sphfile = callPackage ../development/python-modules/sphfile { }; From 443b5e856db2a46079512157632488a775303928 Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:22:25 +0100 Subject: [PATCH 063/106] pythonPackages.snuggs: init at 1.4.2 --- .../python-modules/snuggs/default.nix | 29 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 pkgs/development/python-modules/snuggs/default.nix diff --git a/pkgs/development/python-modules/snuggs/default.nix b/pkgs/development/python-modules/snuggs/default.nix new file mode 100644 index 00000000000..3e0ffe4110d --- /dev/null +++ b/pkgs/development/python-modules/snuggs/default.nix @@ -0,0 +1,29 @@ +{ buildPythonPackage, lib, fetchFromGitHub +, click, numpy, pyparsing +, pytest +}: + +buildPythonPackage rec { + pname = "snuggs"; + version = "1.4.2"; + + # Pypi doesn't ship the tests, so we fetch directly from GitHub + src = fetchFromGitHub { + owner = "mapbox"; + repo = pname; + rev = version; + sha256 = "1q6jqwai4qgghdjgwhyx3yz8mlrm7p1vvnwc339lfl028hrgb5kb"; + }; + + propagatedBuildInputs = [ click numpy pyparsing ]; + + checkInputs = [ pytest ]; + checkPhase = "pytest test_snuggs.py"; + + meta = with lib; { + description = "S-expressions for Numpy"; + license = licenses.mit; + homepage = https://github.com/mapbox/snuggs; + maintainers = with maintainers; [ mredaelli ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 54937a1e757..ad9bdd62da7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3841,6 +3841,8 @@ in { snug = callPackage ../development/python-modules/snug { }; + snuggs = callPackage ../development/python-modules/snuggs { }; + spake2 = callPackage ../development/python-modules/spake2 { }; sphfile = callPackage ../development/python-modules/sphfile { }; From 39d1108b80662e49aa5535ec4c2215b26cdb8254 Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:23:33 +0100 Subject: [PATCH 064/106] pythonPackages.cartopy: init at 0.17.0 --- .../python-modules/cartopy/default.nix | 46 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 48 insertions(+) create mode 100644 pkgs/development/python-modules/cartopy/default.nix diff --git a/pkgs/development/python-modules/cartopy/default.nix b/pkgs/development/python-modules/cartopy/default.nix new file mode 100644 index 00000000000..64f649ad28a --- /dev/null +++ b/pkgs/development/python-modules/cartopy/default.nix @@ -0,0 +1,46 @@ +{ buildPythonPackage, lib, fetchPypi +, pytest, filelock, mock, pep8 +, cython, isPy37, glibcLocales +, six, pyshp, shapely, geos, proj, numpy +, gdal, pillow, matplotlib, pyepsg, pykdtree, scipy, owslib, fiona +}: + +buildPythonPackage rec { + pname = "cartopy"; + version = "0.17.0"; + + src = fetchPypi { + inherit version; + pname = "Cartopy"; + sha256 = "0q9ckfi37cxj7jwnqnzij62vwcf4krccx576vv5lhvpgvplxjjs2"; + }; + + checkInputs = [ filelock mock pytest pep8 ]; + + # several tests require network connectivity: we disable them + checkPhase = '' + export HOME=$(mktemp -d) + pytest --pyargs cartopy \ + -m "not network and not natural_earth" \ + -k "not test_nightshade_image" + ''; + + buildInputs = [ cython glibcLocales ]; + LC_ALL = "en_US.UTF-8"; + + propagatedBuildInputs = [ + # required + six pyshp shapely geos proj numpy + + # optional + gdal pillow matplotlib pyepsg pykdtree scipy fiona owslib + ]; + + meta = with lib; { + description = "Process geospatial data to create maps and perform analyses"; + license = licenses.lgpl3; + homepage = https://scitools.org.uk/cartopy/docs/latest/; + maintainers = with maintainers; [ mredaelli ]; + }; + +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ad9bdd62da7..481e7a9b60c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1136,6 +1136,8 @@ in { carrot = callPackage ../development/python-modules/carrot {}; + cartopy = callPackage ../development/python-modules/cartopy {}; + case = callPackage ../development/python-modules/case {}; cassandra-driver = callPackage ../development/python-modules/cassandra-driver { }; From 46aedcafb39d2ea840d5ebd1316c547cb0dbaa41 Mon Sep 17 00:00:00 2001 From: Massimo Redaelli Date: Sun, 25 Nov 2018 10:25:31 +0100 Subject: [PATCH 065/106] pythonPackages.rasterio: init at 1.0.10 --- .../python-modules/rasterio/default.nix | 29 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 pkgs/development/python-modules/rasterio/default.nix diff --git a/pkgs/development/python-modules/rasterio/default.nix b/pkgs/development/python-modules/rasterio/default.nix new file mode 100644 index 00000000000..562d8aac527 --- /dev/null +++ b/pkgs/development/python-modules/rasterio/default.nix @@ -0,0 +1,29 @@ +{ buildPythonPackage, lib, fetchFromGitHub +, cython +, numpy, affine, attrs, cligj, click-plugins, snuggs, gdal +, pytest, pytestcov, packaging, hypothesis, boto3 +}: + +buildPythonPackage rec { + pname = "rasterio"; + version = "1.0.10"; + + # Pypi doesn't ship the tests, so we fetch directly from GitHub + src = fetchFromGitHub { + owner = "mapbox"; + repo = "rasterio"; + rev = version; + sha256 = "0gnck9y3n31nnazlrw54swab8wql9qjx5r5x9r7hrmzy72xlzjqq"; + }; + + checkInputs = [ boto3 pytest pytestcov packaging hypothesis ]; + buildInputs = [ cython ]; + propagatedBuildInputs = [ gdal numpy attrs affine cligj click-plugins snuggs ]; + + meta = with lib; { + description = "Python package to read and write geospatial raster data"; + license = licenses.bsd3; + homepage = https://rasterio.readthedocs.io/en/latest/; + maintainers = with maintainers; [ mredaelli ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 481e7a9b60c..aafdad82c67 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3661,6 +3661,8 @@ in { rabbitpy = callPackage ../development/python-modules/rabbitpy { }; + rasterio = callPackage ../development/python-modules/rasterio { }; + radicale_infcloud = callPackage ../development/python-modules/radicale_infcloud {}; recaptcha_client = callPackage ../development/python-modules/recaptcha_client { }; From 88570538b3b19d60b00bc3905bbaaef17e5a5c94 Mon Sep 17 00:00:00 2001 From: Ding Xiang Fei <6884440+dingxiangfei2009@users.noreply.github.com> Date: Mon, 26 Nov 2018 22:51:00 +0800 Subject: [PATCH 066/106] google-compute-image: make it a module and the size tuneable (#49854) * move GCE system configuration to `google-compute-config.nix` * remove `fetch-ssh-keys` service (disabled in comment) --- nixos/maintainers/scripts/gce/create-gce.sh | 4 +- .../virtualisation/google-compute-config.nix | 262 ++++++++++++- .../virtualisation/google-compute-image.nix | 362 +++--------------- 3 files changed, 305 insertions(+), 323 deletions(-) diff --git a/nixos/maintainers/scripts/gce/create-gce.sh b/nixos/maintainers/scripts/gce/create-gce.sh index 0fd26d34d07..48748a59d29 100755 --- a/nixos/maintainers/scripts/gce/create-gce.sh +++ b/nixos/maintainers/scripts/gce/create-gce.sh @@ -7,9 +7,9 @@ BUCKET_NAME="${BUCKET_NAME:-nixos-cloud-images}" TIMESTAMP="$(date +%Y%m%d%H%M)" export TIMESTAMP -nix-build '' \ +nix-build '' \ -A config.system.build.googleComputeImage \ - --arg configuration "{ imports = [ ]; }" \ + --arg modules "[ ]" \ --argstr system x86_64-linux \ -o gce \ -j 10 diff --git a/nixos/modules/virtualisation/google-compute-config.nix b/nixos/modules/virtualisation/google-compute-config.nix index 8f20100bc1b..1f8485b274f 100644 --- a/nixos/modules/virtualisation/google-compute-config.nix +++ b/nixos/modules/virtualisation/google-compute-config.nix @@ -1,5 +1,261 @@ -{ ... }: - +{ config, lib, pkgs, ... }: +with lib; +let + gce = pkgs.google-compute-engine; + cfg = config.virtualisation.googleComputeImage; +in { - imports = [ ]; + imports = [ + ../profiles/headless.nix + ../profiles/qemu-guest.nix + ]; + + + fileSystems."/" = { + device = "/dev/disk/by-label/nixos"; + autoResize = true; + }; + + boot.growPartition = true; + boot.kernelParams = [ "console=ttyS0" "panic=1" "boot.panic_on_fail" ]; + boot.initrd.kernelModules = [ "virtio_scsi" ]; + boot.kernelModules = [ "virtio_pci" "virtio_net" ]; + + # Generate a GRUB menu. Amazon's pv-grub uses this to boot our kernel/initrd. + boot.loader.grub.device = "/dev/sda"; + boot.loader.timeout = 0; + + # Don't put old configurations in the GRUB menu. The user has no + # way to select them anyway. + boot.loader.grub.configurationLimit = 0; + + # Allow root logins only using the SSH key that the user specified + # at instance creation time. + services.openssh.enable = true; + services.openssh.permitRootLogin = "prohibit-password"; + services.openssh.passwordAuthentication = mkDefault false; + + # Use GCE udev rules for dynamic disk volumes + services.udev.packages = [ gce ]; + + # Force getting the hostname from Google Compute. + networking.hostName = mkDefault ""; + + # Always include cryptsetup so that NixOps can use it. + environment.systemPackages = [ pkgs.cryptsetup ]; + + # Make sure GCE image does not replace host key that NixOps sets + environment.etc."default/instance_configs.cfg".text = lib.mkDefault '' + [InstanceSetup] + set_host_keys = false + ''; + + # Rely on GCP's firewall instead + networking.firewall.enable = mkDefault false; + + # Configure default metadata hostnames + networking.extraHosts = '' + 169.254.169.254 metadata.google.internal metadata + ''; + + networking.timeServers = [ "metadata.google.internal" ]; + + networking.usePredictableInterfaceNames = false; + + # GC has 1460 MTU + networking.interfaces.eth0.mtu = 1460; + + # allow the google-accounts-daemon to manage users + users.mutableUsers = true; + # and allow users to sudo without password + security.sudo.enable = true; + security.sudo.extraConfig = '' + %google-sudoers ALL=(ALL:ALL) NOPASSWD:ALL + ''; + + # NOTE: google-accounts tries to write to /etc/sudoers.d but the folder doesn't exist + # FIXME: not such file or directory on dynamic SSH provisioning + systemd.services.google-accounts-daemon = { + description = "Google Compute Engine Accounts Daemon"; + # This daemon creates dynamic users + enable = config.users.mutableUsers; + after = [ + "network.target" + "google-instance-setup.service" + "google-network-setup.service" + ]; + requires = ["network.target"]; + wantedBy = ["multi-user.target"]; + path = with pkgs; [ shadow ]; + serviceConfig = { + Type = "simple"; + ExecStart = "${gce}/bin/google_accounts_daemon --debug"; + }; + }; + + systemd.services.google-clock-skew-daemon = { + description = "Google Compute Engine Clock Skew Daemon"; + after = [ + "network.target" + "google-instance-setup.service" + "google-network-setup.service" + ]; + requires = ["network.target"]; + wantedBy = ["multi-user.target"]; + serviceConfig = { + Type = "simple"; + ExecStart = "${gce}/bin/google_clock_skew_daemon --debug"; + }; + }; + + systemd.services.google-instance-setup = { + description = "Google Compute Engine Instance Setup"; + after = ["local-fs.target" "network-online.target" "network.target" "rsyslog.service"]; + before = ["sshd.service"]; + wants = ["local-fs.target" "network-online.target" "network.target"]; + wantedBy = [ "sshd.service" "multi-user.target" ]; + path = with pkgs; [ ethtool openssh ]; + serviceConfig = { + ExecStart = "${gce}/bin/google_instance_setup --debug"; + Type = "oneshot"; + }; + }; + + systemd.services.google-network-daemon = { + description = "Google Compute Engine Network Daemon"; + after = ["local-fs.target" "network-online.target" "network.target" "rsyslog.service" "google-instance-setup.service"]; + wants = ["local-fs.target" "network-online.target" "network.target"]; + requires = ["network.target"]; + partOf = ["network.target"]; + wantedBy = [ "multi-user.target" ]; + path = with pkgs; [ iproute ]; + serviceConfig = { + ExecStart = "${gce}/bin/google_network_daemon --debug"; + }; + }; + + systemd.services.google-shutdown-scripts = { + description = "Google Compute Engine Shutdown Scripts"; + after = [ + "local-fs.target" + "network-online.target" + "network.target" + "rsyslog.service" + "systemd-resolved.service" + "google-instance-setup.service" + "google-network-daemon.service" + ]; + wants = [ "local-fs.target" "network-online.target" "network.target"]; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${pkgs.coreutils}/bin/true"; + ExecStop = "${gce}/bin/google_metadata_script_runner --debug --script-type shutdown"; + Type = "oneshot"; + RemainAfterExit = true; + TimeoutStopSec = "infinity"; + }; + }; + + systemd.services.google-startup-scripts = { + description = "Google Compute Engine Startup Scripts"; + after = [ + "local-fs.target" + "network-online.target" + "network.target" + "rsyslog.service" + "google-instance-setup.service" + "google-network-daemon.service" + ]; + wants = ["local-fs.target" "network-online.target" "network.target"]; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${gce}/bin/google_metadata_script_runner --debug --script-type startup"; + KillMode = "process"; + Type = "oneshot"; + }; + }; + + + # Settings taken from https://github.com/GoogleCloudPlatform/compute-image-packages/blob/master/google_config/sysctl/11-gce-network-security.conf + boot.kernel.sysctl = { + # Turn on SYN-flood protections. Starting with 2.6.26, there is no loss + # of TCP functionality/features under normal conditions. When flood + # protections kick in under high unanswered-SYN load, the system + # should remain more stable, with a trade off of some loss of TCP + # functionality/features (e.g. TCP Window scaling). + "net.ipv4.tcp_syncookies" = mkDefault "1"; + + # ignores source-routed packets + "net.ipv4.conf.all.accept_source_route" = mkDefault "0"; + + # ignores source-routed packets + "net.ipv4.conf.default.accept_source_route" = mkDefault "0"; + + # ignores ICMP redirects + "net.ipv4.conf.all.accept_redirects" = mkDefault "0"; + + # ignores ICMP redirects + "net.ipv4.conf.default.accept_redirects" = mkDefault "0"; + + # ignores ICMP redirects from non-GW hosts + "net.ipv4.conf.all.secure_redirects" = mkDefault "1"; + + # ignores ICMP redirects from non-GW hosts + "net.ipv4.conf.default.secure_redirects" = mkDefault "1"; + + # don't allow traffic between networks or act as a router + "net.ipv4.ip_forward" = mkDefault "0"; + + # don't allow traffic between networks or act as a router + "net.ipv4.conf.all.send_redirects" = mkDefault "0"; + + # don't allow traffic between networks or act as a router + "net.ipv4.conf.default.send_redirects" = mkDefault "0"; + + # reverse path filtering - IP spoofing protection + "net.ipv4.conf.all.rp_filter" = mkDefault "1"; + + # reverse path filtering - IP spoofing protection + "net.ipv4.conf.default.rp_filter" = mkDefault "1"; + + # ignores ICMP broadcasts to avoid participating in Smurf attacks + "net.ipv4.icmp_echo_ignore_broadcasts" = mkDefault "1"; + + # ignores bad ICMP errors + "net.ipv4.icmp_ignore_bogus_error_responses" = mkDefault "1"; + + # logs spoofed, source-routed, and redirect packets + "net.ipv4.conf.all.log_martians" = mkDefault "1"; + + # log spoofed, source-routed, and redirect packets + "net.ipv4.conf.default.log_martians" = mkDefault "1"; + + # implements RFC 1337 fix + "net.ipv4.tcp_rfc1337" = mkDefault "1"; + + # randomizes addresses of mmap base, heap, stack and VDSO page + "kernel.randomize_va_space" = mkDefault "2"; + + # Reboot the machine soon after a kernel panic. + "kernel.panic" = mkDefault "10"; + + ## Not part of the original config + + # provides protection from ToCToU races + "fs.protected_hardlinks" = mkDefault "1"; + + # provides protection from ToCToU races + "fs.protected_symlinks" = mkDefault "1"; + + # makes locating kernel addresses more difficult + "kernel.kptr_restrict" = mkDefault "1"; + + # set ptrace protections + "kernel.yama.ptrace_scope" = mkOverride 500 "1"; + + # set perf only available to root + "kernel.perf_event_paranoid" = mkDefault "2"; + + }; + } diff --git a/nixos/modules/virtualisation/google-compute-image.nix b/nixos/modules/virtualisation/google-compute-image.nix index f9ebe769652..0d2d25d3075 100644 --- a/nixos/modules/virtualisation/google-compute-image.nix +++ b/nixos/modules/virtualisation/google-compute-image.nix @@ -2,333 +2,59 @@ with lib; let - diskSize = 1536; # MB - gce = pkgs.google-compute-engine; + cfg = config.virtualisation.googleComputeImage; + defaultConfigFile = pkgs.writeText "configuration.nix" '' + { ... }: + { + imports = [ + + ]; + } + ''; in { - imports = [ ../profiles/headless.nix ../profiles/qemu-guest.nix ]; - system.build.googleComputeImage = import ../../lib/make-disk-image.nix { - name = "google-compute-image"; - postVM = '' - PATH=$PATH:${pkgs.stdenv.lib.makeBinPath [ pkgs.gnutar pkgs.gzip ]} - pushd $out - mv $diskImage disk.raw - tar -Szcf nixos-image-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.raw.tar.gz disk.raw - rm $out/disk.raw - popd - ''; - configFile = ; - format = "raw"; - inherit diskSize; - inherit config lib pkgs; - }; + imports = [ ./google-compute-config.nix ]; - fileSystems."/" = { - device = "/dev/disk/by-label/nixos"; - autoResize = true; - }; + options = { + virtualisation.googleComputeImage.diskSize = mkOption { + type = with types; int; + default = 1536; + description = '' + Size of disk image. Unit is MB. + ''; + }; - boot.growPartition = true; - boot.kernelParams = [ "console=ttyS0" "panic=1" "boot.panic_on_fail" ]; - boot.initrd.kernelModules = [ "virtio_scsi" ]; - boot.kernelModules = [ "virtio_pci" "virtio_net" ]; - - # Generate a GRUB menu. Amazon's pv-grub uses this to boot our kernel/initrd. - boot.loader.grub.device = "/dev/sda"; - boot.loader.timeout = 0; - - # Don't put old configurations in the GRUB menu. The user has no - # way to select them anyway. - boot.loader.grub.configurationLimit = 0; - - # Allow root logins only using the SSH key that the user specified - # at instance creation time. - services.openssh.enable = true; - services.openssh.permitRootLogin = "prohibit-password"; - services.openssh.passwordAuthentication = mkDefault false; - - # Use GCE udev rules for dynamic disk volumes - services.udev.packages = [ gce ]; - - # Force getting the hostname from Google Compute. - networking.hostName = mkDefault ""; - - # Always include cryptsetup so that NixOps can use it. - environment.systemPackages = [ pkgs.cryptsetup ]; - - # Make sure GCE image does not replace host key that NixOps sets - environment.etc."default/instance_configs.cfg".text = lib.mkDefault '' - [InstanceSetup] - set_host_keys = false - ''; - - # Rely on GCP's firewall instead - networking.firewall.enable = mkDefault false; - - # Configure default metadata hostnames - networking.extraHosts = '' - 169.254.169.254 metadata.google.internal metadata - ''; - - networking.timeServers = [ "metadata.google.internal" ]; - - networking.usePredictableInterfaceNames = false; - - # GC has 1460 MTU - networking.interfaces.eth0.mtu = 1460; - - # allow the google-accounts-daemon to manage users - users.mutableUsers = true; - # and allow users to sudo without password - security.sudo.enable = true; - security.sudo.extraConfig = '' - %google-sudoers ALL=(ALL:ALL) NOPASSWD:ALL - ''; - - # NOTE: google-accounts tries to write to /etc/sudoers.d but the folder doesn't exist - # FIXME: not such file or directory on dynamic SSH provisioning - systemd.services.google-accounts-daemon = { - description = "Google Compute Engine Accounts Daemon"; - # This daemon creates dynamic users - enable = config.users.mutableUsers; - after = [ - "network.target" - "google-instance-setup.service" - "google-network-setup.service" - ]; - requires = ["network.target"]; - wantedBy = ["multi-user.target"]; - path = with pkgs; [ shadow ]; - serviceConfig = { - Type = "simple"; - ExecStart = "${gce}/bin/google_accounts_daemon --debug"; + virtualisation.googleComputeImage.configFile = mkOption { + type = with types; nullOr str; + default = null; + description = '' + A path to a configuration file which will be placed at `/etc/nixos/configuration.nix` + and be used when switching to a new configuration. + If set to `null`, a default configuration is used, where the only import is + ``. + ''; }; }; - systemd.services.google-clock-skew-daemon = { - description = "Google Compute Engine Clock Skew Daemon"; - after = [ - "network.target" - "google-instance-setup.service" - "google-network-setup.service" - ]; - requires = ["network.target"]; - wantedBy = ["multi-user.target"]; - serviceConfig = { - Type = "simple"; - ExecStart = "${gce}/bin/google_clock_skew_daemon --debug"; + #### implementation + config = { + + system.build.googleComputeImage = import ../../lib/make-disk-image.nix { + name = "google-compute-image"; + postVM = '' + PATH=$PATH:${with pkgs; stdenv.lib.makeBinPath [ gnutar gzip ]} + pushd $out + mv $diskImage disk.raw + tar -Szcf nixos-image-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.raw.tar.gz disk.raw + rm $out/disk.raw + popd + ''; + format = "raw"; + configFile = if isNull cfg.configFile then defaultConfigFile else cfg.configFile; + inherit (cfg) diskSize; + inherit config lib pkgs; }; - }; - - systemd.services.google-instance-setup = { - description = "Google Compute Engine Instance Setup"; - after = ["local-fs.target" "network-online.target" "network.target" "rsyslog.service"]; - before = ["sshd.service"]; - wants = ["local-fs.target" "network-online.target" "network.target"]; - wantedBy = [ "sshd.service" "multi-user.target" ]; - path = with pkgs; [ ethtool openssh ]; - serviceConfig = { - ExecStart = "${gce}/bin/google_instance_setup --debug"; - Type = "oneshot"; - }; - }; - - systemd.services.google-network-daemon = { - description = "Google Compute Engine Network Daemon"; - after = ["local-fs.target" "network-online.target" "network.target" "rsyslog.service" "google-instance-setup.service"]; - wants = ["local-fs.target" "network-online.target" "network.target"]; - requires = ["network.target"]; - partOf = ["network.target"]; - wantedBy = [ "multi-user.target" ]; - path = with pkgs; [ iproute ]; - serviceConfig = { - ExecStart = "${gce}/bin/google_network_daemon --debug"; - }; - }; - - systemd.services.google-shutdown-scripts = { - description = "Google Compute Engine Shutdown Scripts"; - after = [ - "local-fs.target" - "network-online.target" - "network.target" - "rsyslog.service" - "systemd-resolved.service" - "google-instance-setup.service" - "google-network-daemon.service" - ]; - wants = [ "local-fs.target" "network-online.target" "network.target"]; - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - ExecStart = "${pkgs.coreutils}/bin/true"; - ExecStop = "${gce}/bin/google_metadata_script_runner --debug --script-type shutdown"; - Type = "oneshot"; - RemainAfterExit = true; - TimeoutStopSec = "infinity"; - }; - }; - - systemd.services.google-startup-scripts = { - description = "Google Compute Engine Startup Scripts"; - after = [ - "local-fs.target" - "network-online.target" - "network.target" - "rsyslog.service" - "google-instance-setup.service" - "google-network-daemon.service" - ]; - wants = ["local-fs.target" "network-online.target" "network.target"]; - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - ExecStart = "${gce}/bin/google_metadata_script_runner --debug --script-type startup"; - KillMode = "process"; - Type = "oneshot"; - }; - }; - - # TODO: remove this - systemd.services.fetch-ssh-keys = - { description = "Fetch host keys and authorized_keys for root user"; - - wantedBy = [ "sshd.service" ]; - before = [ "sshd.service" ]; - after = [ "network-online.target" ]; - wants = [ "network-online.target" ]; - - script = let wget = "${pkgs.wget}/bin/wget --retry-connrefused -t 15 --waitretry=10 --header='Metadata-Flavor: Google'"; - mktemp = "mktemp --tmpdir=/run"; in - '' - # When dealing with cryptographic keys, we want to keep things private. - umask 077 - # Don't download the SSH key if it has already been downloaded - echo "Obtaining SSH keys..." - mkdir -m 0700 -p /root/.ssh - AUTH_KEYS=$(${mktemp}) - ${wget} -O $AUTH_KEYS http://metadata.google.internal/computeMetadata/v1/instance/attributes/sshKeys - if [ -s $AUTH_KEYS ]; then - - # Read in key one by one, split in case Google decided - # to append metadata (it does sometimes) and add to - # authorized_keys if not already present. - touch /root/.ssh/authorized_keys - NEW_KEYS=$(${mktemp}) - # Yes this is a nix escape of two single quotes. - while IFS=''' read -r line || [[ -n "$line" ]]; do - keyLine=$(echo -n "$line" | cut -d ':' -f2) - IFS=' ' read -r -a array <<< "$keyLine" - if [ ''${#array[@]} -ge 3 ]; then - echo ''${array[@]:0:3} >> $NEW_KEYS - echo "Added ''${array[@]:2} to authorized_keys" - fi - done < $AUTH_KEYS - mv $NEW_KEYS /root/.ssh/authorized_keys - chmod 600 /root/.ssh/authorized_keys - rm -f $KEY_PUB - else - echo "Downloading http://metadata.google.internal/computeMetadata/v1/project/attributes/sshKeys failed." - false - fi - rm -f $AUTH_KEYS - SSH_HOST_KEYS_DIR=$(${mktemp} -d) - ${wget} -O $SSH_HOST_KEYS_DIR/ssh_host_ed25519_key http://metadata.google.internal/computeMetadata/v1/instance/attributes/ssh_host_ed25519_key - ${wget} -O $SSH_HOST_KEYS_DIR/ssh_host_ed25519_key.pub http://metadata.google.internal/computeMetadata/v1/instance/attributes/ssh_host_ed25519_key_pub - if [ -s $SSH_HOST_KEYS_DIR/ssh_host_ed25519_key -a -s $SSH_HOST_KEYS_DIR/ssh_host_ed25519_key.pub ]; then - mv -f $SSH_HOST_KEYS_DIR/ssh_host_ed25519_key* /etc/ssh/ - chmod 600 /etc/ssh/ssh_host_ed25519_key - chmod 644 /etc/ssh/ssh_host_ed25519_key.pub - else - echo "Setup of ssh host keys from http://metadata.google.internal/computeMetadata/v1/instance/attributes/ failed." - false - fi - rm -rf $SSH_HOST_KEYS_DIR - ''; - serviceConfig.Type = "oneshot"; - serviceConfig.RemainAfterExit = true; - serviceConfig.StandardError = "journal+console"; - serviceConfig.StandardOutput = "journal+console"; - }; - - # Settings taken from https://github.com/GoogleCloudPlatform/compute-image-packages/blob/master/google_config/sysctl/11-gce-network-security.conf - boot.kernel.sysctl = { - # Turn on SYN-flood protections. Starting with 2.6.26, there is no loss - # of TCP functionality/features under normal conditions. When flood - # protections kick in under high unanswered-SYN load, the system - # should remain more stable, with a trade off of some loss of TCP - # functionality/features (e.g. TCP Window scaling). - "net.ipv4.tcp_syncookies" = mkDefault "1"; - - # ignores source-routed packets - "net.ipv4.conf.all.accept_source_route" = mkDefault "0"; - - # ignores source-routed packets - "net.ipv4.conf.default.accept_source_route" = mkDefault "0"; - - # ignores ICMP redirects - "net.ipv4.conf.all.accept_redirects" = mkDefault "0"; - - # ignores ICMP redirects - "net.ipv4.conf.default.accept_redirects" = mkDefault "0"; - - # ignores ICMP redirects from non-GW hosts - "net.ipv4.conf.all.secure_redirects" = mkDefault "1"; - - # ignores ICMP redirects from non-GW hosts - "net.ipv4.conf.default.secure_redirects" = mkDefault "1"; - - # don't allow traffic between networks or act as a router - "net.ipv4.ip_forward" = mkDefault "0"; - - # don't allow traffic between networks or act as a router - "net.ipv4.conf.all.send_redirects" = mkDefault "0"; - - # don't allow traffic between networks or act as a router - "net.ipv4.conf.default.send_redirects" = mkDefault "0"; - - # reverse path filtering - IP spoofing protection - "net.ipv4.conf.all.rp_filter" = mkDefault "1"; - - # reverse path filtering - IP spoofing protection - "net.ipv4.conf.default.rp_filter" = mkDefault "1"; - - # ignores ICMP broadcasts to avoid participating in Smurf attacks - "net.ipv4.icmp_echo_ignore_broadcasts" = mkDefault "1"; - - # ignores bad ICMP errors - "net.ipv4.icmp_ignore_bogus_error_responses" = mkDefault "1"; - - # logs spoofed, source-routed, and redirect packets - "net.ipv4.conf.all.log_martians" = mkDefault "1"; - - # log spoofed, source-routed, and redirect packets - "net.ipv4.conf.default.log_martians" = mkDefault "1"; - - # implements RFC 1337 fix - "net.ipv4.tcp_rfc1337" = mkDefault "1"; - - # randomizes addresses of mmap base, heap, stack and VDSO page - "kernel.randomize_va_space" = mkDefault "2"; - - # Reboot the machine soon after a kernel panic. - "kernel.panic" = mkDefault "10"; - - ## Not part of the original config - - # provides protection from ToCToU races - "fs.protected_hardlinks" = mkDefault "1"; - - # provides protection from ToCToU races - "fs.protected_symlinks" = mkDefault "1"; - - # makes locating kernel addresses more difficult - "kernel.kptr_restrict" = mkDefault "1"; - - # set ptrace protections - "kernel.yama.ptrace_scope" = mkOverride 500 "1"; - - # set perf only available to root - "kernel.perf_event_paranoid" = mkDefault "2"; }; From a6c90e135e4c258c2a10cec826c056cb6417ad99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 26 Nov 2018 15:50:10 +0100 Subject: [PATCH 067/106] bittornado: remove It is unmaintained and does not build. --- .../networking/p2p/bittornado/default.nix | 26 ------------------- pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 28 deletions(-) delete mode 100644 pkgs/tools/networking/p2p/bittornado/default.nix diff --git a/pkgs/tools/networking/p2p/bittornado/default.nix b/pkgs/tools/networking/p2p/bittornado/default.nix deleted file mode 100644 index 8cda50bcb1d..00000000000 --- a/pkgs/tools/networking/p2p/bittornado/default.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ lib, python3, fetchFromGitHub }: - -python3.pkgs.buildPythonApplication rec { - pname = "BitTornado"; - version = "unstable-2018-02-09"; - - src = fetchFromGitHub { - owner = "effigies"; - repo = "BitTornado"; - rev = "a3e6d8bcdf9d99de064dc58b4a3e909e0349e589"; - sha256 = "099bci3as592psf8ymmz225qyz2lbjhya7g50cb7hk64k92mqk9k"; - }; - - postFixup = '' - for i in $(ls $out/bin); do - mv $out/bin/$i $out/bin/''${i%.py} - done - ''; - - meta = with lib; { - inherit (src.meta) homepage; - description = "John Hoffman's fork of the original bittorrent"; - license = licenses.mit; - maintainers = with maintainers; [ dotlambda ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4739fa18c06..fd7fb972286 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -940,8 +940,6 @@ with pkgs; bitbucket-cli = python2Packages.bitbucket-cli; - bittornado = callPackage ../tools/networking/p2p/bittornado { }; - blink = callPackage ../applications/networking/instant-messengers/blink { }; blockhash = callPackage ../tools/graphics/blockhash { }; From 1ec18b032cb1178f273fede7849c065cfa376a88 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Mon, 26 Nov 2018 22:54:08 +0800 Subject: [PATCH 068/106] pythonPackages.pyupdate: init at 0.2.16 (#50817) --- .../python-modules/pyupdate/default.nix | 28 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/development/python-modules/pyupdate/default.nix diff --git a/pkgs/development/python-modules/pyupdate/default.nix b/pkgs/development/python-modules/pyupdate/default.nix new file mode 100644 index 00000000000..37fe5a05369 --- /dev/null +++ b/pkgs/development/python-modules/pyupdate/default.nix @@ -0,0 +1,28 @@ +{ stdenv, buildPythonPackage, fetchPypi, isPy3k +, requests }: + +buildPythonPackage rec { + pname = "pyupdate"; + version = "0.2.16"; + + src = fetchPypi { + inherit pname version; + sha256 = "1p4zpjvwy6h9kr0dp80z5k04s14r9f75jg9481gpx8ygxj0l29bi"; + }; + + propagatedBuildInputs = [ requests ]; + + # As of 0.2.16, pyupdate is intimately tied to Home Assistant which is py3 only + disabled = !isPy3k; + + # no tests + doCheck = false; + + meta = with stdenv.lib; { + # This description is terrible, but it's what upstream uses. + description = "Package to update stuff"; + homepage = https://github.com/ludeeus/pyupdate; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ad0f5b29ebb..b1e38959a8b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3484,6 +3484,8 @@ in { pyspread = callPackage ../development/python-modules/pyspread { }; + pyupdate = callPackage ../development/python-modules/pyupdate {}; + pyx = callPackage ../development/python-modules/pyx { }; mmpython = callPackage ../development/python-modules/mmpython { }; From cdacdc068679d0651127e05b9285e31714527657 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Braun Date: Mon, 26 Nov 2018 11:54:48 +0100 Subject: [PATCH 069/106] nixos/kubernetes: allow to disable clusterCidr Fix option type and set --allocate-node-cidr to false if no clusterCidr is defined. --- nixos/modules/services/cluster/kubernetes/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/cluster/kubernetes/default.nix b/nixos/modules/services/cluster/kubernetes/default.nix index e63d91eb9ac..6f3c45b29bf 100644 --- a/nixos/modules/services/cluster/kubernetes/default.nix +++ b/nixos/modules/services/cluster/kubernetes/default.nix @@ -784,7 +784,7 @@ in { clusterCidr = mkOption { description = "Kubernetes controller manager and proxy CIDR Range for Pods in cluster."; default = "10.1.0.0/16"; - type = types.str; + type = types.nullOr types.str; }; flannel.enable = mkOption { @@ -1018,9 +1018,9 @@ in { ${if (cfg.controllerManager.rootCaFile!=null) then "--root-ca-file=${cfg.controllerManager.rootCaFile}" else "--root-ca-file=/var/run/kubernetes/apiserver.crt"} \ - ${optionalString (cfg.clusterCidr!=null) - "--cluster-cidr=${cfg.clusterCidr}"} \ - --allocate-node-cidrs=true \ + ${if (cfg.clusterCidr!=null) + then "--cluster-cidr=${cfg.clusterCidr} --allocate-node-cidrs=true" + else "--allocate-node-cidrs=false"} \ ${optionalString (cfg.controllerManager.featureGates != []) "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.controllerManager.featureGates}"} \ ${optionalString cfg.verbose "--v=6"} \ From 128a446c59872f1df38070655a903b885293b995 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 18 Nov 2018 15:33:37 -0800 Subject: [PATCH 070/106] postgresql_11: 11.0 -> 11.1 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/postgresql/versions --- pkgs/servers/sql/postgresql/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix index f8bf08b55b7..dce158ebed9 100644 --- a/pkgs/servers/sql/postgresql/default.nix +++ b/pkgs/servers/sql/postgresql/default.nix @@ -130,9 +130,9 @@ in { }; postgresql_11 = common { - version = "11.0"; - psqlSchema = "11.0"; - sha256 = "0szk9ssfych1wlpyqxz3z6dllg1l6m5labpii8c2r463s01vm6xz"; + version = "11.1"; + psqlSchema = "11.1"; + sha256 = "026v0sicsh7avzi45waf8shcbhivyxmi7qgn9fd1x0vl520mx0ch"; }; } From 4619c0050c634cc08de791ca5561c5b6b089e37a Mon Sep 17 00:00:00 2001 From: Vincent Demeester Date: Mon, 26 Nov 2018 18:27:58 +0100 Subject: [PATCH 071/106] traefik: 1.7.1 -> 1.7.4 Signed-off-by: Vincent Demeester --- pkgs/servers/traefik/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/traefik/default.nix b/pkgs/servers/traefik/default.nix index b1097c1e96f..154b5659677 100644 --- a/pkgs/servers/traefik/default.nix +++ b/pkgs/servers/traefik/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { name = "traefik-${version}"; - version = "1.7.1"; + version = "1.7.4"; goPackagePath = "github.com/containous/traefik"; @@ -10,7 +10,7 @@ buildGoPackage rec { owner = "containous"; repo = "traefik"; rev = "v${version}"; - sha256 = "13vvwb1mrnxn4y1ga37pc5c46qdj5jkrcnyn2w9rb59madgq4c77"; + sha256 = "0y2ac8z09s76qf13m7dgzmhqa5868q7g9r2gxxbq3lhhzwik31vp"; }; buildInputs = [ go-bindata bash ]; From 9764c43925f3f91d325463cfb882c1b4561baa10 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sun, 24 Jun 2018 15:52:23 +0200 Subject: [PATCH 072/106] python.pkgs.rtslib: init at 2.1.fb69 --- .../python-modules/rtslib/default.nix | 21 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/development/python-modules/rtslib/default.nix diff --git a/pkgs/development/python-modules/rtslib/default.nix b/pkgs/development/python-modules/rtslib/default.nix new file mode 100644 index 00000000000..5453541e2de --- /dev/null +++ b/pkgs/development/python-modules/rtslib/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchFromGitHub, buildPythonPackage, six, pyudev, pygobject3 }: + +buildPythonPackage rec { + pname = "rtslib"; + version = "2.1.fb69"; + + src = fetchFromGitHub { + owner = "open-iscsi"; + repo ="${pname}-fb"; + rev = "v${version}"; + sha256 = "17rlcrd9757nq91pa8xjr7147k7mxxp8zdka7arhlgsp3kcnbsfd"; + }; + + propagatedBuildInputs = [ six pyudev pygobject3 ]; + + meta = with stdenv.lib; { + description = "A Python object API for managing the Linux LIO kernel target"; + homepage = https://github.com/open-iscsi/rtslib-fb; + license = licenses.asl20; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b1e38959a8b..f5dbf37ba23 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3783,6 +3783,8 @@ in { rpy2 = callPackage ../development/python-modules/rpy2 {}; + rtslib = callPackage ../development/python-modules/rtslib {}; + Rtree = callPackage ../development/python-modules/Rtree { inherit (pkgs) libspatialindex; }; typing = callPackage ../development/python-modules/typing { }; From 699e72968c065174fc23c2a97068eb25e5d45d9d Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sun, 24 Jun 2018 15:52:56 +0200 Subject: [PATCH 073/106] python.pkgs.configshell: init at 1.1.fb25 --- .../python-modules/configshell/default.nix | 21 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/development/python-modules/configshell/default.nix diff --git a/pkgs/development/python-modules/configshell/default.nix b/pkgs/development/python-modules/configshell/default.nix new file mode 100644 index 00000000000..b0a563126e2 --- /dev/null +++ b/pkgs/development/python-modules/configshell/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchFromGitHub, buildPythonPackage, pyparsing, six }: + +buildPythonPackage rec { + pname = "configshell"; + version = "1.1.fb25"; + + src = fetchFromGitHub { + owner = "open-iscsi"; + repo ="${pname}-fb"; + rev = "v${version}"; + sha256 = "0zpr2n4105qqsklyfyr9lzl1rhxjcv0mnsl57hgk0m763w6na90h"; + }; + + propagatedBuildInputs = [ pyparsing six ]; + + meta = with stdenv.lib; { + description = "A Python library for building configuration shells"; + homepage = https://github.com/open-iscsi/configshell-fb; + license = licenses.asl20; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f5dbf37ba23..c2626721b8e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -995,6 +995,8 @@ in { colour = callPackage ../development/python-modules/colour {}; + configshell = callPackage ../development/python-modules/configshell { }; + constantly = callPackage ../development/python-modules/constantly { }; cornice = callPackage ../development/python-modules/cornice { }; From 5294194fe213666750c95313a3c09c8be9003626 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sun, 24 Jun 2018 15:54:16 +0200 Subject: [PATCH 074/106] targetcli: init at 2.1.fb49 --- pkgs/os-specific/linux/targetcli/default.nix | 22 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/os-specific/linux/targetcli/default.nix diff --git a/pkgs/os-specific/linux/targetcli/default.nix b/pkgs/os-specific/linux/targetcli/default.nix new file mode 100644 index 00000000000..b8990484cb9 --- /dev/null +++ b/pkgs/os-specific/linux/targetcli/default.nix @@ -0,0 +1,22 @@ +{ stdenv, python, fetchFromGitHub }: + +python.pkgs.buildPythonApplication rec { + pname = "targetcli"; + version = "2.1.fb49"; + + src = fetchFromGitHub { + owner = "open-iscsi"; + repo = "${pname}-fb"; + rev = "v${version}"; + sha256 = "093dmwc5g6yz4cdgpbfszmc97i7nd286w4x447dvg22hvwvjwqhh"; + }; + + propagatedBuildInputs = with python.pkgs; [ configshell rtslib ]; + + meta = with stdenv.lib; { + description = "A command shell for managing the Linux LIO kernel target"; + homepage = https://github.com/open-iscsi/targetcli-fb; + license = licenses.asl20; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d85eecb341e..c1977b4fb7a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5634,6 +5634,8 @@ with pkgs; znapzend = callPackage ../tools/backup/znapzend { }; + targetcli = callPackage ../os-specific/linux/targetcli { }; + tarsnap = callPackage ../tools/backup/tarsnap { }; tarsnapper = callPackage ../tools/backup/tarsnapper { }; From 5087dcf24759bf16fd3a7b1330b079d72404d7be Mon Sep 17 00:00:00 2001 From: Benjamin Staffin Date: Mon, 26 Nov 2018 14:41:04 -0500 Subject: [PATCH 075/106] stern: Include bash & zsh completion support (#49668) --- .../networking/cluster/stern/default.nix | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/networking/cluster/stern/default.nix b/pkgs/applications/networking/cluster/stern/default.nix index c5e4ac9d0ba..75a88d14e4c 100644 --- a/pkgs/applications/networking/cluster/stern/default.nix +++ b/pkgs/applications/networking/cluster/stern/default.nix @@ -1,4 +1,4 @@ -{ lib, buildGoPackage, fetchFromGitHub }: +{ stdenv, lib, buildGoPackage, fetchFromGitHub }: buildGoPackage rec { name = "stern-${version}"; @@ -15,11 +15,20 @@ buildGoPackage rec { goDeps = ./deps.nix; - meta = with lib; { - description = "Multi pod and container log tailing for Kubernetes"; - homepage = "https://github.com/wercker/stern"; - license = licenses.asl20; - maintainers = with maintainers; [ mbode ]; - platforms = platforms.unix; - }; + # Only build shell completion if we're _not_ cross compiling, + # because it requires executing the compiled stern binary. + postInstall = lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform) '' + mkdir -p $bin/share/bash-completion/completions + $bin/bin/stern --completion bash > $bin/share/bash-completion/completions/stern + mkdir -p $bin/share/zsh/site-functions + $bin/bin/stern --completion zsh > $bin/share/zsh/site-functions/_stern + ''; + + meta = with lib; { + description = "Multi pod and container log tailing for Kubernetes"; + homepage = "https://github.com/wercker/stern"; + license = licenses.asl20; + maintainers = with maintainers; [ mbode ]; + platforms = platforms.unix; + }; } From 7ce4cd4470aeb00450288dc75434dd0f1fc20353 Mon Sep 17 00:00:00 2001 From: Arian van Putten Date: Mon, 26 Nov 2018 22:05:14 +0100 Subject: [PATCH 076/106] nixos/nspawn: Fix small typo (#51077) This has slipped through review in my previous PR it seems --- nixos/modules/system/boot/systemd-nspawn.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/systemd-nspawn.nix b/nixos/modules/system/boot/systemd-nspawn.nix index 4f538ccdbbe..649453418b5 100644 --- a/nixos/modules/system/boot/systemd-nspawn.nix +++ b/nixos/modules/system/boot/systemd-nspawn.nix @@ -112,7 +112,7 @@ in { environment.etc."systemd/nspawn".source = generateUnits "nspawn" units [] []; - systemd.targets."multi-user".wants = [ "machines.target "]; + systemd.targets."multi-user".wants = [ "machines.target" ]; }; } From 284c3edbc80db94ab62e54d0302152af8839056e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benno=20F=C3=BCnfst=C3=BCck?= Date: Mon, 26 Nov 2018 22:16:16 +0100 Subject: [PATCH 077/106] nbench: init at 2.2.3 (#51081) --- pkgs/tools/misc/nbench/default.nix | 31 ++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/tools/misc/nbench/default.nix diff --git a/pkgs/tools/misc/nbench/default.nix b/pkgs/tools/misc/nbench/default.nix new file mode 100644 index 00000000000..2312ce236ab --- /dev/null +++ b/pkgs/tools/misc/nbench/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "nbench-byte-${version}"; + version = "2.2.3"; + + src = fetchurl { + url = "http://www.math.utah.edu/~mayer/linux/${name}.tar.gz"; + sha256 = "1b01j7nmm3wd92ngvsmn2sbw43sl9fpx4xxmkrink68fz1rx0gbj"; + }; + + buildInputs = [ stdenv.cc.libc.static ]; + prePatch = '' + substituteInPlace nbench1.h --replace '"NNET.DAT"' "\"$out/NNET.DAT\"" + ''; + preBuild = '' + makeFlagsArray=(CC=$CC) + ''; + installPhase = '' + mkdir -p $out/bin + cp nbench $out/bin + cp NNET.DAT $out + ''; + + meta = with stdenv.lib; { + homepage = https://www.math.utah.edu/~mayer/linux/bmark.html; + description = "A synthetic computing benchmark program"; + platforms = platforms.linux; + maintainers = with stdenv.lib.maintainers; [ bennofs ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c1977b4fb7a..702cc2a354a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3778,6 +3778,8 @@ with pkgs; pythonPackages = python3Packages; }; + nbench = callPackage ../tools/misc/nbench { }; + netdata = callPackage ../tools/system/netdata { inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit; }; From 7725d9de4221191dbee89c7a6d5f85a415e0764b Mon Sep 17 00:00:00 2001 From: Alexey Muranov Date: Mon, 26 Nov 2018 22:17:10 +0100 Subject: [PATCH 078/106] cups-toshiba-estudio: fix homepage Provide an URL that works. --- pkgs/misc/cups/drivers/estudio/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/cups/drivers/estudio/default.nix b/pkgs/misc/cups/drivers/estudio/default.nix index aca668add37..83093da9c0a 100644 --- a/pkgs/misc/cups/drivers/estudio/default.nix +++ b/pkgs/misc/cups/drivers/estudio/default.nix @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { TOSHIBA e-STUDIO6540C, TOSHIBA e-STUDIO6550C, TOSHIBA e-STUDIO6560C, TOSHIBA e-STUDIO6570C and TOSHIBA e-STUDIO7506AC. ''; - homepage = https://www.toshiba-business.com.au/support/drivers; + homepage = http://business.toshiba.com/support/downloads/index.html; license = licenses.unfree; maintainers = [ maintainers.jpotier ]; }; From 583911a0b2bbbe23ad5b22a426218b175a483c24 Mon Sep 17 00:00:00 2001 From: Nick Hu Date: Mon, 26 Nov 2018 16:51:47 +0000 Subject: [PATCH 079/106] quantomatic: init at 0.7 --- .../science/physics/quantomatic/default.nix | 31 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/applications/science/physics/quantomatic/default.nix diff --git a/pkgs/applications/science/physics/quantomatic/default.nix b/pkgs/applications/science/physics/quantomatic/default.nix new file mode 100644 index 00000000000..ad86ff61471 --- /dev/null +++ b/pkgs/applications/science/physics/quantomatic/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, jre, makeWrapper }: + +stdenv.mkDerivation rec { + name = "quantomatic-${version}"; + version = "0.7"; + + src = fetchurl { + url = "https://github.com/Quantomatic/quantomatic/releases/download/v${version}/Quantomatic-v${version}.jar"; + sha256 = "04dd5p73a7plb4l4x2balam8j7mxs8df06rjkalxycrr1id52q4r"; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ jre ]; + + phases = [ "installPhase" ]; + + installPhase = '' + mkdir -p $out/libexec/quantomatic + cp $src $out/libexec/quantomatic/quantomatic.jar + mkdir -p $out/bin + makeWrapper ${jre}/bin/java $out/bin/quantomatic --add-flags "-jar $out/libexec/quantomatic/quantomatic.jar" + ''; + + meta = with stdenv.lib; { + description = "A piece of software for reasoning about monoidal theories; in particular, quantum information processing"; + license = licenses.gpl3; + homepage = https://quantomatic.github.io/; + maintainers = with maintainers; [ nickhu ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76f9067f787..c0f4dab9f31 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18704,6 +18704,8 @@ with pkgs; qtscrobbler = callPackage ../applications/audio/qtscrobbler { }; + quantomatic = callPackage ../applications/science/physics/quantomatic { }; + quassel = libsForQt5.callPackage ../applications/networking/irc/quassel { monolithic = true; daemon = false; From c3c57c798f95ed2653d579868ec2d2fded994bf7 Mon Sep 17 00:00:00 2001 From: Pascal Bach Date: Mon, 26 Nov 2018 23:01:25 +0100 Subject: [PATCH 080/106] gitlab-runner: 11.4.0 -> 11.5.0 --- .../continuous-integration/gitlab-runner/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix index 2331bbbe55f..04f0c5cb66f 100644 --- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix +++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix @@ -1,16 +1,16 @@ { lib, buildGoPackage, fetchFromGitLab, fetchurl }: let - version = "11.4.0"; + version = "11.5.0"; # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64 docker_x86_64 = fetchurl { url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-x86_64.tar.xz"; - sha256 = "1vzp9d7dygb44b9x6vfl913fggjkiimzjj9arybn468rc2kh0si6"; + sha256 = "1siiws19qzfv2nnyp9fy215yd08iv70x830b61kr1742ywc0jcbn"; }; docker_arm = fetchurl { url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-arm.tar.xz"; - sha256 = "1krfd6ffzc78g7k04bkk32vzingplhn176jhw4p1ys19f4sqf5sw"; + sha256 = "0d7wnpry4861dcmpspbaar97mkf0jf2bcxvr4nph9xnkw8w7fs2z"; }; in buildGoPackage rec { @@ -29,7 +29,7 @@ buildGoPackage rec { owner = "gitlab-org"; repo = "gitlab-runner"; rev = "v${version}"; - sha256 = "0nhqnw6nk5q716ir0vdkqy0jj1vbxz014jx080zk44cdj7l62lrm"; + sha256 = "028bl249yfccdnwskbn6sxzf1xsg94chbm107n2h83j7a81cz8kw"; }; patches = [ ./fix-shell-path.patch ]; From 39bfdab345e49ad01011d67ecf31d048944e6bf0 Mon Sep 17 00:00:00 2001 From: Vincent Demeester Date: Mon, 26 Nov 2018 23:20:10 +0100 Subject: [PATCH 081/106] gauge: 1.0.2 -> 1.0.3 (#51068) Signed-off-by: Vincent Demeester --- pkgs/development/tools/gauge/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/gauge/default.nix b/pkgs/development/tools/gauge/default.nix index 983df980a59..82a7b4b0e27 100644 --- a/pkgs/development/tools/gauge/default.nix +++ b/pkgs/development/tools/gauge/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { name = "gauge-${version}"; - version = "1.0.2"; + version = "1.0.3"; goPackagePath = "github.com/getgauge/gauge"; excludedPackages = ''\(build\|man\)''; @@ -11,7 +11,7 @@ buildGoPackage rec { owner = "getgauge"; repo = "gauge"; rev = "v${version}"; - sha256 = "0cnhkxfw78i4lgkbrk87hgrjh98f0z6a97g77c9av20z4962hmfy"; + sha256 = "0dcsgszg6ilf3sxan3ahf9cfpw66z3mh2svg2srxv8ici3ak8a2x"; }; meta = with stdenv.lib; { From 56e12aae54bc67cabe5aa7c8d055438af4f62b5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Mon, 26 Nov 2018 23:12:09 +0000 Subject: [PATCH 082/106] Fix nixops evaluation See https://discourse.nixos.org/t/nixops-stopped-working/1527 --- nixos/lib/testing.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix index 690f7dfd5fa..0bb3fd53e85 100644 --- a/nixos/lib/testing.nix +++ b/nixos/lib/testing.nix @@ -1,5 +1,5 @@ { system -, pkgs +, pkgs ? import ../.. { inherit system config; } # Use a minimal kernel? , minimal ? false # Ignored From 551cee25b6751897fe34975ca60ac6636601ed9a Mon Sep 17 00:00:00 2001 From: Benjamin Staffin Date: Mon, 26 Nov 2018 20:35:48 -0500 Subject: [PATCH 083/106] stern: build shell completion scripts even when cross-compiling (#51075) Moments after merging #49668 I realized that this is not hard to do correctly, so here it is now. --- .../networking/cluster/stern/default.nix | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/networking/cluster/stern/default.nix b/pkgs/applications/networking/cluster/stern/default.nix index 75a88d14e4c..bb0f3229ea5 100644 --- a/pkgs/applications/networking/cluster/stern/default.nix +++ b/pkgs/applications/networking/cluster/stern/default.nix @@ -1,4 +1,6 @@ -{ stdenv, lib, buildGoPackage, fetchFromGitHub }: +{ stdenv, lib, buildPackages, buildGoPackage, fetchFromGitHub }: + +let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; in buildGoPackage rec { name = "stern-${version}"; @@ -15,14 +17,14 @@ buildGoPackage rec { goDeps = ./deps.nix; - # Only build shell completion if we're _not_ cross compiling, - # because it requires executing the compiled stern binary. - postInstall = lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform) '' - mkdir -p $bin/share/bash-completion/completions - $bin/bin/stern --completion bash > $bin/share/bash-completion/completions/stern - mkdir -p $bin/share/zsh/site-functions - $bin/bin/stern --completion zsh > $bin/share/zsh/site-functions/_stern - ''; + postInstall = + let stern = if isCrossBuild then buildPackages.stern else "$bin"; in + '' + mkdir -p $bin/share/bash-completion/completions + ${stern}/bin/stern --completion bash > $bin/share/bash-completion/completions/stern + mkdir -p $bin/share/zsh/site-functions + ${stern}/bin/stern --completion zsh > $bin/share/zsh/site-functions/_stern + ''; meta = with lib; { description = "Multi pod and container log tailing for Kubernetes"; From a7d14740239dc3f3f8e4de2c872056f6414466da Mon Sep 17 00:00:00 2001 From: Benjamin Hipple Date: Tue, 27 Nov 2018 00:23:04 -0500 Subject: [PATCH 084/106] emacsPackagesNg.trivialBuild: cleanup and standardize function No real function change here, but this updates the trivial and melpa builders to be formatted more consistently with the rest of the builders, and swaps `eval "$preBuild"` for the more standard `runHook preBuild`. --- pkgs/build-support/emacs/melpa.nix | 19 +++++++++---------- pkgs/build-support/emacs/trivial.nix | 13 ++++--------- 2 files changed, 13 insertions(+), 19 deletions(-) diff --git a/pkgs/build-support/emacs/melpa.nix b/pkgs/build-support/emacs/melpa.nix index 2ee99ce973e..eeb4d19f7ac 100644 --- a/pkgs/build-support/emacs/melpa.nix +++ b/pkgs/build-support/emacs/melpa.nix @@ -61,19 +61,18 @@ import ./generic.nix { inherit lib stdenv emacs texinfo; } ({ ln -s "$NIX_BUILD_TOP/$sourceRoot" "$NIX_BUILD_TOP/working/$ename" ''; - buildPhase = - '' - runHook preBuild + buildPhase = '' + runHook preBuild - cd "$NIX_BUILD_TOP" + cd "$NIX_BUILD_TOP" - emacs --batch -Q \ - -L "$melpa/package-build" \ - -l "$melpa2nix" \ - -f melpa2nix-build-package \ - $ename $version + emacs --batch -Q \ + -L "$melpa/package-build" \ + -l "$melpa2nix" \ + -f melpa2nix-build-package \ + $ename $version - runHook postBuild + runHook postBuild ''; installPhase = '' diff --git a/pkgs/build-support/emacs/trivial.nix b/pkgs/build-support/emacs/trivial.nix index 98463c56ba9..396c971b2f0 100644 --- a/pkgs/build-support/emacs/trivial.nix +++ b/pkgs/build-support/emacs/trivial.nix @@ -7,27 +7,22 @@ with lib; args: import ./generic.nix envargs ({ - #preConfigure = '' - # export LISPDIR=$out/share/emacs/site-lisp - # export VERSION_SPECIFIC_LISPDIR=$out/share/emacs/site-lisp - #''; - buildPhase = '' - eval "$preBuild" + runHook preBuild emacs -L . --batch -f batch-byte-compile *.el - eval "$postBuild" + runHook postBuild ''; installPhase = '' - eval "$preInstall" + runHook preInstall LISPDIR=$out/share/emacs/site-lisp install -d $LISPDIR install *.el *.elc $LISPDIR - eval "$postInstall" + runHook postInstall ''; } From abd0efae35fa902730f0f2aad25d8ad3c7dabe9f Mon Sep 17 00:00:00 2001 From: lassulus Date: Sat, 27 Oct 2018 19:05:26 +0200 Subject: [PATCH 085/106] build-support: add writers from krebs/writers Reference https://github.com/krebs/nix-writers revision 40fde9e --- pkgs/build-support/writers/default.nix | 239 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 241 insertions(+) create mode 100644 pkgs/build-support/writers/default.nix diff --git a/pkgs/build-support/writers/default.nix b/pkgs/build-support/writers/default.nix new file mode 100644 index 00000000000..8aa3e52f5e8 --- /dev/null +++ b/pkgs/build-support/writers/default.nix @@ -0,0 +1,239 @@ +{ pkgs, lib }: + +with lib; +rec { + # Base implementation for non-compiled executables. + # Takes an interpreter, for example `${pkgs.bash}/bin/bash` + # + # Examples: + # writeBash = makeScriptWriter { interpreter = "${pkgs.bash}/bin/bash"; } + # makeScriptWriter { interpreter = "${pkgs.dash}/bin/dash"; } "hello" "echo hello world" + makeScriptWriter = { interpreter, check ? "" }: name: text: + assert lib.or (types.path.check name) (builtins.match "([0-9A-Za-z._])[0-9A-Za-z._-]*" name != null); + + pkgs.writeTextFile { + name = last (builtins.split "/" name); + executable = true; + destination = if types.path.check name then name else ""; + text = '' + #! ${interpreter} + ${text} + ''; + checkPhase = check; + }; + + # Like writeScript but the first line is a shebang to bash + # + # Example: + # writeBash "example" '' + # echo hello world + # '' + writeBash = makeScriptWriter { + interpreter = "${pkgs.bash}/bin/bash"; + }; + + # Like writeScriptBIn but the first line is a shebang to bash + writeBashBin = name: + writeBash "/bin/${name}"; + + # writeC writes an executable c package called `name` to `destination` using `libraries`. + # + # Examples: + # writeC "hello-world-ncurses" { libraries = [ pkgs.ncurses ]; } '' + # #include + # int main() { + # initscr(); + # printw("Hello World !!!"); + # refresh(); endwin(); + # return 0; + # } + # '' + writeC = name: { + libraries ? [], + }: text: pkgs.runCommand name { + inherit text; + buildInputs = [ pkgs.pkgconfig ] ++ libraries; + passAsFile = [ "text" ]; + } '' + PATH=${makeBinPath [ + pkgs.binutils-unwrapped + pkgs.coreutils + pkgs.gcc + pkgs.pkgconfig + ]} + mkdir -p "$(dirname "$out")" + gcc \ + ${optionalString (libraries != []) + "$(pkg-config --cflags --libs ${ + concatMapStringsSep " " (lib: escapeShellArg (builtins.parseDrvName lib.name).name) (libraries) + })" + } \ + -O \ + -o "$out" \ + -Wall \ + -x c \ + "$textPath" + strip --strip-unneeded "$out" + ''; + + # writeCBin takes the same arguments as writeC but outputs a directory (like writeScriptBin) + writeCBin = name: spec: text: + pkgs.runCommand name { + } '' + mkdir -p $out/bin + ln -s ${writeC name spec text} $out/bin/${name} + ''; + + # Like writeScript but the first line is a shebang to dash + # + # Example: + # writeDash "example" '' + # echo hello world + # '' + writeDash = makeScriptWriter { + interpreter = "${pkgs.dash}/bin/dash"; + }; + + # Like writeScriptBin but the first line is a shebang to dash + writeDashBin = name: + writeDash "/bin/${name}"; + + # writeHaskell takes a name, an attrset with libraries and haskell version (both optional) + # and some haskell source code and returns an executable. + # + # Example: + # writeHaskell "missiles" { libraries = [ pkgs.haskellPackages.acme-missiles ]; } '' + # Import Acme.Missiles + # + # main = launchMissiles + # ''; + writeHaskell = name: { + libraries ? [], + ghc ? pkgs.ghc + }: text: pkgs.runCommand name { + inherit text; + passAsFile = [ "text" ]; + } '' + cp $textPath ${name}.hs + ${ghc.withPackages (_: libraries )}/bin/ghc ${name}.hs + cp ${name} $out + ''; + + # writeHaskellBin takes the same arguments as writeHaskell but outputs a directory (like writeScriptBin) + writeHaskellBin = name: spec: text: + pkgs.runCommand name { + } '' + mkdir -p $out/bin + ln -s ${writeHaskell name spec text} $out/bin/${name} + ''; + + # writeJS takes a name an attributeset with libraries and some JavaScript sourcecode and + # returns an executable + # + # Example: + # writeJS "example" { libraries = [ pkgs.nodePackages.uglify-js ]; } '' + # var UglifyJS = require("uglify-js"); + # var code = "function add(first, second) { return first + second; }"; + # var result = UglifyJS.minify(code); + # console.log(result.code); + # '' + writeJS = name: { libraries ? [] }: text: + let + node-env = pkgs.buildEnv { + name = "node"; + paths = libraries; + pathsToLink = [ + "/lib/node_modules" + ]; + }; + in writeDash name '' + export NODE_PATH=${node-env}/lib/node_modules + exec ${pkgs.nodejs}/bin/node ${pkgs.writeText "js" text} + ''; + + # writeJSBin takes the same arguments as writeJS but outputs a directory (like writeScriptBin) + writeJSBin = name: + writeJS "/bin/${name}"; + + # writePerl takes a name an attributeset with libraries and some perl sourcecode and + # returns an executable + # + # Example: + # writePerl "example" { libraries = [ pkgs.perlPackages.boolean ]; } '' + # use boolean; + # print "Howdy!\n" if true; + # '' + writePerl = name: { libraries ? [] }: + let + perl-env = pkgs.buildEnv { + name = "perl-environment"; + paths = libraries; + pathsToLink = [ + "/lib/perl5/site_perl" + ]; + }; + in + makeScriptWriter { + interpreter = "${pkgs.perl}/bin/perl -I ${perl-env}/lib/perl5/site_perl"; + } name; + + # writePerlBin takes the same arguments as writePerl but outputs a directory (like writeScriptBin) + writePerlBin = name: + writePerl "/bin/${name}"; + + # writePython2 takes a name an attributeset with libraries and some python2 sourcecode and + # returns an executable + # + # Example: + # writePython2 "test_python2" { libraries = [ pkgs.python2Packages.enum ]; } '' + # from enum import Enum + # + # class Test(Enum): + # a = "success" + # + # print Test.a + # '' + writePython2 = name: { libraries ? [], flakeIgnore ? [] }: + let + py = pkgs.python2.withPackages (ps: libraries); + ignoreAttribute = optionalString (flakeIgnore != []) "--ignore ${concatMapStringsSep "," escapeShellArg flakeIgnore}"; + in + makeScriptWriter { + interpreter = "${py}/bin/python"; + check = writeDash "python2check.sh" '' + exec ${pkgs.python2Packages.flake8}/bin/flake8 --show-source ${ignoreAttribute} "$1" + ''; + } name; + + # writePython2Bin takes the same arguments as writePython2 but outputs a directory (like writeScriptBin) + writePython2Bin = name: + writePython2 "/bin/${name}"; + + # writePython3 takes a name an attributeset with libraries and some python3 sourcecode and + # returns an executable + # + # Example: + # writePython3 "test_python3" { libraries = [ pkgs.python3Packages.pyyaml ]; } '' + # import yaml + # + # y = yaml.load(""" + # - test: success + # """) + # print(y[0]['test']) + # '' + writePython3 = name: { libraries ? [], flakeIgnore ? [] }: + let + py = pkgs.python3.withPackages (ps: libraries); + ignoreAttribute = optionalString (flakeIgnore != []) "--ignore ${concatMapStringsSep "," escapeShellArg flakeIgnore}"; + in + makeScriptWriter { + interpreter = "${py}/bin/python"; + check = writeDash "python3check.sh" '' + exec ${pkgs.python3Packages.flake8}/bin/flake8 --show-source ${ignoreAttribute} "$1" + ''; + } name; + + # writePython3Bin takes the same arguments as writePython3 but outputs a directory (like writeScriptBin) + writePython3Bin = name: + writePython3 "/bin/${name}"; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 782fb6d8dd8..656faf50610 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -408,6 +408,8 @@ with pkgs; iconConvTools = callPackage ../build-support/icon-conv-tools {}; + #package writers + writers = callPackage ../build-support/writers {}; ### TOOLS From 2d02cd7790a2f12227e715800c8fe524de04f196 Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 27 Nov 2018 03:58:17 +0100 Subject: [PATCH 086/106] build-support writers: add tests --- pkgs/build-support/writers/test.nix | 149 ++++++++++++++++++++++++++++ pkgs/test/default.nix | 2 + 2 files changed, 151 insertions(+) create mode 100644 pkgs/build-support/writers/test.nix diff --git a/pkgs/build-support/writers/test.nix b/pkgs/build-support/writers/test.nix new file mode 100644 index 00000000000..68b7b27e613 --- /dev/null +++ b/pkgs/build-support/writers/test.nix @@ -0,0 +1,149 @@ +{ stdenv, lib, runCommand, haskellPackages, nodePackages, perlPackages, python2Packages, python3Packages, writers}: +with writers; +let + + bin = { + bash = writeBashBin "test_writers" '' + if [[ "test" == "test" ]]; then echo "success"; fi + ''; + + c = writeCBin "test_writers" { libraries = [ ]; } '' + #include + int main() { + printf("success\n"); + return 0; + } + ''; + + dash = writeDashBin "test_writers" '' + test '~' = '~' && echo 'success' + ''; + + haskell = writeHaskellBin "test_writers" { libraries = [ haskellPackages.acme-default ]; } '' + import Data.Default + + int :: Int + int = def + + main :: IO () + main = case int of + 18871 -> putStrLn $ id "success" + _ -> print "fail" + ''; + + js = writeJSBin "test_writers" { libraries = [ nodePackages.semver ]; } '' + var semver = require('semver'); + + if (semver.valid('1.2.3')) { + console.log('success') + } else { + console.log('fail') + } + ''; + + perl = writePerlBin "test_writers" { libraries = [ perlPackages.boolean ]; } '' + use boolean; + print "success\n" if true; + ''; + + python2 = writePython2Bin "test_writers" { libraries = [ python2Packages.enum ]; } '' + from enum import Enum + + class Test(Enum): + a = "success" + + print Test.a + ''; + + python3 = writePython3Bin "test_writers" { libraries = [ python3Packages.pyyaml ]; } '' + import yaml + + y = yaml.load(""" + - test: success + """) + print(y[0]['test']) + ''; + }; + + simple = { + bash = writeBash "test_bash" '' + if [[ "test" == "test" ]]; then echo "success"; fi + ''; + + c = writeC "test_c" { libraries = [ ]; } '' + #include + int main() { + printf("success\n"); + return 0; + } + ''; + + dash = writeDash "test_dash" '' + test '~' = '~' && echo 'success' + ''; + + haskell = writeHaskell "test_haskell" { libraries = [ haskellPackages.acme-default ]; } '' + import Data.Default + + int :: Int + int = def + + main :: IO () + main = case int of + 18871 -> putStrLn $ id "success" + _ -> print "fail" + ''; + + js = writeJS "test_js" { libraries = [ nodePackages.semver ]; } '' + var semver = require('semver'); + + if (semver.valid('1.2.3')) { + console.log('success') + } else { + console.log('fail') + } + ''; + + perl = writePerl "test_perl" { libraries = [ perlPackages.boolean ]; } '' + use boolean; + print "success\n" if true; + ''; + + python2 = writePython2 "test_python2" { libraries = [ python2Packages.enum ]; } '' + from enum import Enum + + class Test(Enum): + a = "success" + + print Test.a + ''; + + python3 = writePython3 "test_python3" { libraries = [ python3Packages.pyyaml ]; } '' + import yaml + + y = yaml.load(""" + - test: success + """) + print(y[0]['test']) + ''; + }; + + writeTest = expectedValue: test: + writeDash "test-writers" '' + if test "$(${test})" != "${expectedValue}"; then + echo 'test ${test} failed' + exit 1 + fi + ''; + +in runCommand "test-writers" { + passthru = { inherit writeTest bin simple; }; + meta.platforms = stdenv.lib.platforms.all; +} '' + ${lib.concatMapStringsSep "\n" (test: writeTest "success" "${test}/bin/test_writers") (lib.attrValues bin)} + ${lib.concatMapStringsSep "\n" (test: writeTest "success" "${test}") (lib.attrValues simple)} + + echo 'nix-writers successfully tested' >&2 + touch $out +'' + diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix index 24948ce9aa4..d95b2cc5522 100644 --- a/pkgs/test/default.nix +++ b/pkgs/test/default.nix @@ -31,4 +31,6 @@ with pkgs; cross = callPackage ./cross {}; patch-shebangs = callPackage ./patch-shebangs {}; + + writers = callPackage ../build-support/writers/test.nix {}; } From 97529d97ca55ddb650aa3926b28cf31aeb244dad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Tue, 27 Nov 2018 06:25:51 +0000 Subject: [PATCH 087/106] python37.pkgs.netaddr: skip failing test --- pkgs/development/python-modules/netaddr/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/netaddr/default.nix b/pkgs/development/python-modules/netaddr/default.nix index eed3d758054..ac236a77554 100644 --- a/pkgs/development/python-modules/netaddr/default.nix +++ b/pkgs/development/python-modules/netaddr/default.nix @@ -18,7 +18,10 @@ buildPythonPackage rec { buildInputs = [ pkgs.glibcLocales pytest ]; checkPhase = '' - py.test netaddr/tests + # fails on python3.7: https://github.com/drkjam/netaddr/issues/182 + py.test \ + -k 'not test_ip_splitter_remove_prefix_larger_than_input_range' \ + netaddr/tests ''; patches = [ From 507adacaa08e70d8c9e15693aa8aafde60ce808f Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Mon, 26 Nov 2018 23:44:54 -0800 Subject: [PATCH 088/106] dolphin: enable wayland --- pkgs/applications/kde/dolphin.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/kde/dolphin.nix b/pkgs/applications/kde/dolphin.nix index dcc79774303..241bb71983a 100644 --- a/pkgs/applications/kde/dolphin.nix +++ b/pkgs/applications/kde/dolphin.nix @@ -4,7 +4,8 @@ baloo, baloo-widgets, kactivities, kbookmarks, kcmutils, kcompletion, kconfig, kcoreaddons, kdelibs4support, kdbusaddons, kfilemetadata, ki18n, kiconthemes, kinit, kio, knewstuff, knotifications, - kparts, ktexteditor, kwindowsystem, phonon, solid + kparts, ktexteditor, kwindowsystem, phonon, solid, + wayland, qtwayland }: mkDerivation { @@ -19,6 +20,7 @@ mkDerivation { kcoreaddons kdelibs4support kdbusaddons kfilemetadata ki18n kiconthemes kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem phonon solid + wayland qtwayland ]; outputs = [ "out" "dev" ]; # We need the RPATH for linking, because the `libkdeinit5_dolphin.so` links From e45acd6b817642a6a882dc4861e5a41a5cf01126 Mon Sep 17 00:00:00 2001 From: volth Date: Tue, 27 Nov 2018 08:10:55 +0000 Subject: [PATCH 089/106] perlPackages: remove old broken packets Remove packets which marked 'broken' because they target old versions of Perl which are unsupported in nixpkgs. The most recent releases of those packages are dated 2003-2013 --- .../catalyst-fix-chunked-encoding.patch | 23 --- pkgs/top-level/perl-packages.nix | 143 ------------------ 2 files changed, 166 deletions(-) delete mode 100644 pkgs/development/perl-modules/catalyst-fix-chunked-encoding.patch diff --git a/pkgs/development/perl-modules/catalyst-fix-chunked-encoding.patch b/pkgs/development/perl-modules/catalyst-fix-chunked-encoding.patch deleted file mode 100644 index 7822128f846..00000000000 --- a/pkgs/development/perl-modules/catalyst-fix-chunked-encoding.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -rc Catalyst-Engine-HTTP-Prefork-0.50-orig/lib/Catalyst/Engine/HTTP/Prefork/Handler.pm Catalyst-Engine-HTTP-Prefork-0.50/lib/Catalyst/Engine/HTTP/Prefork/Handler.pm -*** Catalyst-Engine-HTTP-Prefork-0.50-orig/lib/Catalyst/Engine/HTTP/Prefork/Handler.pm 2008-03-14 18:23:47.000000000 +0100 ---- Catalyst-Engine-HTTP-Prefork-0.50/lib/Catalyst/Engine/HTTP/Prefork/Handler.pm 2009-03-11 14:18:40.000000000 +0100 -*************** -*** 199,206 **** - - if ( $self->{_chunked_res} ) { - if ( !$self->{_chunked_done} ) { -! # Write the final '0' chunk -! syswrite STDOUT, "0$CRLF"; - } - - delete $self->{_chunked_res}; ---- 199,207 ---- - - if ( $self->{_chunked_res} ) { - if ( !$self->{_chunked_done} ) { -! # Write the final '0' chunk and the CRLF that terminates -! # the chunked body. -! syswrite STDOUT, "0$CRLF$CRLF"; - } - - delete $self->{_chunked_res}; diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 012531799c3..e8c407d23fa 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -1289,30 +1289,6 @@ let }; }; - CatalystEngineHTTPPrefork = buildPerlPackage rec { - name = "Catalyst-Engine-HTTP-Prefork-0.51"; - src = fetchurl { - url = "mirror://cpan/authors/id/A/AG/AGRUNDMA/${name}.tar.gz"; - sha256 = "1ygmrzc9akjaqfxid8br11ajj9qgfvhkimakcv4ffk4s5v7q2sii"; - }; - propagatedBuildInputs = [ - CatalystRuntime HTTPBody NetServer - CookieXS HTTPHeaderParserXS - ]; - buildInputs = [TestPod TestPodCoverage]; - patches = [ - # Fix chunked transfers (they were missing the final CR/LF at - # the end, which makes curl barf). - ../development/perl-modules/catalyst-fix-chunked-encoding.patch - ]; - - meta = { - # Depends on some old version of Catalyst-Runtime that contains - # Catalyst::Engine::CGI. But those version do not compile. - broken = true; - }; - }; - CatalystManual = buildPerlPackage rec { name = "Catalyst-Manual-5.9009"; src = fetchurl { @@ -1487,20 +1463,6 @@ let }; }; - CatalystPluginHTMLWidget = buildPerlPackage rec { - name = "Catalyst-Plugin-HTML-Widget-1.1"; - src = fetchurl { - url = "mirror://cpan/authors/id/B/BO/BOBTFISH/${name}.tar.gz"; - sha256 = "b4a4873162f515ec7cead6272533fc347c34711d138cc4c5e46b63fa2b74feff"; - }; - propagatedBuildInputs = [ CatalystRuntime HTMLWidget ]; - meta = { - description = "HTML Widget Catalyst Plugin"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - broken = true; - }; - }; - CatalystPluginLogHandler = buildPerlModule rec { name = "Catalyst-Plugin-Log-Handler-0.08"; src = fetchurl { @@ -4024,22 +3986,6 @@ let }; }; - DevelSizeMe = buildPerlPackage { - name = "Devel-SizeMe-0.19"; - src = fetchurl { - url = mirror://cpan/authors/id/T/TI/TIMB/Devel-SizeMe-0.19.tar.gz; - sha256 = "546e31ba83c0bf7cef37b38a462860461850473479d7d4ac6c0dadfb78d54717"; - }; - propagatedBuildInputs = [ DBDSQLite DBI DataDumperConcise HTMLParser JSONXS Moo ]; - meta = { - homepage = https://github.com/timbunce/devel-sizeme; - description = "Unknown"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - # See https://rt.cpan.org/Public/Bug/Display.html?id=92348 - broken = true; - }; - }; - DevelTrace = buildPerlPackage { name = "Devel-Trace-0.12"; src = fetchurl { @@ -13191,15 +13137,6 @@ let }; }; - RegexpCopy = buildPerlPackage rec { - name = "Regexp-Copy-0.06"; - src = fetchurl { - url = "mirror://cpan/authors/id/J/JD/JDUNCAN/${name}.tar.gz"; - sha256 = "09c8xb43p1s6ala6g4274az51mf33phyjkp66dpvgkgbi1xfnawp"; - }; - meta.broken = true; - }; - RegexpGrammars = buildPerlModule rec { name = "Regexp-Grammars-1.049"; src = fetchurl { @@ -14144,40 +14081,6 @@ let buildInputs = [ TestToolbox ]; }; - libfile-stripnondeterminism = buildPerlPackage rec { - name = "libstrip-nondeterminism-${version}"; - version = "0.016"; - - src = fetchurl { - url = "http://http.debian.net/debian/pool/main/s/strip-nondeterminism/strip-nondeterminism_${version}.orig.tar.gz"; - sha256 = "1y9lfhxgwyysybing72n3hng2db5njpk2dbb80vskdz75r7ffqjp"; - }; - - buildInputs = [ ArchiveZip pkgs.file ]; - meta.broken = true; - }; - - - strip-nondeterminism = buildPerlPackage rec { - name = "strip-nondeterminism-${version}"; - version = "0.016"; - - src = fetchurl { - url = "http://http.debian.net/debian/pool/main/s/strip-nondeterminism/strip-nondeterminism_${version}.orig.tar.gz"; - sha256 = "1y9lfhxgwyysybing72n3hng2db5njpk2dbb80vskdz75r7ffqjp"; - }; - - buildInputs = [ ArchiveZip libfile-stripnondeterminism pkgs.file ]; - - meta = with stdenv.lib; { - description = "A Perl module for stripping bits of non-deterministic information"; - license = licenses.gpl3; - platforms = platforms.all; - maintainers = with maintainers; [ pSub ]; - broken = true; - }; - }; - SubExporter = buildPerlPackage { name = "Sub-Exporter-0.987"; src = fetchurl { @@ -16358,22 +16261,6 @@ let buildInputs = [ ListMoreUtils TestDifferences TestException ]; }; - TestMagpie = buildPerlPackage { - name = "Test-Magpie-0.11"; - src = fetchurl { - url = mirror://cpan/authors/id/S/ST/STEVENL/Test-Magpie-0.11.tar.gz; - sha256 = "1c4iy35yg3fa9mrc4phmpz46fkihl6yic6a13fpcxyd3xafd5zhm"; - }; - propagatedBuildInputs = [ MooseXTypesStructured SetObject UNIVERSALref aliased ]; - meta = { - description = "Spy on objects to achieve test doubles (mock testing)"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - maintainers = with maintainers; [ ]; - platforms = stdenv.lib.platforms.unix; - }; - buildInputs = [ TestFatal Throwable ]; - }; - TestMinimumVersion = buildPerlPackage rec { name = "Test-MinimumVersion-0.101082"; src = fetchurl { @@ -17064,20 +16951,6 @@ let }; }; - UNIVERSALref = buildPerlPackage rec { - name = "UNIVERSAL-ref-0.14"; - src = fetchurl { - url = mirror://cpan/authors/id/J/JJ/JJORE/UNIVERSAL-ref-0.14.tar.gz; - sha256 = "1ar8dfj90nn52cb8c6yyj4bi6ya8hk2f2sl0a5q7pmchj321bn1m"; - }; - propagatedBuildInputs = [ BUtils ]; - meta = { - description = "Turns ref() into a multimethod"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - broken = true; # 'OP {aka struct op}' has no member named 'op_sibling' - }; - }; - UNIVERSALrequire = buildPerlPackage rec { name = "UNIVERSAL-require-0.18"; src = fetchurl { @@ -17125,22 +16998,6 @@ let }; }; - UnicodeICUCollator = buildPerlPackage { - name = "Unicode-ICU-Collator-0.002"; - src = fetchurl { - url = mirror://cpan/authors/id/T/TO/TONYC/Unicode-ICU-Collator-0.002.tar.gz; - sha256 = "0gimwydam0mdgm6qjzzxny4gw8zda9kc2843kcl2xrpq7z7ww3f9"; - }; - meta = { - description = "Wrapper around ICU collation services"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - maintainers = with maintainers; [ ]; - platforms = stdenv.lib.platforms.unix; - broken = true; # tests fail http://hydra.nixos.org/build/25141764/nixlog/1/raw - }; - buildInputs = [ pkgs.icu ]; - }; - UnicodeLineBreak = buildPerlPackage rec { name = "Unicode-LineBreak-2018.003"; src = fetchurl { From 439bf86ca9aef141b36dffb98540936c099e391a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Nov 2018 12:56:17 +0100 Subject: [PATCH 090/106] sssd: fix build with updated curl-7.62 Fixes #51106. --- pkgs/os-specific/linux/sssd/default.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix index 4224c4900db..852e2deed89 100644 --- a/pkgs/os-specific/linux/sssd/default.nix +++ b/pkgs/os-specific/linux/sssd/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgs, glibc, augeas, dnsutils, c-ares, curl, +{ stdenv, fetchurl, fetchpatch, pkgs, glibc, augeas, dnsutils, c-ares, curl, cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, nfs-utils, doxygen, python, python3, pam, popt, talloc, tdb, tevent, pkgconfig, ldb, openldap, pcre, kerberos, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2, @@ -18,6 +18,14 @@ stdenv.mkDerivation rec { sha256 = "032ppk57qs1lnvz7pb7lw9ldwm9i1yagh9fzgqgn6na3bg61ynzy"; }; + patches = [ + (fetchpatch { + name = "duplicate-case-value.diff"; + url = "https://github.com/SSSD/sssd/commit/1ee12b05570fcfb8.diff"; + sha256 = "01y8i8cfs2gydn84097cl5fynx0db8b0vr345gh57ypp84in3ixw"; + }) + ]; + # Something is looking for instead of NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2"; From bb32e2bd3d681eb602d5c9f07bd8aa4026815a0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Tue, 27 Nov 2018 11:56:30 +0000 Subject: [PATCH 091/106] python37.pkgs.rope: ignore broken type hinting tests --- pkgs/development/python-modules/rope/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/rope/default.nix b/pkgs/development/python-modules/rope/default.nix index e5164f27f56..21281d341cc 100644 --- a/pkgs/development/python-modules/rope/default.nix +++ b/pkgs/development/python-modules/rope/default.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPythonPackage, fetchPypi }: +{ stdenv, buildPythonPackage, fetchPypi, nose }: buildPythonPackage rec { pname = "rope"; @@ -9,6 +9,12 @@ buildPythonPackage rec { sha256 = "a108c445e1cd897fe19272ab7877d172e7faf3d4148c80e7d20faba42ea8f7b2"; }; + checkInputs = [ nose ]; + checkPhase = '' + # tracked upstream here https://github.com/python-rope/rope/issues/247 + NOSE_IGNORE_FILES=type_hinting_test.py nosetests ropetest + ''; + meta = with stdenv.lib; { description = "Python refactoring library"; homepage = https://github.com/python-rope/rope; From 2b0a1062bc4241a1c6ec43aa26cb49463ee00bfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Nov 2018 13:52:03 +0100 Subject: [PATCH 092/106] sssd: style nitpick - don't use pkgs parameter --- pkgs/os-specific/linux/sssd/default.nix | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix index 852e2deed89..7ee0f8d4ba1 100644 --- a/pkgs/os-specific/linux/sssd/default.nix +++ b/pkgs/os-specific/linux/sssd/default.nix @@ -1,13 +1,14 @@ -{ stdenv, fetchurl, fetchpatch, pkgs, glibc, augeas, dnsutils, c-ares, curl, +{ stdenv, fetchurl, fetchpatch, glibc, augeas, dnsutils, c-ares, curl, cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, nfs-utils, doxygen, python, python3, pam, popt, talloc, tdb, tevent, pkgconfig, ldb, openldap, pcre, kerberos, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2, libuuid, ldap, systemd, nspr, check, cmocka, uid_wrapper, - nss_wrapper, ncurses, Po4a, http-parser, jansson - , withSudo ? false }: + nss_wrapper, ncurses, Po4a, http-parser, jansson, + docbook_xsl, docbook_xml_dtd_44, + withSudo ? false }: let - docbookFiles = "${pkgs.docbook_xsl}/share/xml/docbook-xsl/catalog.xml:${pkgs.docbook_xml_dtd_44}/xml/dtd/docbook/catalog.xml"; + docbookFiles = "${docbook_xsl}/share/xml/docbook-xsl/catalog.xml:${docbook_xml_dtd_44}/xml/dtd/docbook/catalog.xml"; in stdenv.mkDerivation rec { name = "sssd-${version}"; @@ -32,7 +33,7 @@ stdenv.mkDerivation rec { preConfigure = '' export SGML_CATALOG_FILES="${docbookFiles}" export PYTHONPATH=${ldap}/lib/python2.7/site-packages - export PATH=$PATH:${pkgs.openldap}/libexec + export PATH=$PATH:${openldap}/libexec configureFlagsArray=( --prefix=$out From 36a0335d026ba92aec7f2223e63b57d007234796 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Tue, 27 Nov 2018 05:31:09 -0800 Subject: [PATCH 093/106] picard-tools: 2.18.14 -> 2.18.17 (#50647) * picard-tools: 2.18.14 -> 2.18.16 Changelog: https://github.com/broadinstitute/picard/releases/tag/2.18.16 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/picard-tools/versions * picard-tools: 2.18.16 -> 2.18.17 Changelog: https://github.com/broadinstitute/picard/releases/tag/2.18.17 --- .../science/biology/picard-tools/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/science/biology/picard-tools/default.nix b/pkgs/applications/science/biology/picard-tools/default.nix index e825d1e8454..9c7de486573 100644 --- a/pkgs/applications/science/biology/picard-tools/default.nix +++ b/pkgs/applications/science/biology/picard-tools/default.nix @@ -2,14 +2,15 @@ stdenv.mkDerivation rec { name = "picard-tools-${version}"; - version = "2.18.14"; + version = "2.18.17"; src = fetchurl { url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar"; - sha256 = "0xc5mqifav2j4zbln04q07wjlzpwp3w0y5iv5bkp4v5486cp2ha9"; + sha256 = "0ks7ymrjfya5h77hp0bqyipzdri0kf97c8wks32nvwkj821687zm"; }; - buildInputs = [ jre makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ jre ]; phases = [ "installPhase" ]; @@ -21,7 +22,7 @@ stdenv.mkDerivation rec { ''; meta = with stdenv.lib; { - description = "Tools for high-throughput sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF."; + description = "Tools for high-throughput sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF"; license = licenses.mit; homepage = https://broadinstitute.github.io/picard/; maintainers = with maintainers; [ jbedo ]; From 3b44ccd991be84dcc32e60875c7a49db55fc4159 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Tue, 27 Nov 2018 14:49:30 +0000 Subject: [PATCH 094/106] dino: 2018-09-21 -> 2018-11-27 --- .../networking/instant-messengers/dino/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix index 7fe68163ab9..2c5d7005ef8 100644 --- a/pkgs/applications/networking/instant-messengers/dino/default.nix +++ b/pkgs/applications/networking/instant-messengers/dino/default.nix @@ -10,16 +10,17 @@ , dbus , gpgme , pcre +, qrencode }: stdenv.mkDerivation rec { - name = "dino-unstable-2018-09-21"; + name = "dino-unstable-2018-11-27"; src = fetchFromGitHub { owner = "dino"; repo = "dino"; - rev = "6b7ef800f54e781a618425236ba8d4ed2f2fef9c"; - sha256 = "1si815b6y06lridj88hws0dgq54w9jfam9sqbrq3cfcvmhc38ysk"; + rev = "141db9e40a3a81cfa3ad3587dc47f69c541d0fde"; + sha256 = "006r1x7drlz39jjxlfdnxgrnambw9amhl9jcgf6p1dx71h1x8221"; fetchSubmodules = true; }; @@ -32,6 +33,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ + qrencode gobjectIntrospection glib-networking glib From fb7749620b5c6c5f432caf80449e98785f580028 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sun, 25 Nov 2018 15:19:50 -0600 Subject: [PATCH 095/106] melpaBuild: Get package-build from melpa/package-build This commit causes melpaBuild to use package-build from melpa/package-build instead of melpa/melpa. Development of package-build happens in the former repository whereas the latter is much larger, containing also the MELPA recipes. We do not need to fetch the MELPA recipes from melpa/melpa, as we fetch them one-by-one for Nixpkgs. --- pkgs/build-support/emacs/melpa.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/build-support/emacs/melpa.nix b/pkgs/build-support/emacs/melpa.nix index eeb4d19f7ac..96e61bbf90e 100644 --- a/pkgs/build-support/emacs/melpa.nix +++ b/pkgs/build-support/emacs/melpa.nix @@ -35,11 +35,11 @@ import ./generic.nix { inherit lib stdenv emacs texinfo; } ({ then pname else ename; - melpa = fetchFromGitHub { + packageBuild = fetchFromGitHub { owner = "melpa"; - repo = "melpa"; - rev = "7103313a7c31bb1ebb71419e365cd2e279ee4609"; - sha256 = "0m10f83ix0mzjk0vjd4kkb1m1p4b8ha0ll2yjsgk9bqjd7fwapqb"; + repo = "package-build"; + rev = "0a22c3fbbf661822ec1791739953b937a12fa623"; + sha256 = "0dpy5p34il600sc8ic5jdgb3glya9si3lrvhxab0swks8fdydjgs"; }; elpa2nix = ./elpa2nix.el; @@ -51,7 +51,7 @@ import ./generic.nix { inherit lib stdenv emacs texinfo; } ({ cp "$recipe" "$NIX_BUILD_TOP/recipes/$ename" fi - ln -s "$melpa/package-build" "$NIX_BUILD_TOP/package-build" + ln -s "$packageBuild" "$NIX_BUILD_TOP/package-build" mkdir -p "$NIX_BUILD_TOP/packages" ''; @@ -67,7 +67,7 @@ import ./generic.nix { inherit lib stdenv emacs texinfo; } ({ cd "$NIX_BUILD_TOP" emacs --batch -Q \ - -L "$melpa/package-build" \ + -L "$NIX_BUILD_TOP/package-build" \ -l "$melpa2nix" \ -f melpa2nix-build-package \ $ename $version From 9ad99b7099ff4d5853df22bd7be186ad4d5f8bf0 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Nov 2018 02:31:09 +0100 Subject: [PATCH 096/106] hackage-packages.nix: automatic Haskell package set update This update was generated by hackage2nix v2.12 from Hackage revision https://github.com/commercialhaskell/all-cabal-hashes/commit/6a8b5c5e27ea0ed1b0bd4c1d16fa5b36a8f9d380. --- .../haskell-modules/hackage-packages.nix | 564 ++++++++++++++---- 1 file changed, 450 insertions(+), 114 deletions(-) diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index d72e84922e8..e6bfba602ab 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -763,6 +763,7 @@ self: { ''; description = "A dependently typed functional programming language and proof assistant"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; maintainers = with stdenv.lib.maintainers; [ abbradar ]; }) {inherit (pkgs) emacs;}; @@ -2013,6 +2014,7 @@ self: { libraryHaskellDepends = [ base mtl ]; description = "Delimited continuations and dynamically scoped variables"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "CC-delcont-alt" = callPackage @@ -2477,7 +2479,7 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; - "Cabal_2_4_0_1" = callPackage + "Cabal_2_4_1_0" = callPackage ({ mkDerivation, array, base, base-compat, base-orphans, binary , bytestring, containers, deepseq, Diff, directory, filepath , integer-logarithms, mtl, optparse-applicative, parsec, pretty @@ -2487,8 +2489,10 @@ self: { }: mkDerivation { pname = "Cabal"; - version = "2.4.0.1"; - sha256 = "161l9lgayzpb3wrp9bcp8k0a3rq5dpyiyrxjb87dhximi2mc16rv"; + version = "2.4.1.0"; + sha256 = "151mrrd9sskghvlwmj32da5gafwqj6sv9xz9fmp84b7vm4nr0skk"; + revision = "1"; + editedCabalFile = "1dvs2i0kfk8rji9wbrv7y0iydbif9jzg4c7rmaa6lxg8hp7mij2n"; setupHaskellDepends = [ mtl parsec ]; libraryHaskellDepends = [ array base binary bytestring containers deepseq directory filepath @@ -3428,6 +3432,7 @@ self: { ]; description = "Collects together existing Haskell cryptographic functions into a package"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "CurryDB" = callPackage @@ -6190,8 +6195,8 @@ self: { }: mkDerivation { pname = "GLUtil"; - version = "0.10.2"; - sha256 = "05x733nk3dbla4y6p7b1nx4pv3b0wm6idhsm7p30z2f968k3hyv9"; + version = "0.10.3"; + sha256 = "09zcb0ijm20nmynqsl585nhn1qaldkp3c8v3y28gn2cj606m8cqr"; libraryHaskellDepends = [ array base bytestring containers directory filepath hpp JuicyPixels linear OpenGL OpenGLRaw transformers vector @@ -7242,8 +7247,8 @@ self: { ({ mkDerivation, base, containers, mtl, QuickCheck, random }: mkDerivation { pname = "HCL"; - version = "1.4"; - sha256 = "0dzfnvdc1nm4f7q759xnq1lavi90axc7b6jd39sl898jbjg8wrrl"; + version = "1.5.1"; + sha256 = "1l9ychhml91zvr6zdrzyd8pvlbycyrdjvn95vgdyal0p5r7b3plf"; isLibrary = true; isExecutable = true; enableSeparateDataOutput = true; @@ -9592,6 +9597,7 @@ self: { ]; description = "A Haskell binding for Chipmunk"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "Hipmunk-Utils" = callPackage @@ -10412,6 +10418,7 @@ self: { ]; description = "Multiline strings, interpolation and templating"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "Interpolation-maxs" = callPackage @@ -10423,6 +10430,7 @@ self: { libraryHaskellDepends = [ base syb template-haskell ]; description = "Multiline strings, interpolation and templating"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "IntervalMap" = callPackage @@ -10750,6 +10758,30 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "JuicyPixels-blp_0_1_1_0" = callPackage + ({ mkDerivation, attoparsec, base, binary, bytestring, directory + , filepath, hashable, JuicyPixels, optparse-simple, text-show + , unordered-containers, vector + }: + mkDerivation { + pname = "JuicyPixels-blp"; + version = "0.1.1.0"; + sha256 = "0vccx98n9bjnz2clpww4gqns7mc2cmzgpzmj2mx6mwhgb12rwbvx"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + attoparsec base binary bytestring hashable JuicyPixels text-show + vector + ]; + executableHaskellDepends = [ + base bytestring directory filepath JuicyPixels optparse-simple + text-show unordered-containers + ]; + description = "BLP format decoder/encoder over JuicyPixels library"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "JuicyPixels-canvas" = callPackage ({ mkDerivation, base, containers, JuicyPixels }: mkDerivation { @@ -13145,6 +13177,7 @@ self: { ]; description = "High-level abstraction over 9P protocol"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "NewBinary" = callPackage @@ -16854,6 +16887,7 @@ self: { executableToolDepends = [ alex happy ]; description = "Prototypical type checker for Type Theory with Sized Natural Numbers"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "SizeCompare" = callPackage @@ -17444,7 +17478,7 @@ self: { version = "4.0.0.0"; sha256 = "1sskndywpm1gi4bs4i1gah73jk49inlscg4jzcqhq0phb8f886xk"; libraryHaskellDepends = [ base mtl ]; - license = stdenv.lib.licenses.unfree; + license = "unknown"; hydraPlatforms = stdenv.lib.platforms.none; }) {}; @@ -18671,6 +18705,7 @@ self: { testToolDepends = [ c2hs ]; description = "ViennaRNA v2 bindings"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "ViennaRNA-extras" = callPackage @@ -21114,6 +21149,7 @@ self: { libraryHaskellDepends = [ acme-dont base ]; description = "Safe versions of some infamous haskell functions such as fromJust"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "acme-schoenfinkel" = callPackage @@ -27151,8 +27187,8 @@ self: { }: mkDerivation { pname = "antiope-athena"; - version = "6.1.3"; - sha256 = "00n1yj3qjlcbqjb1288h74nmlhk2851mmpkrlni48ja6hy3pnacc"; + version = "6.1.4"; + sha256 = "07cvdynr2x228i2l3kjyz1p5vx5f8jzpi5q7g253b9590gn6z19d"; libraryHaskellDepends = [ amazonka amazonka-athena amazonka-core base lens resourcet text unliftio-core @@ -27168,8 +27204,8 @@ self: { ({ mkDerivation, aeson, antiope-s3, avro, base, bytestring, text }: mkDerivation { pname = "antiope-contract"; - version = "6.1.3"; - sha256 = "0jazg8jh0wcv5gzz2sxhb5z3s50fz6x83siih9xs456kzsickh9a"; + version = "6.1.4"; + sha256 = "1h9z3sqmyc4fx2ci10qvqz8fjgyskpfdmv88xlfaj5dvr7gscmnr"; libraryHaskellDepends = [ aeson antiope-s3 avro base bytestring text ]; @@ -27179,20 +27215,22 @@ self: { "antiope-core" = callPackage ({ mkDerivation, amazonka, amazonka-core, base, bytestring - , generic-lens, http-client, lens, monad-logger, mtl, resourcet - , transformers, unliftio-core + , exceptions, generic-lens, http-client, http-types, lens + , monad-logger, mtl, resourcet, transformers, unliftio-core }: mkDerivation { pname = "antiope-core"; - version = "6.1.3"; - sha256 = "1qnbha6n0ax9gffa14dwgdklc8ilnxnccs60cfjfw8wjjfqm1wdc"; + version = "6.1.4"; + sha256 = "0d0bm4pncdgi3s6kqa5idy6dkzrblllvkbyr71adb6waqn4k3pn3"; libraryHaskellDepends = [ - amazonka amazonka-core base bytestring generic-lens http-client - lens monad-logger mtl resourcet transformers unliftio-core + amazonka amazonka-core base bytestring exceptions generic-lens + http-client http-types lens monad-logger mtl resourcet transformers + unliftio-core ]; testHaskellDepends = [ - amazonka amazonka-core base bytestring generic-lens http-client - lens monad-logger mtl resourcet transformers unliftio-core + amazonka amazonka-core base bytestring exceptions generic-lens + http-client http-types lens monad-logger mtl resourcet transformers + unliftio-core ]; license = stdenv.lib.licenses.mit; hydraPlatforms = stdenv.lib.platforms.none; @@ -27205,8 +27243,8 @@ self: { }: mkDerivation { pname = "antiope-dynamodb"; - version = "6.1.3"; - sha256 = "0l8arxlxy9bb5gqfn7jp4gcfzr3c2ncbcchk635g58ac0chzgaw4"; + version = "6.1.4"; + sha256 = "1h3x6l7rnbxxxarmmk8brapa93yqgkqn1wi465c80f8cqrmqggfw"; libraryHaskellDepends = [ amazonka amazonka-core amazonka-dynamodb antiope-core base generic-lens lens text unliftio-core unordered-containers @@ -27226,8 +27264,8 @@ self: { }: mkDerivation { pname = "antiope-messages"; - version = "6.1.3"; - sha256 = "0bk98ziv0ivwhbwd99pw54pf2788cva9bnqvv871wzxhqgd2vhx8"; + version = "6.1.4"; + sha256 = "12bjy67cmqnazl6j6x3yvksinvr3fhf5j84vsblnq3ph0d5xzxk6"; libraryHaskellDepends = [ aeson amazonka amazonka-core amazonka-s3 amazonka-sqs antiope-s3 base generic-lens lens lens-aeson monad-loops network-uri text @@ -27251,8 +27289,8 @@ self: { }: mkDerivation { pname = "antiope-s3"; - version = "6.1.3"; - sha256 = "167yc57r53yzfvyiz4z8kha820xfpwfa3mcb4kndlb650qa016ax"; + version = "6.1.4"; + sha256 = "1nyzc6ii9iwcglbh520gbzfrpgqn08lnmwmz3376dqh1jr7klyp4"; libraryHaskellDepends = [ amazonka amazonka-core amazonka-s3 antiope-core attoparsec base bytestring conduit conduit-extra exceptions generic-lens http-types @@ -27274,8 +27312,8 @@ self: { }: mkDerivation { pname = "antiope-sns"; - version = "6.1.3"; - sha256 = "1knxyvzr566qwaa6167w64v8rlnr89350cca46vcs50rcr7hdjpj"; + version = "6.1.4"; + sha256 = "12wsmxn8bbliwxqcyfaczdi8kmgyxcj3jp1shh6pf433d6r1rvsn"; libraryHaskellDepends = [ aeson amazonka amazonka-core amazonka-sns base generic-lens lens text unliftio-core @@ -27295,8 +27333,8 @@ self: { }: mkDerivation { pname = "antiope-sqs"; - version = "6.1.3"; - sha256 = "0xzcmjaniqprs2qachjiqzm4cxhgw4l6w7vg7sfp0b0l3m4kz4hh"; + version = "6.1.4"; + sha256 = "1fq682w9pn1nvhr1zv4if7ak2lx3psmv2algm3k3k0pal2j1flh1"; libraryHaskellDepends = [ aeson amazonka amazonka-core amazonka-s3 amazonka-sqs antiope-messages antiope-s3 base generic-lens lens lens-aeson @@ -29221,7 +29259,7 @@ self: { editedCabalFile = "09hmx0x4fz80kby7w1n9rc7sibbmpsvl4i3rc3h91hs53ban4yd4"; libraryHaskellDepends = [ aeson base bytestring containers text ]; description = "Basic types and instances for Valve's Artifact Card-set API"; - license = stdenv.lib.licenses.agpl3; + license = stdenv.lib.licenses.agpl3Plus; }) {}; "arx" = callPackage @@ -32747,6 +32785,7 @@ self: { executableHaskellDepends = [ base gd X11 ]; description = "braindead utility to compose Xinerama backgrounds"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "bag" = callPackage @@ -33418,6 +33457,7 @@ self: { ]; description = "Parsing and serialization for Base58 addresses (Bitcoin and Ripple)"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "base58string" = callPackage @@ -33501,6 +33541,7 @@ self: { libraryHaskellDepends = [ base ]; description = "Base64 implementation for String's"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "base91" = callPackage @@ -34450,7 +34491,7 @@ self: { ]; testToolDepends = [ hspec-discover ]; description = "Bencodex reader/writer for Haskell"; - license = stdenv.lib.licenses.gpl3; + license = stdenv.lib.licenses.gpl3Plus; }) {}; "bencoding" = callPackage @@ -34724,7 +34765,7 @@ self: { process protolude text time typed-process vector vty ]; description = "Simple terminal GUI for local hoogle"; - license = stdenv.lib.licenses.bsd3; + license = "(BSD-3-Clause OR Apache-2.0)"; }) {}; "bibdb" = callPackage @@ -39931,6 +39972,7 @@ self: { ]; description = "Mapping between BSON and algebraic data types"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "bspack" = callPackage @@ -40966,6 +41008,7 @@ self: { ]; description = "A type-class to convert values from ByteString"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "bytestring-handle" = callPackage @@ -41858,10 +41901,8 @@ self: { }: mkDerivation { pname = "cabal-install"; - version = "2.4.0.0"; - sha256 = "1xmyl0x8wqfrnray6ky5wy0g0samv4264fbdlzxhqsvk9dbfja8k"; - revision = "2"; - editedCabalFile = "1xil5pim6j1ckqj61zz6l7xpfxxr3rkw2hvpws2f7pr9shk645dl"; + version = "2.4.1.0"; + sha256 = "1b91rcs00wr5mf55c6xl8hrxmymlq72w71qm5r0q4j869asv5g39"; isLibrary = false; isExecutable = true; setupHaskellDepends = [ base Cabal filepath process ]; @@ -42387,8 +42428,8 @@ self: { }: mkDerivation { pname = "cabal2nix"; - version = "2.11.1"; - sha256 = "16ghy26lzf756197xdm8i3lg5qd8bgzjv80llbkpayibh55rkq72"; + version = "2.12"; + sha256 = "0zm85ax4wcdkcyljm2nq40j2yi514x44wr4k75r5qjpsrpsg473v"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -42701,6 +42742,43 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "cachix_0_1_3" = callPackage + ({ mkDerivation, async, base, base16-bytestring, base64-bytestring + , bifunctors, bytestring, cachix-api, conduit, conduit-extra + , cookie, cryptonite, data-default, dhall, directory, ed25519 + , filepath, fsnotify, here, hspec, hspec-discover, http-client + , http-client-tls, http-conduit, http-types, lzma-conduit + , megaparsec, memory, mmorph, optparse-applicative, process + , protolude, resourcet, retry, safe-exceptions, servant + , servant-auth, servant-auth-client, servant-client + , servant-client-core, servant-streaming-client, streaming, text + , unix, uri-bytestring, versions + }: + mkDerivation { + pname = "cachix"; + version = "0.1.3"; + sha256 = "0vhgkdrrj8wmnzqsjwyrhflwprnizjibgjwcwn5771mjv38amyx0"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + async base base16-bytestring base64-bytestring bifunctors + bytestring cachix-api conduit conduit-extra cookie cryptonite + data-default dhall directory ed25519 filepath fsnotify here + http-client http-client-tls http-conduit http-types lzma-conduit + megaparsec memory mmorph optparse-applicative process protolude + resourcet retry safe-exceptions servant servant-auth + servant-auth-client servant-client servant-client-core + servant-streaming-client streaming text unix uri-bytestring + versions + ]; + executableHaskellDepends = [ base cachix-api ]; + executableToolDepends = [ hspec-discover ]; + testHaskellDepends = [ base cachix-api here hspec protolude ]; + description = "Command line client for Nix binary cache hosting https://cachix.org"; + license = stdenv.lib.licenses.asl20; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "cachix-api" = callPackage ({ mkDerivation, aeson, amazonka, base, base16-bytestring , bytestring, conduit, cookie, cryptonite, hspec, hspec-discover @@ -48558,6 +48636,7 @@ self: { ]; description = "CMA-ES wrapper in Haskell"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "cmark" = callPackage @@ -50088,6 +50167,7 @@ self: { testHaskellDepends = [ base QuickCheck text ]; description = "CSV Parser & Producer"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "command" = callPackage @@ -50893,12 +50973,12 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "composition-prelude_2_0_1_0" = callPackage + "composition-prelude_2_0_2_0" = callPackage ({ mkDerivation, base }: mkDerivation { pname = "composition-prelude"; - version = "2.0.1.0"; - sha256 = "027fzappyma8hqqkqka21af937h57fdaq8ni73skxa03pcflwqmc"; + version = "2.0.2.0"; + sha256 = "1p1g451rgx5wlfvmvplyp772ai6jy8nbylrly8bx11x053rirygk"; libraryHaskellDepends = [ base ]; description = "Higher-order function combinators"; license = stdenv.lib.licenses.bsd3; @@ -54675,6 +54755,7 @@ self: { ]; description = "Cassandra CQL binary protocol"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "cql-io" = callPackage @@ -57091,6 +57172,7 @@ self: { testHaskellDepends = [ base hspec ]; description = "bindings to libcurl, the multiprotocol file transfer library"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "currencies" = callPackage @@ -57117,6 +57199,7 @@ self: { ]; description = "Types representing standard and non-standard currencies"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "currency-codes" = callPackage @@ -60301,7 +60384,7 @@ self: { license = stdenv.lib.licenses.asl20; }) {}; - "dbus_1_1_0" = callPackage + "dbus_1_1_1" = callPackage ({ mkDerivation, base, bytestring, cereal, conduit, containers , criterion, deepseq, directory, exceptions, extra, filepath, lens , network, parsec, process, QuickCheck, random, resourcet, split @@ -60310,8 +60393,8 @@ self: { }: mkDerivation { pname = "dbus"; - version = "1.1.0"; - sha256 = "0r0q69ml5nl45lgiwv3g2zggz8cychysxmplbyks8n50qa7h414j"; + version = "1.1.1"; + sha256 = "094js8lba0hr8421s968fil625n2gmzw3ryglz1dm8lx5wnlvwsz"; libraryHaskellDepends = [ base bytestring cereal conduit containers deepseq exceptions filepath lens network parsec random split template-haskell text @@ -60896,6 +60979,7 @@ self: { libraryHaskellDepends = [ base directory filepath HSH ]; description = "Utilities to work with debian binary packages"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "debian-build" = callPackage @@ -61797,6 +61881,7 @@ self: { libraryHaskellDepends = [ base containers dependent-sum ]; description = "Dependent finite maps (partial dependent products)"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "dependent-monoidal-map" = callPackage @@ -63769,6 +63854,7 @@ self: { testHaskellDepends = [ base Diff ]; description = "A diff algorithm based on recursive longest common substrings"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "diff-parse" = callPackage @@ -63940,6 +64026,7 @@ self: { testHaskellDepends = [ array base bytestring digest QuickCheck ]; description = "Pure hash functions for bytestrings"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "digestive-bootstrap" = callPackage @@ -68492,14 +68579,11 @@ self: { }) {}; "easyrender" = callPackage - ({ mkDerivation, base, bytestring, Cabal, containers, mtl, superdoc - , zlib - }: + ({ mkDerivation, base, bytestring, containers, mtl, zlib }: mkDerivation { pname = "easyrender"; - version = "0.1.1.3"; - sha256 = "105s3d5yz7qz9cv5jq005kzd7jfdn2fccnc4s1xgkszk46y83qbx"; - setupHaskellDepends = [ base Cabal superdoc ]; + version = "0.1.1.4"; + sha256 = "0vj9j41706lalxc2sankpnxrn3mg650wfd4rl6yw32pns6bdq86f"; libraryHaskellDepends = [ base bytestring containers mtl zlib ]; description = "User-friendly creation of EPS, PostScript, and PDF files"; license = stdenv.lib.licenses.gpl3; @@ -68787,6 +68871,7 @@ self: { ]; description = "Templating language with similar syntax and features to Liquid or Jinja2"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "edenmodules" = callPackage @@ -69720,6 +69805,7 @@ self: { libraryHaskellDepends = [ base elerea SDL ]; description = "Elerea FRP wrapper for SDL"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "elevator" = callPackage @@ -69902,6 +69988,7 @@ self: { ]; description = "A library to generate Elm types from Haskell source"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "elm-export-persistent" = callPackage @@ -73409,6 +73496,7 @@ self: { libraryToolDepends = [ c2hs ]; description = "Compression and decompression in the exomizer format"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "exp-cache" = callPackage @@ -73546,8 +73634,8 @@ self: { }: mkDerivation { pname = "expiring-containers"; - version = "0.2.1"; - sha256 = "0v8vk0lmvl4a1dm7vvwi9wx1pqyrphxbiwj11fxpr2k1ybycjw54"; + version = "0.2.2"; + sha256 = "0w4ix9m575c6vnq5hcc5bdw8k083lg73kwfa8zbk9xvpi0nsczll"; libraryHaskellDepends = [ base containers hashable int-multimap time timestamp unordered-containers @@ -75869,6 +75957,24 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "fgl_5_7_0_1" = callPackage + ({ mkDerivation, array, base, containers, deepseq, hspec + , microbench, QuickCheck, transformers + }: + mkDerivation { + pname = "fgl"; + version = "5.7.0.1"; + sha256 = "04793yh778ck3kz1z2svnfdwwls2kisbnky4lzvf4zjfgpv7mkpz"; + libraryHaskellDepends = [ + array base containers deepseq transformers + ]; + testHaskellDepends = [ base containers hspec QuickCheck ]; + benchmarkHaskellDepends = [ base deepseq microbench ]; + description = "Martin Erwig's Functional Graph Library"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "fgl-arbitrary" = callPackage ({ mkDerivation, base, containers, fgl, hspec, QuickCheck }: mkDerivation { @@ -77724,6 +77830,7 @@ self: { ]; description = "Wrapper for flock(2)"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "flow" = callPackage @@ -80190,6 +80297,7 @@ self: { ]; description = "Fresco binding for Haskell"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "fresh" = callPackage @@ -80923,6 +81031,27 @@ self: { maintainers = with stdenv.lib.maintainers; [ peti ]; }) {}; + "funcons-intgen" = callPackage + ({ mkDerivation, base, containers, directory, filepath + , funcons-tools, funcons-values, gll, iml-tools, mtl, pretty + , regex-applicative, split, text, uu-cco + }: + mkDerivation { + pname = "funcons-intgen"; + version = "0.2.0.1"; + sha256 = "12g6lizcxhvk26k3qp1k3v9dz9pz9xx004jpmipqm291r9nyiya9"; + isLibrary = false; + isExecutable = true; + executableHaskellDepends = [ + base containers directory filepath funcons-tools funcons-values gll + iml-tools mtl pretty regex-applicative split text uu-cco + ]; + description = "Generate Funcons interpreters from CBS description files"; + license = stdenv.lib.licenses.mit; + hydraPlatforms = stdenv.lib.platforms.none; + broken = true; + }) {iml-tools = null;}; + "funcons-lambda-cbv-mp" = callPackage ({ mkDerivation, base, containers, funcons-tools, gll, text }: mkDerivation { @@ -82563,6 +82692,20 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "generic-data-surgery" = callPackage + ({ mkDerivation, base, first-class-families, generic-data, tasty + , tasty-hunit + }: + mkDerivation { + pname = "generic-data-surgery"; + version = "0.1.0.0"; + sha256 = "1ady7wkg6bs8iadahz33gn7pas2176wg2fsphxs4nq7fi2c566a4"; + libraryHaskellDepends = [ base first-class-families generic-data ]; + testHaskellDepends = [ base generic-data tasty tasty-hunit ]; + description = "Surgery for generic data types"; + license = stdenv.lib.licenses.mit; + }) {}; + "generic-deepseq" = callPackage ({ mkDerivation, base, ghc-prim }: mkDerivation { @@ -84416,6 +84559,7 @@ self: { libraryHaskellDepends = [ base concurrent-extra deepseq ghci ]; description = "Library for hot-swapping shared objects in GHC"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "ghc-imported-from" = callPackage @@ -87181,6 +87325,7 @@ self: { ]; description = "Type definitions for objects used by the GitHub v3 API"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "github-utils" = callPackage @@ -93028,6 +93173,7 @@ self: { libraryHaskellDepends = [ base glib ]; description = "A type class for cast functions of Gtk2hs: glib package"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "gtk2hs-cast-gnomevfs" = callPackage @@ -95787,8 +95933,8 @@ self: { }: mkDerivation { pname = "hakyll-dhall"; - version = "0.2.2.1"; - sha256 = "03s1fs95mhaxwq79gf2qjlbzjfkimd3kkiksjmp42j8zxn0y9sbf"; + version = "0.2.2.2"; + sha256 = "0w2vhma28904mg7bymk0qd3gzwirbjkjkw862jxg2zzcnsg8m04i"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -98466,6 +98612,8 @@ self: { pname = "haskell-awk"; version = "1.1.1"; sha256 = "0s6vzfsqh2wwsp98l8zpg6cvh7jwz5wha44idz3yavhmy6z08zgd"; + revision = "1"; + editedCabalFile = "1rrplmf2n4vkwisi367gi4a6yyh0ri2sdjqmdix7xyvfdad7m9cb"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -98981,8 +99129,8 @@ self: { }: mkDerivation { pname = "haskell-igraph"; - version = "0.7.0"; - sha256 = "139qicfqg2m6jl3r7lbs2wcp1bvra3rp0vgb7ghafj2k70i0vddv"; + version = "0.7.1"; + sha256 = "16sx8sx3dky6zlwhnf3fyrkcqzwrnf94hd1wfj087bgb36hxsavp"; libraryHaskellDepends = [ base bytestring cereal colour conduit containers data-ordlist hxt primitive singletons split @@ -102980,6 +103128,7 @@ self: { ]; description = "Third-party extensions to hbro"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hburg" = callPackage @@ -107992,6 +108141,22 @@ self: { license = stdenv.lib.licenses.mit; }) {inherit (pkgs) libsass;}; + "hlibsass_0_1_8_0" = callPackage + ({ mkDerivation, base, Cabal, directory, hspec, libsass }: + mkDerivation { + pname = "hlibsass"; + version = "0.1.8.0"; + sha256 = "1ssgvr0jvl79k1vckp5nq2zw6mx8l4xasydymzjwmhg0fl99mpi6"; + configureFlags = [ "-fexternalLibsass" ]; + setupHaskellDepends = [ base Cabal directory ]; + libraryHaskellDepends = [ base ]; + librarySystemDepends = [ libsass ]; + testHaskellDepends = [ base hspec ]; + description = "Low-level bindings to Libsass"; + license = stdenv.lib.licenses.mit; + hydraPlatforms = stdenv.lib.platforms.none; + }) {inherit (pkgs) libsass;}; + "hlint" = callPackage ({ mkDerivation, aeson, ansi-terminal, base, bytestring, cmdargs , containers, cpphs, data-default, directory, extra, filepath @@ -108893,7 +109058,7 @@ self: { isLibrary = false; isExecutable = true; executableHaskellDepends = [ base ]; - license = stdenv.lib.licenses.unfree; + license = "unknown"; hydraPlatforms = stdenv.lib.platforms.none; }) {}; @@ -111266,6 +111431,7 @@ self: { libraryToolDepends = [ c2hs ]; description = "Haskell bindings for libpuz"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hpygments" = callPackage @@ -112303,8 +112469,8 @@ self: { ({ mkDerivation, base, HUnit, lens }: mkDerivation { pname = "hsPID"; - version = "0.1.1"; - sha256 = "0wdafvzgnmgm365x9qwdcwzxcdmm71fllwqqcifx8dy88254qgik"; + version = "0.1.2"; + sha256 = "0zyh2xbnpcfi1r93xxrki0qg0cgmc1g6wwx4hy1kn88fr9wqrgkv"; libraryHaskellDepends = [ base lens ]; testHaskellDepends = [ base HUnit lens ]; description = "PID control loop"; @@ -112389,6 +112555,29 @@ self: { license = stdenv.lib.licenses.mit; }) {}; + "hsass_0_8_0" = callPackage + ({ mkDerivation, base, bytestring, data-default-class, filepath + , hlibsass, hspec, hspec-discover, monad-loops, temporary, text + , transformers + }: + mkDerivation { + pname = "hsass"; + version = "0.8.0"; + sha256 = "1bnjvj6dpmcbpkbi4g5m5hvr0w5rmd7y5zkiwbqc8n9y4l2dkd5g"; + libraryHaskellDepends = [ + base bytestring data-default-class filepath hlibsass monad-loops + transformers + ]; + testHaskellDepends = [ + base bytestring data-default-class hspec hspec-discover temporary + text + ]; + testToolDepends = [ hspec-discover ]; + description = "Integrating Sass into Haskell applications"; + license = stdenv.lib.licenses.mit; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "hsay" = callPackage ({ mkDerivation, base, Hclip, HTTP, process, unix }: mkDerivation { @@ -116559,6 +116748,7 @@ self: { libraryHaskellDepends = [ base bytestring ]; description = "Functions for working with HTTP Accept headers"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "http-api-data" = callPackage @@ -116966,7 +117156,7 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "http-conduit_2_3_3" = callPackage + "http-conduit_2_3_4" = callPackage ({ mkDerivation, aeson, base, blaze-builder, bytestring , case-insensitive, conduit, conduit-extra, connection, cookie , data-default-class, hspec, http-client, http-client-tls @@ -116976,8 +117166,8 @@ self: { }: mkDerivation { pname = "http-conduit"; - version = "2.3.3"; - sha256 = "1kqj9pzgw970y488yqm3xj90sfbm6gxyhzgn23mwq4i7nv5z1vc5"; + version = "2.3.4"; + sha256 = "03si9ymgnv1252q3wyj8cblbzx56shcvmi1hx51p90a2aiqbhj15"; libraryHaskellDepends = [ aeson base bytestring conduit conduit-extra http-client http-client-tls http-types mtl resourcet transformers unliftio-core @@ -118372,6 +118562,18 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "hw-aeson" = callPackage + ({ mkDerivation, aeson, base, hedgehog, hspec, text }: + mkDerivation { + pname = "hw-aeson"; + version = "0.1.0.0"; + sha256 = "0k9yzf8dfgqawyjgkk4s27ps3mcmxj3k6xqgrixym1vqzasjsp0d"; + libraryHaskellDepends = [ aeson base text ]; + testHaskellDepends = [ aeson base hedgehog hspec ]; + description = "Convenience functions for Aeson"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "hw-balancedparens" = callPackage ({ mkDerivation, base, criterion, hspec, hw-bits, hw-excess , hw-prim, hw-rankselect-base, QuickCheck, vector @@ -118950,15 +119152,15 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "hw-prim_0_6_2_20" = callPackage + "hw-prim_0_6_2_22" = callPackage ({ mkDerivation, base, bytestring, criterion, directory, exceptions , hedgehog, hspec, hw-hspec-hedgehog, mmap, QuickCheck, semigroups , transformers, vector }: mkDerivation { pname = "hw-prim"; - version = "0.6.2.20"; - sha256 = "05azmns8nvdpfhd0fi71slsgn8irghyx25rynipc44ff407c1maa"; + version = "0.6.2.22"; + sha256 = "16dfajzylki7g7p8q2a79dvx3xymxkrpckajdks9k3q4rxsc6k0i"; libraryHaskellDepends = [ base bytestring mmap semigroups transformers vector ]; @@ -119530,6 +119732,7 @@ self: { libraryHaskellDepends = [ base bytestring curl hxt parsec ]; description = "LibCurl interface for HXT"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hxt-expat" = callPackage @@ -119541,6 +119744,7 @@ self: { libraryHaskellDepends = [ base bytestring hexpat hxt ]; description = "Expat parser for HXT"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hxt-extras" = callPackage @@ -119647,6 +119851,7 @@ self: { ]; description = "TagSoup parser for HXT"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hxt-unicode" = callPackage @@ -119672,6 +119877,7 @@ self: { ]; description = "The XPath modules for HXT"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hxt-xslt" = callPackage @@ -119687,6 +119893,7 @@ self: { ]; description = "The XSLT modules for HXT"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "hxthelper" = callPackage @@ -120343,7 +120550,7 @@ self: { base binary bytestring hedgehog protolude text ]; description = "Modules for parsing, generating and manipulating AB1 files"; - license = stdenv.lib.licenses.bsd3; + license = "(BSD-3-Clause OR Apache-2.0)"; }) {}; "hzaif" = callPackage @@ -133103,6 +133310,7 @@ self: { libraryHaskellDepends = [ array base vector ]; description = "L-BFGS optimization"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "lca" = callPackage @@ -134106,6 +134314,7 @@ self: { ]; description = "Van Laarhoven lens templates"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "level-monad" = callPackage @@ -140028,25 +140237,25 @@ self: { "madlang" = callPackage ({ mkDerivation, ansi-wl-pprint, base, binary, Cabal, cli-setup , composition-prelude, containers, criterion, directory, file-embed - , hspec, hspec-megaparsec, http-client, http-client-tls, megaparsec - , MonadRandom, mtl, optparse-applicative, random-shuffle, recursion - , tar, template-haskell, text, th-lift-instances, titlecase - , zip-archive, zlib + , filepath, hspec, hspec-megaparsec, http-client, http-client-tls + , megaparsec, MonadRandom, mtl, optparse-applicative + , random-shuffle, recursion, tar, template-haskell, text + , th-lift-instances, titlecase, zip-archive, zlib }: mkDerivation { pname = "madlang"; - version = "4.0.2.13"; - sha256 = "10a7q64dm9vw2a3qzvixlg0632l5h8j6xj9ga3w430fxch618f26"; + version = "4.0.2.14"; + sha256 = "1fpqs3cyb0iwld53gljkzsz7xhwamkd4g2irk7j3z6pxvn36bhin"; isLibrary = true; isExecutable = true; setupHaskellDepends = [ base Cabal cli-setup ]; libraryHaskellDepends = [ ansi-wl-pprint base binary composition-prelude containers directory - file-embed megaparsec MonadRandom mtl random-shuffle recursion - template-haskell text th-lift-instances titlecase + file-embed filepath megaparsec MonadRandom mtl random-shuffle + recursion template-haskell text th-lift-instances titlecase ]; executableHaskellDepends = [ - base directory http-client http-client-tls megaparsec + base directory filepath http-client http-client-tls megaparsec optparse-applicative tar text zip-archive zlib ]; testHaskellDepends = [ base hspec hspec-megaparsec text ]; @@ -143589,6 +143798,7 @@ self: { libraryHaskellDepends = [ base ]; description = "metamorphisms: ana . cata or understanding folds and unfolds"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "metaplug" = callPackage @@ -144623,6 +144833,7 @@ self: { ]; description = "MIME implementation for String's"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "mime-types" = callPackage @@ -144667,6 +144878,7 @@ self: { executableHaskellDepends = [ base directory mtl random ]; description = "Minesweeper simulation using neural networks"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "minesweeper" = callPackage @@ -144749,6 +144961,7 @@ self: { ]; description = "Minimal ini like configuration library with a few extras"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "minimorph" = callPackage @@ -149086,8 +149299,8 @@ self: { }: mkDerivation { pname = "multilinear"; - version = "0.4.0.0"; - sha256 = "1xiv3a9q2wfkgqy6xmz7qg0wdzgakbf4y5y5vxi85cz13lm2iny2"; + version = "0.5.0.0"; + sha256 = "03j34gcacd5va2ldd1hmchnfrymsh0l60kp2m4q39gfgzpicm62g"; libraryHaskellDepends = [ base containers deepseq parallel vector ]; @@ -149107,10 +149320,8 @@ self: { }: mkDerivation { pname = "multilinear-io"; - version = "0.4.0.0"; - sha256 = "1zmhakpfmrcr0ikw4idd5k0iq5l7mm3idy329kwn5a2zcap7cmri"; - revision = "1"; - editedCabalFile = "1q7jzirjvc97xscx55pk01q1gqd0lb4g4ax2my45k8741mxclh3d"; + version = "0.5.0.0"; + sha256 = "1lvizs4lbjy8ki9v5ikmc23fmxkk9w5d3nh4v0iljwyz5cgds05c"; libraryHaskellDepends = [ aeson base bytestring cassava cereal cereal-vector conduit either multilinear transformers vector zlib @@ -150671,6 +150882,7 @@ self: { executableHaskellDepends = [ base HSH mtl process ]; description = "Utility to call iwconfig"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "n-tuple" = callPackage @@ -150874,8 +151086,8 @@ self: { pname = "named"; version = "0.2.0.0"; sha256 = "17ldvxypf099wj5phzh2aymzfwmyiyzhz24h1aj2s21nrys5n6n0"; - revision = "1"; - editedCabalFile = "0rnzxqlpxsfyvmc2i53iqspw03w2liflpy0zrc84pn6kw4v822j3"; + revision = "2"; + editedCabalFile = "0h9d74h6g685g1g0ylqf7kws1ancdy3q6fi39vinf5alkqa7kxwd"; libraryHaskellDepends = [ base ]; testHaskellDepends = [ base ]; description = "Named parameters (keyword arguments) for Haskell"; @@ -152852,6 +153064,7 @@ self: { ]; description = "Send metrics to Ganglia, Graphite, and statsd"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "network-minihttp" = callPackage @@ -152883,6 +153096,7 @@ self: { libraryHaskellDepends = [ base binary bytestring network unix ]; description = "Recvmsg and sendmsg bindings"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "network-msgpack-rpc" = callPackage @@ -153684,8 +153898,8 @@ self: { }: mkDerivation { pname = "ngx-export"; - version = "1.6.0"; - sha256 = "0svl195w8prf45g0pda1j6hngxpb18vdpc15cybxrzp2x689dxll"; + version = "1.6.1"; + sha256 = "1nzhfarz42b6arqndynp4zp4sq87g8ya9xh3zpyhsw8a3wz5idr0"; libraryHaskellDepends = [ async base binary bytestring deepseq monad-loops template-haskell unix @@ -153700,8 +153914,8 @@ self: { }: mkDerivation { pname = "ngx-export-tools"; - version = "0.3.0.0"; - sha256 = "0dnkw5vvvdkcqqga9i4pvclvr3bh6wywdg0r60l8vwdcpi820dkl"; + version = "0.3.1.0"; + sha256 = "1rdlyznj61a392n6m8p7g2g96alxcmcrw9n6izrdb0lkw21cls89"; libraryHaskellDepends = [ aeson base binary bytestring ngx-export safe template-haskell ]; @@ -154512,6 +154726,7 @@ self: { testHaskellDepends = [ base doctest Glob hspec QuickCheck text ]; description = "Non empty Data.Text type"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "non-empty-zipper" = callPackage @@ -154760,6 +154975,7 @@ self: { libraryHaskellDepends = [ base ]; description = "Useful utility functions that only depend on base"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "notcpp" = callPackage @@ -156855,6 +157071,40 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "open-adt" = callPackage + ({ mkDerivation, base, constraints, recursion-schemes, row-types + , template-haskell + }: + mkDerivation { + pname = "open-adt"; + version = "1.0"; + sha256 = "1v9gb06cifykapx2kjbi8kmkbvs625ydciv7g77ngnmaijzfsm4a"; + libraryHaskellDepends = [ + base constraints recursion-schemes row-types template-haskell + ]; + description = "Open algebraic data types"; + license = stdenv.lib.licenses.bsd3; + }) {}; + + "open-adt-tutorial" = callPackage + ({ mkDerivation, base, constraints, deriving-compat, open-adt + , recursion-schemes, row-types, template-haskell + }: + mkDerivation { + pname = "open-adt-tutorial"; + version = "1.0"; + sha256 = "19sgj0k0axlv15jlr945hh4j6wq8aqhafmj5m7njd5qp7yrbw66w"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + base constraints deriving-compat open-adt recursion-schemes + row-types template-haskell + ]; + executableHaskellDepends = [ base ]; + description = "Open algebraic data type examples"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "open-browser" = callPackage ({ mkDerivation, base, process }: mkDerivation { @@ -159106,6 +159356,33 @@ self: { libraryHaskellDepends = [ base text ]; description = "Colorization of text for command-line output"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + + "pairing" = callPackage + ({ mkDerivation, base, bytestring, criterion, cryptonite, memory + , protolude, QuickCheck, random, tasty, tasty-discover, tasty-hunit + , tasty-quickcheck, wl-pprint-text + }: + mkDerivation { + pname = "pairing"; + version = "0.1.0"; + sha256 = "0gdq9qfa874h8h8jkr5zqi90k3jzfnw9r9ydnx3pxn3j1d9si27v"; + libraryHaskellDepends = [ + base bytestring cryptonite memory protolude QuickCheck random + wl-pprint-text + ]; + testHaskellDepends = [ + base bytestring cryptonite memory protolude QuickCheck random tasty + tasty-discover tasty-hunit tasty-quickcheck wl-pprint-text + ]; + testToolDepends = [ tasty-discover ]; + benchmarkHaskellDepends = [ + base bytestring criterion cryptonite memory protolude QuickCheck + random tasty tasty-hunit tasty-quickcheck wl-pprint-text + ]; + description = "Optimal ate pairing over Barreto-Naehrig curves"; + license = stdenv.lib.licenses.mit; }) {}; "palette" = callPackage @@ -160682,6 +160959,7 @@ self: { ]; description = "Parsec combinators for parsing Haskell numeric types"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "parsec-parsers" = callPackage @@ -161136,6 +161414,7 @@ self: { libraryHaskellDepends = [ base network-uri ]; description = "Datatype for passing around unresolved URIs"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "partly" = callPackage @@ -161557,10 +161836,8 @@ self: { ({ mkDerivation, base, containers }: mkDerivation { pname = "patience"; - version = "0.1.1"; - sha256 = "0qyv20gqy9pb1acy700ahv70lc6vprcwb26cc7fcpcs4scsc7irm"; - revision = "1"; - editedCabalFile = "0xj4hypjnhsn5jhs66l9wwhpkn5pbd8xmx7pgcy2ib08cz1087y7"; + version = "0.2.0.0"; + sha256 = "0jkw6ip6fvmxpjzsfxwx7jbh58asrsq5wnc9i5jq4cv3pgql8a0j"; libraryHaskellDepends = [ base containers ]; description = "Patience diff and longest increasing subsequence"; license = stdenv.lib.licenses.bsd3; @@ -162243,6 +162520,7 @@ self: { libraryHaskellDepends = [ base ]; description = "Peano numbers"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "peano-inf" = callPackage @@ -166106,6 +166384,7 @@ self: { libraryHaskellDepends = [ base containers ]; description = "Implementation of the PKTree spatial index data structure"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "placeholders" = callPackage @@ -166957,6 +167236,7 @@ self: { ]; description = "Tool for refactoring expressions into pointfree form"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "pointfree-fancy" = callPackage @@ -167773,6 +168053,7 @@ self: { librarySystemDepends = [ portaudio ]; description = "Haskell bindings for the PortAudio library"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {inherit (pkgs) portaudio;}; "porte" = callPackage @@ -167826,6 +168107,7 @@ self: { libraryHaskellDepends = [ base directory process ]; description = "Library to interact with port tools on FreeBSD"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "positive" = callPackage @@ -167904,6 +168186,7 @@ self: { libraryHaskellDepends = [ base transformers unix ]; description = "Nice wrapper around POSIX fcntl advisory locks"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "posix-paths" = callPackage @@ -172453,8 +172736,8 @@ self: { }: mkDerivation { pname = "pseudo-boolean"; - version = "0.1.7.0"; - sha256 = "0y470jrqmc2k9j3zf2w2krjg3ial08v71bcq6zxh1g47iz4kszr7"; + version = "0.1.8.0"; + sha256 = "0na3kx4zxjmznfhw9121w8963vm2qppij5i93j4lvd3sflpwry9b"; libraryHaskellDepends = [ attoparsec base bytestring bytestring-builder containers deepseq dlist hashable megaparsec parsec void @@ -174140,6 +174423,8 @@ self: { pname = "quantification"; version = "0.5.0"; sha256 = "0ls8rhy0idrgj9dnd5ajjfi55bhz4qsyncj3ghw3nyrbr0q7j0bk"; + revision = "1"; + editedCabalFile = "0fn5ixppdyw4niyyf9iasvrbnaimjhwwi7di4l13bfylnmriliw9"; libraryHaskellDepends = [ aeson base binary containers ghc-prim hashable path-pieces text unordered-containers vector @@ -182096,6 +182381,7 @@ self: { benchmarkHaskellDepends = [ base bytestring criterion semigroups ]; description = "A Haskell client for the Riak decentralized data store"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "riak-protobuf" = callPackage @@ -182111,6 +182397,7 @@ self: { ]; description = "Haskell types for the Riak protocol buffer API"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "riak-protobuf-lens" = callPackage @@ -182132,6 +182419,7 @@ self: { ]; description = "Lenses for riak-protobuf"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "richreports" = callPackage @@ -182823,6 +183111,7 @@ self: { ]; description = "Sci-fi roguelike game. Client application."; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "roguestar-engine" = callPackage @@ -183649,6 +183938,7 @@ self: { testHaskellDepends = [ base QuickCheck safe ]; description = "Range set"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "rspp" = callPackage @@ -183808,6 +184098,7 @@ self: { libraryHaskellDepends = [ base ]; description = "dynamic linker tools for Haskell"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "rtlsdr" = callPackage @@ -187827,6 +188118,7 @@ self: { benchmarkHaskellDepends = [ base criterion text ]; description = "Representation, manipulation, and de/serialisation of Semantic Versions"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "semver-range" = callPackage @@ -190878,26 +191170,27 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; - "serverless-haskell_0_8_3" = callPackage + "serverless-haskell_0_8_4" = callPackage ({ mkDerivation, aeson, aeson-casing, aeson-extra, amazonka-core , amazonka-kinesis, amazonka-s3, base, bytestring, case-insensitive - , hspec, hspec-discover, http-types, iproute, lens, raw-strings-qq - , text, time, unix, unordered-containers + , hspec, hspec-discover, http-types, iproute, lens, network + , network-simple, raw-strings-qq, text, time, unix + , unordered-containers }: mkDerivation { pname = "serverless-haskell"; - version = "0.8.3"; - sha256 = "1d24qbl4d2sri9k67rgnivzw8wg5sxrdh2sh29m4wxvcas44a784"; + version = "0.8.4"; + sha256 = "0hbva555n2xypq7sby6frkrwhn6xxx1hdq7hgdi07cx60vs8b6l4"; libraryHaskellDepends = [ aeson aeson-casing aeson-extra amazonka-core amazonka-kinesis amazonka-s3 base bytestring case-insensitive http-types iproute - lens text time unix unordered-containers + lens network network-simple text time unix unordered-containers ]; testHaskellDepends = [ aeson aeson-casing aeson-extra amazonka-core amazonka-kinesis amazonka-s3 base bytestring case-insensitive hspec hspec-discover - http-types iproute lens raw-strings-qq text time unix - unordered-containers + http-types iproute lens network network-simple raw-strings-qq text + time unix unordered-containers ]; testToolDepends = [ hspec-discover ]; description = "Deploying Haskell code onto AWS Lambda using Serverless"; @@ -191545,6 +191838,7 @@ self: { librarySystemDepends = [ libsndfile openal ]; description = "minimal bindings to the audio module of sfml"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {inherit (pkgs) libsndfile; inherit (pkgs) openal;}; "sfmt" = callPackage @@ -195200,8 +195494,8 @@ self: { }: mkDerivation { pname = "slick"; - version = "0.1.1.0"; - sha256 = "0gqc9z8w9m1dvsnv7g1rsi367akkzp95w96lvx20sdg1gnzbx5rc"; + version = "0.2.0.0"; + sha256 = "0pxbrqykf11nrdc6zyjxvfc57dfajp5nm4qpqyk26l2jh1gaklz7"; libraryHaskellDepends = [ aeson base binary bytestring containers lens lens-aeson mustache pandoc shake text time @@ -200771,6 +201065,7 @@ self: { libraryHaskellDepends = [ base ]; description = "Numerical statistics for Foldable containers"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "stagen" = callPackage @@ -200846,6 +201141,7 @@ self: { libraryHaskellDepends = [ base ]; description = "the * -> * types, operators, and covariant instances"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "star-to-star-contra" = callPackage @@ -200857,6 +201153,7 @@ self: { libraryHaskellDepends = [ base star-to-star ]; description = "contravariant instances for * -> * types and operators"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "starling" = callPackage @@ -201086,6 +201383,7 @@ self: { librarySystemDepends = [ libstatgrab ]; description = "Collect system level metrics and statistics"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {inherit (pkgs) libstatgrab;}; "static-canvas" = callPackage @@ -204740,17 +205038,12 @@ self: { ({ mkDerivation, base, Cabal, containers, directory, filepath }: mkDerivation { pname = "superdoc"; - version = "0.1.2.7"; - sha256 = "0pfqvw6a9c29fsar1xiqwbsdc294l9iy3jlc6ax0wxdkfqyqwagv"; - isLibrary = true; - isExecutable = true; + version = "0.1.2.9"; + sha256 = "0svkvbrc9h1c32anfkfz0pllqzjnj5lg73c2sc7hpb8nzg16qv0v"; setupHaskellDepends = [ base Cabal containers directory filepath ]; libraryHaskellDepends = [ base Cabal containers directory filepath ]; - executableHaskellDepends = [ - base Cabal containers directory filepath - ]; description = "Additional documentation markup and Unicode support"; license = stdenv.lib.licenses.bsd3; hydraPlatforms = stdenv.lib.platforms.none; @@ -205199,6 +205492,7 @@ self: { testHaskellDepends = [ aeson base bytestring tasty tasty-hunit ]; description = "Implementation of swagger data model"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "swagger-petstore" = callPackage @@ -206746,6 +207040,7 @@ self: { libraryHaskellDepends = [ base safe text ]; description = "Table layout"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "table" = callPackage @@ -206878,6 +207173,7 @@ self: { ]; description = "Pretty-printing of CSV files"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "tabloid" = callPackage @@ -210840,6 +211136,7 @@ self: { benchmarkHaskellDepends = [ base criterion text ]; description = "Case conversion, word boundary manipulation, and textual subjugation"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "text-markup" = callPackage @@ -214326,6 +214623,7 @@ self: { libraryHaskellDepends = [ attoparsec base bytestring utf8-string ]; description = "Library for encoding/decoding TNET strings for PGI"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "to-haskell" = callPackage @@ -215939,6 +216237,32 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "tree-diff_0_0_2" = callPackage + ({ mkDerivation, aeson, ansi-terminal, ansi-wl-pprint, base + , base-compat, bytestring, containers, generics-sop, hashable + , MemoTrie, parsec, parsers, pretty, QuickCheck, scientific, tagged + , tasty, tasty-golden, tasty-quickcheck, text, time, trifecta + , unordered-containers, uuid-types, vector + }: + mkDerivation { + pname = "tree-diff"; + version = "0.0.2"; + sha256 = "0zlviaikyk50l577q7h06w5z058v1ngjlhwzfn965xkp978hnsgq"; + libraryHaskellDepends = [ + aeson ansi-terminal ansi-wl-pprint base base-compat bytestring + containers generics-sop hashable MemoTrie parsec parsers pretty + QuickCheck scientific tagged text time unordered-containers + uuid-types vector + ]; + testHaskellDepends = [ + ansi-terminal ansi-wl-pprint base base-compat parsec QuickCheck + tasty tasty-golden tasty-quickcheck trifecta + ]; + description = "Diffing of (expression) trees"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "tree-fun" = callPackage ({ mkDerivation, base, containers, mtl }: mkDerivation { @@ -219492,6 +219816,7 @@ self: { libraryHaskellDepends = [ base ]; description = "IO without any non-error, synchronous exceptions"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "unexceptionalio-trans" = callPackage @@ -221054,6 +221379,7 @@ self: { executableHaskellDepends = [ base ports-tools process ]; description = "Software management tool"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "update-monad" = callPackage @@ -222132,6 +222458,7 @@ self: { executableHaskellDepends = [ base process ]; description = "A debugger for the UUAG system"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "uuid" = callPackage @@ -224212,7 +224539,7 @@ self: { license = stdenv.lib.licenses.mit; }) {}; - "vinyl_0_10_0" = callPackage + "vinyl_0_10_0_1" = callPackage ({ mkDerivation, aeson, array, base, criterion, doctest, ghc-prim , hspec, lens, lens-aeson, linear, microlens, mtl, mwc-random , primitive, should-not-typecheck, singletons, tagged, text @@ -224220,8 +224547,8 @@ self: { }: mkDerivation { pname = "vinyl"; - version = "0.10.0"; - sha256 = "1d1lm9mi9gkcaw0lczbmbn81c3kc5yji3jbp2rjabiwhyi61mj4m"; + version = "0.10.0.1"; + sha256 = "1x2x40cgyhj3yzw4kajssjvlnwlcrrnz7vaa8as2k9xmv9x76ig4"; libraryHaskellDepends = [ array base ghc-prim ]; testHaskellDepends = [ aeson base doctest hspec lens lens-aeson microlens mtl @@ -225216,6 +225543,7 @@ self: { ]; description = "Helpers to bind digestive-functors onto wai requests"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "wai-dispatch" = callPackage @@ -226227,6 +226555,7 @@ self: { ]; description = "WAI request predicates"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "wai-request-spec" = callPackage @@ -226378,6 +226707,7 @@ self: { ]; description = "Flexible session middleware for WAI"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "wai-session-alt" = callPackage @@ -226411,6 +226741,7 @@ self: { ]; description = "Session store based on clientsession"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "wai-session-mysql" = callPackage @@ -226596,6 +226927,7 @@ self: { ]; description = "Collection of utility functions for use with WAI"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "wai-websockets" = callPackage @@ -228183,6 +228515,7 @@ self: { ]; description = "Wedged postcard generator"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "weeder" = callPackage @@ -230472,6 +230805,8 @@ self: { pname = "x509"; version = "1.7.5"; sha256 = "1j67c35g8334jx7x32hh6awhr43dplp0qwal5gnlkmx09axzrc5i"; + revision = "1"; + editedCabalFile = "1z98llpggldy4yb7afcsn3r3q4vklvx2pqyrhy9fir5y2yd5l601"; libraryHaskellDepends = [ asn1-encoding asn1-parse asn1-types base bytestring containers cryptonite hourglass memory mtl pem @@ -231302,6 +231637,7 @@ self: { ]; description = "Streaming XML parser based on conduits"; license = "unknown"; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "xml-conduit-writer" = callPackage From b13d8eadaaa42195688366a1a12d1c39465d927c Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Nov 2018 11:19:28 +0100 Subject: [PATCH 097/106] haskell-Cabal: update overrides for the new 2.4.1.x version --- pkgs/development/haskell-modules/configuration-common.nix | 2 +- .../development/haskell-modules/configuration-ghc-8.4.x.nix | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 5f56dc3a9b6..e1c58dd49c4 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -33,7 +33,7 @@ self: super: { unbuildable = throw "package depends on meta package 'unbuildable'"; # Use the latest version of the Cabal library. - cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_2_4_0_1; }); + cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_2_4_1_0; }); # The test suite depends on old versions of tasty and QuickCheck. hackage-security = dontCheck super.hackage-security; diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix index 226b437d58b..83cb831345c 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix @@ -62,10 +62,10 @@ self: super: { # that have it as an actual library dependency. The explicit overrides are # more verbose but friendlier for Hydra. stack = (doJailbreak super.stack).override { - Cabal = self.Cabal_2_4_0_1; - hpack = self.hpack_0_31_1.override { Cabal = self.Cabal_2_4_0_1; }; + Cabal = self.Cabal_2_4_1_0; + hpack = self.hpack_0_31_1.override { Cabal = self.Cabal_2_4_1_0; }; yaml = self.yaml_0_11_0_0; - hackage-security = self.hackage-security.override { Cabal = self.Cabal_2_4_0_1; }; + hackage-security = self.hackage-security.override { Cabal = self.Cabal_2_4_1_0; }; }; hpack_0_31_1 = super.hpack_0_31_1.override { yaml = self.yaml_0_11_0_0; From 1e54ee80f298d533ea05bc4063d9181d2a771405 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 27 Nov 2018 15:54:06 +0100 Subject: [PATCH 098/106] haskell-chell: pin build to patience-0.1.x Newer version are not supported yet. --- .../haskell-modules/configuration-common.nix | 3 +++ .../haskell-modules/configuration-hackage2nix.yaml | 1 + .../haskell-modules/hackage-packages.nix | 14 ++++++++++++++ 3 files changed, 18 insertions(+) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index e1c58dd49c4..50901b7d1da 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -1185,4 +1185,7 @@ self: super: { # }); libnix = dontCheck super.libnix; + # https://github.com/jmillikin/chell/issues/1 + chell = super.chell.override { patience = self.patience_0_1_1; }; + } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml index 8ac91d65973..4b50a1d5263 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml @@ -2455,6 +2455,7 @@ extra-packages: - yesod-persistent < 1.5 # pre-lts-11.x versions neeed by git-annex 6.20180227 - yesod-static ^>= 1.5 # pre-lts-11.x versions neeed by git-annex 6.20180227 - yesod-test ^>= 1.5 # pre-lts-11.x versions neeed by git-annex 6.20180227 + - patience ^>= 0.1 # required by chell-0.4.x package-maintainers: peti: diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index e6bfba602ab..6c30537c2ca 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -161832,6 +161832,20 @@ self: { license = stdenv.lib.licenses.mit; }) {}; + "patience_0_1_1" = callPackage + ({ mkDerivation, base, containers }: + mkDerivation { + pname = "patience"; + version = "0.1.1"; + sha256 = "0qyv20gqy9pb1acy700ahv70lc6vprcwb26cc7fcpcs4scsc7irm"; + revision = "1"; + editedCabalFile = "0xj4hypjnhsn5jhs66l9wwhpkn5pbd8xmx7pgcy2ib08cz1087y7"; + libraryHaskellDepends = [ base containers ]; + description = "Patience diff and longest increasing subsequence"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "patience" = callPackage ({ mkDerivation, base, containers }: mkDerivation { From 0640741b20142b59d82c3e1610c9ca85c27a3e86 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 27 Nov 2018 16:37:56 +0100 Subject: [PATCH 099/106] hackage2nix: update list of failing Hydra builds --- .../configuration-hackage2nix.yaml | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml index 4b50a1d5263..ca0ea5a1514 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml @@ -3009,6 +3009,7 @@ dont-distribute-packages: azure-servicebus: [ i686-linux, x86_64-linux, x86_64-darwin ] azurify: [ i686-linux, x86_64-linux, x86_64-darwin ] b-tree: [ i686-linux, x86_64-linux, x86_64-darwin ] + b9: [ i686-linux, x86_64-linux, x86_64-darwin ] babylon: [ i686-linux, x86_64-linux, x86_64-darwin ] backdropper: [ i686-linux, x86_64-linux, x86_64-darwin ] backtracking-exceptions: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -3071,6 +3072,7 @@ dont-distribute-packages: bench-show: [ i686-linux, x86_64-linux, x86_64-darwin ] BenchmarkHistory: [ i686-linux, x86_64-linux, x86_64-darwin ] benchpress: [ i686-linux, x86_64-linux, x86_64-darwin ] + bencodex: [ i686-linux, x86_64-linux, x86_64-darwin ] bencoding: [ i686-linux, x86_64-linux, x86_64-darwin ] berkeleydb: [ i686-linux, x86_64-linux, x86_64-darwin ] BerkeleyDBXML: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -3493,6 +3495,7 @@ dont-distribute-packages: chuchu: [ i686-linux, x86_64-linux, x86_64-darwin ] chunks: [ i686-linux, x86_64-linux, x86_64-darwin ] chunky: [ i686-linux, x86_64-linux, x86_64-darwin ] + church: [ i686-linux, x86_64-linux, x86_64-darwin ] cielo: [ i686-linux, x86_64-linux, x86_64-darwin ] cil: [ i686-linux, x86_64-linux, x86_64-darwin ] cinvoke: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -3583,6 +3586,7 @@ dont-distribute-packages: CMQ: [ i686-linux, x86_64-linux, x86_64-darwin ] cmv: [ i686-linux, x86_64-linux, x86_64-darwin ] cnc-spec-compiler: [ i686-linux, x86_64-linux, x86_64-darwin ] + co-log-sys: [ i686-linux, x86_64-linux, x86_64-darwin ] co-log: [ i686-linux, x86_64-linux, x86_64-darwin ] Coadjute: [ i686-linux, x86_64-linux, x86_64-darwin ] coalpit: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -3785,6 +3789,7 @@ dont-distribute-packages: cplusplus-th: [ i686-linux, x86_64-linux, x86_64-darwin ] cprng-aes-effect: [ i686-linux, x86_64-linux, x86_64-darwin ] cpuperf: [ i686-linux, x86_64-linux, x86_64-darwin ] + cpython: [ i686-linux, x86_64-linux, x86_64-darwin ] cql-io: [ i686-linux, x86_64-linux, x86_64-darwin ] cqrs-core: [ i686-linux, x86_64-linux, x86_64-darwin ] cqrs-example: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4147,6 +4152,9 @@ dont-distribute-packages: doctest-discover-configurator: [ i686-linux, x86_64-linux, x86_64-darwin ] doctest-driver-gen: [ i686-linux, x86_64-linux, x86_64-darwin ] DocTest: [ i686-linux, x86_64-linux, x86_64-darwin ] + docusign-base: [ i686-linux, x86_64-linux, x86_64-darwin ] + docusign-client: [ i686-linux, x86_64-linux, x86_64-darwin ] + docusign-example: [ i686-linux, x86_64-linux, x86_64-darwin ] docvim: [ i686-linux, x86_64-linux, x86_64-darwin ] doi: [ i686-linux, x86_64-linux, x86_64-darwin ] DOM: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4254,6 +4262,7 @@ dont-distribute-packages: effects: [ i686-linux, x86_64-linux, x86_64-darwin ] effin: [ i686-linux, x86_64-linux, x86_64-darwin ] egison-quote: [ i686-linux, x86_64-linux, x86_64-darwin ] + egison-tutorial: [ i686-linux, x86_64-linux, x86_64-darwin ] ehaskell: [ i686-linux, x86_64-linux, x86_64-darwin ] ehs: [ i686-linux, x86_64-linux, x86_64-darwin ] eibd-client-simple: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4409,6 +4418,7 @@ dont-distribute-packages: extemp: [ i686-linux, x86_64-linux, x86_64-darwin ] extended-categories: [ i686-linux, x86_64-linux, x86_64-darwin ] extensible-data: [ i686-linux, x86_64-linux, x86_64-darwin ] + extensible-effects-concurrent: [ i686-linux, x86_64-linux, x86_64-darwin ] Extra: [ i686-linux, x86_64-linux, x86_64-darwin ] extract-dependencies: [ i686-linux, x86_64-linux, x86_64-darwin ] extractelf: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4562,6 +4572,7 @@ dont-distribute-packages: flower: [ i686-linux, x86_64-linux, x86_64-darwin ] flowlocks-framework: [ i686-linux, x86_64-linux, x86_64-darwin ] flowsim: [ i686-linux, x86_64-linux, x86_64-darwin ] + fltkhs-fluid-examples: [ i686-linux, x86_64-linux, x86_64-darwin ] fluent-logger-conduit: [ i686-linux, x86_64-linux, x86_64-darwin ] fluent-logger: [ i686-linux, x86_64-linux, x86_64-darwin ] fluidsynth: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4680,6 +4691,7 @@ dont-distribute-packages: functor-infix: [ i686-linux, x86_64-linux, x86_64-darwin ] functor: [ i686-linux, x86_64-linux, x86_64-darwin ] functorm: [ i686-linux, x86_64-linux, x86_64-darwin ] + funflow-nix: [ i686-linux, x86_64-linux, x86_64-darwin ] funflow: [ i686-linux, x86_64-linux, x86_64-darwin ] Fungi: [ i686-linux, x86_64-linux, x86_64-darwin ] funion: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4736,6 +4748,7 @@ dont-distribute-packages: generic-accessors: [ i686-linux, x86_64-linux, x86_64-darwin ] generic-binary: [ i686-linux, x86_64-linux, x86_64-darwin ] generic-church: [ i686-linux, x86_64-linux, x86_64-darwin ] + generic-data-surgery: [ i686-linux, x86_64-linux, x86_64-darwin ] generic-data: [ i686-linux, x86_64-linux, x86_64-darwin ] generic-enum: [ i686-linux, x86_64-linux, x86_64-darwin ] generic-lens-labels: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4761,6 +4774,7 @@ dont-distribute-packages: GenSmsPdu: [ i686-linux, x86_64-linux, x86_64-darwin ] gentlemark: [ i686-linux, x86_64-linux, x86_64-darwin ] GenussFold: [ i686-linux, x86_64-linux, x86_64-darwin ] + genvalidity-hspec-optics: [ i686-linux, x86_64-linux, x86_64-darwin ] geo-resolver: [ i686-linux, x86_64-linux, x86_64-darwin ] GeocoderOpenCage: [ i686-linux, x86_64-linux, x86_64-darwin ] geodetic: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -4883,6 +4897,7 @@ dont-distribute-packages: gloss-banana: [ i686-linux, x86_64-linux, x86_64-darwin ] gloss-devil: [ i686-linux, x86_64-linux, x86_64-darwin ] gloss-examples: [ i686-linux, x86_64-linux, x86_64-darwin ] + gloss-export: [ i686-linux, x86_64-linux, x86_64-darwin ] gloss-game: [ i686-linux, x86_64-linux, x86_64-darwin ] gloss-juicy: [ i686-linux, x86_64-linux, x86_64-darwin ] gloss-sodium: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -5135,6 +5150,7 @@ dont-distribute-packages: grpc-etcd-client: [ i686-linux, x86_64-linux, x86_64-darwin ] gruff-examples: [ i686-linux, x86_64-linux, x86_64-darwin ] gruff: [ i686-linux, x86_64-linux, x86_64-darwin ] + gscholar-rss: [ i686-linux, x86_64-linux, x86_64-darwin ] gsl-random-fu: [ i686-linux, x86_64-linux, x86_64-darwin ] gsl-random: [ i686-linux, x86_64-linux, x86_64-darwin ] gstorable: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -5401,6 +5417,8 @@ dont-distribute-packages: haskell-tools-ast-fromghc: [ i686-linux, x86_64-linux, x86_64-darwin ] haskell-tools-ast-gen: [ i686-linux, x86_64-linux, x86_64-darwin ] haskell-tools-ast-trf: [ i686-linux, x86_64-linux, x86_64-darwin ] + haskell-tools-cli: [ i686-linux, x86_64-linux, x86_64-darwin ] + haskell-tools-daemon: [ i686-linux, x86_64-linux, x86_64-darwin ] haskell-tor: [ i686-linux, x86_64-linux, x86_64-darwin ] haskell-type-exts: [ i686-linux, x86_64-linux, x86_64-darwin ] haskell-typescript: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -5472,6 +5490,7 @@ dont-distribute-packages: hasktorch: [ i686-linux, x86_64-linux, x86_64-darwin ] haskus-binary: [ i686-linux, x86_64-linux, x86_64-darwin ] haskus-system-build: [ i686-linux, x86_64-linux, x86_64-darwin ] + haskus-utils-variant: [ i686-linux, x86_64-linux, x86_64-darwin ] haskus-utils: [ i686-linux, x86_64-linux, x86_64-darwin ] haslo: [ i686-linux, x86_64-linux, x86_64-darwin ] hasloGUI: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -6259,6 +6278,7 @@ dont-distribute-packages: imperative-edsl-vhdl: [ i686-linux, x86_64-linux, x86_64-darwin ] imperative-edsl: [ i686-linux, x86_64-linux, x86_64-darwin ] ImperativeHaskell: [ i686-linux, x86_64-linux, x86_64-darwin ] + impl: [ i686-linux, x86_64-linux, x86_64-darwin ] implicit-logging: [ i686-linux, x86_64-linux, x86_64-darwin ] implicit-params: [ i686-linux, x86_64-linux, x86_64-darwin ] importify: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -6381,6 +6401,7 @@ dont-distribute-packages: JackMiniMix: [ i686-linux, x86_64-linux, x86_64-darwin ] jackminimix: [ i686-linux, x86_64-linux, x86_64-darwin ] jacobi-roots: [ i686-linux, x86_64-linux, x86_64-darwin ] + jaeger-flamegraph: [ i686-linux, x86_64-linux, x86_64-darwin ] jail: [ i686-linux, x86_64-linux, x86_64-darwin ] jalaali: [ i686-linux, x86_64-linux, x86_64-darwin ] jalla: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -6567,6 +6588,7 @@ dont-distribute-packages: lambda2js: [ i686-linux, x86_64-linux, x86_64-darwin ] lambdaBase: [ i686-linux, x86_64-linux, x86_64-darwin ] lambdabot-utils: [ i686-linux, x86_64-linux, x86_64-darwin ] + lambdabot-zulip: [ i686-linux, x86_64-linux, x86_64-darwin ] lambdacms-core: [ i686-linux, x86_64-linux, x86_64-darwin ] lambdacms-media: [ i686-linux, x86_64-linux, x86_64-darwin ] lambdacube-bullet: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -7229,6 +7251,7 @@ dont-distribute-packages: multipass: [ i686-linux, x86_64-linux, x86_64-darwin ] multipath: [ i686-linux, x86_64-linux, x86_64-darwin ] multiplate-simplified: [ i686-linux, x86_64-linux, x86_64-darwin ] + multipool-persistent-postgresql: [ i686-linux, x86_64-linux, x86_64-darwin ] multirec-alt-deriver: [ i686-linux, x86_64-linux, x86_64-darwin ] multirec-binary: [ i686-linux, x86_64-linux, x86_64-darwin ] multirec: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -7297,6 +7320,7 @@ dont-distribute-packages: nanomsg: [ i686-linux, x86_64-linux, x86_64-darwin ] nanoparsec: [ i686-linux, x86_64-linux, x86_64-darwin ] NanoProlog: [ i686-linux, x86_64-linux, x86_64-darwin ] + nanovg-simple: [ i686-linux, x86_64-linux, x86_64-darwin ] nanovg: [ i686-linux, x86_64-linux, x86_64-darwin ] nanq: [ i686-linux, x86_64-linux, x86_64-darwin ] Naperian: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -7455,6 +7479,7 @@ dont-distribute-packages: nymphaea: [ i686-linux, x86_64-linux, x86_64-darwin ] o-clock: [ i686-linux, x86_64-linux, x86_64-darwin ] oanda-rest-api: [ i686-linux, x86_64-linux, x86_64-darwin ] + oauth2-jwt-bearer: [ i686-linux, x86_64-linux, x86_64-darwin ] oauthenticated: [ i686-linux, x86_64-linux, x86_64-darwin ] obd: [ i686-linux, x86_64-linux, x86_64-darwin ] obdd: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -7502,6 +7527,7 @@ dont-distribute-packages: open-typerep: [ i686-linux, x86_64-linux, x86_64-darwin ] OpenAFP-Utils: [ i686-linux, x86_64-linux, x86_64-darwin ] OpenAFP: [ i686-linux, x86_64-linux, x86_64-darwin ] + openapi-petstore: [ i686-linux, x86_64-linux, x86_64-darwin ] opench-meteo: [ i686-linux, x86_64-linux, x86_64-darwin ] OpenCL: [ i686-linux, x86_64-linux, x86_64-darwin ] OpenCLRaw: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -7745,6 +7771,7 @@ dont-distribute-packages: picoparsec: [ i686-linux, x86_64-linux, x86_64-darwin ] picosat: [ i686-linux, x86_64-linux, x86_64-darwin ] pictikz: [ i686-linux, x86_64-linux, x86_64-darwin ] + pier-core: [ i686-linux, x86_64-linux, x86_64-darwin ] pier: [ i686-linux, x86_64-linux, x86_64-darwin ] piet: [ i686-linux, x86_64-linux, x86_64-darwin ] pinchot: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -7819,6 +7846,7 @@ dont-distribute-packages: pointless-lenses: [ i686-linux, x86_64-linux, x86_64-darwin ] pointless-rewrite: [ i686-linux, x86_64-linux, x86_64-darwin ] pokemon-go-protobuf-types: [ i686-linux, x86_64-linux, x86_64-darwin ] + poker-eval: [ i686-linux, x86_64-linux, x86_64-darwin ] pokitdok: [ i686-linux, x86_64-linux, x86_64-darwin ] polar-configfile: [ i686-linux, x86_64-linux, x86_64-darwin ] polar-shader: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -8572,6 +8600,7 @@ dont-distribute-packages: servant-auth-token: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-checked-exceptions: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-client: [ i686-linux, x86_64-linux, x86_64-darwin ] + servant-conduit: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-csharp: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-db-postgresql: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-db: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -8585,8 +8614,11 @@ dont-distribute-packages: servant-iCalendar: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-jquery: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-js: [ i686-linux, x86_64-linux, x86_64-darwin ] + servant-machines: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-matrix-param: [ i686-linux, x86_64-linux, x86_64-darwin ] + servant-multipart: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-nix: [ i686-linux, x86_64-linux, x86_64-darwin ] + servant-pipes: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-pool: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-postgresql: [ i686-linux, x86_64-linux, x86_64-darwin ] servant-proto-lens: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -8647,6 +8679,7 @@ dont-distribute-packages: shake-extras: [ i686-linux, x86_64-linux, x86_64-darwin ] shake-minify: [ i686-linux, x86_64-linux, x86_64-darwin ] shake-pack: [ i686-linux, x86_64-linux, x86_64-darwin ] + shake-path: [ i686-linux, x86_64-linux, x86_64-darwin ] shake-persist: [ i686-linux, x86_64-linux, x86_64-darwin ] shaker: [ i686-linux, x86_64-linux, x86_64-darwin ] shakespeare-babel: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -9100,6 +9133,7 @@ dont-distribute-packages: supermonad: [ i686-linux, x86_64-linux, x86_64-darwin ] supero: [ i686-linux, x86_64-linux, x86_64-darwin ] supervisor: [ i686-linux, x86_64-linux, x86_64-darwin ] + supervisors: [ i686-linux, x86_64-linux, x86_64-darwin ] supplemented: [ i686-linux, x86_64-linux, x86_64-darwin ] surjective: [ i686-linux, x86_64-linux, x86_64-darwin ] sv-cassava: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -9277,6 +9311,7 @@ dont-distribute-packages: texbuilder: [ i686-linux, x86_64-linux, x86_64-darwin ] text-all: [ i686-linux, x86_64-linux, x86_64-darwin ] text-and-plots: [ i686-linux, x86_64-linux, x86_64-darwin ] + text-ansi: [ i686-linux, x86_64-linux, x86_64-darwin ] text-builder: [ i686-linux, x86_64-linux, x86_64-darwin ] text-containers: [ i686-linux, x86_64-linux, x86_64-darwin ] text-format-heavy: [ i686-linux, x86_64-linux, x86_64-darwin ] @@ -9794,6 +9829,7 @@ dont-distribute-packages: wai-request-spec: [ i686-linux, x86_64-linux, x86_64-darwin ] wai-responsible: [ i686-linux, x86_64-linux, x86_64-darwin ] wai-router: [ i686-linux, x86_64-linux, x86_64-darwin ] + wai-routing: [ i686-linux, x86_64-linux, x86_64-darwin ] wai-secure-cookies: [ i686-linux, x86_64-linux, x86_64-darwin ] wai-session-alt: [ i686-linux, x86_64-linux, x86_64-darwin ] wai-session-mysql: [ i686-linux, x86_64-linux, x86_64-darwin ] From fc42a76d93fcf2ab75503f653559eb9b71928fa4 Mon Sep 17 00:00:00 2001 From: Roman Volosatovs Date: Fri, 23 Nov 2018 22:04:54 +0100 Subject: [PATCH 100/106] echoip: init at unstable-2018-11-20 --- pkgs/servers/echoip/default.nix | 30 +++++++++++++ pkgs/servers/echoip/deps.nix | 74 +++++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 106 insertions(+) create mode 100644 pkgs/servers/echoip/default.nix create mode 100644 pkgs/servers/echoip/deps.nix diff --git a/pkgs/servers/echoip/default.nix b/pkgs/servers/echoip/default.nix new file mode 100644 index 00000000000..e71abb8bc00 --- /dev/null +++ b/pkgs/servers/echoip/default.nix @@ -0,0 +1,30 @@ +{ lib, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + name = "echoip-${version}"; + version = "unstable-2018-11-20"; + + goPackagePath = "github.com/mpolden/echoip"; + + src = fetchFromGitHub { + owner = "mpolden"; + repo = "echoip"; + rev = "4bfaf671b9f75a7b2b37543b2991401cbf57f1f0"; + sha256 = "0n5d9i8cc5lqgy5apqd3zhyl3h1xjacf612z8xpvbm75jnllcvxy"; + }; + + goDeps = ./deps.nix; + + outputs = [ "bin" "out" ]; + + postInstall = '' + mkdir -p $out + cp $src/index.html $out/index.html + ''; + + meta = with lib; { + homepage = https://github.com/mpolden/echoip; + license = licenses.bsd3; + maintainers = with maintainers; [ rvolosatovs ]; + }; +} diff --git a/pkgs/servers/echoip/deps.nix b/pkgs/servers/echoip/deps.nix new file mode 100644 index 00000000000..4e4f0799bda --- /dev/null +++ b/pkgs/servers/echoip/deps.nix @@ -0,0 +1,74 @@ +# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix) +[ + + { + goPackagePath = "github.com/davecgh/go-spew"; + fetch = { + type = "git"; + url = "https://github.com/davecgh/go-spew"; + rev = "v1.1.1"; + sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y"; + }; + } + + { + goPackagePath = "github.com/jessevdk/go-flags"; + fetch = { + type = "git"; + url = "https://github.com/jessevdk/go-flags"; + rev = "v1.4.0"; + sha256 = "0algnnigph27spgn655zm4723yfjxjjvlf4k14z9drj3682df25a"; + }; + } + + { + goPackagePath = "github.com/oschwald/geoip2-golang"; + fetch = { + type = "FromGitHub"; + owner = "oschwald"; + repo = "geoip2-golang"; + rev = "v1.2.1"; + sha256 = "0zpgpz577rghvgis6ji9l99pq87z5izbgzmnbyn3dy533bayrgpw"; + }; + } + + { + goPackagePath = "github.com/oschwald/maxminddb-golang"; + fetch = { + type = "git"; + url = "https://github.com/oschwald/maxminddb-golang"; + rev = "v1.2.1"; + sha256 = "0nlip5a2yiig0sv9y3ky4kn8730236wal3zjcs4yfgnw6nxl3rjr"; + }; + } + + { + goPackagePath = "github.com/pmezard/go-difflib"; + fetch = { + type = "git"; + url = "https://github.com/pmezard/go-difflib"; + rev = "v1.0.0"; + sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw"; + }; + } + + { + goPackagePath = "github.com/stretchr/testify"; + fetch = { + type = "git"; + url = "https://github.com/stretchr/testify"; + rev = "v1.2.2"; + sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs"; + }; + } + + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "37707fdb30a5"; + sha256 = "1abrr2507a737hdqv4q7pw7hv6ls9pdiq9crhdi52r3gcz6hvizg"; + }; + } +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 00b1a7c0542..a3c4bfaf23e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16370,6 +16370,8 @@ with pkgs; eaglemode = callPackage ../applications/misc/eaglemode { }; + echoip = callPackage ../servers/echoip { }; + eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { jdk = jdk11; }); From 00a8fdac61c987b0253b40658dac929883f7400e Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 27 Nov 2018 17:40:35 +0100 Subject: [PATCH 101/106] gnome3.gnome-keyring: disable test suite on i686 to fix the build https://github.com/NixOS/nixpkgs/issues/51121 (cherry picked from commit 86d1ba34b4249d4403cedef8a2ee66b1409f6f01) --- pkgs/desktops/gnome-3/core/gnome-keyring/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix index 9d9c874319c..1e3e98cba73 100644 --- a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { patchShebangs build ''; - doCheck = true; + doCheck = !stdenv.isi686; # https://github.com/NixOS/nixpkgs/issues/51121 # In 3.20.1, tests do not support Python 3 checkInputs = [ dbus python2 ]; From 0d7407cf6f6a60648e2dee03830961ba010f7edc Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Sun, 18 Nov 2018 23:41:13 -0500 Subject: [PATCH 102/106] grpc: 1.15.0 -> 1.16.1 --- pkgs/development/libraries/grpc/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/grpc/default.nix b/pkgs/development/libraries/grpc/default.nix index f4145c85199..938a47a4037 100644 --- a/pkgs/development/libraries/grpc/default.nix +++ b/pkgs/development/libraries/grpc/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchFromGitHub, cmake, zlib, c-ares, pkgconfig, openssl, protobuf, gflags }: stdenv.mkDerivation rec { - version = "1.15.0"; + version = "1.16.1"; name = "grpc-${version}"; src = fetchFromGitHub { owner = "grpc"; repo = "grpc"; - rev= "d2c7d4dea492b9a86a53555aabdbfa90c2b01730"; - sha256 = "1dpnhc5kw7znivrnjx1gva57v6b548am4v5nvh3dkwwzsa1k6vkv"; + rev = "v${version}"; + sha256 = "1jimqz3115f9pli5w6ik9wi7mjc7ix6y7yrq4a1ab9fc3dalj7p2"; }; nativeBuildInputs = [ cmake pkgconfig ]; buildInputs = [ zlib c-ares c-ares.cmake-config openssl protobuf gflags ]; From de39c5f372c741bb2190f91ef5690de1d9e481e5 Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Sun, 18 Nov 2018 23:42:47 -0500 Subject: [PATCH 103/106] pythonPackages.grpcio: 1.15.0 -> 1.16.1 --- pkgs/development/python-modules/grpcio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio/default.nix b/pkgs/development/python-modules/grpcio/default.nix index 6141e4a389c..e170c14949d 100644 --- a/pkgs/development/python-modules/grpcio/default.nix +++ b/pkgs/development/python-modules/grpcio/default.nix @@ -4,11 +4,11 @@ with stdenv.lib; buildPythonPackage rec { pname = "grpcio"; - version = "1.15.0"; + version = "1.16.1"; src = fetchPypi { inherit pname version; - sha256 = "1lhh76kgyibgsk6c54nbzzhkskknkbvn71xvixsk0prfp8izr98m"; + sha256 = "0am76f8r4v5kcvbar593n2c1mp25cxi67cxigjhd0rnncmk4bgs1"; }; nativeBuildInputs = [ pkgconfig ] ++ optional stdenv.isDarwin darwin.cctools; From 4380a9143b8b05d0412459310e5cc731db5c1630 Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Sun, 18 Nov 2018 23:43:21 -0500 Subject: [PATCH 104/106] pythonPackages.grpcio-tools: 1.14.2 -> 1.16.1 --- pkgs/development/python-modules/grpcio-tools/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-tools/default.nix b/pkgs/development/python-modules/grpcio-tools/default.nix index 7c58c866f52..ad777cf4435 100644 --- a/pkgs/development/python-modules/grpcio-tools/default.nix +++ b/pkgs/development/python-modules/grpcio-tools/default.nix @@ -2,16 +2,16 @@ buildPythonPackage rec { pname = "grpcio-tools"; - version = "1.14.2"; + version = "1.16.1"; src = fetchPypi { inherit pname version; - sha256 = "b3fd64a5b8c1d981f6d68a331449109633710a346051c44e0f0cca1812e2b4b0"; + sha256 = "0h0w7jlggm8nc250wwqai7lihw8mymx9jjpkl0cdmqmwbypj72vd"; }; enableParallelBuilding = true; - propagatedBuildInputs = [ grpc grpcio ]; + propagatedBuildInputs = [ grpcio ]; # no tests in the package doCheck = false; From be8569be499490fc04eff48c2d27dd9d89aaa60d Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Sat, 24 Nov 2018 18:09:52 -0500 Subject: [PATCH 105/106] pythonPackages.protobuf: fix compatibility with Python 3.7 --- pkgs/development/python-modules/protobuf/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/protobuf/default.nix b/pkgs/development/python-modules/protobuf/default.nix index 9059080c919..a9d20983a55 100644 --- a/pkgs/development/python-modules/protobuf/default.nix +++ b/pkgs/development/python-modules/protobuf/default.nix @@ -1,4 +1,4 @@ -{ stdenv, python, buildPythonPackage +{ stdenv, fetchpatch, python, buildPythonPackage , protobuf, google_apputils, pyext, libcxx , disabled, doCheck ? true }: @@ -16,6 +16,15 @@ buildPythonPackage rec { propagatedBuildInputs = [ protobuf google_apputils ]; buildInputs = [ google_apputils pyext ]; + patches = [ + # Python 3.7 compatibility (remove when protobuf 3.7 is released) + (fetchpatch { + url = "https://github.com/protocolbuffers/protobuf/commit/0a59054c30e4f0ba10f10acfc1d7f3814c63e1a7.patch"; + sha256 = "09hw22y3423v8bbmc9xm07znwdxfbya6rp78d4zqw6fisdvjkqf1"; + stripLen = 1; + }) + ]; + prePatch = '' while [ ! -d python ]; do cd * From 63b39af496505034fd5125f9a94dccd795d1b648 Mon Sep 17 00:00:00 2001 From: Timo Kaufmann Date: Tue, 27 Nov 2018 18:24:37 +0100 Subject: [PATCH 106/106] pythonPackages.rpy2: various fixes (#51084) - make sure libreadline is found at runtime - make sure python libraries are found at runtime - add libraries necessary to pass the testsuite and standard libraries --- .../python-modules/rpy2/default.nix | 53 +++++++++++++++++-- .../python-modules/rpy2/r-libs-site.patch | 20 +++++++ pkgs/development/r-modules/wrapper.nix | 3 ++ 3 files changed, 71 insertions(+), 5 deletions(-) create mode 100644 pkgs/development/python-modules/rpy2/r-libs-site.patch diff --git a/pkgs/development/python-modules/rpy2/default.nix b/pkgs/development/python-modules/rpy2/default.nix index 61447e74026..cefd155353a 100644 --- a/pkgs/development/python-modules/rpy2/default.nix +++ b/pkgs/development/python-modules/rpy2/default.nix @@ -1,10 +1,13 @@ { lib +, python , buildPythonPackage , fetchPypi , isPyPy , isPy27 , readline , R +, rWrapper +, rPackages , pcre , lzma , bzip2 @@ -13,7 +16,11 @@ , singledispatch , six , jinja2 +, pytz +, numpy , pytest +, mock +, extraRPackages ? [] }: buildPythonPackage rec { @@ -38,18 +45,54 @@ buildPythonPackage rec { bzip2 zlib icu + ] ++ (with rPackages; [ + # packages expected by the test framework + ggplot2 + dplyr + RSQLite + broom + DBI + dbplyr + hexbin + lme4 + tidyr + ]) ++ extraRPackages ++ rWrapper.recommendedPackages; + + patches = [ + # R_LIBS_SITE is used by the nix r package to point to the installed R libraries. + # This patch sets R_LIBS_SITE when rpy2 is imported. + ./r-libs-site.patch ]; + postPatch = '' + substituteInPlace rpy/rinterface/__init__.py --replace '@NIX_R_LIBS_SITE@' "$R_LIBS_SITE" + ''; + propagatedBuildInputs = [ singledispatch six jinja2 + pytz + numpy ]; - checkInputs = [ pytest ]; - # Tests fail with `assert not _relpath.startswith('..'), "Path must be within the project"` - # in the unittest `loader.py`. I don't know what causes this. + + checkInputs = [ + pytest + mock + ]; + # One remaining test failure caused by different unicode encoding. + # https://bitbucket.org/rpy2/rpy2/issues/488 doCheck = false; - # without this tests fail when looking for libreadline.so - LD_LIBRARY_PATH = lib.makeLibraryPath buildInputs; + checkPhase = '' + ${python.interpreter} -m 'rpy2.tests' + ''; + + # For some reason libreadline.so is not found. Curiously `ldd _rinterface.so | grep readline` shows two readline entries: + # libreadline.so.6 => not found + # libreadline.so.6 => /nix/store/z2zhmrg6jcrn5iq2779mav0nnq4vm2q6-readline-6.3p08/lib/libreadline.so.6 (0x00007f333ac43000) + # There must be a better way to fix this, but I don't know it. + postFixup = '' + patchelf --add-needed ${readline}/lib/libreadline.so "$out/${python.sitePackages}/rpy2/rinterface/"_rinterface*.so + ''; meta = { homepage = http://rpy.sourceforge.net/rpy2; diff --git a/pkgs/development/python-modules/rpy2/r-libs-site.patch b/pkgs/development/python-modules/rpy2/r-libs-site.patch new file mode 100644 index 00000000000..a55b6038bb4 --- /dev/null +++ b/pkgs/development/python-modules/rpy2/r-libs-site.patch @@ -0,0 +1,20 @@ +diff --git a/rpy/rinterface/__init__.py b/rpy/rinterface/__init__.py +index 9362e57..1af258e 100644 +--- a/rpy/rinterface/__init__.py ++++ b/rpy/rinterface/__init__.py +@@ -43,6 +43,15 @@ if not R_HOME: + if not os.environ.get("R_HOME"): + os.environ['R_HOME'] = R_HOME + ++# path to libraries ++existing = os.environ.get('R_LIBS_SITE') ++if existing is not None: ++ prefix = existing + ':' ++else: ++ prefix = '' ++additional = '@NIX_R_LIBS_SITE@' ++os.environ['R_LIBS_SITE'] = prefix + additional ++ + if sys.platform == 'win32': + _load_r_dll(R_HOME) + diff --git a/pkgs/development/r-modules/wrapper.nix b/pkgs/development/r-modules/wrapper.nix index 3b9a9b18450..d77c24e913d 100644 --- a/pkgs/development/r-modules/wrapper.nix +++ b/pkgs/development/r-modules/wrapper.nix @@ -5,6 +5,9 @@ stdenv.mkDerivation { buildInputs = [makeWrapper R] ++ recommendedPackages ++ packages; + # Make the list of recommended R packages accessible to other packages such as rpy2 + passthru.recommendedPackages = recommendedPackages; + unpackPhase = ":"; installPhase = ''