diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/networking/cluster')
138 files changed, 18901 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix b/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix new file mode 100644 index 000000000000..6e5d05ff0d75 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix @@ -0,0 +1,69 @@ +{ lib, buildGoModule, buildGoPackage, fetchFromGitHub, installShellFiles }: + +let + # Argo can package a static server in the CLI using the `staticfiles` go module. + # We build the CLI without the static server for simplicity, but the tool is still required for + # compilation to succeed. + # See: https://github.com/argoproj/argo/blob/d7690e32faf2ac5842468831daf1443283703c25/Makefile#L117 + staticfiles = buildGoPackage rec { + name = "staticfiles"; + src = fetchFromGitHub { + owner = "bouk"; + repo = "staticfiles"; + rev = "827d7f6389cd410d0aa3f3d472a4838557bf53dd"; + sha256 = "0xarhmsqypl8036w96ssdzjv3k098p2d4mkmw5f6hkp1m3j67j61"; + }; + + goPackagePath = "bou.ke/staticfiles"; + }; +in +buildGoModule rec { + pname = "argo"; + version = "2.12.10"; + + src = fetchFromGitHub { + owner = "argoproj"; + repo = "argo"; + rev = "v${version}"; + sha256 = "sha256-A4s6D3/1FsqrJ+Jaql4IuyD9ySChL3SXqVvl8wUDRDE="; + }; + + vendorSha256 = "sha256-4XPMixVNj6PUKobNLwpsOBT7Zs/7pkhDtQacLIB5EfE="; + + doCheck = false; + + subPackages = [ "cmd/argo" ]; + + nativeBuildInputs = [ installShellFiles ]; + + preBuild = '' + mkdir -p ui/dist/app + echo "Built without static files" > ui/dist/app/index.html + + ${staticfiles}/bin/staticfiles -o server/static/files.go ui/dist/app + ''; + + buildFlagsArray = '' + -ldflags= + -s -w + -X github.com/argoproj/argo.version=${version} + -X github.com/argoproj/argo.gitCommit=${src.rev} + -X github.com/argoproj/argo.gitTreeState=clean + -X github.com/argoproj/argo.gitTag=${version} + ''; + + postInstall = '' + for shell in bash zsh; do + $out/bin/argo completion $shell > argo.$shell + installShellCompletion argo.$shell + done + ''; + + meta = with lib; { + description = "Container native workflow engine for Kubernetes"; + homepage = "https://github.com/argoproj/argo"; + license = licenses.asl20; + maintainers = with maintainers; [ groodt ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix new file mode 100644 index 000000000000..f1c98e0ed84c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix @@ -0,0 +1,40 @@ +{ lib, buildGoModule, fetchFromGitHub, packr }: + +buildGoModule rec { + pname = "argocd"; + version = "1.8.6"; + commit = "28aea3dfdede00443b52cc584814d80e8f896200"; + + src = fetchFromGitHub { + owner = "argoproj"; + repo = "argo-cd"; + rev = "v${version}"; + sha256 = "sha256-kJ3/1owK5T+FbcvjmK2CO+i/KwmVZRSGzF6fCt8J9E8="; + }; + + vendorSha256 = "sha256-rZ/ox180h9scocheYtMmKkoHY2/jH+I++vYX8R0fdlA="; + + doCheck = false; + + nativeBuildInputs = [ packr ]; + + buildFlagsArray = '' + -ldflags= + -X github.com/argoproj/argo-cd/common.version=${version} + -X github.com/argoproj/argo-cd/common.buildDate=unknown + -X github.com/argoproj/argo-cd/common.gitCommit=${commit} + -X github.com/argoproj/argo-cd/common.gitTreeState=clean + ''; + + # run packr to embed assets + preBuild = '' + packr + ''; + + meta = with lib; { + description = "Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes"; + homepage = "https://github.com/argoproj/argo"; + license = licenses.asl20; + maintainers = with maintainers; [ shahrukh330 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/atlantis/default.nix b/nixpkgs/pkgs/applications/networking/cluster/atlantis/default.nix new file mode 100644 index 000000000000..dcb6b823667e --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/atlantis/default.nix @@ -0,0 +1,26 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "atlantis"; + version = "0.16.1"; + + src = fetchFromGitHub { + owner = "runatlantis"; + repo = "atlantis"; + rev = "v${version}"; + sha256 = "sha256-D549pInoK8ispgcn8LYdix19Hp7wO6w2/d2Y1L/9Px8="; + }; + + vendorSha256 = null; + + doCheck = false; + + subPackages = [ "." ]; + + meta = with lib; { + homepage = "https://github.com/runatlantis/atlantis"; + description = "Terraform Pull Request Automation"; + license = licenses.asl20; + maintainers = with maintainers; [ jpotier ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/click/default.nix b/nixpkgs/pkgs/applications/networking/cluster/click/default.nix new file mode 100644 index 000000000000..1b76406f3344 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/click/default.nix @@ -0,0 +1,27 @@ +{ darwin, fetchFromGitHub, rustPlatform, lib, stdenv }: + +with rustPlatform; + +buildRustPackage rec { + pname = "click"; + version = "0.4.2"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "databricks"; + repo = "click"; + sha256 = "18mpzvvww2g6y2d3m8wcfajzdshagihn59k03xvcknd5d8zxagl3"; + }; + + cargoSha256 = "1f9yn4pvp58laylngdrfdkwygisnzkhkm7pndf6l33k3aqxhz5mm"; + + buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ]; + + meta = with lib; { + description = ''The "Command Line Interactive Controller for Kubernetes"''; + homepage = "https://github.com/databricks/click"; + license = [ licenses.asl20 ]; + maintainers = [ maintainers.mbode ]; + platforms = [ "x86_64-linux" "x86_64-darwin" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/cloudfoundry-cli/default.nix b/nixpkgs/pkgs/applications/networking/cluster/cloudfoundry-cli/default.nix new file mode 100644 index 000000000000..a251886ebdd7 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/cloudfoundry-cli/default.nix @@ -0,0 +1,47 @@ +{ lib, buildGoModule, fetchFromGitHub, fetchurl, installShellFiles }: + +buildGoModule rec { + pname = "cloudfoundry-cli"; + version = "7.2.0"; + + src = fetchFromGitHub { + owner = "cloudfoundry"; + repo = "cli"; + rev = "v${version}"; + sha256 = "0cf5vshyz6j70sv7x43r1404hdcmkzxgdb7514kjilp5z6wsr1nv"; + }; + # vendor directory stale + deleteVendor = true; + vendorSha256 = "0p0s0dr7kpmmnim4fps62vj4zki2qxxdq5ww0fzrf1372xbl4kp2"; + + subPackages = [ "." ]; + + # upstream have helpfully moved the bash completion script to a separate + # repo which receives no releases or even tags + bashCompletionScript = fetchurl { + url = "https://raw.githubusercontent.com/cloudfoundry/cli-ci/6087781a0e195465a35c79c8e968ae708c6f6351/ci/installers/completion/cf7"; + sha256 = "1vhg9jcgaxcvvb4pqnhkf27b3qivs4d3w232j0gbh9393m3qxrvy"; + }; + + nativeBuildInputs = [ installShellFiles ]; + + buildFlagsArray = [ + "-ldflags=" + "-s" + "-w" + "-X code.cloudfoundry.org/cli/version.binaryBuildDate=1970-01-01" + "-X code.cloudfoundry.org/cli/version.binaryVersion=${version}" + ]; + + postInstall = '' + mv "$out/bin/cli" "$out/bin/cf" + installShellCompletion --bash $bashCompletionScript + ''; + + meta = with lib; { + description = "The official command line client for Cloud Foundry"; + homepage = "https://github.com/cloudfoundry/cli"; + maintainers = with maintainers; [ ris ]; + license = licenses.asl20; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/cni/default.nix b/nixpkgs/pkgs/applications/networking/cluster/cni/default.nix new file mode 100644 index 000000000000..02f5fc18d13a --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/cni/default.nix @@ -0,0 +1,23 @@ +{ lib, fetchFromGitHub, buildGoPackage }: + +buildGoPackage rec { + pname = "cni"; + version = "0.8.0"; + + src = fetchFromGitHub { + owner = "containernetworking"; + repo = pname; + rev = "v${version}"; + sha256 = "16i59dhiq7pc7qs32cdk4yv4w9rjx4vvlw7fb6a6jhq6hxxjrgiw"; + }; + + goPackagePath = "github.com/containernetworking/cni"; + + meta = with lib; { + description = "Container Network Interface - networking for Linux containers"; + license = licenses.asl20; + homepage = "https://github.com/containernetworking/cni"; + maintainers = with maintainers; [ offline vdemeester ]; + platforms = [ "x86_64-linux" "aarch64-linux" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/cni/plugins.nix b/nixpkgs/pkgs/applications/networking/cluster/cni/plugins.nix new file mode 100644 index 000000000000..8fc667e3391c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/cni/plugins.nix @@ -0,0 +1,51 @@ +{ lib, fetchFromGitHub, buildGoModule, nixosTests }: + +buildGoModule rec { + pname = "cni-plugins"; + version = "0.9.1"; + + src = fetchFromGitHub { + owner = "containernetworking"; + repo = "plugins"; + rev = "v${version}"; + sha256 = "sha256-n+OtFXgFmW0xsGEtC6ua0qjdsJSbEjn08mAl5Z51Kp8="; + }; + + vendorSha256 = null; + + doCheck = false; + + buildFlagsArray = [ + "-ldflags=-X github.com/containernetworking/plugins/pkg/utils/buildversion.BuildVersion=v${version}" + ]; + + subPackages = [ + "plugins/ipam/dhcp" + "plugins/ipam/host-local" + "plugins/ipam/static" + "plugins/main/bridge" + "plugins/main/host-device" + "plugins/main/ipvlan" + "plugins/main/loopback" + "plugins/main/macvlan" + "plugins/main/ptp" + "plugins/main/vlan" + "plugins/meta/bandwidth" + "plugins/meta/firewall" + "plugins/meta/flannel" + "plugins/meta/portmap" + "plugins/meta/sbr" + "plugins/meta/tuning" + "plugins/meta/vrf" + ]; + + passthru.tests = { inherit (nixosTests) cri-o podman; }; + + meta = with lib; { + description = "Some standard networking plugins, maintained by the CNI team"; + homepage = "https://www.cni.dev/plugins/"; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ cstrahan ] ++ teams.podman.members; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/containerpilot/default.nix b/nixpkgs/pkgs/applications/networking/cluster/containerpilot/default.nix new file mode 100644 index 000000000000..dc6e5f3402fa --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/containerpilot/default.nix @@ -0,0 +1,24 @@ +{ lib, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + version = "3.9.0pre"; + pname = "containerpilot"; + + src = fetchFromGitHub { + owner = "joyent"; + repo = pname; + rev = "d999b632b0c96d9e27f092dc9f81a9d82dfe0106"; + sha256 = "0wsc8canr1c9wzr1lv40yixj9l10c66i6d14yrljsyagl2z02v4n"; + }; + + goPackagePath = "github.com/joyent/${pname}"; + goDeps = ./deps.nix; + + meta = with lib; { + homepage = "https://www.joyent.com/containerpilot"; + description = "An application centric micro-orchestrator."; + platforms = platforms.unix; + license = licenses.mpl20; + maintainers = with maintainers; [ cpcloud ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/containerpilot/deps.nix b/nixpkgs/pkgs/applications/networking/cluster/containerpilot/deps.nix new file mode 100644 index 000000000000..9df154389cbc --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/containerpilot/deps.nix @@ -0,0 +1,173 @@ +# file generated from go.mod using vgo2nix (https://github.com/nix-community/vgo2nix) +[ + { + goPackagePath = "github.com/beorn7/perks"; + fetch = { + type = "git"; + url = "https://github.com/beorn7/perks"; + rev = "4c0e84591b9a"; + sha256 = "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/client9/reopen"; + fetch = { + type = "git"; + url = "https://github.com/client9/reopen"; + rev = "1a6ccbeaae3f"; + sha256 = "0iarv0sn9hb26sr75bwilz3m86kcfad4m5klmzixbd4yw1ipnffa"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/flynn/json5"; + fetch = { + type = "git"; + url = "https://github.com/flynn/json5"; + rev = "7620272ed633"; + sha256 = "1l3rqfis8b72mqwm88lx78d0mbdihyamj8cgg2pa5vfbq49cpydf"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/golang/protobuf"; + fetch = { + type = "git"; + url = "https://github.com/golang/protobuf"; + rev = "6a1fa9404c0a"; + sha256 = "0dsd6vlfdyarn3v822x9p2s94gfi5lhvqc2vm3bqmqjgcik3c51z"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/hashicorp/consul"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/consul"; + rev = "v1.0.1-rc1"; + sha256 = "10xqi86n2h39q3qlkxfhnrqwm1bgijs5n2kryaq9yalv5p3qxczg"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/hashicorp/go-cleanhttp"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/go-cleanhttp"; + rev = "3573b8b52aa7"; + sha256 = "1pbl6p7w5wp1c70x7fp94h4ynk2ajfa76rqin3d2hq1w2fcb7byr"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/hashicorp/go-rootcerts"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/go-rootcerts"; + rev = "6bb64b370b90"; + sha256 = "1a81fcm1i0ji2iva0dcimiichgwpbcb7lx0vyaks87zj5wf04qy9"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/hashicorp/serf"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/serf"; + rev = "91fd53b1d3e6"; + sha256 = "0p9mhv6w85cxxl95kvl3rk04yif6v5bhf5kxw8i1cphv5kddv7j9"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/matttproud/golang_protobuf_extensions"; + fetch = { + type = "git"; + url = "https://github.com/matttproud/golang_protobuf_extensions"; + rev = "v1.0.1"; + sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/mitchellh/go-homedir"; + fetch = { + type = "git"; + url = "https://github.com/mitchellh/go-homedir"; + rev = "b8bc1bf76747"; + sha256 = "13ry4lylalkh4g2vny9cxwvryslzyzwp9r92z0b10idhdq3wad1q"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/mitchellh/mapstructure"; + fetch = { + type = "git"; + url = "https://github.com/mitchellh/mapstructure"; + rev = "d2dd02622084"; + sha256 = "1idj9h0g9z3s21y2hivaf1dknxhpd7yy0kn6wk3311hlr7s543j5"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/prometheus/client_golang"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/client_golang"; + rev = "v0.8.0"; + sha256 = "1xqny3147g12n4j03kxm8s9mvdbs3ln6i56c655mybrn9jjy48kd"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/prometheus/client_model"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/client_model"; + rev = "6f3806018612"; + sha256 = "1413ibprinxhni51p0755dp57r9wvbw7xgj9nmdaxmhzlqhc86j4"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/prometheus/common"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/common"; + rev = "0866df4b85a1"; + sha256 = "0zw4rxs6zh9vgxz5wwhjnwa6mgac8jh7mb63viircgh08r889chp"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/prometheus/procfs"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/procfs"; + rev = "e645f4e5aaa8"; + sha256 = "18hwygbawbqilz7h8fl25xpbciwalkslb4igqn4cr9d8sqp7d3np"; + moduleDir = ""; + }; + } + { + goPackagePath = "github.com/sirupsen/logrus"; + fetch = { + type = "git"; + url = "https://github.com/sirupsen/logrus"; + rev = "v1.0.0"; + sha256 = "0kyvaa4m8w5wijjvrh0amd9bl3sci1vj4y9v9a97sx3rf7xww52l"; + moduleDir = ""; + }; + } + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "94b76065f2d2"; + sha256 = "0lxd3gmkvza3mah5m8nncdsgd1y6r25vaz4wzdmrs3i1ikzknn93"; + moduleDir = ""; + }; + } +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/docker-machine/default.nix b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/default.nix new file mode 100644 index 000000000000..c483125d851c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/default.nix @@ -0,0 +1,33 @@ +# This file was generated by go2nix. +{ lib, buildGoPackage, fetchFromGitHub, installShellFiles }: + +buildGoPackage rec { + pname = "machine"; + version = "0.16.1"; + + goPackagePath = "github.com/docker/machine"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "docker"; + repo = "machine"; + sha256 = "0xxzxi5v7ji9j2k7kxhi0ah91lfa7b9rg3nywgx0lkv8dlgp8kmy"; + }; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = '' + pushd go/src/${goPackagePath}/contrib/completion + installShellCompletion --bash bash/* + installShellCompletion --zsh zsh/* + popd + ''; + + meta = with lib; { + homepage = "https://docs.docker.com/machine/"; + description = "Docker Machine is a tool that lets you install Docker Engine on virtual hosts, and manage Docker Engine on the hosts"; + license = licenses.asl20; + maintainers = with maintainers; [ offline tailhook ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix new file mode 100644 index 000000000000..d05b34cd7de9 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix @@ -0,0 +1,23 @@ +{ lib, buildGoModule, minikube }: + +buildGoModule rec { + inherit (minikube) version src nativeBuildInputs buildInputs vendorSha256 doCheck; + + pname = "docker-machine-hyperkit"; + + buildPhase = '' + make docker-machine-driver-hyperkit COMMIT=${src.rev} + ''; + + installPhase = '' + install out/docker-machine-driver-hyperkit -Dt $out/bin + ''; + + meta = with lib; { + homepage = "https://minikube.sigs.k8s.io/docs/drivers/hyperkit"; + description = "HyperKit driver for docker-machine"; + license = licenses.asl20; + maintainers = with maintainers; [ atkinschang ]; + platforms = platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm-deps.nix b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm-deps.nix new file mode 100644 index 000000000000..e321b2c1b0ac --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm-deps.nix @@ -0,0 +1,21 @@ +# This file was generated by go2nix. +[ + { + goPackagePath = "github.com/docker/machine"; + fetch = { + type = "git"; + url = "https://github.com/docker/machine"; + rev = "457c02d06a155827c1c4af9b5ab38c0b6b4e48ea"; + sha256 = "0hx5bhjc7q9ml6h6d2a5csqg6vqwjj68599q0cccw3pcfrb34gmd"; + }; + } + { + goPackagePath = "github.com/libvirt/libvirt-go"; + fetch = { + type = "git"; + url = "https://github.com/libvirt/libvirt-go"; + rev = "e9642325d747c353ca7b76b4893d5dbdc81c296f"; + sha256 = "1822b2kbwyxb2gigbiashcs7v4fsyw7k3sdlqh43ga0l6058fmhl"; + }; + } +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm.nix b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm.nix new file mode 100644 index 000000000000..4940f6331d44 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm.nix @@ -0,0 +1,28 @@ +# This file was generated by go2nix. +{ lib, buildGoPackage, fetchFromGitHub, libvirt, pkg-config }: + +buildGoPackage rec { + pname = "docker-machine-kvm"; + version = "0.10.0"; + + goPackagePath = "github.com/dhiltgen/docker-machine-kvm"; + goDeps = ./kvm-deps.nix; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "dhiltgen"; + repo = "docker-machine-kvm"; + sha256 = "0ch4zwb6h7hnr5l3skj1daypvpyms2i666lbnmakpw1fw3zvjmgy"; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libvirt ]; + + meta = with lib; { + homepage = "https://github.com/dhiltgen/docker-machine-kvm"; + description = "KVM driver for docker-machine"; + license = licenses.asl20; + maintainers = with maintainers; [ offline ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm2.nix b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm2.nix new file mode 100644 index 000000000000..9ef43bed2eec --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/kvm2.nix @@ -0,0 +1,27 @@ +{ lib, buildGoModule, minikube }: + +buildGoModule rec { + inherit (minikube) version src nativeBuildInputs buildInputs vendorSha256 doCheck; + + pname = "docker-machine-kvm2"; + + postPatch = '' + sed -i '/GOARCH=$*/d' Makefile + ''; + + buildPhase = '' + make docker-machine-driver-kvm2 COMMIT=${src.rev} + ''; + + installPhase = '' + install out/docker-machine-driver-kvm2 -Dt $out/bin + ''; + + meta = with lib; { + homepage = "https://minikube.sigs.k8s.io/docs/drivers/kvm2"; + description = "KVM2 driver for docker-machine"; + license = licenses.asl20; + maintainers = with maintainers; [ tadfisher atkinschang ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/docker-machine/xhyve.nix b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/xhyve.nix new file mode 100644 index 000000000000..8c3534006bf7 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/docker-machine/xhyve.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, buildGoPackage, fetchFromGitHub, fetchpatch, pkg-config, cctools, Hypervisor, vmnet }: + +buildGoPackage rec { + pname = "docker-machine-xhyve"; + version = "0.4.0"; + + goPackagePath = "github.com/zchee/docker-machine-driver-xhyve"; + + # https://github.com/machine-drivers/docker-machine-driver-xhyve/pull/225 + patches = fetchpatch { + url = "https://github.com/machine-drivers/docker-machine-driver-xhyve/commit/546256494bf2ccc33e4125bf45f504b0e3027d5a.patch"; + sha256 = "1i8wxqccqkxvqrbsyd0g9s0kdskd8xi2jv0c1bji9aj4rq0a8cgz"; + }; + + preBuild = '' + make -C go/src/${goPackagePath} CC=${stdenv.cc}/bin/cc LIBTOOL=${cctools}/bin/libtool GIT_CMD=: lib9p + export CGO_CFLAGS=-I$(pwd)/go/src/${goPackagePath}/vendor/github.com/jceel/lib9p + export CGO_LDFLAGS=$(pwd)/go/src/${goPackagePath}/vendor/build/lib9p/lib9p.a + ''; + buildFlags = "--tags lib9p"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "machine-drivers"; + repo = "docker-machine-driver-xhyve"; + sha256 = "0000v97fr8xc5b39v44hsa87wrbk4bcwyaaivxv4hxlf4vlgg863"; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ Hypervisor vmnet ]; + + meta = with lib; { + homepage = "https://github.com/machine-drivers/docker-machine-driver-xhyve"; + description = "Xhyve driver for docker-machine"; + license = licenses.bsd3; + maintainers = with maintainers; [ periklis ]; + platforms = platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix b/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix new file mode 100644 index 000000000000..3c3bc2bace25 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, fetchurl, makeWrapper, jre }: + +stdenv.mkDerivation rec { + pname = "flink"; + version = "1.12.1"; + + src = fetchurl { + url = "mirror://apache/flink/${pname}-${version}/${pname}-${version}-bin-scala_2.11.tgz"; + sha256 = "146azc5wg1xby3nqz8mha959qy99z2h8032rfgs2mcl3d5rrsm2l"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + buildInputs = [ jre ]; + + installPhase = '' + rm bin/*.bat || true + + mkdir -p $out/bin $out/opt/flink + mv * $out/opt/flink/ + makeWrapper $out/opt/flink/bin/flink $out/bin/flink \ + --prefix PATH : ${jre}/bin + + cat <<EOF >> $out/opt/flink/conf/flink-conf.yaml + env.java.home: ${jre}" + env.log.dir: /tmp/flink-logs + EOF + ''; + + meta = with lib; { + description = "A distributed stream processing framework"; + homepage = "https://flink.apache.org"; + downloadPage = "https://flink.apache.org/downloads.html"; + license = licenses.asl20; + platforms = platforms.all; + maintainers = with maintainers; [ mbode ]; + repositories.git = "git://git.apache.org/flink.git"; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix new file mode 100644 index 000000000000..1d8a8228af15 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix @@ -0,0 +1,61 @@ +{ lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }: + +let + version = "0.11.0"; + + manifests = fetchzip { + url = "https://github.com/fluxcd/flux2/releases/download/v${version}/manifests.tar.gz"; + sha256 = "sha256-nqvFJriNMK3SvAsNzhE8MCzVNR8j/TjYU+f1PbuxkuI="; + stripRoot = false; + }; +in + +buildGoModule rec { + inherit version; + + pname = "fluxcd"; + + src = fetchFromGitHub { + owner = "fluxcd"; + repo = "flux2"; + rev = "v${version}"; + sha256 = "sha256-V4cZuRlC1Hu4gBG5/8ZNBKlSBFLgOtSJ3GbpjW5/8xM="; + }; + + vendorSha256 = "sha256-aVVvrOjCKxzFer5uZRSu1LCQKkGkPcBdKdebN5uHUUg="; + + nativeBuildInputs = [ installShellFiles ]; + + subPackages = [ "cmd/flux" ]; + + buildFlagsArray = [ "-ldflags=-s -w -X main.VERSION=${version}" ]; + + postUnpack = '' + cp -r ${manifests} source/cmd/flux/manifests + ''; + + doInstallCheck = true; + installCheckPhase = '' + $out/bin/flux --version | grep ${version} > /dev/null + ''; + + postInstall = '' + for shell in bash fish zsh; do + $out/bin/flux completion $shell > flux.$shell + installShellCompletion flux.$shell + done + ''; + + meta = with lib; { + description = "Open and extensible continuous delivery solution for Kubernetes"; + longDescription = '' + Flux is a tool for keeping Kubernetes clusters in sync + with sources of configuration (like Git repositories), and automating + updates to configuration when there is new code to deploy. + ''; + homepage = "https://fluxcd.io"; + license = licenses.asl20; + maintainers = with maintainers; [ jlesquembre ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/fluxctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/fluxctl/default.nix new file mode 100644 index 000000000000..1d02e675f9c4 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/fluxctl/default.nix @@ -0,0 +1,37 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "fluxctl"; + version = "1.22.1"; + + src = fetchFromGitHub { + owner = "weaveworks"; + repo = "flux"; + rev = version; + sha256 = "sha256-SaDO3a50CLhgLafCdgKEfHpuHdIweSy5L/TUgEUv5CM="; + }; + + vendorSha256 = "sha256-4uSw/9lI/rdDqy78jNC9eHYW/v/sMFb+sQvwYG6GZks="; + + nativeBuildInputs = [ installShellFiles ]; + + doCheck = false; + + subPackages = [ "cmd/fluxctl" ]; + + buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ]; + + postInstall = '' + for shell in bash fish zsh; do + $out/bin/fluxctl completion $shell > fluxctl.$shell + installShellCompletion fluxctl.$shell + done + ''; + + meta = with lib; { + description = "CLI client for Flux, the GitOps Kubernetes operator"; + homepage = "https://github.com/fluxcd/flux"; + license = licenses.asl20; + maintainers = with maintainers; [ Gonzih Br1ght0ne ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/habitat/default.nix b/nixpkgs/pkgs/applications/networking/cluster/habitat/default.nix new file mode 100644 index 000000000000..d9827039500c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/habitat/default.nix @@ -0,0 +1,38 @@ +{ lib, fetchFromGitHub, rustPlatform, pkg-config +, libsodium, libarchive, openssl, zeromq }: + +rustPlatform.buildRustPackage rec { + pname = "habitat"; + # Newer versions required protobuf, which requires some finesse to get to + # compile with the vendored protobuf crate. + version = "0.90.6"; + + src = fetchFromGitHub { + owner = "habitat-sh"; + repo = "habitat"; + rev = version; + sha256 = "0rwi0lkmhlq4i8fba3s9nd9ajhz2dqxzkgfp5i8y0rvbfmhmfd6b"; + }; + + cargoSha256 = "08sncz0jgsr2s821j3s4bk7d54xqwmnld7m57avavym1xqvsnbmy"; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libsodium libarchive openssl zeromq ]; + + cargoBuildFlags = ["--package hab"]; + + checkPhase = '' + runHook preCheck + echo "Running cargo test" + cargo test --package hab + runHook postCheck + ''; + + meta = with lib; { + description = "An application automation framework"; + homepage = "https://www.habitat.sh"; + license = licenses.asl20; + maintainers = with maintainers; [ rushmorem ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix b/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix new file mode 100644 index 000000000000..659e8ee41701 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix @@ -0,0 +1,169 @@ +{ lib, stdenv, fetchurl, makeWrapper, pkg-config, which, maven, cmake, jre, jdk8, bash +, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl, openssl_1_0_2 +}: + +let + maven-jdk8 = maven.override { + jdk = jdk8; + }; + common = { version, sha256, dependencies-sha256, maven, tomcat, opensslPkg ? openssl }: + let + # compile the hadoop tarball from sources, it requires some patches + binary-distributon = stdenv.mkDerivation rec { + name = "hadoop-${version}-bin"; + src = fetchurl { + url = "mirror://apache/hadoop/common/hadoop-${version}/hadoop-${version}-src.tar.gz"; + inherit sha256; + }; + + postUnpack = lib.optionalString (tomcat != null) '' + install -D ${tomcat.src} $sourceRoot/hadoop-hdfs-project/hadoop-hdfs-httpfs/downloads/apache-tomcat-${tomcat.version}.tar.gz + install -D ${tomcat.src} $sourceRoot/hadoop-common-project/hadoop-kms/downloads/apache-tomcat-${tomcat.version}.tar.gz + ''; + + # perform fake build to make a fixed-output derivation of dependencies downloaded from maven central (~100Mb in ~3000 files) + fetched-maven-deps = stdenv.mkDerivation { + name = "hadoop-${version}-maven-deps"; + inherit src postUnpack nativeBuildInputs buildInputs; + buildPhase = '' + while mvn package -Dmaven.repo.local=$out/.m2 ${mavenFlags} -Dmaven.wagon.rto=5000; [ $? = 1 ]; do + echo "timeout, restart maven to continue downloading" + done + ''; + # keep only *.{pom,jar,xml,sha1,so,dll,dylib} and delete all ephemeral files with lastModified timestamps inside + installPhase = ''find $out/.m2 -type f -regex '.+\(\.lastUpdated\|resolver-status\.properties\|_remote\.repositories\)' -delete''; + outputHashAlgo = "sha256"; + outputHashMode = "recursive"; + outputHash = dependencies-sha256; + }; + + nativeBuildInputs = [ maven cmake pkg-config ]; + buildInputs = [ fuse snappy zlib bzip2 opensslPkg protobuf2_5 ]; + # most of the hardcoded pathes are fixed in 2.9.x and 3.0.0, this list of patched files might be reduced when 2.7.x and 2.8.x will be deprecated + postPatch = '' + for file in hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HardLink.java \ + hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/Shell.java \ + hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.java \ + hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/DockerContainerExecutor.java \ + hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java \ + hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapreduce/MRJobConfig.java; do + if [ -f "$file" ]; then + substituteInPlace "$file" \ + --replace '/usr/bin/stat' 'stat' \ + --replace '/bin/bash' 'bash' \ + --replace '/bin/ls' 'ls' \ + --replace '/bin/mv' 'mv' + fi + done + ''; + dontConfigure = true; # do not trigger cmake hook + mavenFlags = "-Drequire.snappy -Drequire.bzip2 -DskipTests -Pdist,native -e"; + buildPhase = '' + # 'maven.repo.local' must be writable + mvn package --offline -Dmaven.repo.local=$(cp -dpR ${fetched-maven-deps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2 ${mavenFlags} + # remove runtime dependency on $jdk/jre/lib/amd64/server/libjvm.so + patchelf --set-rpath ${lib.makeLibraryPath [glibc]} hadoop-dist/target/hadoop-${version}/lib/native/libhadoop.so.1.0.0 + patchelf --set-rpath ${lib.makeLibraryPath [glibc]} hadoop-dist/target/hadoop-${version}/lib/native/libhdfs.so.0.0.0 + ''; + installPhase = "mv hadoop-dist/target/hadoop-${version} $out"; + }; + in + stdenv.mkDerivation { + pname = "hadoop"; + inherit version; + + src = binary-distributon; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out/share/doc/hadoop + cp -dpR * $out/ + mv $out/*.txt $out/share/doc/hadoop/ + + # + # Do not use `wrapProgram` here, script renaming may result to weird things: http://i.imgur.com/0Xee013.png + # + mkdir -p $out/bin.wrapped + for n in $out/bin/*; do + if [ -f "$n" ]; then # only regular files + mv $n $out/bin.wrapped/ + makeWrapper $out/bin.wrapped/$(basename $n) $n \ + --prefix PATH : "${lib.makeBinPath [ which jre bash coreutils ]}" \ + --prefix JAVA_LIBRARY_PATH : "${lib.makeLibraryPath [ opensslPkg snappy zlib bzip2 ]}" \ + --set JAVA_HOME "${jre}" \ + --set HADOOP_PREFIX "$out" + fi + done + ''; + + meta = with lib; { + homepage = "http://hadoop.apache.org/"; + description = "Framework for distributed processing of large data sets across clusters of computers"; + license = licenses.asl20; + + longDescription = '' + The Apache Hadoop software library is a framework that allows for + the distributed processing of large data sets across clusters of + computers using a simple programming model. It is designed to + scale up from single servers to thousands of machines, each + offering local computation and storage. Rather than rely on + hardware to deliver high-avaiability, the library itself is + designed to detect and handle failures at the application layer, + so delivering a highly-availabile service on top of a cluster of + computers, each of which may be prone to failures. + ''; + maintainers = with maintainers; [ volth ]; + platforms = [ "x86_64-linux" ]; + }; + }; + + tomcat_6_0_48 = rec { + version = "6.0.48"; + src = fetchurl { + # do not use "mirror://apache/" here, tomcat-6 is legacy and has been removed from the mirrors + url = "https://archive.apache.org/dist/tomcat/tomcat-6/v${version}/bin/apache-tomcat-${version}.tar.gz"; + sha256 = "1w4jf28g8p25fmijixw6b02iqlagy2rvr57y3n90hvz341kb0bbc"; + }; + }; + +in { + hadoop_2_7 = common { + version = "2.7.7"; + sha256 = "1ahv67f3lwak3kbjvnk1gncq56z6dksbajj872iqd0awdsj3p5rf"; + dependencies-sha256 = "1lsr9nvrynzspxqcamb10d596zlnmnfpxhkd884gdiva0frm0b1r"; + tomcat = tomcat_6_0_48; + opensslPkg = openssl_1_0_2; + maven = maven-jdk8; + }; + hadoop_2_8 = common { + version = "2.8.4"; + sha256 = "16c3ljhrzibkjn3y1bmjxdgf0kn60l23ay5hqpp7vpbnqx52x68w"; + dependencies-sha256 = "1j4f461487fydgr5978nnm245ksv4xbvskfr8pbmfhcyss6b7w03"; + tomcat = tomcat_6_0_48; + opensslPkg = openssl_1_0_2; + maven = maven-jdk8; + }; + hadoop_2_9 = common { + version = "2.9.1"; + sha256 = "0qgmpfbpv7f521fkjy5ldzdb4lwiblhs0hyl8qy041ws17y5x7d7"; + dependencies-sha256 = "1d5i8jj5y746rrqb9lscycnd7acmxlkz64ydsiyqsh5cdqgy2x7x"; + tomcat = tomcat_6_0_48; + opensslPkg = openssl_1_0_2; + maven = maven-jdk8; + }; + hadoop_3_0 = common { + version = "3.0.3"; + sha256 = "1vvkci0kx4b48dg0niifn2d3r4wwq8pb3c5z20wy8pqsqrqhlci5"; + dependencies-sha256 = "1kzkna9ywacm2m1cirj9cyip66bgqjhid2xf9rrhq6g10lhr8j9m"; + tomcat = null; + maven = maven-jdk8; + }; + hadoop_3_1 = common { + version = "3.1.1"; + sha256 = "04hhdbyd4x1hy0fpy537f8mi0864hww97zap29x7dk1smrffwabd"; + dependencies-sha256 = "1q63jsxg3d31x0p8hvhpvbly2b07almyzsbhwphbczl3fhlqgiwn"; + tomcat = null; + maven = maven-jdk8; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix new file mode 100644 index 000000000000..501956ec9382 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix @@ -0,0 +1,33 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "helm"; + version = "3.5.3"; + + src = fetchFromGitHub { + owner = "helm"; + repo = "helm"; + rev = "v${version}"; + sha256 = "sha256-7xO07JDy6ujWlDF+5Xd3myRQ8ajTppCXz9fNe4yizVw="; + }; + vendorSha256 = "sha256-lpEoUgABtJczwShNdvD+zYAPDFTJqILSei2YY6mQ2mw="; + + doCheck = false; + + subPackages = [ "cmd/helm" ]; + buildFlagsArray = [ "-ldflags=-w -s -X helm.sh/helm/v3/internal/version.version=v${version}" ]; + + nativeBuildInputs = [ installShellFiles ]; + postInstall = '' + $out/bin/helm completion bash > helm.bash + $out/bin/helm completion zsh > helm.zsh + installShellCompletion helm.{bash,zsh} + ''; + + meta = with lib; { + homepage = "https://github.com/kubernetes/helm"; + description = "A package manager for kubernetes"; + license = licenses.asl20; + maintainers = with maintainers; [ rlupton20 edude03 saschagrunert Frostman Chili-Man ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/default.nix new file mode 100644 index 000000000000..edd19a25f9ba --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/default.nix @@ -0,0 +1,11 @@ +{ callPackage }: + +{ + + helm-diff = callPackage ./helm-diff.nix {}; + + helm-s3 = callPackage ./helm-s3.nix {}; + + helm-secrets = callPackage ./helm-secrets.nix {}; + +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix new file mode 100644 index 000000000000..ce6491bfba47 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-diff.nix @@ -0,0 +1,35 @@ +{ buildGoModule, fetchFromGitHub, lib }: + +buildGoModule rec { + pname = "helm-diff"; + version = "3.1.3"; + + src = fetchFromGitHub { + owner = "databus23"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-h26EOjKNrlcrs2DAYj0NmDRgNRKozjfw5DtxUgHNTa4="; + }; + + vendorSha256 = "sha256-+n/QBuZqtdgUkaBG7iqSuBfljn+AdEzDoIo5SI8ErQA="; + + # NOTE: Remove the install and upgrade hooks. + postPatch = '' + sed -i '/^hooks:/,+2 d' plugin.yaml + ''; + + postInstall = '' + install -dm755 $out/${pname} + mv $out/bin $out/${pname}/ + mv $out/${pname}/bin/{helm-,}diff + install -m644 -Dt $out/${pname} plugin.yaml + ''; + + meta = with lib; { + description = "A Helm plugin that shows a diff"; + inherit (src.meta) homepage; + license = licenses.apsl20; + maintainers = with maintainers; [ yurrriq ]; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-s3.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-s3.nix new file mode 100644 index 000000000000..661048a0c72c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-s3.nix @@ -0,0 +1,38 @@ +{ buildGoModule, fetchFromGitHub, lib }: + +buildGoModule rec { + pname = "helm-s3"; + version = "0.10.0"; + + src = fetchFromGitHub { + owner = "hypnoglow"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-2BQ/qtoL+iFbuLvrJGUuxWFKg9u1sVDRcRm2/S0mgyc="; + }; + + vendorSha256 = "sha256-/9TiY0XdkiNxW5JYeC5WD9hqySCyYYU8lB+Ft5Vm96I="; + + # NOTE: Remove the install and upgrade hooks. + postPatch = '' + sed -i '/^hooks:/,+2 d' plugin.yaml + ''; + + checkPhase = '' + make test-unit + ''; + + postInstall = '' + install -dm755 $out/${pname} + mv $out/bin $out/${pname}/ + install -m644 -Dt $out/${pname} plugin.yaml + ''; + + meta = with lib; { + description = "A Helm plugin that shows a diff"; + inherit (src.meta) homepage; + license = licenses.apsl20; + maintainers = with maintainers; [ yurrriq ]; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix new file mode 100644 index 000000000000..bef5d230ece3 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helm/plugins/helm-secrets.nix @@ -0,0 +1,44 @@ +{ lib, stdenv, fetchFromGitHub, makeWrapper, coreutils, findutils, getopt, gnugrep, gnused, sops, vault }: + +stdenv.mkDerivation rec { + pname = "helm-secrets"; + version = "3.5.0"; + + src = fetchFromGitHub { + owner = "jkroepke"; + repo = pname; + rev = "v${version}"; + hash = "sha256-EXCr0QjupsBBKTm6Opw5bcNwAD4FGGyOiqaa8L91/OI="; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ getopt sops ]; + + # NOTE: helm-secrets is comprised of shell scripts. + dontBuild = true; + + # NOTE: Remove the install and upgrade hooks. + postPatch = '' + sed -i '/^hooks:/,+2 d' plugin.yaml + ''; + + installPhase = '' + runHook preInstall + + install -dm755 $out/${pname} $out/${pname}/scripts + install -m644 -Dt $out/${pname} plugin.yaml + cp -r scripts/* $out/${pname}/scripts + wrapProgram $out/${pname}/scripts/run.sh \ + --prefix PATH : ${lib.makeBinPath [ coreutils findutils getopt gnugrep gnused sops vault ]} + + runHook postInstall + ''; + + meta = with lib; { + description = "A Helm plugin that helps manage secrets"; + inherit (src.meta) homepage; + license = licenses.apsl20; + maintainers = with maintainers; [ yurrriq ]; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/wrapper.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/wrapper.nix new file mode 100644 index 000000000000..21a29e31243b --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helm/wrapper.nix @@ -0,0 +1,46 @@ +{ symlinkJoin, lib, makeWrapper, writeText }: + +helm: + +let + wrapper = { + plugins ? [], + extraMakeWrapperArgs ? "" + }: + let + + initialMakeWrapperArgs = [ + "${helm}/bin/helm" "${placeholder "out"}/bin/helm" + "--argv0" "$0" "--set" "HELM_PLUGINS" "${pluginsDir}" + ]; + + pluginsDir = symlinkJoin { + name = "helm-plugins"; + paths = plugins; + }; +in + symlinkJoin { + name = "helm-${lib.getVersion helm}"; + + # Remove the symlinks created by symlinkJoin which we need to perform + # extra actions upon + postBuild = '' + rm $out/bin/helm + makeWrapper ${lib.escapeShellArgs initialMakeWrapperArgs} ${extraMakeWrapperArgs} + ''; + paths = [ helm pluginsDir ]; + + preferLocalBuild = true; + + nativeBuildInputs = [ makeWrapper ]; + passthru = { unwrapped = helm; }; + + meta = helm.meta // { + # To prevent builds on hydra + hydraPlatforms = []; + # prefer wrapper over the package + priority = (helm.meta.priority or 0) - 1; + }; + }; +in + lib.makeOverridable wrapper diff --git a/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix new file mode 100644 index 000000000000..3c6d66769060 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix @@ -0,0 +1,36 @@ +{ lib, buildGoModule, fetchFromGitHub, makeWrapper, kubernetes-helm }: + +buildGoModule rec { + pname = "helmfile"; + version = "0.138.7"; + + src = fetchFromGitHub { + owner = "roboll"; + repo = "helmfile"; + rev = "v${version}"; + sha256 = "sha256-LFNsSd+S+mQiTk7bCnSD/Kp/D0Jefxo80eRsGkStBhs="; + }; + + vendorSha256 = "sha256-WlV6moJymQ7VyZXXuViCNN1WP4NzBUszavxpKjQR8to="; + + doCheck = false; + + nativeBuildInputs = [ makeWrapper ]; + + subPackages = [ "." ]; + + buildFlagsArray = [ "-ldflags=-s -w -X github.com/roboll/helmfile/pkg/app/version.Version=${version}" ]; + + postInstall = '' + wrapProgram $out/bin/helmfile \ + --prefix PATH : ${lib.makeBinPath [ kubernetes-helm ]} + ''; + + meta = { + description = "Deploy Kubernetes Helm charts"; + homepage = "https://github.com/roboll/helmfile"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ pneumaticat yurrriq ]; + platforms = lib.platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix new file mode 100644 index 000000000000..ed828feefdae --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix @@ -0,0 +1,25 @@ +{ lib, buildGoModule, fetchFromGitHub, ... }: + +buildGoModule rec { + pname = "helmsman"; + version = "3.6.6"; + + src = fetchFromGitHub { + owner = "Praqma"; + repo = "helmsman"; + rev = "v${version}"; + sha256 = "sha256-SGVch7mMtHi5GYFOrSss4dk29aRTQmBzkPYOetPdF88="; + }; + + vendorSha256 = "sha256-mktq5Dnk1mBO2yy5SeMDxa/akXdO5i2WafMTGtH53H8="; + + doCheck = false; + + meta = with lib; { + description = "Helm Charts (k8s applications) as Code tool"; + homepage = "https://github.com/Praqma/helmsman"; + license = licenses.mit; + maintainers = with maintainers; [ lynty ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/hetzner-kube/default.nix b/nixpkgs/pkgs/applications/networking/cluster/hetzner-kube/default.nix new file mode 100644 index 000000000000..d0afe6d2e436 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/hetzner-kube/default.nix @@ -0,0 +1,41 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "hetzner-kube"; + version = "0.5.1"; + + src = fetchFromGitHub { + owner = "xetys"; + repo = "hetzner-kube"; + rev = version; + sha256 = "1iqgpmljqx6rhmvsir2675waj78amcfiw08knwvlmavjgpxx2ysw"; + }; + + vendorSha256 = "1jh2f66ys6rmrrwrf5zqfprgcvziyq6l4z8bfqwxgf1ysnxx525h"; + + doCheck = false; + + buildFlagsArray = '' + -ldflags= + -X github.com/xetys/hetzner-kube/cmd.version=${version} + ''; + + nativeBuildInputs = [ + installShellFiles + ]; + + postInstall = '' + $out/bin/hetzner-kube completion bash > hetzner-kube + $out/bin/hetzner-kube completion zsh > _hetzner-kube + installShellCompletion --zsh _hetzner-kube + installShellCompletion --bash hetzner-kube + ''; + + meta = { + description = "A CLI tool for provisioning Kubernetes clusters on Hetzner Cloud"; + homepage = "https://github.com/xetys/hetzner-kube"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ eliasp ]; + platforms = lib.platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix new file mode 100644 index 000000000000..1c7a39d91bd7 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix @@ -0,0 +1,51 @@ +{ lib, buildGoModule, fetchFromGitHub, go-bindata, installShellFiles }: + +buildGoModule rec { + pname = "istioctl"; + version = "1.9.1"; + + src = fetchFromGitHub { + owner = "istio"; + repo = "istio"; + rev = version; + sha256 = "sha256-WcIcI+y8tTY0YfyuR/DUCjN1xbGpCOBWvEHBo+q2EV8="; + }; + vendorSha256 = "sha256-pSiJfQTvJ6OisdrWTH6mOcAn/wBA1OcVaGtOwBe1qvQ="; + + doCheck = false; + + nativeBuildInputs = [ go-bindata installShellFiles ]; + + # Bundle charts + preBuild = '' + patchShebangs operator/scripts + operator/scripts/create_assets_gen.sh + ''; + + # Bundle release metadata + buildFlagsArray = let + attrs = [ + "istio.io/pkg/version.buildVersion=${version}" + "istio.io/pkg/version.buildStatus=Nix" + "istio.io/pkg/version.buildTag=${version}" + "istio.io/pkg/version.buildHub=docker.io/istio" + ]; + in ["-ldflags=-s -w ${lib.concatMapStringsSep " " (attr: "-X ${attr}") attrs}"]; + + subPackages = [ "istioctl/cmd/istioctl" ]; + + postInstall = '' + $out/bin/istioctl collateral --man --bash --zsh + installManPage *.1 + installShellCompletion istioctl.bash + installShellCompletion --zsh _istioctl + ''; + + meta = with lib; { + description = "Istio configuration command line utility for service operators to debug and diagnose their Istio mesh"; + homepage = "https://istio.io/latest/docs/reference/commands/istioctl"; + license = licenses.asl20; + maintainers = with maintainers; [ veehaitch ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/jx/default.nix b/nixpkgs/pkgs/applications/networking/cluster/jx/default.nix new file mode 100644 index 000000000000..d7fc1cb22429 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/jx/default.nix @@ -0,0 +1,49 @@ +{ buildGoModule, fetchFromGitHub, lib, installShellFiles }: + +buildGoModule rec { + pname = "jx"; + version = "2.1.155"; + + src = fetchFromGitHub { + owner = "jenkins-x"; + repo = "jx"; + rev = "v${version}"; + sha256 = "sha256-kwcmZSOA26XuSgNSHitGaMohalnLobabXf4z3ybSJtk="; + }; + + vendorSha256 = "sha256-ZtcCBXcJXX9ThzY6T0MhNfDDzRC9PYzRB1VyS4LLXLs="; + + doCheck = false; + + subPackages = [ "cmd/jx" ]; + + nativeBuildInputs = [ installShellFiles ]; + + buildFlagsArray = '' + -ldflags= + -s -w + -X github.com/jenkins-x/jx/pkg/version.Version=${version} + -X github.com/jenkins-x/jx/pkg/version.Revision=${src.rev} + -X github.com/jenkins-x/jx/pkg/version.GitTreeState=clean + ''; + + postInstall = '' + for shell in bash zsh; do + $out/bin/jx completion $shell > jx.$shell + installShellCompletion jx.$shell + done + ''; + + meta = with lib; { + description = "Command line tool for installing and using Jenkins X"; + homepage = "https://jenkins-x.io"; + longDescription = '' + Jenkins X provides automated CI+CD for Kubernetes with Preview + Environments on Pull Requests using Jenkins, Knative Build, Prow, + Skaffold and Helm. + ''; + license = licenses.asl20 ; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix b/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix new file mode 100644 index 000000000000..285e1db536de --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix @@ -0,0 +1,280 @@ +{ stdenv +, lib +, makeWrapper +, socat +, iptables +, iproute2 +, bridge-utils +, conntrack-tools +, buildGoPackage +, git +, runc +, kmod +, libseccomp +, pkg-config +, ethtool +, util-linux +, ipset +, fetchFromGitHub +, fetchurl +, fetchzip +, fetchgit +, zstd +}: + +with lib; + +# k3s is a kinda weird derivation. One of the main points of k3s is the +# simplicity of it being one binary that can perform several tasks. +# However, when you have a good package manager (like nix), that doesn't +# actually make much of a difference; you don't really care if it's one binary +# or 10 since with a good package manager, installing and running it is +# identical. +# Since upstream k3s packages itself as one large binary with several +# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s +# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with +# some exceptions. +# K3s also carries patches to some packages (such as containerd and cni +# plugins), so we intentionally use the k3s versions of those binaries for k3s, +# even if the upstream version of those binaries exist in nixpkgs already. In +# the end, that means we have a thick k3s binary that behaves like the upstream +# one for the most part. +# However, k3s also bundles several pieces of unpatched software, from the +# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc. +# Those pieces of software we entirely ignore upstream's handling of, and just +# make sure they're in the path if desired. +let + k3sVersion = "1.20.4+k3s1"; # k3s git tag + traefikChartVersion = "1.81.0"; # taken from ./scripts/download at the above k3s tag + k3sRootVersion = "0.8.1"; # taken from ./scripts/download at the above k3s tag + k3sCNIVersion = "0.8.6-k3s1"; # taken from ./scripts/version.sh at the above k3s tag + # bundled into the k3s binary + traefikChart = fetchurl { + url = "https://kubernetes-charts.storage.googleapis.com/traefik-${traefikChartVersion}.tgz"; + sha256 = "1aqpzgjlvqhil0g3angz94zd4xbl4iq0qmpjcy5aq1xv9qciwdi9"; + }; + # so, k3s is a complicated thing to package + # This derivation attempts to avoid including any random binaries from the + # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which + # we don't care about doing, we can add those as build or runtime + # dependencies using a real package manager). + # In addition to those binaries, it's also configuration though (right now + # mostly strongswan configuration), and k3s does use those files. + # As such, we download it in order to grab 'etc' and bundle it into the final + # k3s binary. + k3sRoot = fetchzip { + # Note: marked as apache 2.0 license + url = "https://github.com/k3s-io/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar"; + sha256 = "sha256-r3Nkzl9ccry7cgD3YWlHvEWOsWnnFGIkyRH9sx12gks="; + stripRoot = false; + }; + k3sPlugins = buildGoPackage rec { + name = "k3s-cni-plugins"; + version = k3sCNIVersion; + + goPackagePath = "github.com/containernetworking/plugins"; + subPackages = [ "." ]; + + src = fetchFromGitHub { + owner = "rancher"; + repo = "plugins"; + rev = "v${version}"; + sha256 = "13kx9msn5y9rw8v1p717wx0wbjqln59g6y3qfb1760aiwknva35q"; + }; + + meta = { + description = "CNI plugins, as patched by rancher for k3s"; + license = licenses.asl20; + homepage = "https://k3s.io"; + maintainers = [ maintainers.euank ]; + platforms = platforms.linux; + }; + }; + # Grab this separately from a build because it's used by both stages of the + # k3s build. + k3sRepo = fetchgit { + url = "https://github.com/k3s-io/k3s"; + rev = "v${k3sVersion}"; + leaveDotGit = true; # ./scripts/version.sh depends on git + sha256 = "0rmn3nh8a94axv6lb2xjnn3gpq0scnvj69bvcs74azvw62fvq016"; + }; + # Stage 1 of the k3s build: + # Let's talk about how k3s is structured. + # One of the ideas of k3s is that there's the single "k3s" binary which can + # do everything you need, from running a k3s server, to being a worker node, + # to running kubectl. + # The way that actually works is that k3s is a single go binary that contains + # a bunch of bindata that it unpacks at runtime into directories (either the + # user's home directory or /var/lib/rancher if run as root). + # This bindata includes both binaries and configuration. + # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations. + # First, we build all the binaries that get packed into the thick k3s binary + # (and output them from one derivation so they'll all be suitably patched up). + # Then, we bundle those binaries into our thick k3s binary and use that as + # the final single output. + # This approach was chosen because it ensures the bundled binaries all are + # correctly built to run with nix (we can lean on the existing buildGoPackage + # stuff), and we can again lean on that tooling for the final k3s binary too. + # Other alternatives would be to manually run the + # strip/patchelf/remove-references step ourselves in the installPhase of the + # derivation when we've built all the binaries, but haven't bundled them in + # with generated bindata yet. + k3sBuildStage1 = buildGoPackage rec { + name = "k3s-build-1"; + version = k3sVersion; + + goPackagePath = "github.com/rancher/k3s"; + + src = k3sRepo; + + # Patch build scripts so that we can use them. + # This makes things more dynamically linked (because nix can deal with + # dynamically linked dependencies just fine), removes the upload at the + # end, and skips building runc + cni, since we have our own derivations for + # those. + patches = [ ./patches/0002-Add-nixpkgs-patches.patch ]; + + nativeBuildInputs = [ git pkg-config ]; + buildInputs = [ libseccomp ]; + + buildPhase = '' + pushd go/src/${goPackagePath} + + patchShebangs ./scripts/build ./scripts/version.sh + mkdir -p bin + ./scripts/build + + popd + ''; + + installPhase = '' + pushd go/src/${goPackagePath} + + mkdir -p "$out/bin" + install -m 0755 -t "$out/bin" ./bin/* + + popd + ''; + + meta = { + description = "The various binaries that get packaged into the final k3s binary"; + license = licenses.asl20; + homepage = "https://k3s.io"; + maintainers = [ maintainers.euank ]; + platforms = platforms.linux; + }; + }; + k3sBin = buildGoPackage rec { + name = "k3s-bin"; + version = k3sVersion; + + goPackagePath = "github.com/rancher/k3s"; + + src = k3sRepo; + + # See the above comment in k3sBuildStage1 + patches = [ ./patches/0002-Add-nixpkgs-patches.patch ]; + + nativeBuildInputs = [ git pkg-config zstd ]; + # These dependencies are embedded as compressed files in k3s at runtime. + # Propagate them to avoid broken runtime references to libraries. + propagatedBuildInputs = [ k3sPlugins k3sBuildStage1 runc ]; + + # k3s appends a suffix to the final distribution binary for some arches + archSuffix = + if stdenv.hostPlatform.system == "x86_64-linux" then "" + else if stdenv.hostPlatform.system == "aarch64-linux" then "-arm64" + else throw "k3s isn't being built for ${stdenv.hostPlatform.system} yet."; + + # In order to build the thick k3s binary (which is what + # ./scripts/package-cli does), we need to get all the binaries that script + # expects in place. + buildPhase = '' + pushd go/src/${goPackagePath} + + patchShebangs ./scripts/build ./scripts/version.sh ./scripts/package-cli + + mkdir -p bin + + install -m 0755 -t ./bin ${k3sBuildStage1}/bin/* + install -m 0755 -T "${k3sPlugins}/bin/plugins" ./bin/cni + # Note: use the already-nixpkgs-bundled k3s rather than the one bundled + # in k3s because the k3s one is completely unmodified from upstream + # (unlike containerd, cni, etc) + install -m 0755 -T "${runc}/bin/runc" ./bin/runc + cp -R "${k3sRoot}/etc" ./etc + mkdir -p "build/static/charts" + cp "${traefikChart}" "build/static/charts/traefik-${traefikChartVersion}.tgz" + + ./scripts/package-cli + + popd + ''; + + installPhase = '' + pushd go/src/${goPackagePath} + + mkdir -p "$out/bin" + install -m 0755 -T ./dist/artifacts/k3s${archSuffix} "$out/bin/k3s" + + popd + ''; + + meta = { + description = "The k3s go binary which is used by the final wrapped output below"; + license = licenses.asl20; + homepage = "https://k3s.io"; + maintainers = [ maintainers.euank ]; + platforms = platforms.linux; + }; + }; +in +stdenv.mkDerivation rec { + pname = "k3s"; + version = k3sVersion; + + # Important utilities used by the kubelet, see + # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494 + # Note the list in that issue is stale and some aren't relevant for k3s. + k3sRuntimeDeps = [ + kmod + socat + iptables + iproute2 + bridge-utils + ethtool + util-linux + ipset + conntrack-tools + ]; + + buildInputs = [ + k3sBin + makeWrapper + ] ++ k3sRuntimeDeps; + + unpackPhase = "true"; + + # And, one final derivation (you thought the last one was it, right?) + # We got the binary we wanted above, but it doesn't have all the runtime + # dependencies k8s wants, including mount utilities for kubelet, networking + # tools for cni/kubelet stuff, etc + # Use a wrapper script to reference all the binaries that k3s tries to + # execute, but that we didn't bundle with it. + installPhase = '' + runHook preInstall + mkdir -p "$out/bin" + makeWrapper ${k3sBin}/bin/k3s "$out/bin/k3s" \ + --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \ + --prefix PATH : "$out/bin" + runHook postInstall + ''; + + meta = { + description = "A lightweight Kubernetes distribution"; + license = licenses.asl20; + homepage = "https://k3s.io"; + maintainers = [ maintainers.euank ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch b/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch new file mode 100644 index 000000000000..244da314f595 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch @@ -0,0 +1,84 @@ +From 1891be119e298ef7c86347a6b74d40ff539cf06e Mon Sep 17 00:00:00 2001 +From: Euan Kemp <euank@euank.com> +Date: Sun, 31 May 2020 19:02:37 -0700 +Subject: [PATCH 2/2] Add nixpkgs patches + +These patches let us re-use the upstream build scripts when building for +nix. +--- + scripts/build | 20 ++++---------------- + scripts/package-cli | 10 ++++++---- + 2 files changed, 10 insertions(+), 20 deletions(-) + +diff --git a/scripts/build b/scripts/build +index 4ca6333c4a..df15f7db1d 100755 +--- a/scripts/build ++++ b/scripts/build +@@ -12,7 +12,8 @@ PKG_CONTAINERD="github.com/containerd/containerd" + PKG_RANCHER_CONTAINERD="github.com/rancher/containerd" + PKG_CRICTL="github.com/kubernetes-sigs/cri-tools" + +-buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ') ++# nixpkgs: deterministic build date ++buildDate="$(date -d "$(git log -1 --format=%ai)" -u "+%Y-%m-%dT%H:%M:%SZ")" + + VENDOR_PREFIX="${PKG}/vendor/" + VERSIONFLAGS=" +@@ -92,17 +93,7 @@ cleanup() { + } + + INSTALLBIN=$(pwd)/bin +-if [ ! -x ${INSTALLBIN}/cni ]; then +-( +- echo Building cni +- TMPDIR=$(mktemp -d) +- trap cleanup EXIT +- WORKDIR=$TMPDIR/src/github.com/containernetworking/plugins +- git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR +- cd $WORKDIR +- GOPATH=$TMPDIR CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$LDFLAGS $STATIC" -o $INSTALLBIN/cni +-) +-fi ++# nixpkgs: skip building cni, we build it separately + # echo Building agent + # CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go + echo Building server +@@ -118,10 +109,7 @@ ln -s containerd ./bin/ctr + #CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go + # echo Building containerd + # CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/ +-echo Building runc +-rm -f ./vendor/github.com/opencontainers/runc/runc +-make EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" -C ./vendor/github.com/opencontainers/runc $RUNC_STATIC +-cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc ++# nixpkgs: we build runc separately + + echo Building containerd-shim + rm -f ./vendor/github.com/containerd/containerd/bin/containerd-shim +diff --git a/scripts/package-cli b/scripts/package-cli +index d1aad638d9..90479b6fa1 100755 +--- a/scripts/package-cli ++++ b/scripts/package-cli +@@ -49,15 +49,18 @@ fi + + CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX} + +-"${GO}" generate ++CGO_ENABLED=0 env -u GOARCH "${GO}" generate + LDFLAGS=" + -X github.com/rancher/k3s/pkg/version.Version=$VERSION + -X github.com/rancher/k3s/pkg/version.GitCommit=${COMMIT:0:8} + -w -s + " +-STATIC="-extldflags '-static'" +-CGO_ENABLED=0 "${GO}" build -ldflags "$LDFLAGS $STATIC" -o ${CMD_NAME} ./cmd/k3s/main.go ++# STATIC="-extldflags '-static'" ++# nixpkgs: we can depend on dynamic linking because we have a good package manager ++"${GO}" build -ldflags "$LDFLAGS" -o ${CMD_NAME} ./cmd/k3s/main.go + + stat ${CMD_NAME} + +-./scripts/build-upload ${CMD_NAME} ${COMMIT} ++# nixpkgs: skip uploading ++# ./scripts/build-upload ${CMD_NAME} ${COMMIT} ++ diff --git a/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix b/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix new file mode 100644 index 000000000000..ee16f923b788 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix @@ -0,0 +1,31 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "k9s"; + version = "0.24.6"; + + src = fetchFromGitHub { + owner = "derailed"; + repo = "k9s"; + rev = "v${version}"; + sha256 = "sha256-uqtjAvtsF+4cz3M60Xj9sCNotaoPzaeeTKnXQUB4CIo="; + }; + + buildFlagsArray = '' + -ldflags= + -s -w + -X github.com/derailed/k9s/cmd.version=${version} + -X github.com/derailed/k9s/cmd.commit=${src.rev} + ''; + + vendorSha256 = "sha256-/4Aof09MYHPc4VJJV2EyB7T9zNFtYY4JeDGJi67FQic="; + + doCheck = false; + + meta = with lib; { + description = "Kubernetes CLI To Manage Your Clusters In Style"; + homepage = "https://github.com/derailed/k9s"; + license = licenses.asl20; + maintainers = with maintainers; [ Gonzih markus1189 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kanif/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kanif/default.nix new file mode 100644 index 000000000000..b4bb69dc1f62 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kanif/default.nix @@ -0,0 +1,35 @@ +{ lib, stdenv, fetchurl, perl , taktuk}: + +stdenv.mkDerivation rec { + version = "1.2.2"; + pname = "kanif"; + + src = fetchurl { + url = "https://gforge.inria.fr/frs/download.php/26773/${pname}-${version}.tar.gz"; + sha256 = "3f0c549428dfe88457c1db293cfac2a22b203f872904c3abf372651ac12e5879"; + }; + + preBuild = '' + substituteInPlace ./kanif --replace "/usr/bin/perl" "${perl}/bin/perl" + substituteInPlace ./kanif --replace '$taktuk_command = "taktuk";' '$taktuk_command = "${taktuk}/bin/taktuk";' + ''; + + meta = { + description = "Cluster management and administration swiss army knife"; + longDescription = '' + Kanif is a tool for high performance computing clusters management and + administration. It combines the main functionalities of well-known cluster + management tools such as c3, pdsh and dsh, and mimics their syntax. It + provides three tools to run the same command on several nodes ("parallel + ssh", using the 'kash' command), to broadcast the copy of files or + directories to several nodes ('kaput' command), and to gather several + remote files or directories locally ('kaget' command). It relies on TakTuk + for efficiency and scalability.''; + homepage = "http://taktuk.gforge.inria.fr/kanif"; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.bzizou ]; + platforms = lib.platforms.linux; + }; + +} + diff --git a/nixpkgs/pkgs/applications/networking/cluster/kconf/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kconf/default.nix new file mode 100644 index 000000000000..683a91ffee85 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kconf/default.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kconf"; + version = "1.10.1"; + + src = fetchFromGitHub { + owner = "particledecay"; + repo = "kconf"; + rev = "v${version}"; + sha256 = "NlTpHQFOJJcIt/xMT3fvdrlxANyg//wtYMmXzEtaFXo="; + }; + + vendorSha256 = "2d4o87wE9QZltk2YOHc20XVYF8n0EOrDf5mJ6i6EB0c="; + + meta = with lib; { + description = "An opinionated command line tool for managing multiple kubeconfigs"; + homepage = "https://github.com/particledecay/kconf"; + license = licenses.mit; + maintainers = with maintainers; [ thmzlt ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kompose/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kompose/default.nix new file mode 100644 index 000000000000..c01e1c8c0041 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kompose/default.nix @@ -0,0 +1,31 @@ +{ lib, buildGoPackage, fetchFromGitHub, installShellFiles }: + +buildGoPackage rec { + pname = "kompose"; + version = "1.21.0"; + + goPackagePath = "github.com/kubernetes/kompose"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "kubernetes"; + repo = "kompose"; + sha256 = "15a1alf6ywwfc4z5kdcnv64fp3cfy3qrcw62ny6xyn1kh1w24vkh"; + }; + + nativeBuildInputs = [ installShellFiles ]; + postInstall = '' + for shell in bash zsh; do + $out/bin/kompose completion $shell > kompose.$shell + installShellCompletion kompose.$shell + done + ''; + + meta = with lib; { + description = "A tool to help users who are familiar with docker-compose move to Kubernetes"; + homepage = "https://kompose.io"; + license = licenses.asl20; + maintainers = with maintainers; [ thpham vdemeester ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix new file mode 100644 index 000000000000..87ae71f6a48d --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix @@ -0,0 +1,35 @@ +{ lib, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + pname = "kontemplate"; + version = "1.8.0"; + goPackagePath = "github.com/tazjin/kontemplate"; + goDeps = ./deps.nix; + + src = fetchFromGitHub { + owner = "tazjin"; + repo = "kontemplate"; + rev = "v${version}"; + sha256 = "123mjmmm4hynraq1fpn3j5i0a1i87l265kkjraxxxbl0zacv74i1"; + }; + + meta = with lib; { + description = "Extremely simple Kubernetes resource templates"; + homepage = "http://kontemplate.works"; + downloadPage = "https://github.com/tazjin/kontemplate/releases"; + license = licenses.gpl3; + maintainers = with maintainers; [ mbode tazjin ]; + platforms = platforms.unix; + repositories.git = "git://github.com/tazjin/kontemplate.git"; + + longDescription = '' + Kontemplate is a simple CLI tool that can take sets of + Kubernetes resource files with placeholders and insert values + per environment. + + It can be used as a simple way of deploying the same set of + resources to different Kubernetes contexts with context-specific + configuration. + ''; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kontemplate/deps.nix b/nixpkgs/pkgs/applications/networking/cluster/kontemplate/deps.nix new file mode 100644 index 000000000000..7693968bd550 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kontemplate/deps.nix @@ -0,0 +1,111 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.3.0 +[ + { + goPackagePath = "github.com/Masterminds/goutils"; + fetch = { + type = "git"; + url = "https://github.com/Masterminds/goutils"; + rev = "41ac8693c5c10a92ea1ff5ac3a7f95646f6123b0"; + sha256 = "180px47gj936qyk5bkv5mbbgiil9abdjq6kwkf7sq70vyi9mcfiq"; + }; + } + { + goPackagePath = "github.com/Masterminds/semver"; + fetch = { + type = "git"; + url = "https://github.com/Masterminds/semver"; + rev = "5bc3b9184d48f1412b300b87a200cf020d9254cf"; + sha256 = "1vdfm653v50jf63cw0kg2hslx50cn4mk6lj3p51bi11jrg48kfng"; + }; + } + { + goPackagePath = "github.com/Masterminds/sprig"; + fetch = { + type = "git"; + url = "https://github.com/Masterminds/sprig"; + rev = "6f509977777c33eae63b2136d97f7b976cb971cc"; + sha256 = "05h9k6fhjxnpwlihj3z02q9kvqvnq53jix0ab84sx0666bci3cdh"; + }; + } + { + goPackagePath = "github.com/alecthomas/template"; + fetch = { + type = "git"; + url = "https://github.com/alecthomas/template"; + rev = "fb15b899a75114aa79cc930e33c46b577cc664b1"; + sha256 = "1vlasv4dgycydh5wx6jdcvz40zdv90zz1h7836z7lhsi2ymvii26"; + }; + } + { + goPackagePath = "github.com/alecthomas/units"; + fetch = { + type = "git"; + url = "https://github.com/alecthomas/units"; + rev = "c3de453c63f4bdb4dadffab9805ec00426c505f7"; + sha256 = "0js37zlgv37y61j4a2d46jh72xm5kxmpaiw0ya9v944bjpc386my"; + }; + } + { + goPackagePath = "github.com/ghodss/yaml"; + fetch = { + type = "git"; + url = "https://github.com/ghodss/yaml"; + rev = "25d852aebe32c875e9c044af3eef9c7dc6bc777f"; + sha256 = "1w9yq0bxzygc4qwkwwiy7k1k1yviaspcqqv18255k2xkjv5ipccz"; + }; + } + { + goPackagePath = "github.com/google/uuid"; + fetch = { + type = "git"; + url = "https://github.com/google/uuid"; + rev = "c2e93f3ae59f2904160ceaab466009f965df46d6"; + sha256 = "0zw8fvl6jqg0fmv6kmvhss0g4gkrbvgyvl2zgy5wdbdlgp4fja0h"; + }; + } + { + goPackagePath = "github.com/huandu/xstrings"; + fetch = { + type = "git"; + url = "https://github.com/huandu/xstrings"; + rev = "8bbcf2f9ccb55755e748b7644164cd4bdce94c1d"; + sha256 = "1ivvc95514z63k7cpz71l0dwlanffmsh1pijhaqmp41kfiby8rsx"; + }; + } + { + goPackagePath = "github.com/imdario/mergo"; + fetch = { + type = "git"; + url = "https://github.com/imdario/mergo"; + rev = "4c317f2286be3bd0c4f1a0e622edc6398ec4656d"; + sha256 = "0bihha1qsgfjk14yv1hwddv3d8dzxpbjlaxwwyys6lhgxz1cr9h9"; + }; + } + { + goPackagePath = "golang.org/x/crypto"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/crypto"; + rev = "9756ffdc24725223350eb3266ffb92590d28f278"; + sha256 = "0q7hxaaq6lp0v8qqzifvysl47z5rfdlrxkh3d29vsl3wyby3dxl8"; + }; + } + { + goPackagePath = "gopkg.in/alecthomas/kingpin.v2"; + fetch = { + type = "git"; + url = "https://gopkg.in/alecthomas/kingpin.v2"; + rev = "947dcec5ba9c011838740e680966fd7087a71d0d"; + sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r"; + }; + } + { + goPackagePath = "gopkg.in/yaml.v2"; + fetch = { + type = "git"; + url = "https://gopkg.in/yaml.v2"; + rev = "51d6538a90f86fe93ac480b35f37b2be17fef232"; + sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa"; + }; + } +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix new file mode 100644 index 000000000000..9b1a155a25b7 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix @@ -0,0 +1,71 @@ +{ lib, buildGoPackage, fetchFromGitHub, go-bindata, installShellFiles }: +let + goPackagePath = "k8s.io/kops"; + + generic = { version, sha256, rev ? version, ... }@attrs: + let attrs' = builtins.removeAttrs attrs [ "version" "sha256" "rev" ]; in + buildGoPackage + { + pname = "kops"; + inherit version; + + inherit goPackagePath; + + src = fetchFromGitHub { + rev = rev; + owner = "kubernetes"; + repo = "kops"; + inherit sha256; + }; + + nativeBuildInputs = [ go-bindata installShellFiles ]; + subPackages = [ "cmd/kops" ]; + + buildFlagsArray = '' + -ldflags= + -X k8s.io/kops.Version=${version} + -X k8s.io/kops.GitVersion=${version} + ''; + + preBuild = '' + (cd go/src/k8s.io/kops + go-bindata -o upup/models/bindata.go -pkg models -prefix upup/models/ upup/models/...) + ''; + + postInstall = '' + for shell in bash zsh; do + $out/bin/kops completion $shell > kops.$shell + installShellCompletion kops.$shell + done + ''; + + meta = with lib; { + description = "Easiest way to get a production Kubernetes up and running"; + homepage = "https://github.com/kubernetes/kops"; + changelog = "https://github.com/kubernetes/kops/tree/master/docs/releases"; + license = licenses.asl20; + maintainers = with maintainers; [ offline zimbatm ]; + platforms = platforms.unix; + }; + } // attrs'; +in +rec { + + mkKops = generic; + + kops_1_16 = mkKops { + version = "1.16.4"; + sha256 = "0qi80hzd5wc8vn3y0wsckd7pq09xcshpzvcr7rl5zd4akxb0wl3f"; + }; + + kops_1_17 = mkKops { + version = "1.17.2"; + sha256 = "0fmrzjz163hda6sl1jkl7cmg8fw6mmqb9953048jnhmd3w428xlz"; + }; + + kops_1_18 = mkKops rec { + version = "1.18.2"; + sha256 = "17na83j6sfhk69w9ssvicc0xd1904z952ad3zzbpha50lcy6nlhp"; + rev = "v${version}"; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kpt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kpt/default.nix new file mode 100644 index 000000000000..577e52ed49d6 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kpt/default.nix @@ -0,0 +1,27 @@ +{ buildGoModule, fetchFromGitHub, lib }: + +buildGoModule rec { + pname = "kpt"; + version = "0.38.0"; + + src = fetchFromGitHub { + owner = "GoogleContainerTools"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-MBZa4LdpCZnVVbjzkYpPi9/CYGqVLeYy2N/AS1PSYBE="; + }; + + vendorSha256 = "sha256-P0cN8aw62nPD1OlUAw1E36YxptxtPqqruZfDDG4Ag2w="; + + subPackages = [ "." ]; + + buildFlagsArray = [ "-ldflags=-s -w -X github.com/GoogleContainerTools/kpt/run.version=${version}" ]; + + meta = with lib; { + description = "A toolkit to help you manage, manipulate, customize, and apply Kubernetes Resource configuration data files"; + homepage = "https://googlecontainertools.github.io/kpt/"; + license = licenses.asl20; + maintainers = with maintainers; [ mikefaille ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix new file mode 100644 index 000000000000..78cbaca80ab1 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix @@ -0,0 +1,24 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kube-capacity"; + version = "0.5.1"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "robscott"; + repo = pname; + sha256 = "127583hmpj04y522wir76a39frm6zg9z7mb4ny5lxxjqhn0q0cd5"; + }; + + vendorSha256 = "sha256-EgLWZs282IV1euCUCc5ucf267E2Z7GF9SgoImiGvuVM="; + + meta = with lib; { + description = + "A simple CLI that provides an overview of the resource requests, limits, and utilization in a Kubernetes cluster"; + homepage = "https://github.com/robscott/kube-capacity"; + changelog = "https://github.com/robscott/kube-capacity/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = [ maintainers.bryanasdev000 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kube-router/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kube-router/default.nix new file mode 100644 index 000000000000..586fc6cf806b --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kube-router/default.nix @@ -0,0 +1,31 @@ +{ lib, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + pname = "kube-router"; + version = "1.1.1"; + + goPackagePath = "github.com/cloudnativelabs/kube-router"; + + src = fetchFromGitHub { + owner = "cloudnativelabs"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-U7vjWtVXmyEPYFS1fAPOgV3WILGPhWsmoawV7B0pZaE="; + }; + + buildFlagsArray = '' + -ldflags= + -X + ${goPackagePath}/pkg/cmd.version=${version} + -X + ${goPackagePath}/pkg/cmd.buildDate=Nix + ''; + + meta = with lib; { + homepage = "https://www.kube-router.io/"; + description = "All-in-one router, firewall and service proxy for Kubernetes"; + license = licenses.asl20; + maintainers = with maintainers; [ colemickens johanot ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kube-score/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kube-score/default.nix new file mode 100644 index 000000000000..76bd115a9b13 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kube-score/default.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kube-score"; + version = "1.10.1"; + + src = fetchFromGitHub { + owner = "zegl"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-TYsuSPWTiIlPscul/QO59+lt6sbjJdt7pJuJYO5R9Tc="; + }; + + vendorSha256 = "sha256-ob7mNheyeTcDWml4gi1SD3Pq+oWtJeySIUg2ZrCj0y0="; + + meta = with lib; { + description = "Kubernetes object analysis with recommendations for improved reliability and security"; + homepage = "https://github.com/zegl/kube-score"; + license = licenses.mit; + maintainers = [ maintainers.j4m3s ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix new file mode 100644 index 000000000000..d0aa1029d632 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix @@ -0,0 +1,56 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles, k3sVersion ? "1.20.5-k3s1" }: + +buildGoModule rec { + pname = "kube3d"; + version = "4.4.1"; + + excludedPackages = "tools"; + + src = fetchFromGitHub { + owner = "rancher"; + repo = "k3d"; + rev = "v${version}"; + sha256 = "sha256-u9P+7qNomamd4BkqWBxA6rDom0hF6t10QfDTjqOMGeE="; + }; + + vendorSha256 = null; + + nativeBuildInputs = [ installShellFiles ]; + + preBuild = let t = "github.com/rancher/k3d/v4/version"; in + '' + buildFlagsArray+=("-ldflags" "-s -w -X ${t}.Version=v${version} -X ${t}.K3sVersion=v${k3sVersion}") + ''; + + doCheck = false; + + postInstall = '' + installShellCompletion --cmd k3d \ + --bash <($out/bin/k3d completion bash) \ + --fish <($out/bin/k3d completion fish) \ + --zsh <($out/bin/k3d completion zsh) + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + $out/bin/k3d --help + $out/bin/k3d version | grep "k3d version v${version}" + runHook postInstallCheck + ''; + + meta = with lib; { + homepage = "https://github.com/rancher/k3d"; + changelog = "https://github.com/rancher/k3d/blob/v${version}/CHANGELOG.md"; + description = "A helper to run k3s (Lightweight Kubernetes. 5 less than k8s) in a docker container - k3d"; + longDescription = '' + k3s is the lightweight Kubernetes distribution by Rancher: rancher/k3s + + k3d creates containerized k3s clusters. This means, that you can spin up a + multi-node k3s cluster on a single machine using docker. + ''; + license = licenses.mit; + maintainers = with maintainers; [ kuznero jlesquembre ngerstle jk ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubecfg/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubecfg/default.nix new file mode 100644 index 000000000000..4fda7db9f198 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubecfg/default.nix @@ -0,0 +1,25 @@ +{ lib, buildGoPackage, fetchFromGitHub, ... }: + +let version = "0.18.0"; in + +buildGoPackage { + pname = "kubecfg"; + inherit version; + + src = fetchFromGitHub { + owner = "bitnami"; + repo = "kubecfg"; + rev = "v${version}"; + sha256 = "sha256-TJbuJZDj9ZwEaN8LV/M30+5+IgN8EZCTTBBDB0OgdEE="; + }; + + goPackagePath = "github.com/bitnami/kubecfg"; + + meta = { + description = "A tool for managing Kubernetes resources as code"; + homepage = "https://github.com/bitnami/kubecfg"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ benley ]; + platforms = lib.platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubeconform/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubeconform/default.nix new file mode 100644 index 000000000000..ca5e30154da4 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubeconform/default.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kubeconform"; + version = "0.4.6"; + + src = fetchFromGitHub { + owner = "yannh"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-lduHYYskEPUimEX54ymOyo5jY7GGBB42YTefDMNS4qo="; + }; + + vendorSha256 = null; + + meta = with lib; { + description = "A FAST Kubernetes manifests validator, with support for Custom Resources!"; + homepage = "https://github.com/yannh/kubeconform/"; + license = licenses.asl20; + maintainers = [ maintainers.j4m3s ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubectl-doctor/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubectl-doctor/default.nix new file mode 100644 index 000000000000..5d056907264d --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubectl-doctor/default.nix @@ -0,0 +1,27 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kubectl-doctor"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "emirozer"; + repo = pname; + rev = version; + sha256 = "0x784jbcwd34vzdnhg2yldh5ivkxvs2qlbsvaammbxkn04ch1ijz"; + }; + + vendorSha256 = "04xq5kp1m7c98gb4fd0dni258vpfnhv535gl2qllfcp2mvk3mn55"; + + postInstall = '' + mv $out/bin/{cmd,kubectl-doctor} + ''; + + meta = with lib; { + description = "kubectl cluster triage plugin for k8s"; + homepage = "https://github.com/emirozer/kubectl-doctor"; + changelog = "https://github.com/emirozer/kubectl-doctor/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = [ maintainers.zimbatm ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubectl-example/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubectl-example/default.nix new file mode 100644 index 000000000000..04677cb4277f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubectl-example/default.nix @@ -0,0 +1,23 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kubectl-example"; + version = "1.0.1"; + + src = fetchFromGitHub { + owner = "seredot"; + repo = pname; + rev = "v${version}"; + sha256 = "18vp53cda93qjssxygwqp55yc80a93781839gf3138awngf731yq"; + }; + + vendorSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5"; + + meta = with lib; { + description = "kubectl plugin for retrieving resource example YAMLs"; + homepage = "https://github.com/seredot/kubectl-example"; + changelog = "https://github.com/seredot/kubectl-example/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = [ maintainers.bryanasdev000 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix new file mode 100644 index 000000000000..c550a0e2f2b6 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix @@ -0,0 +1,28 @@ +{ stdenv, kubernetes, installShellFiles }: + +stdenv.mkDerivation { + name = "kubectl-${kubernetes.version}"; + + # kubectl is currently part of the main distribution but will eventially be + # split out (see homepage) + dontUnpack = true; + + nativeBuildInputs = [ installShellFiles ]; + + outputs = [ "out" "man" ]; + + installPhase = '' + install -D ${kubernetes}/bin/kubectl -t $out/bin + + installManPage "${kubernetes.man}/share/man/man1"/kubectl* + + installShellCompletion --cmd kubectl \ + --bash <($out/bin/kubectl completion bash) \ + --zsh <($out/bin/kubectl completion zsh) + ''; + + meta = kubernetes.meta // { + description = "Kubernetes CLI"; + homepage = "https://github.com/kubernetes/kubectl"; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubeless/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubeless/default.nix new file mode 100644 index 000000000000..38323b98b194 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubeless/default.nix @@ -0,0 +1,38 @@ +{ lib, buildGoPackage, fetchFromGitHub, installShellFiles }: + +buildGoPackage rec { + pname = "kubeless"; + version = "1.0.7"; + + src = fetchFromGitHub { + owner = "kubeless"; + repo = "kubeless"; + rev = "v${version}"; + sha256 = "0x2hydywnnlh6arzz71p7gg9yzq5z2y2lppn1jszvkbgh11kkqfr"; + }; + + goPackagePath = "github.com/kubeless/kubeless"; + + nativeBuildInputs = [ installShellFiles ]; + + subPackages = [ "cmd/kubeless" ]; + + buildFlagsArray = '' + -ldflags=-s -w -X github.com/kubeless/kubeless/pkg/version.Version=${version} + ''; + + postInstall = '' + for shell in bash; do + $out/bin/kubeless completion $shell > kubeless.$shell + installShellCompletion kubeless.$shell + done + ''; + + meta = with lib; { + homepage = "https://kubeless.io"; + description = "The Kubernetes Native Serverless Framework"; + license = licenses.asl20; + maintainers = with maintainers; []; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubelogin/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubelogin/default.nix new file mode 100644 index 000000000000..0a928ac9299f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubelogin/default.nix @@ -0,0 +1,28 @@ +{ lib, fetchFromGitHub, buildGoModule, go }: + +buildGoModule rec { + pname = "kubelogin"; + version = "0.0.9"; + + src = fetchFromGitHub { + owner = "Azure"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-0+4hrC7A60dbf+1uvTVU2JRynvA3O/lXfgcra1fV9bI="; + }; + + vendorSha256 = "sha256-erGqCpWlAQanY1ghpNVRhzUEIXv3lCiBGRs888MmHN8="; + + buildFlagsArray = '' + -ldflags= + -X main.version=${version} + -X main.goVersion=${lib.getVersion go} + ''; + + meta = with lib; { + description = "A Kubernetes credential plugin implementing Azure authentication"; + inherit (src.meta) homepage; + license = licenses.mit; + maintainers = with maintainers; [ yurrriq ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix new file mode 100644 index 000000000000..12127e223a3d --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix @@ -0,0 +1,98 @@ +{ stdenv +, lib +, fetchFromGitHub +, removeReferencesTo +, which +, go +, makeWrapper +, rsync +, installShellFiles + +, components ? [ + "cmd/kubelet" + "cmd/kube-apiserver" + "cmd/kube-controller-manager" + "cmd/kube-proxy" + "cmd/kube-scheduler" + "test/e2e/e2e.test" + ] +}: + +stdenv.mkDerivation rec { + pname = "kubernetes"; + version = "1.20.5"; + + src = fetchFromGitHub { + owner = "kubernetes"; + repo = "kubernetes"; + rev = "v${version}"; + sha256 = "sha256-RDaD7tlTtAucW8ido9FumKb5E9n6F9H8HwxQ9TPyOLk="; + }; + + nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync installShellFiles ]; + + outputs = [ "out" "man" "pause" ]; + + patches = [ ./fixup-addonmanager-lib-path.patch ]; + + postPatch = '' + # go env breaks the sandbox + substituteInPlace "hack/lib/golang.sh" \ + --replace 'echo "$(go env GOHOSTOS)/$(go env GOHOSTARCH)"' 'echo "${go.GOOS}/${go.GOARCH}"' + + substituteInPlace "hack/update-generated-docs.sh" --replace "make" "make SHELL=${stdenv.shell}" + # hack/update-munge-docs.sh only performs some tests on the documentation. + # They broke building k8s; disabled for now. + echo "true" > "hack/update-munge-docs.sh" + + patchShebangs ./hack + ''; + + WHAT = lib.concatStringsSep " " ([ + "cmd/kubeadm" + "cmd/kubectl" + ] ++ components); + + postBuild = '' + ./hack/update-generated-docs.sh + (cd build/pause/linux && cc pause.c -o pause) + ''; + + installPhase = '' + for p in $WHAT; do + install -D _output/local/go/bin/''${p##*/} -t $out/bin + done + + install -D build/pause/linux/pause -t $pause/bin + installManPage docs/man/man1/*.[1-9] + + # Unfortunately, kube-addons-main.sh only looks for the lib file in either the current working dir + # or in /opt. We have to patch this for now. + substitute cluster/addons/addon-manager/kube-addons-main.sh $out/bin/kube-addons \ + --subst-var out + + chmod +x $out/bin/kube-addons + patchShebangs $out/bin/kube-addons + wrapProgram $out/bin/kube-addons --set "KUBECTL_BIN" "$out/bin/kubectl" + + cp cluster/addons/addon-manager/kube-addons.sh $out/bin/kube-addons-lib.sh + + for tool in kubeadm kubectl; do + installShellCompletion --cmd $tool \ + --bash <($out/bin/$tool completion bash) \ + --zsh <($out/bin/$tool completion zsh) + done + ''; + + preFixup = '' + find $out/bin $pause/bin -type f -exec remove-references-to -t ${go} '{}' + + ''; + + meta = with lib; { + description = "Production-Grade Container Scheduling and Management"; + license = licenses.asl20; + homepage = "https://kubernetes.io"; + maintainers = with maintainers; [ johanot offline saschagrunert ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubernetes/fixup-addonmanager-lib-path.patch b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/fixup-addonmanager-lib-path.patch new file mode 100644 index 000000000000..ef2904bdcfe7 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/fixup-addonmanager-lib-path.patch @@ -0,0 +1,23 @@ +diff --git a/cluster/addons/addon-manager/kube-addons-main.sh b/cluster/addons/addon-manager/kube-addons-main.sh +index 849973470d1..e4fef30eaea 100755 +--- a/cluster/addons/addon-manager/kube-addons-main.sh ++++ b/cluster/addons/addon-manager/kube-addons-main.sh +@@ -17,17 +17,7 @@ + # Import required functions. The addon manager is installed to /opt in + # production use (see the Dockerfile) + # Disabling shellcheck following files as the full path would be required. +-if [ -f "kube-addons.sh" ]; then +- # shellcheck disable=SC1091 +- source "kube-addons.sh" +-elif [ -f "/opt/kube-addons.sh" ]; then +- # shellcheck disable=SC1091 +- source "/opt/kube-addons.sh" +-else +- # If the required source is missing, we have to fail. +- log ERR "== Could not find kube-addons.sh (not in working directory or /opt) at $(date -Is) ==" +- exit 1 +-fi ++source "@out@/bin/kube-addons-lib.sh" + + # The business logic for whether a given object should be created + # was already enforced by salt, and /etc/kubernetes/addons is the diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubernix/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubernix/default.nix new file mode 100644 index 000000000000..88cacfea4f1a --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubernix/default.nix @@ -0,0 +1,24 @@ +{ lib, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + pname = "kubernix"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "saschagrunert"; + repo = pname; + rev = "v${version}"; + sha256 = "04dzfdzjwcwwaw9min322g30q0saxpq5kqzld4f22fmk820ki6gp"; + }; + + cargoSha256 = "17agwqx7nhzi124yq1s6zpqb227drrhp9c11r3jbicc08dz88bwg"; + doCheck = false; + + meta = with lib; { + description = "Single dependency Kubernetes clusters for local testing, experimenting and development"; + homepage = "https://github.com/saschagrunert/kubernix"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ saschagrunert ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubeseal/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubeseal/default.nix new file mode 100644 index 000000000000..cf0c84514270 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubeseal/default.nix @@ -0,0 +1,28 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kubeseal"; + version = "0.15.0"; + + src = fetchFromGitHub { + owner = "bitnami-labs"; + repo = "sealed-secrets"; + rev = "v${version}"; + sha256 = "sha256-wzaNFM/4V2mWqhkqeT70ieQuhgNK79U2b7PhxKqn/X0="; + }; + + vendorSha256 = null; + + doCheck = false; + + subPackages = [ "cmd/kubeseal" ]; + + buildFlagsArray = [ "-ldflags=-s -w -X main.VERSION=${version}" ]; + + meta = with lib; { + description = "A Kubernetes controller and tool for one-way encrypted Secrets"; + homepage = "https://github.com/bitnami-labs/sealed-secrets"; + license = licenses.asl20; + maintainers = with maintainers; [ groodt ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubespy/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubespy/default.nix new file mode 100644 index 000000000000..fa0e62c53fe8 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubespy/default.nix @@ -0,0 +1,33 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "kubespy"; + version = "0.6.0"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "pulumi"; + repo = "kubespy"; + sha256 = "1xrwhxw2y0zpzsxp1rlm1wd0aqw6jda5ai5y1ards5djqsbsv87g"; + }; + + vendorSha256 = "0ajhbjs9ijpxp3svvj7pjiac78ps7vkqmqrizq18mllsry0m9pcl"; + + doCheck = false; + + # TODO: enable after https://github.com/pulumi/kubespy/issues/72 is addressed. + # postInstall = '' + # for shell in bash zsh; do + # $out/bin/kubespy completion $shell > kubespy.$shell + # installShellCompletion kubespy.$shell + # done + # ''; + + meta = with lib; { + description = "A tool to observe Kubernetes resources in real time"; + homepage = "https://github.com/pulumi/kubespy"; + license = licenses.asl20; + maintainers = with maintainers; [ blaggacao ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubetail/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubetail/default.nix new file mode 100644 index 000000000000..7e6a66eea506 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubetail/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchFromGitHub, lib, ... }: + +stdenv.mkDerivation rec { + pname = "kubetail"; + version = "1.6.12"; + + src = fetchFromGitHub { + owner = "johanhaleby"; + repo = "kubetail"; + rev = version; + sha256 = "0hayfd7yvdhd2klfmhvl04hfqk0nfsimjyg3kbq8c5dbgbpz05nd"; + }; + + installPhase = '' + install -Dm755 kubetail "$out/bin/kubetail" + install -Dm755 completion/kubetail.bash "$out/share/bash-completion/completions/kubetail" + install -Dm755 completion/kubetail.fish "$out/share/fish/vendor_completions.d/kubetail.fish" + install -Dm755 completion/kubetail.zsh "$out/share/zsh/site-functions/_kubetail" + ''; + + meta = with lib; { + description = "Bash script to tail Kubernetes logs from multiple pods at the same time"; + longDescription = '' + Bash script that enables you to aggregate (tail/follow) logs from + multiple pods into one stream. This is the same as running "kubectl logs + -f " but for multiple pods. + ''; + homepage = "https://github.com/johanhaleby/kubetail"; + license = licenses.asl20; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubeval/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubeval/default.nix new file mode 100644 index 000000000000..af8e04667b7f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubeval/default.nix @@ -0,0 +1,24 @@ +{ lib, fetchFromGitHub, buildGoModule, makeWrapper }: + +buildGoModule rec { + pname = "kubeval"; + version = "0.16.0"; + + src = fetchFromGitHub { + owner = "instrumenta"; + repo = "kubeval"; + rev = version; + sha256 = "sha256-c5UESyWK1rfnD0etOuIroBUSqZQuu57jio7/ArItMP0="; + }; + + vendorSha256 = "sha256-SqYNAUYPUJYmHj4cFEYqQ8hEkYWmmpav9AGOSFDc/M4="; + + doCheck = false; + + meta = with lib; { + description = "Validate your Kubernetes configuration files"; + homepage = "https://github.com/instrumenta/kubeval"; + license = licenses.asl20; + maintainers = with maintainers; [ johanot nicknovitski ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubeval/schema.nix b/nixpkgs/pkgs/applications/networking/cluster/kubeval/schema.nix new file mode 100644 index 000000000000..370fe9a1cd82 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kubeval/schema.nix @@ -0,0 +1,15 @@ +{ fetchFromGitHub }: +# To cache schema as a package so network calls are not +# necessary at runtime, allowing use in package builds you can use the following: + +# KUBEVAL_SCHEMA_LOCATION="file:///${kubeval-schema}"; +(fetchFromGitHub { + name = "kubeval-schema"; + owner = "instrumenta"; + repo = "kubernetes-json-schema"; + rev = "6a498a60dc68c5f6a1cc248f94b5cd1e7241d699"; + sha256 = "1y9m2ma3n4h7sf2lg788vjw6pkfyi0fa7gzc870faqv326n6x2jr"; +}) // { + # the schema is huge (> 7GB), we don't get any benefit from building int on hydra + meta.hydraPlatforms = []; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/kuttl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kuttl/default.nix new file mode 100644 index 000000000000..0c8f7f1574ce --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/kuttl/default.nix @@ -0,0 +1,31 @@ +{ lib, buildGoModule, fetchFromGitHub}: + +buildGoModule rec { + name = "kuttl"; + pname = "kuttl"; + version = "0.9.0"; + cli = "kubectl-kuttl"; + + src = fetchFromGitHub { + owner = "kudobuilder"; + repo = "kuttl"; + rev = "v${version}"; + sha256 = "sha256:1cji0py2340mvcpplwq3licdkzjx7q5f27fdjjxvbhrgksnyw6hs"; + }; + + vendorSha256 = "sha256:1shra42ifa2knxp58fj5hn074jg89f3nqdqk4rqbp3ybir84ahsd"; + + subPackages = [ "cmd/kubectl-kuttl" ]; + + buildFlagsArray = '' + -ldflags=-s -w + -X github.com/kudobuilder/kuttl/pkg/version.gitVersion=${version} + ''; + + meta = with lib; { + description = "The KUbernetes Test TooL (KUTTL) provides a declarative approach to testing production-grade Kubernetes operators"; + homepage = "https://github.com/kudobuilder/kuttl"; + license = licenses.asl20; + maintainers = with maintainers; [ diegolelis ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/lens/default.nix b/nixpkgs/pkgs/applications/networking/cluster/lens/default.nix new file mode 100644 index 000000000000..a4dac9dd6242 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/lens/default.nix @@ -0,0 +1,41 @@ +{ lib, fetchurl, appimageTools }: + +let + pname = "lens"; + version = "4.2.0"; + name = "${pname}-${version}"; + + src = fetchurl { + url = "https://github.com/lensapp/lens/releases/download/v${version}/Lens-${version}.x86_64.AppImage"; + sha256 = "0g60d1h2dn41qdzdnqavwknqynjqil7s8kcqy01h021r81rdpn2q"; + name="${pname}.AppImage"; + }; + + appimageContents = appimageTools.extractType2 { + inherit name src; + }; + +in appimageTools.wrapType2 { + inherit name src; + + extraInstallCommands = + '' + mv $out/bin/${name} $out/bin/${pname} + + install -m 444 -D ${appimageContents}/kontena-lens.desktop $out/share/applications/${pname}.desktop + install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/kontena-lens.png \ + $out/share/icons/hicolor/512x512/apps/${pname}.png + + substituteInPlace $out/share/applications/${pname}.desktop \ + --replace 'Icon=kontena-lens' 'Icon=${pname}' \ + --replace 'Exec=AppRun' 'Exec=${pname}' + ''; + + meta = with lib; { + description = "The Kubernetes IDE"; + homepage = "https://k8slens.dev/"; + license = licenses.mit; + maintainers = with maintainers; [ dbirks ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix new file mode 100644 index 000000000000..11b62f479c78 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix @@ -0,0 +1,26 @@ +{ lib, fetchFromGitHub, buildGoModule }: + +buildGoModule { + pname = "linkerd-unstable"; + version = "2020-05-01"; + + src = fetchFromGitHub { + owner = "linkerd"; + repo = "linkerd2"; + rev = "9e9f3bb1e2aeab8cf20f98f5cad159bbb6f24883"; + sha256 = "1pvj31wz1klwhcqga1m8kixdqsxwmppp9ix6r3wpp4dwfig45fm0"; + }; + + vendorSha256 = "0vls58ld50jca5yn73kvg3lx4z83cc7skky54a90pkbj737y58pz"; + + doCheck = false; + + subPackages = [ "cli/cmd" ]; + + meta = with lib; { + description = "A service mesh for Kubernetes and beyond"; + homepage = "https://linkerd.io/"; + license = licenses.asl20; + maintainers = with maintainers; [ Gonzih ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/luigi/default.nix b/nixpkgs/pkgs/applications/networking/cluster/luigi/default.nix new file mode 100644 index 000000000000..ef85494bd140 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/luigi/default.nix @@ -0,0 +1,31 @@ +{ lib, python3 }: + +python3.pkgs.buildPythonApplication rec { + pname = "luigi"; + version = "3.0.2"; + + src = python3.pkgs.fetchPypi { + inherit pname version; + sha256 = "b4b1ccf086586d041d7e91e68515d495c550f30e4d179d63863fea9ccdbb78eb"; + }; + + propagatedBuildInputs = with python3.pkgs; [ dateutil tornado python-daemon boto3 ]; + + # Requires tox, hadoop, and google cloud + doCheck = false; + + # This enables accessing modules stored in cwd + makeWrapperArgs = ["--prefix PYTHONPATH . :"]; + + meta = with lib; { + description = "Python package that helps you build complex pipelines of batch jobs"; + longDescription = '' + Luigi handles dependency resolution, workflow management, visualization, + handling failures, command line integration, and much more. + ''; + homepage = "https://github.com/spotify/luigi"; + changelog = "https://github.com/spotify/luigi/releases/tag/${version}"; + license = [ licenses.asl20 ]; + maintainers = [ maintainers.bhipple ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/minikube/default.nix b/nixpkgs/pkgs/applications/networking/cluster/minikube/default.nix new file mode 100644 index 000000000000..79cfebd2aff4 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/minikube/default.nix @@ -0,0 +1,55 @@ +{ lib, stdenv +, buildGoModule +, fetchFromGitHub +, go-bindata +, installShellFiles +, pkg-config +, which +, libvirt +, vmnet +}: + +buildGoModule rec { + pname = "minikube"; + version = "1.18.1"; + + vendorSha256 = "sha256-rw1tqz+Y5iSXWIxXV4433Hwgyfz8jYMzKWurCi2hmhM="; + + doCheck = false; + + src = fetchFromGitHub { + owner = "kubernetes"; + repo = "minikube"; + rev = "v${version}"; + sha256 = "sha256-8QI/Kn5LHSD3at7icmEDhjuYP811A4l+2KrRmKTwi8w="; + }; + + nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ]; + + buildInputs = if stdenv.isDarwin then [ vmnet ] else if stdenv.isLinux then [ libvirt ] else null; + + buildPhase = '' + make COMMIT=${src.rev} + ''; + + installPhase = '' + install out/minikube -Dt $out/bin + + export HOME=$PWD + export MINIKUBE_WANTUPDATENOTIFICATION=false + export MINIKUBE_WANTKUBECTLDOWNLOADMSG=false + + for shell in bash zsh fish; do + $out/bin/minikube completion $shell > minikube.$shell + installShellCompletion minikube.$shell + done + ''; + + meta = with lib; { + homepage = "https://minikube.sigs.k8s.io"; + description = "A tool that makes it easy to run Kubernetes locally"; + license = licenses.asl20; + maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang Chili-Man ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/minishift/default.nix b/nixpkgs/pkgs/applications/networking/cluster/minishift/default.nix new file mode 100644 index 000000000000..5b3b17b3df20 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/minishift/default.nix @@ -0,0 +1,67 @@ +{ lib, buildGoPackage, fetchFromGitHub, go-bindata, pkg-config, makeWrapper +, glib, gtk3, libappindicator-gtk3, gpgme, openshift, ostree, libselinux, btrfs-progs +, lvm2, docker-machine-kvm +}: + +let + version = "1.34.3"; + + # Update these on version bumps according to Makefile + centOsIsoVersion = "v1.17.0"; + openshiftVersion = "v3.11.0"; + +in buildGoPackage rec { + pname = "minishift"; + inherit version; + + src = fetchFromGitHub { + owner = "minishift"; + repo = "minishift"; + rev = "v${version}"; + sha256 = "0yhln3kyc0098hbnjyxhbd915g6j7s692c0z8yrhh9gdpc5cr2aa"; + }; + + nativeBuildInputs = [ pkg-config go-bindata makeWrapper ]; + buildInputs = [ glib gtk3 libappindicator-gtk3 gpgme ostree libselinux btrfs-progs lvm2 ]; + + goPackagePath = "github.com/minishift/minishift"; + subPackages = [ "cmd/minishift" ]; + + postPatch = '' + # minishift downloads openshift if not found therefore set the cache to /nix/store/... + substituteInPlace pkg/minishift/cache/oc_caching.go \ + --replace 'filepath.Join(oc.MinishiftCacheDir, OC_CACHE_DIR, oc.OpenShiftVersion, runtime.GOOS)' '"${openshift}/bin"' \ + --replace '"runtime"' "" + ''; + + buildFlagsArray = '' + -ldflags= + -X ${goPackagePath}/pkg/version.minishiftVersion=${version} + -X ${goPackagePath}/pkg/version.centOsIsoVersion=${centOsIsoVersion} + -X ${goPackagePath}/pkg/version.openshiftVersion=${openshiftVersion} + ''; + + preBuild = '' + (cd go/src/github.com/minishift/minishift + mkdir -p out/bindata + go-bindata -prefix addons -o out/bindata/addon_assets.go -pkg bindata addons/...) + ''; + + postInstall = '' + wrapProgram "$out/bin/minishift" \ + --prefix PATH ':' '${lib.makeBinPath [ docker-machine-kvm openshift ]}' + ''; + + meta = with lib; { + description = "Run OpenShift locally"; + longDescription = '' + Minishift is a tool that helps you run OpenShift locally by running + a single-node OpenShift cluster inside a VM. You can try out OpenShift + or develop with it, day-to-day, on your local host. + ''; + homepage = "https://github.com/minishift/minishift"; + maintainers = with maintainers; [ fpletz vdemeester ]; + platforms = platforms.linux; + license = licenses.asl20; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix new file mode 100644 index 000000000000..ef025dfc6a7f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix @@ -0,0 +1,59 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, makeWrapper +, installShellFiles +, buildkit +, cni-plugins +, extraPackages ? [ ] +}: + +buildGoModule rec { + pname = "nerdctl"; + version = "0.7.3"; + + src = fetchFromGitHub { + owner = "containerd"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-4NIyit2HnDXWnHALGzz5KWxe4PU8CwMRwCoIlN/WX78="; + }; + + vendorSha256 = "sha256-qwUAC8LURsn6C3zKzcsuFsOTurjPV9V8Z/1Y9G0eohk="; + + nativeBuildInputs = [ makeWrapper installShellFiles ]; + + preBuild = let t = "github.com/containerd/nerdctl/pkg/version"; in + '' + buildFlagsArray+=("-ldflags" "-s -w -X ${t}.Version=v${version} -X ${t}.Revision=<unknown>") + ''; + + # Many checks require a containerd socket and running nerdctl after it's built + doCheck = false; + + postInstall = '' + wrapProgram $out/bin/nerdctl \ + --prefix PATH : "${lib.makeBinPath ([ buildkit ] ++ extraPackages)}" \ + --prefix CNI_PATH : "${cni-plugins}/bin" + + installShellCompletion --cmd nerdctl \ + --bash <($out/bin/nerdctl completion bash) + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + $out/bin/nerdctl --help + $out/bin/nerdctl --version | grep "nerdctl version ${version}" + runHook postInstallCheck + ''; + + meta = with lib; { + homepage = "https://github.com/containerd/nerdctl/"; + changelog = "https://github.com/containerd/nerdctl/releases/tag/v${version}"; + description = "A Docker-compatible CLI for containerd"; + license = licenses.asl20; + maintainers = with maintainers; [ jk ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix b/nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix new file mode 100644 index 000000000000..6515885fd8e2 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix @@ -0,0 +1,64 @@ +{ pkgs +, poetry2nix +, lib +, overrides ? (self: super: {}) +}: + +let + + interpreter = ( + poetry2nix.mkPoetryPackages { + projectDir = ./.; + overrides = [ + poetry2nix.defaultPoetryOverrides + (import ./poetry-git-overlay.nix { inherit pkgs; }) + ( + self: super: { + + nixops = super.nixops.overridePythonAttrs ( + old: { + meta = old.meta // { + homepage = https://github.com/NixOS/nixops; + description = "NixOS cloud provisioning and deployment tool"; + maintainers = with lib.maintainers; [ adisbladis aminechikhaoui eelco rob domenkozar ]; + platforms = lib.platforms.unix; + license = lib.licenses.lgpl3; + }; + + } + ); + } + ) + + # User provided overrides + overrides + + # Make nixops pluginable + (self: super: { + nixops = super.__toPluginAble { + drv = super.nixops; + finalDrv = self.nixops; + + nativeBuildInputs = [ self.sphinx ]; + postInstall = '' + doc_cache=$(mktemp -d) + sphinx-build -b man -d $doc_cache doc/ $out/share/man/man1 + + html=$(mktemp -d) + sphinx-build -b html -d $doc_cache doc/ $out/share/nixops/doc + ''; + + }; + }) + + ]; + } + ).python; + +in interpreter.pkgs.nixops.withPlugins(ps: [ + ps.nixops-encrypted-links + ps.nixops-virtd + ps.nixops-aws + ps.nixops-gcp + ps.nixopsvbox +]) diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix b/nixpkgs/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix new file mode 100644 index 000000000000..365221dd3166 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix @@ -0,0 +1,74 @@ +{ pkgs }: +self: super: { + + nixops = super.nixops.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/NixOS/nixops.git"; + rev = "1ed5a091bc52de6c91319f446f833018a1cb326e"; + sha256 = "1fx17qv9cl7hz7322zh4xlg02xn7bwwjj82cdcvqpsjf83crz3xi"; + }; + } + ); + + nixops-aws = super.nixops-aws.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/NixOS/nixops-aws.git"; + rev = "dbbaa1b15b6cf7ca1ceeb0a6195f5ee27693c505"; + sha256 = "13gw3h7g19a0s7dpayjfksrmw6g0364dcm5z2d6mlyzdkfgak4jn"; + }; + } + ); + + nixops-encrypted-links = super.nixops-encrypted-links.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/nix-community/nixops-encrypted-links.git"; + rev = "0bb9aa50a7294ee9dca10a18ff7d9024234913e1"; + sha256 = "00wj03wcry83acwljq5v80dyrqaxpqb4j3jsdkfy3d7n5g4aq19l"; + }; + } + ); + + nixops-gcp = super.nixops-gcp.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/nix-community/nixops-gce.git"; + rev = "23596af53eabc4e3bcf72beaaed82b2c8d40e419"; + sha256 = "10gfdhf4b3ldrpns8z66mqxwfcbgf9ccz8fx0rcp7gsgsffb0i3c"; + }; + } + ); + + nixops-virtd = super.nixops-virtd.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/nix-community/nixops-libvirtd.git"; + rev = "af6cf5b2ced57b7b6d36b5df7dd27a14e0a5cfb6"; + sha256 = "1j75yg8a44dlbig38mf7n7p71mdzff6ii1z1pdp32i4ivk3l0hy6"; + }; + } + ); + + nixopsvbox = super.nixopsvbox.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/nix-community/nixops-vbox.git"; + rev = "2729672865ebe2aa973c062a3fbddda8c1359da0"; + sha256 = "07bmrbg3g2prnba2kwg1rg6rvmnx1vzc538y2q3g04s958hala56"; + }; + } + ); + + nixos-modules-contrib = super.nixos-modules-contrib.overridePythonAttrs ( + _: { + src = pkgs.fetchgit { + url = "https://github.com/nix-community/nixos-modules-contrib.git"; + rev = "81a1c2ef424dcf596a97b2e46a58ca73a1dd1ff8"; + sha256 = "0f6ra5r8i1jz8ymw6l3j68b676a1lv0466lv0xa6mi80k6v9457x"; + }; + } + ); + +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/poetry.lock b/nixpkgs/pkgs/applications/networking/cluster/nixops/poetry.lock new file mode 100644 index 000000000000..1c6ed7459947 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/poetry.lock @@ -0,0 +1,841 @@ +[[package]] +name = "alabaster" +version = "0.7.12" +description = "A configurable sidebar-enabled Sphinx theme" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "apache-libcloud" +version = "3.3.1" +description = "A standard Python library that abstracts away differences among multiple cloud provider APIs. For more information and documentation, please see https://libcloud.apache.org" +category = "main" +optional = false +python-versions = ">=3.5.*, <4" + +[package.dependencies] +requests = ">=2.5.0" + +[[package]] +name = "babel" +version = "2.9.0" +description = "Internationalization utilities" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.dependencies] +pytz = ">=2015.7" + +[[package]] +name = "boto" +version = "2.49.0" +description = "Amazon Web Services Library" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "boto3" +version = "1.17.0" +description = "The AWS SDK for Python" +category = "main" +optional = false +python-versions = ">= 2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" + +[package.dependencies] +botocore = ">=1.20.0,<1.21.0" +jmespath = ">=0.7.1,<1.0.0" +s3transfer = ">=0.3.0,<0.4.0" + +[[package]] +name = "botocore" +version = "1.20.0" +description = "Low-level, data-driven core of boto 3." +category = "main" +optional = false +python-versions = ">= 2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" + +[package.dependencies] +jmespath = ">=0.7.1,<1.0.0" +python-dateutil = ">=2.1,<3.0.0" +urllib3 = ">=1.25.4,<1.27" + +[[package]] +name = "certifi" +version = "2020.12.5" +description = "Python package for providing Mozilla's CA Bundle." +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "cffi" +version = "1.14.4" +description = "Foreign Function Interface for Python calling C code." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +pycparser = "*" + +[[package]] +name = "chardet" +version = "4.0.0" +description = "Universal encoding detector for Python 2 and 3" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "colorama" +version = "0.4.4" +description = "Cross-platform colored terminal text." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "cryptography" +version = "3.3.1" +description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +category = "main" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" + +[package.dependencies] +cffi = ">=1.12" +six = ">=1.4.1" + +[package.extras] +docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"] +docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"] +pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"] +ssh = ["bcrypt (>=3.1.5)"] +test = ["pytest (>=3.6.0,!=3.9.0,!=3.9.1,!=3.9.2)", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"] + +[[package]] +name = "docutils" +version = "0.16" +description = "Docutils -- Python Documentation Utilities" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "idna" +version = "2.10" +description = "Internationalized Domain Names in Applications (IDNA)" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "imagesize" +version = "1.2.0" +description = "Getting image size from png/jpeg/jpeg2000/gif file" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "jinja2" +version = "2.11.3" +description = "A very fast and expressive template engine." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +MarkupSafe = ">=0.23" + +[package.extras] +i18n = ["Babel (>=0.8)"] + +[[package]] +name = "jmespath" +version = "0.10.0" +description = "JSON Matching Expressions" +category = "main" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "libvirt-python" +version = "6.10.0" +description = "The libvirt virtualization API python binding" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "markupsafe" +version = "1.1.1" +description = "Safely add untrusted strings to HTML/XML markup." +category = "dev" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*" + +[[package]] +name = "nixops" +version = "2.0.0" +description = "NixOS cloud provisioning and deployment tool" +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +pluggy = "^0.13.1" +PrettyTable = "^0.7.2" +typeguard = "^2.7.1" +typing-extensions = "^3.7.4" + +[package.source] +type = "git" +url = "https://github.com/NixOS/nixops.git" +reference = "master" +resolved_reference = "1ed5a091bc52de6c91319f446f833018a1cb326e" + +[[package]] +name = "nixops-aws" +version = "1.0" +description = "NixOps AWS plugin" +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +boto = "^2.49.0" +boto3 = "^1.13.7" +nixops = "rev master" +nixos-modules-contrib = "rev master" +typing-extensions = "^3.7.4" + +[package.source] +type = "git" +url = "https://github.com/NixOS/nixops-aws.git" +reference = "master" +resolved_reference = "dbbaa1b15b6cf7ca1ceeb0a6195f5ee27693c505" + +[[package]] +name = "nixops-encrypted-links" +version = "1.0" +description = "Encrypted links support for NixOps" +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +nixops = "branch master" + +[package.source] +type = "git" +url = "https://github.com/nix-community/nixops-encrypted-links.git" +reference = "master" +resolved_reference = "0bb9aa50a7294ee9dca10a18ff7d9024234913e1" + +[[package]] +name = "nixops-gcp" +version = "1.0" +description = "NixOps backend for Google Cloud Platform" +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +apache-libcloud = "^3.2.0" +cryptography = "^3.1.1" +nixops = "branch master" +nixos-modules-contrib = "branch master" + +[package.source] +type = "git" +url = "https://github.com/nix-community/nixops-gce.git" +reference = "master" +resolved_reference = "23596af53eabc4e3bcf72beaaed82b2c8d40e419" + +[[package]] +name = "nixops-virtd" +version = "1.0" +description = "NixOps plugin for virtd" +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +libvirt-python = "^6.1" +nixops = "branch master" + +[package.source] +type = "git" +url = "https://github.com/nix-community/nixops-libvirtd.git" +reference = "master" +resolved_reference = "af6cf5b2ced57b7b6d36b5df7dd27a14e0a5cfb6" + +[[package]] +name = "nixopsvbox" +version = "1.7" +description = "NixOps backend for VirtualBox" +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +nixops = "rev master" + +[package.source] +type = "git" +url = "https://github.com/nix-community/nixops-vbox.git" +reference = "master" +resolved_reference = "2729672865ebe2aa973c062a3fbddda8c1359da0" + +[[package]] +name = "nixos-modules-contrib" +version = "0.1.0" +description = "NixOS modules that don't quite belong in NixOS." +category = "main" +optional = false +python-versions = "^3.7" +develop = false + +[package.dependencies] +nixops = "rev master" + +[package.source] +type = "git" +url = "https://github.com/nix-community/nixos-modules-contrib.git" +reference = "master" +resolved_reference = "81a1c2ef424dcf596a97b2e46a58ca73a1dd1ff8" + +[[package]] +name = "packaging" +version = "20.9" +description = "Core utilities for Python packages" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.dependencies] +pyparsing = ">=2.0.2" + +[[package]] +name = "pluggy" +version = "0.13.1" +description = "plugin and hook calling mechanisms for python" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.extras] +dev = ["pre-commit", "tox"] + +[[package]] +name = "prettytable" +version = "0.7.2" +description = "A simple Python library for easily displaying tabular data in a visually appealing ASCII table format." +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "pycparser" +version = "2.20" +description = "C parser in Python" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pygments" +version = "2.7.4" +description = "Pygments is a syntax highlighting package written in Python." +category = "dev" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "pyparsing" +version = "2.4.7" +description = "Python parsing module" +category = "dev" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "python-dateutil" +version = "2.8.1" +description = "Extensions to the standard Python datetime module" +category = "main" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "pytz" +version = "2021.1" +description = "World timezone definitions, modern and historical" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "requests" +version = "2.25.1" +description = "Python HTTP for Humans." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +certifi = ">=2017.4.17" +chardet = ">=3.0.2,<5" +idna = ">=2.5,<3" +urllib3 = ">=1.21.1,<1.27" + +[package.extras] +security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"] +socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] + +[[package]] +name = "s3transfer" +version = "0.3.4" +description = "An Amazon S3 Transfer Manager" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +botocore = ">=1.12.36,<2.0a.0" + +[[package]] +name = "six" +version = "1.15.0" +description = "Python 2 and 3 compatibility utilities" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "snowballstemmer" +version = "2.1.0" +description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "sphinx" +version = "3.4.3" +description = "Python documentation generator" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +alabaster = ">=0.7,<0.8" +babel = ">=1.3" +colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} +docutils = ">=0.12" +imagesize = "*" +Jinja2 = ">=2.3" +packaging = "*" +Pygments = ">=2.0" +requests = ">=2.5.0" +snowballstemmer = ">=1.1" +sphinxcontrib-applehelp = "*" +sphinxcontrib-devhelp = "*" +sphinxcontrib-htmlhelp = "*" +sphinxcontrib-jsmath = "*" +sphinxcontrib-qthelp = "*" +sphinxcontrib-serializinghtml = "*" + +[package.extras] +docs = ["sphinxcontrib-websupport"] +lint = ["flake8 (>=3.5.0)", "isort", "mypy (>=0.790)", "docutils-stubs"] +test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"] + +[[package]] +name = "sphinxcontrib-applehelp" +version = "1.0.2" +description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.extras] +lint = ["flake8", "mypy", "docutils-stubs"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-devhelp" +version = "1.0.2" +description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.extras] +lint = ["flake8", "mypy", "docutils-stubs"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-htmlhelp" +version = "1.0.3" +description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.extras] +lint = ["flake8", "mypy", "docutils-stubs"] +test = ["pytest", "html5lib"] + +[[package]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" +description = "A sphinx extension which renders display math in HTML via JavaScript" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.extras] +test = ["pytest", "flake8", "mypy"] + +[[package]] +name = "sphinxcontrib-qthelp" +version = "1.0.3" +description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.extras] +lint = ["flake8", "mypy", "docutils-stubs"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-serializinghtml" +version = "1.1.4" +description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.extras] +lint = ["flake8", "mypy", "docutils-stubs"] +test = ["pytest"] + +[[package]] +name = "typeguard" +version = "2.10.0" +description = "Run-time type checker for Python" +category = "main" +optional = false +python-versions = ">=3.5.3" + +[package.extras] +doc = ["sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"] +test = ["pytest", "typing-extensions"] + +[[package]] +name = "typing-extensions" +version = "3.7.4.3" +description = "Backported and Experimental Type Hints for Python 3.5+" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "urllib3" +version = "1.26.3" +description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" + +[package.extras] +brotli = ["brotlipy (>=0.6.0)"] +secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] +socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] + +[metadata] +lock-version = "1.1" +python-versions = "^3.8" +content-hash = "bd064837654a0d4a4691b3df01338b92c95a449ff400a9cd49fee843ab13ee92" + +[metadata.files] +alabaster = [ + {file = "alabaster-0.7.12-py2.py3-none-any.whl", hash = "sha256:446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359"}, + {file = "alabaster-0.7.12.tar.gz", hash = "sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02"}, +] +apache-libcloud = [ + {file = "apache-libcloud-3.3.1.tar.gz", hash = "sha256:d7450453eaf5904eb4fb4f74cf9f37dc83721a719bce34f5abb336b1a1ab974d"}, + {file = "apache_libcloud-3.3.1-py2.py3-none-any.whl", hash = "sha256:c3722c4dd58b0ee4beaf4e615e0ba82505d9a915e55319dc84383687166a3eed"}, +] +babel = [ + {file = "Babel-2.9.0-py2.py3-none-any.whl", hash = "sha256:9d35c22fcc79893c3ecc85ac4a56cde1ecf3f19c540bba0922308a6c06ca6fa5"}, + {file = "Babel-2.9.0.tar.gz", hash = "sha256:da031ab54472314f210b0adcff1588ee5d1d1d0ba4dbd07b94dba82bde791e05"}, +] +boto = [ + {file = "boto-2.49.0-py2.py3-none-any.whl", hash = "sha256:147758d41ae7240dc989f0039f27da8ca0d53734be0eb869ef16e3adcfa462e8"}, + {file = "boto-2.49.0.tar.gz", hash = "sha256:ea0d3b40a2d852767be77ca343b58a9e3a4b00d9db440efb8da74b4e58025e5a"}, +] +boto3 = [ + {file = "boto3-1.17.0-py2.py3-none-any.whl", hash = "sha256:b4860f56bc585d3d1fde90d288da5eb4d1198401d72201dc3e25de8887b080e2"}, + {file = "boto3-1.17.0.tar.gz", hash = "sha256:2a39bd5e5f2d50ce9267d682cc92750f8771399665021f47e80f9c8d2fb812a6"}, +] +botocore = [ + {file = "botocore-1.20.0-py2.py3-none-any.whl", hash = "sha256:634b39ab0d55477cfbffb0e5dff31b7ab4bb171b04a0c69f8bcf65135f26ba94"}, + {file = "botocore-1.20.0.tar.gz", hash = "sha256:a608d6d644b852f3c154fc433eaae52febbebc7c474fa8f4d666797d0931770a"}, +] +certifi = [ + {file = "certifi-2020.12.5-py2.py3-none-any.whl", hash = "sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830"}, + {file = "certifi-2020.12.5.tar.gz", hash = "sha256:1a4995114262bffbc2413b159f2a1a480c969de6e6eb13ee966d470af86af59c"}, +] +cffi = [ + {file = "cffi-1.14.4-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:ebb253464a5d0482b191274f1c8bf00e33f7e0b9c66405fbffc61ed2c839c775"}, + {file = "cffi-1.14.4-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:2c24d61263f511551f740d1a065eb0212db1dbbbbd241db758f5244281590c06"}, + {file = "cffi-1.14.4-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9f7a31251289b2ab6d4012f6e83e58bc3b96bd151f5b5262467f4bb6b34a7c26"}, + {file = "cffi-1.14.4-cp27-cp27m-win32.whl", hash = "sha256:5cf4be6c304ad0b6602f5c4e90e2f59b47653ac1ed9c662ed379fe48a8f26b0c"}, + {file = "cffi-1.14.4-cp27-cp27m-win_amd64.whl", hash = "sha256:f60567825f791c6f8a592f3c6e3bd93dd2934e3f9dac189308426bd76b00ef3b"}, + {file = "cffi-1.14.4-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:c6332685306b6417a91b1ff9fae889b3ba65c2292d64bd9245c093b1b284809d"}, + {file = "cffi-1.14.4-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d9efd8b7a3ef378dd61a1e77367f1924375befc2eba06168b6ebfa903a5e59ca"}, + {file = "cffi-1.14.4-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:51a8b381b16ddd370178a65360ebe15fbc1c71cf6f584613a7ea08bfad946698"}, + {file = "cffi-1.14.4-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:1d2c4994f515e5b485fd6d3a73d05526aa0fcf248eb135996b088d25dfa1865b"}, + {file = "cffi-1.14.4-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:af5c59122a011049aad5dd87424b8e65a80e4a6477419c0c1015f73fb5ea0293"}, + {file = "cffi-1.14.4-cp35-cp35m-win32.whl", hash = "sha256:594234691ac0e9b770aee9fcdb8fa02c22e43e5c619456efd0d6c2bf276f3eb2"}, + {file = "cffi-1.14.4-cp35-cp35m-win_amd64.whl", hash = "sha256:64081b3f8f6f3c3de6191ec89d7dc6c86a8a43911f7ecb422c60e90c70be41c7"}, + {file = "cffi-1.14.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f803eaa94c2fcda012c047e62bc7a51b0bdabda1cad7a92a522694ea2d76e49f"}, + {file = "cffi-1.14.4-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:105abaf8a6075dc96c1fe5ae7aae073f4696f2905fde6aeada4c9d2926752362"}, + {file = "cffi-1.14.4-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0638c3ae1a0edfb77c6765d487fee624d2b1ee1bdfeffc1f0b58c64d149e7eec"}, + {file = "cffi-1.14.4-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:7c6b1dece89874d9541fc974917b631406233ea0440d0bdfbb8e03bf39a49b3b"}, + {file = "cffi-1.14.4-cp36-cp36m-win32.whl", hash = "sha256:155136b51fd733fa94e1c2ea5211dcd4c8879869008fc811648f16541bf99668"}, + {file = "cffi-1.14.4-cp36-cp36m-win_amd64.whl", hash = "sha256:6bc25fc545a6b3d57b5f8618e59fc13d3a3a68431e8ca5fd4c13241cd70d0009"}, + {file = "cffi-1.14.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a7711edca4dcef1a75257b50a2fbfe92a65187c47dab5a0f1b9b332c5919a3fb"}, + {file = "cffi-1.14.4-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:00e28066507bfc3fe865a31f325c8391a1ac2916219340f87dfad602c3e48e5d"}, + {file = "cffi-1.14.4-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:798caa2a2384b1cbe8a2a139d80734c9db54f9cc155c99d7cc92441a23871c03"}, + {file = "cffi-1.14.4-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:a5ed8c05548b54b998b9498753fb9cadbfd92ee88e884641377d8a8b291bcc01"}, + {file = "cffi-1.14.4-cp37-cp37m-win32.whl", hash = "sha256:00a1ba5e2e95684448de9b89888ccd02c98d512064b4cb987d48f4b40aa0421e"}, + {file = "cffi-1.14.4-cp37-cp37m-win_amd64.whl", hash = "sha256:9cc46bc107224ff5b6d04369e7c595acb700c3613ad7bcf2e2012f62ece80c35"}, + {file = "cffi-1.14.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:df5169c4396adc04f9b0a05f13c074df878b6052430e03f50e68adf3a57aa28d"}, + {file = "cffi-1.14.4-cp38-cp38-manylinux1_i686.whl", hash = "sha256:9ffb888f19d54a4d4dfd4b3f29bc2c16aa4972f1c2ab9c4ab09b8ab8685b9c2b"}, + {file = "cffi-1.14.4-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8d6603078baf4e11edc4168a514c5ce5b3ba6e3e9c374298cb88437957960a53"}, + {file = "cffi-1.14.4-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:d5ff0621c88ce83a28a10d2ce719b2ee85635e85c515f12bac99a95306da4b2e"}, + {file = "cffi-1.14.4-cp38-cp38-win32.whl", hash = "sha256:b4e248d1087abf9f4c10f3c398896c87ce82a9856494a7155823eb45a892395d"}, + {file = "cffi-1.14.4-cp38-cp38-win_amd64.whl", hash = "sha256:ec80dc47f54e6e9a78181ce05feb71a0353854cc26999db963695f950b5fb375"}, + {file = "cffi-1.14.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:840793c68105fe031f34d6a086eaea153a0cd5c491cde82a74b420edd0a2b909"}, + {file = "cffi-1.14.4-cp39-cp39-manylinux1_i686.whl", hash = "sha256:b18e0a9ef57d2b41f5c68beefa32317d286c3d6ac0484efd10d6e07491bb95dd"}, + {file = "cffi-1.14.4-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:045d792900a75e8b1e1b0ab6787dd733a8190ffcf80e8c8ceb2fb10a29ff238a"}, + {file = "cffi-1.14.4-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:7ef7d4ced6b325e92eb4d3502946c78c5367bc416398d387b39591532536734e"}, + {file = "cffi-1.14.4-cp39-cp39-win32.whl", hash = "sha256:ba4e9e0ae13fc41c6b23299545e5ef73055213e466bd107953e4a013a5ddd7e3"}, + {file = "cffi-1.14.4-cp39-cp39-win_amd64.whl", hash = "sha256:f032b34669220030f905152045dfa27741ce1a6db3324a5bc0b96b6c7420c87b"}, + {file = "cffi-1.14.4.tar.gz", hash = "sha256:1a465cbe98a7fd391d47dce4b8f7e5b921e6cd805ef421d04f5f66ba8f06086c"}, +] +chardet = [ + {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"}, + {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"}, +] +colorama = [ + {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, + {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, +] +cryptography = [ + {file = "cryptography-3.3.1-cp27-cp27m-macosx_10_10_x86_64.whl", hash = "sha256:c366df0401d1ec4e548bebe8f91d55ebcc0ec3137900d214dd7aac8427ef3030"}, + {file = "cryptography-3.3.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9f6b0492d111b43de5f70052e24c1f0951cb9e6022188ebcb1cc3a3d301469b0"}, + {file = "cryptography-3.3.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:a69bd3c68b98298f490e84519b954335154917eaab52cf582fa2c5c7efc6e812"}, + {file = "cryptography-3.3.1-cp27-cp27m-win32.whl", hash = "sha256:84ef7a0c10c24a7773163f917f1cb6b4444597efd505a8aed0a22e8c4780f27e"}, + {file = "cryptography-3.3.1-cp27-cp27m-win_amd64.whl", hash = "sha256:594a1db4511bc4d960571536abe21b4e5c3003e8750ab8365fafce71c5d86901"}, + {file = "cryptography-3.3.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:0003a52a123602e1acee177dc90dd201f9bb1e73f24a070db7d36c588e8f5c7d"}, + {file = "cryptography-3.3.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:83d9d2dfec70364a74f4e7c70ad04d3ca2e6a08b703606993407bf46b97868c5"}, + {file = "cryptography-3.3.1-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:dc42f645f8f3a489c3dd416730a514e7a91a59510ddaadc09d04224c098d3302"}, + {file = "cryptography-3.3.1-cp36-abi3-manylinux1_x86_64.whl", hash = "sha256:788a3c9942df5e4371c199d10383f44a105d67d401fb4304178020142f020244"}, + {file = "cryptography-3.3.1-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:69e836c9e5ff4373ce6d3ab311c1a2eed274793083858d3cd4c7d12ce20d5f9c"}, + {file = "cryptography-3.3.1-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:9e21301f7a1e7c03dbea73e8602905a4ebba641547a462b26dd03451e5769e7c"}, + {file = "cryptography-3.3.1-cp36-abi3-win32.whl", hash = "sha256:b4890d5fb9b7a23e3bf8abf5a8a7da8e228f1e97dc96b30b95685df840b6914a"}, + {file = "cryptography-3.3.1-cp36-abi3-win_amd64.whl", hash = "sha256:0e85aaae861d0485eb5a79d33226dd6248d2a9f133b81532c8f5aae37de10ff7"}, + {file = "cryptography-3.3.1.tar.gz", hash = "sha256:7e177e4bea2de937a584b13645cab32f25e3d96fc0bc4a4cf99c27dc77682be6"}, +] +docutils = [ + {file = "docutils-0.16-py2.py3-none-any.whl", hash = "sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af"}, + {file = "docutils-0.16.tar.gz", hash = "sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc"}, +] +idna = [ + {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"}, + {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"}, +] +imagesize = [ + {file = "imagesize-1.2.0-py2.py3-none-any.whl", hash = "sha256:6965f19a6a2039c7d48bca7dba2473069ff854c36ae6f19d2cde309d998228a1"}, + {file = "imagesize-1.2.0.tar.gz", hash = "sha256:b1f6b5a4eab1f73479a50fb79fcf729514a900c341d8503d62a62dbc4127a2b1"}, +] +jinja2 = [ + {file = "Jinja2-2.11.3-py2.py3-none-any.whl", hash = "sha256:03e47ad063331dd6a3f04a43eddca8a966a26ba0c5b7207a9a9e4e08f1b29419"}, + {file = "Jinja2-2.11.3.tar.gz", hash = "sha256:a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6"}, +] +jmespath = [ + {file = "jmespath-0.10.0-py2.py3-none-any.whl", hash = "sha256:cdf6525904cc597730141d61b36f2e4b8ecc257c420fa2f4549bac2c2d0cb72f"}, + {file = "jmespath-0.10.0.tar.gz", hash = "sha256:b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9"}, +] +libvirt-python = [ + {file = "libvirt-python-6.10.0.tar.gz", hash = "sha256:47a8e90d9f49bc0296d2817f6009e18dbb69844ce10b81c2a2672bccd6f49fd5"}, +] +markupsafe = [ + {file = "MarkupSafe-1.1.1-cp27-cp27m-macosx_10_6_intel.whl", hash = "sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161"}, + {file = "MarkupSafe-1.1.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7"}, + {file = "MarkupSafe-1.1.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:500d4957e52ddc3351cabf489e79c91c17f6e0899158447047588650b5e69183"}, + {file = "MarkupSafe-1.1.1-cp27-cp27m-win32.whl", hash = "sha256:b2051432115498d3562c084a49bba65d97cf251f5a331c64a12ee7e04dacc51b"}, + {file = "MarkupSafe-1.1.1-cp27-cp27m-win_amd64.whl", hash = "sha256:98c7086708b163d425c67c7a91bad6e466bb99d797aa64f965e9d25c12111a5e"}, + {file = "MarkupSafe-1.1.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:cd5df75523866410809ca100dc9681e301e3c27567cf498077e8551b6d20e42f"}, + {file = "MarkupSafe-1.1.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:43a55c2930bbc139570ac2452adf3d70cdbb3cfe5912c71cdce1c2c6bbd9c5d1"}, + {file = "MarkupSafe-1.1.1-cp34-cp34m-macosx_10_6_intel.whl", hash = "sha256:1027c282dad077d0bae18be6794e6b6b8c91d58ed8a8d89a89d59693b9131db5"}, + {file = "MarkupSafe-1.1.1-cp34-cp34m-manylinux1_i686.whl", hash = "sha256:62fe6c95e3ec8a7fad637b7f3d372c15ec1caa01ab47926cfdf7a75b40e0eac1"}, + {file = "MarkupSafe-1.1.1-cp34-cp34m-manylinux1_x86_64.whl", hash = "sha256:88e5fcfb52ee7b911e8bb6d6aa2fd21fbecc674eadd44118a9cc3863f938e735"}, + {file = "MarkupSafe-1.1.1-cp34-cp34m-win32.whl", hash = "sha256:ade5e387d2ad0d7ebf59146cc00c8044acbd863725f887353a10df825fc8ae21"}, + {file = "MarkupSafe-1.1.1-cp34-cp34m-win_amd64.whl", hash = "sha256:09c4b7f37d6c648cb13f9230d847adf22f8171b1ccc4d5682398e77f40309235"}, + {file = "MarkupSafe-1.1.1-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:79855e1c5b8da654cf486b830bd42c06e8780cea587384cf6545b7d9ac013a0b"}, + {file = "MarkupSafe-1.1.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:c8716a48d94b06bb3b2524c2b77e055fb313aeb4ea620c8dd03a105574ba704f"}, + {file = "MarkupSafe-1.1.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:7c1699dfe0cf8ff607dbdcc1e9b9af1755371f92a68f706051cc8c37d447c905"}, + {file = "MarkupSafe-1.1.1-cp35-cp35m-win32.whl", hash = "sha256:6dd73240d2af64df90aa7c4e7481e23825ea70af4b4922f8ede5b9e35f78a3b1"}, + {file = "MarkupSafe-1.1.1-cp35-cp35m-win_amd64.whl", hash = "sha256:9add70b36c5666a2ed02b43b335fe19002ee5235efd4b8a89bfcf9005bebac0d"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-macosx_10_6_intel.whl", hash = "sha256:24982cc2533820871eba85ba648cd53d8623687ff11cbb805be4ff7b4c971aff"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d53bc011414228441014aa71dbec320c66468c1030aae3a6e29778a3382d96e5"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:00bc623926325b26bb9605ae9eae8a215691f33cae5df11ca5424f06f2d1f473"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:717ba8fe3ae9cc0006d7c451f0bb265ee07739daf76355d06366154ee68d221e"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:3b8a6499709d29c2e2399569d96719a1b21dcd94410a586a18526b143ec8470f"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:84dee80c15f1b560d55bcfe6d47b27d070b4681c699c572af2e3c7cc90a3b8e0"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:b1dba4527182c95a0db8b6060cc98ac49b9e2f5e64320e2b56e47cb2831978c7"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-win32.whl", hash = "sha256:535f6fc4d397c1563d08b88e485c3496cf5784e927af890fb3c3aac7f933ec66"}, + {file = "MarkupSafe-1.1.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b1282f8c00509d99fef04d8ba936b156d419be841854fe901d8ae224c59f0be5"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-macosx_10_6_intel.whl", hash = "sha256:8defac2f2ccd6805ebf65f5eeb132adcf2ab57aa11fdf4c0dd5169a004710e7d"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:bf5aa3cbcfdf57fa2ee9cd1822c862ef23037f5c832ad09cfea57fa846dec193"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:46c99d2de99945ec5cb54f23c8cd5689f6d7177305ebff350a58ce5f8de1669e"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:ba59edeaa2fc6114428f1637ffff42da1e311e29382d81b339c1817d37ec93c6"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:6fffc775d90dcc9aed1b89219549b329a9250d918fd0b8fa8d93d154918422e1"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:a6a744282b7718a2a62d2ed9d993cad6f5f585605ad352c11de459f4108df0a1"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:195d7d2c4fbb0ee8139a6cf67194f3973a6b3042d742ebe0a9ed36d8b6f0c07f"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-win32.whl", hash = "sha256:b00c1de48212e4cc9603895652c5c410df699856a2853135b3967591e4beebc2"}, + {file = "MarkupSafe-1.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:9bf40443012702a1d2070043cb6291650a0841ece432556f784f004937f0f32c"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6788b695d50a51edb699cb55e35487e430fa21f1ed838122d722e0ff0ac5ba15"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:cdb132fc825c38e1aeec2c8aa9338310d29d337bebbd7baa06889d09a60a1fa2"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:13d3144e1e340870b25e7b10b98d779608c02016d5184cfb9927a9f10c689f42"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:acf08ac40292838b3cbbb06cfe9b2cb9ec78fce8baca31ddb87aaac2e2dc3bc2"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:d9be0ba6c527163cbed5e0857c451fcd092ce83947944d6c14bc95441203f032"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:caabedc8323f1e93231b52fc32bdcde6db817623d33e100708d9a68e1f53b26b"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-win32.whl", hash = "sha256:596510de112c685489095da617b5bcbbac7dd6384aeebeda4df6025d0256a81b"}, + {file = "MarkupSafe-1.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:e8313f01ba26fbbe36c7be1966a7b7424942f670f38e666995b88d012765b9be"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d73a845f227b0bfe8a7455ee623525ee656a9e2e749e4742706d80a6065d5e2c"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:98bae9582248d6cf62321dcb52aaf5d9adf0bad3b40582925ef7c7f0ed85fceb"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:2beec1e0de6924ea551859edb9e7679da6e4870d32cb766240ce17e0a0ba2014"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:7fed13866cf14bba33e7176717346713881f56d9d2bcebab207f7a036f41b850"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:6f1e273a344928347c1290119b493a1f0303c52f5a5eae5f16d74f48c15d4a85"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:feb7b34d6325451ef96bc0e36e1a6c0c1c64bc1fbec4b854f4529e51887b1621"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-win32.whl", hash = "sha256:22c178a091fc6630d0d045bdb5992d2dfe14e3259760e713c490da5323866c39"}, + {file = "MarkupSafe-1.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:b7d644ddb4dbd407d31ffb699f1d140bc35478da613b441c582aeb7c43838dd8"}, + {file = "MarkupSafe-1.1.1.tar.gz", hash = "sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b"}, +] +nixops = [] +nixops-aws = [] +nixops-encrypted-links = [] +nixops-gcp = [] +nixops-virtd = [] +nixopsvbox = [] +nixos-modules-contrib = [] +packaging = [ + {file = "packaging-20.9-py2.py3-none-any.whl", hash = "sha256:67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a"}, + {file = "packaging-20.9.tar.gz", hash = "sha256:5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5"}, +] +pluggy = [ + {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"}, + {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"}, +] +prettytable = [ + {file = "prettytable-0.7.2.tar.bz2", hash = "sha256:853c116513625c738dc3ce1aee148b5b5757a86727e67eff6502c7ca59d43c36"}, + {file = "prettytable-0.7.2.tar.gz", hash = "sha256:2d5460dc9db74a32bcc8f9f67de68b2c4f4d2f01fa3bd518764c69156d9cacd9"}, + {file = "prettytable-0.7.2.zip", hash = "sha256:a53da3b43d7a5c229b5e3ca2892ef982c46b7923b51e98f0db49956531211c4f"}, +] +pycparser = [ + {file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"}, + {file = "pycparser-2.20.tar.gz", hash = "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"}, +] +pygments = [ + {file = "Pygments-2.7.4-py3-none-any.whl", hash = "sha256:bc9591213a8f0e0ca1a5e68a479b4887fdc3e75d0774e5c71c31920c427de435"}, + {file = "Pygments-2.7.4.tar.gz", hash = "sha256:df49d09b498e83c1a73128295860250b0b7edd4c723a32e9bc0d295c7c2ec337"}, +] +pyparsing = [ + {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, + {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, +] +python-dateutil = [ + {file = "python-dateutil-2.8.1.tar.gz", hash = "sha256:73ebfe9dbf22e832286dafa60473e4cd239f8592f699aa5adaf10050e6e1823c"}, + {file = "python_dateutil-2.8.1-py2.py3-none-any.whl", hash = "sha256:75bb3f31ea686f1197762692a9ee6a7550b59fc6ca3a1f4b5d7e32fb98e2da2a"}, +] +pytz = [ + {file = "pytz-2021.1-py2.py3-none-any.whl", hash = "sha256:eb10ce3e7736052ed3623d49975ce333bcd712c7bb19a58b9e2089d4057d0798"}, + {file = "pytz-2021.1.tar.gz", hash = "sha256:83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da"}, +] +requests = [ + {file = "requests-2.25.1-py2.py3-none-any.whl", hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"}, + {file = "requests-2.25.1.tar.gz", hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"}, +] +s3transfer = [ + {file = "s3transfer-0.3.4-py2.py3-none-any.whl", hash = "sha256:1e28620e5b444652ed752cf87c7e0cb15b0e578972568c6609f0f18212f259ed"}, + {file = "s3transfer-0.3.4.tar.gz", hash = "sha256:7fdddb4f22275cf1d32129e21f056337fd2a80b6ccef1664528145b72c49e6d2"}, +] +six = [ + {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"}, + {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"}, +] +snowballstemmer = [ + {file = "snowballstemmer-2.1.0-py2.py3-none-any.whl", hash = "sha256:b51b447bea85f9968c13b650126a888aabd4cb4463fca868ec596826325dedc2"}, + {file = "snowballstemmer-2.1.0.tar.gz", hash = "sha256:e997baa4f2e9139951b6f4c631bad912dfd3c792467e2f03d7239464af90e914"}, +] +sphinx = [ + {file = "Sphinx-3.4.3-py3-none-any.whl", hash = "sha256:c314c857e7cd47c856d2c5adff514ac2e6495f8b8e0f886a8a37e9305dfea0d8"}, + {file = "Sphinx-3.4.3.tar.gz", hash = "sha256:41cad293f954f7d37f803d97eb184158cfd90f51195131e94875bc07cd08b93c"}, +] +sphinxcontrib-applehelp = [ + {file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"}, + {file = "sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:806111e5e962be97c29ec4c1e7fe277bfd19e9652fb1a4392105b43e01af885a"}, +] +sphinxcontrib-devhelp = [ + {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, + {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, +] +sphinxcontrib-htmlhelp = [ + {file = "sphinxcontrib-htmlhelp-1.0.3.tar.gz", hash = "sha256:e8f5bb7e31b2dbb25b9cc435c8ab7a79787ebf7f906155729338f3156d93659b"}, + {file = "sphinxcontrib_htmlhelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:3c0bc24a2c41e340ac37c85ced6dafc879ab485c095b1d65d2461ac2f7cca86f"}, +] +sphinxcontrib-jsmath = [ + {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, + {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, +] +sphinxcontrib-qthelp = [ + {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, + {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, +] +sphinxcontrib-serializinghtml = [ + {file = "sphinxcontrib-serializinghtml-1.1.4.tar.gz", hash = "sha256:eaa0eccc86e982a9b939b2b82d12cc5d013385ba5eadcc7e4fed23f4405f77bc"}, + {file = "sphinxcontrib_serializinghtml-1.1.4-py2.py3-none-any.whl", hash = "sha256:f242a81d423f59617a8e5cf16f5d4d74e28ee9a66f9e5b637a18082991db5a9a"}, +] +typeguard = [ + {file = "typeguard-2.10.0-py3-none-any.whl", hash = "sha256:a75c6d86ac9d1faf85c5ae952de473e5d26824dda6d4394ff6bc676849cfb939"}, + {file = "typeguard-2.10.0.tar.gz", hash = "sha256:d830132dcd544d3f8a2a842ea739eaa0d7c099fcebb9dcdf3802f4c9929d8191"}, +] +typing-extensions = [ + {file = "typing_extensions-3.7.4.3-py2-none-any.whl", hash = "sha256:dafc7639cde7f1b6e1acc0f457842a83e722ccca8eef5270af2d74792619a89f"}, + {file = "typing_extensions-3.7.4.3-py3-none-any.whl", hash = "sha256:7cb407020f00f7bfc3cb3e7881628838e69d8f3fcab2f64742a5e76b2f841918"}, + {file = "typing_extensions-3.7.4.3.tar.gz", hash = "sha256:99d4073b617d30288f569d3f13d2bd7548c3a7e4c8de87db09a9d29bb3a4a60c"}, +] +urllib3 = [ + {file = "urllib3-1.26.3-py2.py3-none-any.whl", hash = "sha256:1b465e494e3e0d8939b50680403e3aedaa2bc434b7d5af64dfd3c958d7f5ae80"}, + {file = "urllib3-1.26.3.tar.gz", hash = "sha256:de3eedaad74a2683334e282005cd8d7f22f4d55fa690a2a1020a416cb0a47e73"}, +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/pyproject.toml b/nixpkgs/pkgs/applications/networking/cluster/nixops/pyproject.toml new file mode 100644 index 000000000000..09ffb54fa2bb --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/pyproject.toml @@ -0,0 +1,21 @@ +[tool.poetry] +name = "nixopsenv" +version = "2.0.0" +description = "NixOps 2.0" +authors = ["Adam Hoese <adam.hose@tweag.io>"] + +[tool.poetry.dependencies] +python = "^3.8" +nixops = {git = "https://github.com/NixOS/nixops.git"} +nixops-aws = {git = "https://github.com/NixOS/nixops-aws.git"} +nixops-gcp = {git = "https://github.com/nix-community/nixops-gce.git"} +nixopsvbox = {git = "https://github.com/nix-community/nixops-vbox.git"} +nixops-encrypted-links = {git = "https://github.com/nix-community/nixops-encrypted-links.git"} +nixops-virtd = {git = "https://github.com/nix-community/nixops-libvirtd.git"} + +[tool.poetry.dev-dependencies] +sphinx = "^3.1.2" + +[build-system] +requires = ["poetry>=0.12"] +build-backend = "poetry.masonry.api" diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/shell.nix b/nixpkgs/pkgs/applications/networking/cluster/nixops/shell.nix new file mode 100644 index 000000000000..3fc06b0bc73a --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/shell.nix @@ -0,0 +1,10 @@ +{ pkgs ? import <nixpkgs> {} }: + +pkgs.mkShell { + buildInputs = [ + pkgs.poetry2nix.cli + pkgs.pkg-config + pkgs.libvirt + pkgs.poetry + ]; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/update b/nixpkgs/pkgs/applications/networking/cluster/nixops/update new file mode 100755 index 000000000000..1d1fd93fdbea --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/update @@ -0,0 +1,11 @@ +#!/usr/bin/env nix-shell +#! nix-shell -I nixpkgs=../../../../../. -i bash +set -eux + +rm -f ./poetry.lock ./poetry-git-overlay.nix + +poetry lock + +# builtins.fetchGit is disabled in restricted eval +# Pin fixed-output derivations from lock file +poetry2nix lock diff --git a/nixpkgs/pkgs/applications/networking/cluster/node-problem-detector/default.nix b/nixpkgs/pkgs/applications/networking/cluster/node-problem-detector/default.nix new file mode 100644 index 000000000000..e53a9c39ea7e --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/node-problem-detector/default.nix @@ -0,0 +1,46 @@ +{ lib, stdenv, buildGoModule, fetchFromGitHub, systemd }: + +buildGoModule rec { + pname = "node-problem-detector"; + version = "0.8.7"; + + src = fetchFromGitHub { + owner = "kubernetes"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-GyWvwgLtE8N+HLmGKUOjv5HXl2sdnecjh5y6VCOs+/0="; + }; + + vendorSha256 = null; + + doCheck = false; + + # Optionally, a log counter binary can be created to parse journald logs. + # The binary is dynamically linked against systemd libraries, making it a + # Linux-only feature. See 'ENABLE_JOURNALD' upstream: + # https://github.com/kubernetes/node-problem-detector/blob/master/Makefile + subPackages = [ "cmd/nodeproblemdetector" ] ++ + lib.optionals stdenv.isLinux [ "cmd/logcounter" ]; + + preBuild = '' + export CGO_ENABLED=${if stdenv.isLinux then "1" else "0"} + ''; + + buildInputs = lib.optionals stdenv.isLinux [ systemd ]; + + buildFlags = "-mod vendor" + + lib.optionalString stdenv.isLinux " -tags journald"; + + buildFlagsArray = [ + "-ldflags=" + "-X k8s.io/${pname}/pkg/version.version=v${version}" + ]; + + meta = with lib; { + description = "Various problem detectors running on the Kubernetes nodes"; + homepage = "https://github.com/kubernetes/node-problem-detector"; + changelog = "https://github.com/kubernetes/node-problem-detector/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ lbpdt ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix b/nixpkgs/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix new file mode 100644 index 000000000000..cfa8d6fc674b --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nomad-driver-podman/default.nix @@ -0,0 +1,28 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "nomad-driver-podman"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "hashicorp"; + repo = pname; + rev = "v${version}"; + sha256 = "1a2alapqm7wnkjm9cg0gvi63pkaila9lhsa5razv0vprhg1k84gy"; + }; + + vendorSha256 = "1zs5y0zfi8dd9w371hpmah4iwxahgvaf70biqqdw3c9yp6yw2rwq"; + + subPackages = [ "." ]; + + # some tests require a running podman service + doCheck = false; + + meta = with lib; { + homepage = "https://www.github.com/hashicorp/nomad-driver-podman"; + description = "Podman task driver for Nomad"; + platforms = platforms.unix; + license = licenses.mpl20; + maintainers = with maintainers; [ cpcloud ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nomad/0.12.nix b/nixpkgs/pkgs/applications/networking/cluster/nomad/0.12.nix new file mode 100644 index 000000000000..82f508c63ee8 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nomad/0.12.nix @@ -0,0 +1,11 @@ +{ callPackage +, buildGoPackage +, nvidia_x11 +, nvidiaGpuSupport +}: + +callPackage ./generic.nix { + inherit buildGoPackage nvidia_x11 nvidiaGpuSupport; + version = "0.12.10"; + sha256 = "12hlzjkay7y1502nmfvq2qkhp9pq7vp4zxypawnh98qvxbzv149l"; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nomad/1.0.nix b/nixpkgs/pkgs/applications/networking/cluster/nomad/1.0.nix new file mode 100644 index 000000000000..99c43aeeee46 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nomad/1.0.nix @@ -0,0 +1,11 @@ +{ callPackage +, buildGoPackage +, nvidia_x11 +, nvidiaGpuSupport +}: + +callPackage ./generic.nix { + inherit buildGoPackage nvidia_x11 nvidiaGpuSupport; + version = "1.0.4"; + sha256 = "0znaxz9mzbqb59p6rwa5h89m344m2ci39jsx8dfh1v5fc17r0fcq"; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix b/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix new file mode 100644 index 000000000000..dc22ab41d8b6 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix @@ -0,0 +1,58 @@ +{ lib +, buildGoPackage +, fetchFromGitHub +, version +, sha256 +, nvidiaGpuSupport +, patchelf +, nvidia_x11 +}: + +buildGoPackage rec { + pname = "nomad"; + inherit version; + rev = "v${version}"; + + goPackagePath = "github.com/hashicorp/nomad"; + subPackages = [ "." ]; + + src = fetchFromGitHub { + owner = "hashicorp"; + repo = pname; + inherit rev sha256; + }; + + nativeBuildInputs = lib.optionals nvidiaGpuSupport [ + patchelf + ]; + + # ui: + # Nomad release commits include the compiled version of the UI, but the file + # is only included if we build with the ui tag. + preBuild = + let + tags = [ "ui" ] ++ lib.optional (!nvidiaGpuSupport) "nonvidia"; + tagsString = lib.concatStringsSep " " tags; + in + '' + export buildFlagsArray=( + -tags="${tagsString}" + ) + ''; + + # The dependency on NVML isn't explicit. We have to make it so otherwise the + # binary will not know where to look for the relevant symbols. + postFixup = lib.optionalString nvidiaGpuSupport '' + for bin in $out/bin/*; do + patchelf --add-needed "${nvidia_x11}/lib/libnvidia-ml.so" "$bin" + done + ''; + + meta = with lib; { + homepage = "https://www.nomadproject.io/"; + description = "A Distributed, Highly Available, Datacenter-Aware Scheduler"; + platforms = platforms.unix; + license = licenses.mpl20; + maintainers = with maintainers; [ rushmorem pradeepchhetri endocrimes ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix b/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix new file mode 100644 index 000000000000..0e97b541a5dc --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix @@ -0,0 +1,62 @@ +{ lib, stdenv, fetchzip }: + +let + inherit (stdenv.hostPlatform) system; + suffix = { + x86_64-linux = "Linux-64bit"; + aarch64-linux = "Linux-arm64"; + x86_64-darwin = "macOS-64bit"; + }."${system}" or (throw "Unsupported system: ${system}"); + baseurl = "https://github.com/vmware-tanzu/octant/releases/download"; + fetchsrc = version: sha256: fetchzip { + url = "${baseurl}/v${version}/octant_${version}_${suffix}.tar.gz"; + sha256 = sha256."${system}"; + }; +in +stdenv.mkDerivation rec { + pname = "octant"; + version = "0.18.0"; + + src = fetchsrc version { + x86_64-linux = "sha256-D/pHOXR7XQoJCGqUep1lBAY4239HH35m+evFd21pcK0="; + aarch64-linux = "sha256-aL1axz3ebqrKQ3xK2UgDMQ+o6ZKgIvwy6Phici7WT2c="; + x86_64-darwin = "sha256-MFxOAAEnLur0LJJNU0SSlO+bH4f18zOfZNA49fKEQEw="; + }; + + dontConfigure = true; + dontBuild = true; + + installPhase = '' + runHook preInstall + install -D octant $out/bin/octant + runHook postInstall + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + $out/bin/octant --help + $out/bin/octant version | grep "${version}" + runHook postInstallCheck + ''; + + dontPatchELF = true; + dontPatchShebangs = true; + + passthru.updateScript = ./update.sh; + + meta = with lib; { + homepage = "https://octant.dev/"; + changelog = "https://github.com/vmware-tanzu/octant/blob/v${version}/CHANGELOG.md"; + description = "Highly extensible platform for developers to better understand the complexity of Kubernetes clusters."; + longDescription = '' + Octant is a tool for developers to understand how applications run on a Kubernetes cluster. + It aims to be part of the developer's toolkit for gaining insight and approaching complexity found in Kubernetes. + Octant offers a combination of introspective tooling, cluster navigation, and object management along with a + plugin system to further extend its capabilities. + ''; + license = licenses.asl20; + maintainers = with maintainers; [ jk ]; + platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix b/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix new file mode 100644 index 000000000000..988b2d02df98 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix @@ -0,0 +1,28 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "starboard-octant-plugin"; + version = "0.9.2"; + + src = fetchFromGitHub { + owner = "aquasecurity"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-wis2ECCVXQeD7GiCMJQai+wDM8QJ1j5dPnE5O/I3wpM="; + }; + + vendorSha256 = "sha256-T0wDbAl5GXphZIBrM36OwRCojnJ/cbXNqsjtCzUDZ6s="; + + buildFlagsArray = [ "-ldflags=" "-s" "-w" ]; + + meta = with lib; { + description = "Octant plugin for viewing Starboard security information"; + longDescription = '' + This is an Octant plugin for Starboard which provides visibility into vulnerability assessment reports for + Kubernetes workloads stored as custom security resources. + ''; + homepage = src.meta.homepage; + license = licenses.asl20; + maintainers = with maintainers; [ jk ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/octant/update.sh b/nixpkgs/pkgs/applications/networking/cluster/octant/update.sh new file mode 100755 index 000000000000..4ffe4aefb30c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/octant/update.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl gnused gawk nix-prefetch + +set -euo pipefail + +ROOT="$(dirname "$(readlink -f "$0")")" +NIX_DRV="$ROOT/default.nix" +if [ ! -f "$NIX_DRV" ]; then + echo "ERROR: cannot find default.nix in $ROOT" + exit 1 +fi + +fetch_arch() { + VER="$1"; ARCH="$2" + URL="https://github.com/vmware-tanzu/octant/releases/download/v${VER}/octant_${VER}_${ARCH}.tar.gz" + nix-prefetch "{ stdenv, fetchzip }: +stdenv.mkDerivation rec { + pname = \"octant\"; version = \"${VER}\"; + src = fetchzip { url = \"$URL\"; }; +} +" +} + +replace_sha() { + sed -i "s#$1 = \"sha256-.\{44\}\"#$1 = \"$2\"#" "$NIX_DRV" +} + +OCTANT_VER=$(curl -Ls -w "%{url_effective}" -o /dev/null https://github.com/vmware-tanzu/octant/releases/latest | awk -F'/' '{print $NF}' | sed 's/v//') + +OCTANT_LINUX_X64_SHA256=$(fetch_arch "$OCTANT_VER" "Linux-64bit") +OCTANT_DARWIN_X64_SHA256=$(fetch_arch "$OCTANT_VER" "Linux-arm64") +OCTANT_LINUX_AARCH64_SHA256=$(fetch_arch "$OCTANT_VER" "macOS-64bit") + +sed -i "s/version = \".*\"/version = \"$OCTANT_VER\"/" "$NIX_DRV" + +replace_sha "x86_64-linux" "$OCTANT_LINUX_X64_SHA256" +replace_sha "x86_64-darwin" "$OCTANT_LINUX_AARCH64_SHA256" +replace_sha "aarch64-linux" "$OCTANT_DARWIN_X64_SHA256" diff --git a/nixpkgs/pkgs/applications/networking/cluster/openshift/default.nix b/nixpkgs/pkgs/applications/networking/cluster/openshift/default.nix new file mode 100644 index 000000000000..a1d4b1468376 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/openshift/default.nix @@ -0,0 +1,77 @@ +{ lib, fetchFromGitHub, buildGoPackage, which, go-bindata, rsync, util-linux +, coreutils, libkrb5, ncurses, clang, installShellFiles +, components ? [ + "cmd/oc" + "cmd/openshift" + ] +}: + +with lib; + +let + version = "4.1.0"; + ver = lib.elemAt (lib.splitVersion version); + versionMajor = ver 0; + versionMinor = ver 1; + versionPatch = ver 2; + gitCommit = "b4261e0"; + # version is in vendor/k8s.io/kubernetes/pkg/version/base.go + k8sversion = "v1.11.1"; + k8sgitcommit = "b1b2997"; + k8sgitMajor = "0"; + k8sgitMinor = "1"; +in buildGoPackage rec { + pname = "openshift-origin"; + inherit version; + + src = fetchFromGitHub { + owner = "openshift"; + repo = "origin"; + rev = "v${version}"; + sha256 = "16bc6ljm418kxz92gz8ldm82491mvlqamrvigyr6ff72rf7ml7ba"; + }; + + goPackagePath = "github.com/openshift/origin"; + + buildInputs = [ libkrb5 ncurses ]; + + nativeBuildInputs = [ which rsync go-bindata clang installShellFiles ]; + + patchPhase = '' + patchShebangs ./hack + ''; + + buildPhase = '' + cd go/src/${goPackagePath} + # Openshift build require this variables to be set + # unless there is a .git folder which is not the case with fetchFromGitHub + echo "OS_GIT_VERSION=v${version}" >> os-version-defs + echo "OS_GIT_TREE_STATE=clean" >> os-version-defs + echo "OS_GIT_MAJOR=${versionMajor}" >> os-version-defs + echo "OS_GIT_MINOR=${versionMinor}" >> os-version-defs + echo "OS_GIT_PATCH=${versionPatch}" >> os-version-defs + echo "OS_GIT_COMMIT=${gitCommit}" >> os-version-defs + echo "KUBE_GIT_VERSION=${k8sversion}" >> os-version-defs + echo "KUBE_GIT_COMMIT=${k8sgitcommit}" >> os-version-defs + echo "KUBE_GIT_MAJOR=${k8sgitMajor}" >> os-version-defs + echo "KUBE_GIT_MINOR=${k8sgitMinor}" >> os-version-defs + export OS_VERSION_FILE="os-version-defs" + export CC=clang + make all WHAT='${concatStringsSep " " components}' + ''; + + installPhase = '' + mkdir -p $out/bin + cp -a "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$out/bin/" + installShellCompletion --bash contrib/completions/bash/* + installShellCompletion --zsh contrib/completions/zsh/* + ''; + + meta = with lib; { + description = "Build, deploy, and manage your applications with Docker and Kubernetes"; + license = licenses.asl20; + homepage = "http://www.openshift.org"; + maintainers = with maintainers; [offline bachp moretea]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/pachyderm/default.nix b/nixpkgs/pkgs/applications/networking/cluster/pachyderm/default.nix new file mode 100644 index 000000000000..65a4a1938430 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/pachyderm/default.nix @@ -0,0 +1,24 @@ +{ lib, fetchFromGitHub, buildGoPackage }: + +buildGoPackage rec { + pname = "pachyderm"; + version = "1.8.5"; + rev = "v${version}"; + + goPackagePath = "github.com/pachyderm/pachyderm"; + subPackages = [ "src/server/cmd/pachctl" ]; + + src = fetchFromGitHub { + inherit rev; + owner = "pachyderm"; + repo = "pachyderm"; + sha256 = "1b9x2xn0sxsjid15lnwr79lps8xzf24i7jfl0i48nabdigmi04wp"; + }; + + meta = with lib; { + description = "Containerized Data Analytics"; + homepage = "https://github.com/pachyderm/pachyderm"; + license = licenses.asl20; + maintainers = with maintainers; [offline]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/pgo-client/default.nix b/nixpkgs/pkgs/applications/networking/cluster/pgo-client/default.nix new file mode 100644 index 000000000000..52c9c191218c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/pgo-client/default.nix @@ -0,0 +1,26 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "pgo-client"; + version = "4.6.2"; + + src = fetchFromGitHub { + owner = "CrunchyData"; + repo = "postgres-operator"; + rev = "v${version}"; + sha256 = "sha256-zPFsLKbuVq2wMjFsqjBGiatPBwGR/X6q3mj8o5BE+r0="; + }; + + vendorSha256 = "sha256-DU1kc7YDQ+denj6tHVGt79s494aBFZ2KM7PVSn951KI="; + + subPackages = [ "cmd/pgo" ]; + + meta = with lib; { + description = "A CLI client for Crunchy PostgreSQL Kubernetes Operator"; + homepage = "https://github.com/CrunchyData/postgres-operator"; + changelog = "https://github.com/CrunchyData/postgres-operator/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = [ maintainers.bryanasdev000 ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/pig/default.nix b/nixpkgs/pkgs/applications/networking/cluster/pig/default.nix new file mode 100644 index 000000000000..ded8a2ea4932 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/pig/default.nix @@ -0,0 +1,45 @@ +{ lib, stdenv, fetchurl, makeWrapper, hadoop, jre, bash }: + +stdenv.mkDerivation rec { + + name = "pig-0.17.0"; + + src = fetchurl { + url = "mirror://apache/pig/${name}/${name}.tar.gz"; + sha256 = "1wwpg0w47f49rnivn2d26vrxgyfl9gpqx3vmzbl5lhx6x5l3fqbd"; + + }; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out + mv * $out + + # no need for the windows batch script + rm $out/bin/pig.cmd $out/bin/pig.py + + for n in $out/{bin,sbin}"/"*; do + wrapProgram $n \ + --prefix PATH : "${lib.makeBinPath [ jre bash ]}" \ + --set JAVA_HOME "${jre}" --set HADOOP_PREFIX "${hadoop}" + done + ''; + + meta = with lib; { + homepage = "https://pig.apache.org/"; + description = "High-level language for Apache Hadoop"; + license = licenses.asl20; + + longDescription = '' + Apache Pig is a platform for analyzing large data sets that consists of a + high-level language for expressing data analysis programs, coupled with + infrastructure for evaluating these programs. The salient property of Pig + programs is that their structure is amenable to substantial parallelization, + which in turns enables them to handle very large data sets. + ''; + + platforms = platforms.linux; + maintainers = [ maintainers.skeidel ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix b/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix new file mode 100644 index 000000000000..89802f12be5e --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix @@ -0,0 +1,34 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "popeye"; + version = "0.9.0"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "derailed"; + repo = "popeye"; + sha256 = "1rslmcdjs53zvv0xaf00vxqsfc3jh2p584j3q6nfgrghc978xmpf"; + }; + + buildFlagsArray = '' + -ldflags= + -s -w + -X github.com/derailed/popeye/cmd.version=${version} + -X github.com/derailed/popeye/cmd.commit=022c3104b642aab6bdb287468fb79068a33e1b0d + -X github.com/derailed/popeye/cmd.date=2020-10-31T16:44:45Z + ''; + + vendorSha256 = "08195dnka7rs38py3kjii9zh9nifg2fnbi1wzjl0pc38i2bbrz0k"; + + doCheck = false; + + meta = with lib; { + description = "A Kubernetes cluster resource sanitizer"; + homepage = "https://github.com/derailed/popeye"; + changelog = "https://github.com/derailed/popeye/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = [ maintainers.bryanasdev000 ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/prow/default.nix b/nixpkgs/pkgs/applications/networking/cluster/prow/default.nix new file mode 100644 index 000000000000..b1ea88a11a33 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/prow/default.nix @@ -0,0 +1,68 @@ +{ buildGoModule, fetchFromGitHub, lib }: + +buildGoModule rec { + pname = "prow-unstable"; + version = "2020-04-01"; + rev = "32e3b5ce7695fb622381421653db436cb57b47c5"; + + src = fetchFromGitHub { + inherit rev; + + owner = "kubernetes"; + repo = "test-infra"; + sha256 = "0mc3ynmbf3kidibdy8k3v3xjlvmxl8w7zm1z2m0skmhd0y4bpmk4"; + }; + + vendorSha256 = "16fdc5r28andm8my4fxj0f1yygx6j2mvn92i6xdfhbcra0lvr4ql"; + + doCheck = false; + + subPackages = [ + "prow/cmd/admission" + "prow/cmd/branchprotector" + "prow/cmd/checkconfig" + "prow/cmd/clonerefs" + "prow/cmd/cm2kc" + "prow/cmd/config-bootstrapper" + "prow/cmd/crier" + "prow/cmd/deck" + "prow/cmd/entrypoint" + "prow/cmd/exporter" + "prow/cmd/gcsupload" + "prow/cmd/gerrit" + "prow/cmd/hook" + "prow/cmd/horologium" + "prow/cmd/initupload" + "prow/cmd/jenkins-operator" + "prow/cmd/mkbuild-cluster" + "prow/cmd/mkpj" + "prow/cmd/mkpod" + "prow/cmd/peribolos" + "prow/cmd/phaino" + "prow/cmd/phony" + "prow/cmd/pipeline" + "prow/cmd/plank" + "prow/cmd/sidecar" + "prow/cmd/sinker" + "prow/cmd/status-reconciler" + "prow/cmd/sub" + "prow/cmd/tackle" + "prow/cmd/tide" + "prow/cmd/tot" + ]; + + meta = with lib; { + description = "A Kubernetes based CI/CD system"; + longDescription = '' + Prow is a Kubernetes based CI/CD system. Jobs can be triggered by various + types of events and report their status to many different services. In + addition to job execution, Prow provides GitHub automation in the form of + policy enforcement, chat-ops via /foo style commands, and automatic PR + merging. + ''; + homepage = "https://github.com/kubernetes/test-infra/tree/master/prow"; + license = licenses.asl20; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix b/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix new file mode 100644 index 000000000000..7bcd905c9997 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix @@ -0,0 +1,32 @@ +{ lib, go, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "qbec"; + version = "0.14.2"; + + src = fetchFromGitHub { + owner = "splunk"; + repo = "qbec"; + rev = "v${version}"; + sha256 = "sha256-F5xnW9069Xrl6isvmeYtfTZUZSiSq47HLs5/p3HCf6E="; + }; + + vendorSha256 = "sha256-wtpXqIixjRYYSIPe43Q5627g6mu05WdvwCi9cXVgCBs="; + + doCheck = false; + + buildFlagsArray = '' + -ldflags= + -s -w + -X github.com/splunk/qbec/internal/commands.version=${version} + -X github.com/splunk/qbec/internal/commands.commit=${src.rev} + -X github.com/splunk/qbec/internal/commands.goVersion=${lib.getVersion go} + ''; + + meta = with lib; { + description = "Configure kubernetes objects on multiple clusters using jsonnet https://qbec.io"; + homepage = "https://github.com/splunk/qbec"; + license = licenses.asl20; + maintainers = with maintainers; [ groodt ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix b/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix new file mode 100644 index 000000000000..8f4324f43435 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix @@ -0,0 +1,45 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +# SHA of ${version} for the tool's help output. Unfortunately this is needed in build flags. +let rev = "f6e19140201d6bf2f1274bf6567087bc25154210"; +in +buildGoModule rec { + pname = "sonobuoy"; + version = "0.50.0"; # Do not forget to update `rev` above + + buildFlagsArray = + let t = "github.com/vmware-tanzu/sonobuoy"; + in '' + -ldflags= + -s -X ${t}/pkg/buildinfo.Version=v${version} + -X ${t}/pkg/buildinfo.GitSHA=${rev} + -X ${t}/pkg/buildDate=unknown + ''; + + src = fetchFromGitHub { + sha256 = "sha256-LhprsDlWZjNRE6pu7V9WBszy/+bNpn5KoRopIoWvdsg="; + rev = "v${version}"; + repo = "sonobuoy"; + owner = "vmware-tanzu"; + }; + + vendorSha256 = "sha256-0Vx74nz0djJB12UPybo2Z8KVpSyKHuKPFymh/Rlpv88="; + + subPackages = [ "." ]; + + meta = with lib; { + description = '' + Diagnostic tool that makes it easier to understand the + state of a Kubernetes cluster. + ''; + longDescription = '' + Sonobuoy is a diagnostic tool that makes it easier to understand the state of + a Kubernetes cluster by running a set of Kubernetes conformance tests in an + accessible and non-destructive manner. + ''; + + homepage = "https://sonobuoy.io"; + license = licenses.asl20; + maintainers = with maintainers; [ carlosdagos saschagrunert wilsonehusin ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/spacegun/default.nix b/nixpkgs/pkgs/applications/networking/cluster/spacegun/default.nix new file mode 100644 index 000000000000..684e9f65a5bf --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/spacegun/default.nix @@ -0,0 +1,32 @@ +{ pkgs, fetchFromGitHub, nodejs, stdenv, lib, ... }: + +let + src = fetchFromGitHub { + owner = "dvallin"; + repo = "spacegun"; + rev = "v0.3.3"; + sha256 = "0cd9yzms44dj9ix8lrhbkby5zsyb8wambs24j6c3ibr67sggr6sq"; + }; + + nodePackages = import ./node-composition.nix { + inherit pkgs nodejs; + inherit (stdenv.hostPlatform) system; + }; +in +nodePackages.package.override { + inherit src; + nativeBuildInputs = [ pkgs.makeWrapper pkgs.nodePackages.node-gyp-build ]; + + postInstall = '' + # Patch shebangs in node_modules, otherwise the webpack build fails with interpreter problems + patchShebangs --build "$out/lib/node_modules/spacegun/node_modules/" + # compile Typescript sources + npm run build + ''; + + meta = with lib; { + description = "Version controlled multi-cluster deployment manager for kubernetes"; + maintainers = with maintainers; [ ]; + license = licenses.mit; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/spacegun/generate-dependencies.sh b/nixpkgs/pkgs/applications/networking/cluster/spacegun/generate-dependencies.sh new file mode 100644 index 000000000000..bda3d1727c4f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/spacegun/generate-dependencies.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p nodePackages.node2nix + +# Download package.json and package-lock.json from the v0.3.3 release +curl https://raw.githubusercontent.com/dvallin/spacegun/f88cfd1cf653995a301ef4db4a1e387ef3ca01a1/package.json -o package.json +curl https://raw.githubusercontent.com/dvallin/spacegun/f88cfd1cf653995a301ef4db4a1e387ef3ca01a1/package-lock.json -o package-lock.json + +node2nix \ + --nodejs-10 \ + --node-env ../../../../development/node-packages/node-env.nix \ + --development \ + --input package.json \ + --lock package-lock.json \ + --output node-packages.nix \ + --composition node-composition.nix + +rm -f package.json package-lock.json diff --git a/nixpkgs/pkgs/applications/networking/cluster/spacegun/node-composition.nix b/nixpkgs/pkgs/applications/networking/cluster/spacegun/node-composition.nix new file mode 100644 index 000000000000..7cbb2328ae73 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/spacegun/node-composition.nix @@ -0,0 +1,17 @@ +# This file has been generated by node2nix 1.9.0. Do not edit! + +{pkgs ? import <nixpkgs> { + inherit system; + }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-10_x"}: + +let + nodeEnv = import ../../../../development/node-packages/node-env.nix { + inherit (pkgs) stdenv lib python2 runCommand writeTextFile; + inherit pkgs nodejs; + libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null; + }; +in +import ./node-packages.nix { + inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit; + inherit nodeEnv; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/spacegun/node-packages.nix b/nixpkgs/pkgs/applications/networking/cluster/spacegun/node-packages.nix new file mode 100644 index 000000000000..9203d8f60c5e --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/spacegun/node-packages.nix @@ -0,0 +1,10907 @@ +# This file has been generated by node2nix 1.9.0. Do not edit! + +{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}: + +let + sources = { + "@babel/code-frame-7.5.5" = { + name = "_at_babel_slash_code-frame"; + packageName = "@babel/code-frame"; + version = "7.5.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz"; + sha512 = "27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw=="; + }; + }; + "@babel/core-7.6.2" = { + name = "_at_babel_slash_core"; + packageName = "@babel/core"; + version = "7.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/core/-/core-7.6.2.tgz"; + sha512 = "l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ=="; + }; + }; + "@babel/generator-7.6.2" = { + name = "_at_babel_slash_generator"; + packageName = "@babel/generator"; + version = "7.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/generator/-/generator-7.6.2.tgz"; + sha512 = "j8iHaIW4gGPnViaIHI7e9t/Hl8qLjERI6DcV9kEpAIDJsAOrcnXqRS7t+QbhL76pwbtqP+QCQLL0z1CyVmtjjQ=="; + }; + }; + "@babel/helper-function-name-7.1.0" = { + name = "_at_babel_slash_helper-function-name"; + packageName = "@babel/helper-function-name"; + version = "7.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz"; + sha512 = "A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw=="; + }; + }; + "@babel/helper-get-function-arity-7.0.0" = { + name = "_at_babel_slash_helper-get-function-arity"; + packageName = "@babel/helper-get-function-arity"; + version = "7.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz"; + sha512 = "r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ=="; + }; + }; + "@babel/helper-plugin-utils-7.0.0" = { + name = "_at_babel_slash_helper-plugin-utils"; + packageName = "@babel/helper-plugin-utils"; + version = "7.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz"; + sha512 = "CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA=="; + }; + }; + "@babel/helper-split-export-declaration-7.4.4" = { + name = "_at_babel_slash_helper-split-export-declaration"; + packageName = "@babel/helper-split-export-declaration"; + version = "7.4.4"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz"; + sha512 = "Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q=="; + }; + }; + "@babel/helpers-7.6.2" = { + name = "_at_babel_slash_helpers"; + packageName = "@babel/helpers"; + version = "7.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.2.tgz"; + sha512 = "3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA=="; + }; + }; + "@babel/highlight-7.5.0" = { + name = "_at_babel_slash_highlight"; + packageName = "@babel/highlight"; + version = "7.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz"; + sha512 = "7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ=="; + }; + }; + "@babel/parser-7.6.2" = { + name = "_at_babel_slash_parser"; + packageName = "@babel/parser"; + version = "7.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/parser/-/parser-7.6.2.tgz"; + sha512 = "mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg=="; + }; + }; + "@babel/plugin-syntax-object-rest-spread-7.2.0" = { + name = "_at_babel_slash_plugin-syntax-object-rest-spread"; + packageName = "@babel/plugin-syntax-object-rest-spread"; + version = "7.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz"; + sha512 = "t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA=="; + }; + }; + "@babel/template-7.6.0" = { + name = "_at_babel_slash_template"; + packageName = "@babel/template"; + version = "7.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/template/-/template-7.6.0.tgz"; + sha512 = "5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ=="; + }; + }; + "@babel/traverse-7.6.2" = { + name = "_at_babel_slash_traverse"; + packageName = "@babel/traverse"; + version = "7.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.2.tgz"; + sha512 = "8fRE76xNwNttVEF2TwxJDGBLWthUkHWSldmfuBzVRmEDWOtu4XdINTgN7TDWzuLg4bbeIMLvfMFD9we5YcWkRQ=="; + }; + }; + "@babel/types-7.6.1" = { + name = "_at_babel_slash_types"; + packageName = "@babel/types"; + version = "7.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@babel/types/-/types-7.6.1.tgz"; + sha512 = "X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g=="; + }; + }; + "@cnakazawa/watch-1.0.3" = { + name = "_at_cnakazawa_slash_watch"; + packageName = "@cnakazawa/watch"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz"; + sha512 = "r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA=="; + }; + }; + "@jest/console-24.9.0" = { + name = "_at_jest_slash_console"; + packageName = "@jest/console"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz"; + sha512 = "Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ=="; + }; + }; + "@jest/core-24.9.0" = { + name = "_at_jest_slash_core"; + packageName = "@jest/core"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/core/-/core-24.9.0.tgz"; + sha512 = "Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A=="; + }; + }; + "@jest/environment-24.9.0" = { + name = "_at_jest_slash_environment"; + packageName = "@jest/environment"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/environment/-/environment-24.9.0.tgz"; + sha512 = "5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ=="; + }; + }; + "@jest/fake-timers-24.9.0" = { + name = "_at_jest_slash_fake-timers"; + packageName = "@jest/fake-timers"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz"; + sha512 = "eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A=="; + }; + }; + "@jest/reporters-24.9.0" = { + name = "_at_jest_slash_reporters"; + packageName = "@jest/reporters"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/reporters/-/reporters-24.9.0.tgz"; + sha512 = "mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw=="; + }; + }; + "@jest/source-map-24.9.0" = { + name = "_at_jest_slash_source-map"; + packageName = "@jest/source-map"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz"; + sha512 = "/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg=="; + }; + }; + "@jest/test-result-24.9.0" = { + name = "_at_jest_slash_test-result"; + packageName = "@jest/test-result"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz"; + sha512 = "XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA=="; + }; + }; + "@jest/test-sequencer-24.9.0" = { + name = "_at_jest_slash_test-sequencer"; + packageName = "@jest/test-sequencer"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz"; + sha512 = "6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A=="; + }; + }; + "@jest/transform-24.9.0" = { + name = "_at_jest_slash_transform"; + packageName = "@jest/transform"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/transform/-/transform-24.9.0.tgz"; + sha512 = "TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ=="; + }; + }; + "@jest/types-24.9.0" = { + name = "_at_jest_slash_types"; + packageName = "@jest/types"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz"; + sha512 = "XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw=="; + }; + }; + "@kubernetes/client-node-0.10.1" = { + name = "_at_kubernetes_slash_client-node"; + packageName = "@kubernetes/client-node"; + version = "0.10.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@kubernetes/client-node/-/client-node-0.10.1.tgz"; + sha512 = "AOfrCPa5oqdk/7lzIVU+4yYPlphc8cGW+kbiJAS5+GTbUpo62f5jPbWSPv83jTjQwfhWucj3t+3VHxQGdNexsw=="; + }; + }; + "@types/accepts-1.3.5" = { + name = "_at_types_slash_accepts"; + packageName = "@types/accepts"; + version = "1.3.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz"; + sha512 = "jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ=="; + }; + }; + "@types/axios-0.14.0" = { + name = "_at_types_slash_axios"; + packageName = "@types/axios"; + version = "0.14.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/axios/-/axios-0.14.0.tgz"; + sha1 = "ec2300fbe7d7dddd7eb9d3abf87999964cafce46"; + }; + }; + "@types/babel-types-7.0.7" = { + name = "_at_types_slash_babel-types"; + packageName = "@types/babel-types"; + version = "7.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.7.tgz"; + sha512 = "dBtBbrc+qTHy1WdfHYjBwRln4+LWqASWakLHsWHR2NWHIFkv4W3O070IGoGLEBrJBvct3r0L1BUPuvURi7kYUQ=="; + }; + }; + "@types/babel__core-7.1.3" = { + name = "_at_types_slash_babel__core"; + packageName = "@types/babel__core"; + version = "7.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz"; + sha512 = "8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA=="; + }; + }; + "@types/babel__generator-7.6.0" = { + name = "_at_types_slash_babel__generator"; + packageName = "@types/babel__generator"; + version = "7.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.0.tgz"; + sha512 = "c1mZUu4up5cp9KROs/QAw0gTeHrw/x7m52LcnvMxxOZ03DmLwPV0MlGmlgzV3cnSdjhJOZsj7E7FHeioai+egw=="; + }; + }; + "@types/babel__template-7.0.2" = { + name = "_at_types_slash_babel__template"; + packageName = "@types/babel__template"; + version = "7.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz"; + sha512 = "/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg=="; + }; + }; + "@types/babel__traverse-7.0.7" = { + name = "_at_types_slash_babel__traverse"; + packageName = "@types/babel__traverse"; + version = "7.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.7.tgz"; + sha512 = "CeBpmX1J8kWLcDEnI3Cl2Eo6RfbGvzUctA+CjZUhOKDFbLfcr7fc4usEqLNWetrlJd7RhAkyYe2czXop4fICpw=="; + }; + }; + "@types/babylon-6.16.5" = { + name = "_at_types_slash_babylon"; + packageName = "@types/babylon"; + version = "6.16.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz"; + sha512 = "xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w=="; + }; + }; + "@types/body-parser-1.17.1" = { + name = "_at_types_slash_body-parser"; + packageName = "@types/body-parser"; + version = "1.17.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.17.1.tgz"; + sha512 = "RoX2EZjMiFMjZh9lmYrwgoP9RTpAjSHiJxdp4oidAQVO02T7HER3xj9UKue5534ULWeqVEkujhWcyvUce+d68w=="; + }; + }; + "@types/caseless-0.12.2" = { + name = "_at_types_slash_caseless"; + packageName = "@types/caseless"; + version = "0.12.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.2.tgz"; + sha512 = "6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w=="; + }; + }; + "@types/command-line-args-5.0.0" = { + name = "_at_types_slash_command-line-args"; + packageName = "@types/command-line-args"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.0.0.tgz"; + sha512 = "4eOPXyn5DmP64MCMF8ePDvdlvlzt2a+F8ZaVjqmh2yFCpGjc1kI3kGnCFYX9SCsGTjQcWIyVZ86IHCEyjy/MNg=="; + }; + }; + "@types/connect-3.4.32" = { + name = "_at_types_slash_connect"; + packageName = "@types/connect"; + version = "3.4.32"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz"; + sha512 = "4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg=="; + }; + }; + "@types/cookies-0.7.3" = { + name = "_at_types_slash_cookies"; + packageName = "@types/cookies"; + version = "0.7.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.3.tgz"; + sha512 = "NEkYn8pNsYZIxf3ZrjdPoeyueiPc0RbQClUpTwmdHkpmQQ8iDAlQYKpabuegHy7BJcqTteSTkhURMEs9ZxyEWg=="; + }; + }; + "@types/cron-1.7.1" = { + name = "_at_types_slash_cron"; + packageName = "@types/cron"; + version = "1.7.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/cron/-/cron-1.7.1.tgz"; + sha512 = "48brwgU18DqA0mQX1As5OcJEo1yNjaXMM6Mk4r8K1dOzLJRQ37FE/kCivKx7ClKEHfhX2FdcxKzJ1B744a+V3A=="; + }; + }; + "@types/events-3.0.0" = { + name = "_at_types_slash_events"; + packageName = "@types/events"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz"; + sha512 = "EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g=="; + }; + }; + "@types/express-4.17.1" = { + name = "_at_types_slash_express"; + packageName = "@types/express"; + version = "4.17.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/express/-/express-4.17.1.tgz"; + sha512 = "VfH/XCP0QbQk5B5puLqTLEeFgR8lfCJHZJKkInZ9mkYd+u8byX0kztXEQxEk4wZXJs8HI+7km2ALXjn4YKcX9w=="; + }; + }; + "@types/express-serve-static-core-4.16.9" = { + name = "_at_types_slash_express-serve-static-core"; + packageName = "@types/express-serve-static-core"; + version = "4.16.9"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.9.tgz"; + sha512 = "GqpaVWR0DM8FnRUJYKlWgyARoBUAVfRIeVDZQKOttLFp5SmhhF9YFIYeTPwMd/AXfxlP7xVO2dj1fGu0Q+krKQ=="; + }; + }; + "@types/form-data-2.5.0" = { + name = "_at_types_slash_form-data"; + packageName = "@types/form-data"; + version = "2.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/form-data/-/form-data-2.5.0.tgz"; + sha512 = "23/wYiuckYYtFpL+4RPWiWmRQH2BjFuqCUi2+N3amB1a1Drv+i/byTrGvlLwRVLFNAZbwpbQ7JvTK+VCAPMbcg=="; + }; + }; + "@types/formidable-1.0.31" = { + name = "_at_types_slash_formidable"; + packageName = "@types/formidable"; + version = "1.0.31"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/formidable/-/formidable-1.0.31.tgz"; + sha512 = "dIhM5t8lRP0oWe2HF8MuPvdd1TpPTjhDMAqemcq6oIZQCBQTovhBAdTQ5L5veJB4pdQChadmHuxtB0YzqvfU3Q=="; + }; + }; + "@types/glob-7.1.1" = { + name = "_at_types_slash_glob"; + packageName = "@types/glob"; + version = "7.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz"; + sha512 = "1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w=="; + }; + }; + "@types/http-assert-1.5.1" = { + name = "_at_types_slash_http-assert"; + packageName = "@types/http-assert"; + version = "1.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.1.tgz"; + sha512 = "PGAK759pxyfXE78NbKxyfRcWYA/KwW17X290cNev/qAsn9eQIxkH4shoNBafH37wewhDG/0p1cHPbK6+SzZjWQ=="; + }; + }; + "@types/istanbul-lib-coverage-2.0.1" = { + name = "_at_types_slash_istanbul-lib-coverage"; + packageName = "@types/istanbul-lib-coverage"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz"; + sha512 = "hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg=="; + }; + }; + "@types/istanbul-lib-report-1.1.1" = { + name = "_at_types_slash_istanbul-lib-report"; + packageName = "@types/istanbul-lib-report"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz"; + sha512 = "3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg=="; + }; + }; + "@types/istanbul-reports-1.1.1" = { + name = "_at_types_slash_istanbul-reports"; + packageName = "@types/istanbul-reports"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz"; + sha512 = "UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA=="; + }; + }; + "@types/jest-24.0.15" = { + name = "_at_types_slash_jest"; + packageName = "@types/jest"; + version = "24.0.15"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/jest/-/jest-24.0.15.tgz"; + sha512 = "MU1HIvWUme74stAoc3mgAi+aMlgKOudgEvQDIm1v4RkrDudBh1T+NFp5sftpBAdXdx1J0PbdpJ+M2EsSOi1djA=="; + }; + }; + "@types/jest-diff-20.0.1" = { + name = "_at_types_slash_jest-diff"; + packageName = "@types/jest-diff"; + version = "20.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/jest-diff/-/jest-diff-20.0.1.tgz"; + sha512 = "yALhelO3i0hqZwhjtcr6dYyaLoCHbAMshwtj6cGxTvHZAKXHsYGdff6E8EPw3xLKY0ELUTQ69Q1rQiJENnccMA=="; + }; + }; + "@types/js-yaml-3.12.1" = { + name = "_at_types_slash_js-yaml"; + packageName = "@types/js-yaml"; + version = "3.12.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.1.tgz"; + sha512 = "SGGAhXLHDx+PK4YLNcNGa6goPf9XRWQNAUUbffkwVGGXIxmDKWyGGL4inzq2sPmExu431Ekb9aEMn9BkPqEYFA=="; + }; + }; + "@types/keygrip-1.0.1" = { + name = "_at_types_slash_keygrip"; + packageName = "@types/keygrip"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.1.tgz"; + sha1 = "ff540462d2fb4d0a88441ceaf27d287b01c3d878"; + }; + }; + "@types/koa-2.0.48" = { + name = "_at_types_slash_koa"; + packageName = "@types/koa"; + version = "2.0.48"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/koa/-/koa-2.0.48.tgz"; + sha512 = "CiIUYhHlOFJhSCTmsFoFkV2t9ij1JwW26nt0W9XZoWTvmAw6zTE0+k3IAoGICtjzIfhZpZcO323NHmI1LGmdDw=="; + }; + }; + "@types/koa-compose-3.2.4" = { + name = "_at_types_slash_koa-compose"; + packageName = "@types/koa-compose"; + version = "3.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.4.tgz"; + sha512 = "ioou0rxkuWL+yBQYsHUQAzRTfVxAg8Y2VfMftU+Y3RA03/MzuFL0x/M2sXXj3PkfnENbHsjeHR1aMdezLYpTeA=="; + }; + }; + "@types/koa-router-7.0.41" = { + name = "_at_types_slash_koa-router"; + packageName = "@types/koa-router"; + version = "7.0.41"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/koa-router/-/koa-router-7.0.41.tgz"; + sha512 = "WZwdCzMOvx2zA4MTinmrzqn66I87mE8S5lFgVY05/BVKULDi2Yup2Q2AOnw9vvaLME4IVJhWAeXpZjdZpKZDtg=="; + }; + }; + "@types/koa-send-4.1.2" = { + name = "_at_types_slash_koa-send"; + packageName = "@types/koa-send"; + version = "4.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/koa-send/-/koa-send-4.1.2.tgz"; + sha512 = "rfqKIv9bFds39Jxvsp8o3YJLnEQVPVriYA14AuO2OY65IHh/4UX4U/iMs5L0wATpcRmm1bbe0BNk23TRwx3VQQ=="; + }; + }; + "@types/koa-static-4.0.1" = { + name = "_at_types_slash_koa-static"; + packageName = "@types/koa-static"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/koa-static/-/koa-static-4.0.1.tgz"; + sha512 = "SSpct5fEcAeRkBHa3RiwCIRfDHcD1cZRhwRF///ZfvRt8KhoqRrhK6wpDlYPk/vWHVFE9hPGqh68bhzsHkir4w=="; + }; + }; + "@types/koa-views-2.0.3" = { + name = "_at_types_slash_koa-views"; + packageName = "@types/koa-views"; + version = "2.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/koa-views/-/koa-views-2.0.3.tgz"; + sha512 = "XLn//7qUUz2U9ZKXyHPwVIcQbZcW3phYTFXHGa1eW5BN88bi8n2fegvwJ+TokL2jRmRqBWwMB5p7Aab9iq1sZw=="; + }; + }; + "@types/lodash-4.14.140" = { + name = "_at_types_slash_lodash"; + packageName = "@types/lodash"; + version = "4.14.140"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.140.tgz"; + sha512 = "OU57uYCUUv9s8lgQTYuQlL6xkttWtz8VLCJSnt8ikla9+UXqMGJ8adCprSw7egJHSHwGvFpGhfpQDtHm/NQ3Cw=="; + }; + }; + "@types/lodash.clonedeep-4.5.6" = { + name = "_at_types_slash_lodash.clonedeep"; + packageName = "@types/lodash.clonedeep"; + version = "4.5.6"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/lodash.clonedeep/-/lodash.clonedeep-4.5.6.tgz"; + sha512 = "cE1jYr2dEg1wBImvXlNtp0xDoS79rfEdGozQVgliDZj1uERH4k+rmEMTudP9b4VQ8O6nRb5gPqft0QzEQGMQgA=="; + }; + }; + "@types/mime-2.0.1" = { + name = "_at_types_slash_mime"; + packageName = "@types/mime"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz"; + sha512 = "FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw=="; + }; + }; + "@types/minimatch-3.0.3" = { + name = "_at_types_slash_minimatch"; + packageName = "@types/minimatch"; + version = "3.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz"; + sha512 = "tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="; + }; + }; + "@types/mkdirp-0.5.2" = { + name = "_at_types_slash_mkdirp"; + packageName = "@types/mkdirp"; + version = "0.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/mkdirp/-/mkdirp-0.5.2.tgz"; + sha512 = "U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg=="; + }; + }; + "@types/node-10.14.19" = { + name = "_at_types_slash_node"; + packageName = "@types/node"; + version = "10.14.19"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/node/-/node-10.14.19.tgz"; + sha512 = "j6Sqt38ssdMKutXBUuAcmWF8QtHW1Fwz/mz4Y+Wd9mzpBiVFirjpNQf363hG5itkG+yGaD+oiLyb50HxJ36l9Q=="; + }; + }; + "@types/node-12.0.8" = { + name = "_at_types_slash_node"; + packageName = "@types/node"; + version = "12.0.8"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/node/-/node-12.0.8.tgz"; + sha512 = "b8bbUOTwzIY3V5vDTY1fIJ+ePKDUBqt2hC2woVGotdQQhG/2Sh62HOKHrT7ab+VerXAcPyAiTEipPu/FsreUtg=="; + }; + }; + "@types/ora-3.2.0" = { + name = "_at_types_slash_ora"; + packageName = "@types/ora"; + version = "3.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/ora/-/ora-3.2.0.tgz"; + sha512 = "jll99xUKpiFbIFZSQcxm4numfsLaOWBzWNaRk3PvTSE7BPqTzzOCFmS0mQ7m8qkTfmYhuYbehTGsxkvRLPC++w=="; + }; + }; + "@types/range-parser-1.2.3" = { + name = "_at_types_slash_range-parser"; + packageName = "@types/range-parser"; + version = "1.2.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz"; + sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA=="; + }; + }; + "@types/request-2.48.1" = { + name = "_at_types_slash_request"; + packageName = "@types/request"; + version = "2.48.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/request/-/request-2.48.1.tgz"; + sha512 = "ZgEZ1TiD+KGA9LiAAPPJL68Id2UWfeSO62ijSXZjFJArVV+2pKcsVHmrcu+1oiE3q6eDGiFiSolRc4JHoerBBg=="; + }; + }; + "@types/serve-static-1.13.3" = { + name = "_at_types_slash_serve-static"; + packageName = "@types/serve-static"; + version = "1.13.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.3.tgz"; + sha512 = "oprSwp094zOglVrXdlo/4bAHtKTAxX6VT8FOZlBKrmyLbNvE1zxZyJ6yikMVtHIvwP45+ZQGJn+FdXGKTozq0g=="; + }; + }; + "@types/stack-utils-1.0.1" = { + name = "_at_types_slash_stack-utils"; + packageName = "@types/stack-utils"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz"; + sha512 = "l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw=="; + }; + }; + "@types/tough-cookie-2.3.5" = { + name = "_at_types_slash_tough-cookie"; + packageName = "@types/tough-cookie"; + version = "2.3.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.5.tgz"; + sha512 = "SCcK7mvGi3+ZNz833RRjFIxrn4gI1PPR3NtuIS+6vMkvmsGjosqTJwRt5bAEFLRz+wtJMWv8+uOnZf2hi2QXTg=="; + }; + }; + "@types/underscore-1.9.3" = { + name = "_at_types_slash_underscore"; + packageName = "@types/underscore"; + version = "1.9.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/underscore/-/underscore-1.9.3.tgz"; + sha512 = "SwbHKB2DPIDlvYqtK5O+0LFtZAyrUSw4c0q+HWwmH1Ve3KMQ0/5PlV3RX97+3dP7yMrnNQ8/bCWWvQpPl03Mug=="; + }; + }; + "@types/websocket-0.0.40" = { + name = "_at_types_slash_websocket"; + packageName = "@types/websocket"; + version = "0.0.40"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/websocket/-/websocket-0.0.40.tgz"; + sha512 = "ldteZwWIgl9cOy7FyvYn+39Ah4+PfpVE72eYKw75iy2L0zTbhbcwvzeJ5IOu6DQP93bjfXq0NGHY6FYtmYoqFQ=="; + }; + }; + "@types/ws-6.0.3" = { + name = "_at_types_slash_ws"; + packageName = "@types/ws"; + version = "6.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/ws/-/ws-6.0.3.tgz"; + sha512 = "yBTM0P05Tx9iXGq00BbJPo37ox68R5vaGTXivs6RGh/BQ6QP5zqZDGWdAO6JbRE/iR1l80xeGAwCQS2nMV9S/w=="; + }; + }; + "@types/yargs-13.0.3" = { + name = "_at_types_slash_yargs"; + packageName = "@types/yargs"; + version = "13.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.3.tgz"; + sha512 = "K8/LfZq2duW33XW/tFwEAfnZlqIfVsoyRB3kfXdPXYhl0nfM8mmh7GS0jg7WrX2Dgq/0Ha/pR1PaR+BvmWwjiQ=="; + }; + }; + "@types/yargs-parser-13.1.0" = { + name = "_at_types_slash_yargs-parser"; + packageName = "@types/yargs-parser"; + version = "13.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-13.1.0.tgz"; + sha512 = "gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg=="; + }; + }; + "@webassemblyjs/ast-1.8.5" = { + name = "_at_webassemblyjs_slash_ast"; + packageName = "@webassemblyjs/ast"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz"; + sha512 = "aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ=="; + }; + }; + "@webassemblyjs/floating-point-hex-parser-1.8.5" = { + name = "_at_webassemblyjs_slash_floating-point-hex-parser"; + packageName = "@webassemblyjs/floating-point-hex-parser"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz"; + sha512 = "9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ=="; + }; + }; + "@webassemblyjs/helper-api-error-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-api-error"; + packageName = "@webassemblyjs/helper-api-error"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz"; + sha512 = "Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA=="; + }; + }; + "@webassemblyjs/helper-buffer-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-buffer"; + packageName = "@webassemblyjs/helper-buffer"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz"; + sha512 = "Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q=="; + }; + }; + "@webassemblyjs/helper-code-frame-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-code-frame"; + packageName = "@webassemblyjs/helper-code-frame"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz"; + sha512 = "VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ=="; + }; + }; + "@webassemblyjs/helper-fsm-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-fsm"; + packageName = "@webassemblyjs/helper-fsm"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz"; + sha512 = "kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow=="; + }; + }; + "@webassemblyjs/helper-module-context-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-module-context"; + packageName = "@webassemblyjs/helper-module-context"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz"; + sha512 = "/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g=="; + }; + }; + "@webassemblyjs/helper-wasm-bytecode-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-wasm-bytecode"; + packageName = "@webassemblyjs/helper-wasm-bytecode"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz"; + sha512 = "Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ=="; + }; + }; + "@webassemblyjs/helper-wasm-section-1.8.5" = { + name = "_at_webassemblyjs_slash_helper-wasm-section"; + packageName = "@webassemblyjs/helper-wasm-section"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz"; + sha512 = "VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA=="; + }; + }; + "@webassemblyjs/ieee754-1.8.5" = { + name = "_at_webassemblyjs_slash_ieee754"; + packageName = "@webassemblyjs/ieee754"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz"; + sha512 = "aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g=="; + }; + }; + "@webassemblyjs/leb128-1.8.5" = { + name = "_at_webassemblyjs_slash_leb128"; + packageName = "@webassemblyjs/leb128"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz"; + sha512 = "plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A=="; + }; + }; + "@webassemblyjs/utf8-1.8.5" = { + name = "_at_webassemblyjs_slash_utf8"; + packageName = "@webassemblyjs/utf8"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz"; + sha512 = "U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw=="; + }; + }; + "@webassemblyjs/wasm-edit-1.8.5" = { + name = "_at_webassemblyjs_slash_wasm-edit"; + packageName = "@webassemblyjs/wasm-edit"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz"; + sha512 = "A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q=="; + }; + }; + "@webassemblyjs/wasm-gen-1.8.5" = { + name = "_at_webassemblyjs_slash_wasm-gen"; + packageName = "@webassemblyjs/wasm-gen"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz"; + sha512 = "BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg=="; + }; + }; + "@webassemblyjs/wasm-opt-1.8.5" = { + name = "_at_webassemblyjs_slash_wasm-opt"; + packageName = "@webassemblyjs/wasm-opt"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz"; + sha512 = "HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q=="; + }; + }; + "@webassemblyjs/wasm-parser-1.8.5" = { + name = "_at_webassemblyjs_slash_wasm-parser"; + packageName = "@webassemblyjs/wasm-parser"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz"; + sha512 = "pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw=="; + }; + }; + "@webassemblyjs/wast-parser-1.8.5" = { + name = "_at_webassemblyjs_slash_wast-parser"; + packageName = "@webassemblyjs/wast-parser"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz"; + sha512 = "daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg=="; + }; + }; + "@webassemblyjs/wast-printer-1.8.5" = { + name = "_at_webassemblyjs_slash_wast-printer"; + packageName = "@webassemblyjs/wast-printer"; + version = "1.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz"; + sha512 = "w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg=="; + }; + }; + "@xtuc/ieee754-1.2.0" = { + name = "_at_xtuc_slash_ieee754"; + packageName = "@xtuc/ieee754"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz"; + sha512 = "DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA=="; + }; + }; + "@xtuc/long-4.2.2" = { + name = "_at_xtuc_slash_long"; + packageName = "@xtuc/long"; + version = "4.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz"; + sha512 = "NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="; + }; + }; + "abab-2.0.2" = { + name = "abab"; + packageName = "abab"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/abab/-/abab-2.0.2.tgz"; + sha512 = "2scffjvioEmNz0OyDSLGWDfKCVwaKc6l9Pm9kOIREU13ClXZvHpg/nRL5xyjSSSLhOnXqft2HpsAzNEEA8cFFg=="; + }; + }; + "abbrev-1.1.1" = { + name = "abbrev"; + packageName = "abbrev"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz"; + sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="; + }; + }; + "accepts-1.3.7" = { + name = "accepts"; + packageName = "accepts"; + version = "1.3.7"; + src = fetchurl { + url = "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz"; + sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA=="; + }; + }; + "acorn-3.3.0" = { + name = "acorn"; + packageName = "acorn"; + version = "3.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz"; + sha1 = "45e37fb39e8da3f25baee3ff5369e2bb5f22017a"; + }; + }; + "acorn-4.0.13" = { + name = "acorn"; + packageName = "acorn"; + version = "4.0.13"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz"; + sha1 = "105495ae5361d697bd195c825192e1ad7f253787"; + }; + }; + "acorn-5.7.3" = { + name = "acorn"; + packageName = "acorn"; + version = "5.7.3"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz"; + sha512 = "T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw=="; + }; + }; + "acorn-6.3.0" = { + name = "acorn"; + packageName = "acorn"; + version = "6.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz"; + sha512 = "/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA=="; + }; + }; + "acorn-dynamic-import-4.0.0" = { + name = "acorn-dynamic-import"; + packageName = "acorn-dynamic-import"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz"; + sha512 = "d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw=="; + }; + }; + "acorn-globals-3.1.0" = { + name = "acorn-globals"; + packageName = "acorn-globals"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz"; + sha1 = "fd8270f71fbb4996b004fa880ee5d46573a731bf"; + }; + }; + "acorn-globals-4.3.4" = { + name = "acorn-globals"; + packageName = "acorn-globals"; + version = "4.3.4"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz"; + sha512 = "clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A=="; + }; + }; + "acorn-walk-6.2.0" = { + name = "acorn-walk"; + packageName = "acorn-walk"; + version = "6.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz"; + sha512 = "7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA=="; + }; + }; + "ajv-6.10.0" = { + name = "ajv"; + packageName = "ajv"; + version = "6.10.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz"; + sha512 = "nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg=="; + }; + }; + "ajv-errors-1.0.1" = { + name = "ajv-errors"; + packageName = "ajv-errors"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz"; + sha512 = "DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ=="; + }; + }; + "ajv-keywords-3.4.1" = { + name = "ajv-keywords"; + packageName = "ajv-keywords"; + version = "3.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz"; + sha512 = "RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ=="; + }; + }; + "align-text-0.1.4" = { + name = "align-text"; + packageName = "align-text"; + version = "0.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz"; + sha1 = "0cd90a561093f35d0a99256c22b7069433fad117"; + }; + }; + "ansi-colors-3.2.4" = { + name = "ansi-colors"; + packageName = "ansi-colors"; + version = "3.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz"; + sha512 = "hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA=="; + }; + }; + "ansi-escapes-3.2.0" = { + name = "ansi-escapes"; + packageName = "ansi-escapes"; + version = "3.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz"; + sha512 = "cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ=="; + }; + }; + "ansi-html-0.0.7" = { + name = "ansi-html"; + packageName = "ansi-html"; + version = "0.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz"; + sha1 = "813584021962a9e9e6fd039f940d12f56ca7859e"; + }; + }; + "ansi-regex-2.1.1" = { + name = "ansi-regex"; + packageName = "ansi-regex"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz"; + sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df"; + }; + }; + "ansi-regex-3.0.0" = { + name = "ansi-regex"; + packageName = "ansi-regex"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz"; + sha1 = "ed0317c322064f79466c02966bddb605ab37d998"; + }; + }; + "ansi-regex-4.1.0" = { + name = "ansi-regex"; + packageName = "ansi-regex"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz"; + sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg=="; + }; + }; + "ansi-styles-2.2.1" = { + name = "ansi-styles"; + packageName = "ansi-styles"; + version = "2.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz"; + sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe"; + }; + }; + "ansi-styles-3.2.1" = { + name = "ansi-styles"; + packageName = "ansi-styles"; + version = "3.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz"; + sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA=="; + }; + }; + "any-promise-1.3.0" = { + name = "any-promise"; + packageName = "any-promise"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz"; + sha1 = "abc6afeedcea52e809cdc0376aed3ce39635d17f"; + }; + }; + "anymatch-2.0.0" = { + name = "anymatch"; + packageName = "anymatch"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz"; + sha512 = "5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw=="; + }; + }; + "aproba-1.2.0" = { + name = "aproba"; + packageName = "aproba"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz"; + sha512 = "Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="; + }; + }; + "argparse-1.0.10" = { + name = "argparse"; + packageName = "argparse"; + version = "1.0.10"; + src = fetchurl { + url = "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz"; + sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg=="; + }; + }; + "arr-diff-4.0.0" = { + name = "arr-diff"; + packageName = "arr-diff"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz"; + sha1 = "d6461074febfec71e7e15235761a329a5dc7c520"; + }; + }; + "arr-flatten-1.1.0" = { + name = "arr-flatten"; + packageName = "arr-flatten"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz"; + sha512 = "L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="; + }; + }; + "arr-union-3.1.0" = { + name = "arr-union"; + packageName = "arr-union"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz"; + sha1 = "e39b09aea9def866a8f206e288af63919bae39c4"; + }; + }; + "array-back-3.1.0" = { + name = "array-back"; + packageName = "array-back"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz"; + sha512 = "TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q=="; + }; + }; + "array-equal-1.0.0" = { + name = "array-equal"; + packageName = "array-equal"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz"; + sha1 = "8c2a5ef2472fd9ea742b04c77a75093ba2757c93"; + }; + }; + "array-flatten-1.1.1" = { + name = "array-flatten"; + packageName = "array-flatten"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz"; + sha1 = "9a5f699051b1e7073328f2a008968b64ea2955d2"; + }; + }; + "array-flatten-2.1.2" = { + name = "array-flatten"; + packageName = "array-flatten"; + version = "2.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz"; + sha512 = "hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ=="; + }; + }; + "array-union-1.0.2" = { + name = "array-union"; + packageName = "array-union"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz"; + sha1 = "9a34410e4f4e3da23dea375be5be70f24778ec39"; + }; + }; + "array-uniq-1.0.3" = { + name = "array-uniq"; + packageName = "array-uniq"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz"; + sha1 = "af6ac877a25cc7f74e058894753858dfdb24fdb6"; + }; + }; + "array-unique-0.3.2" = { + name = "array-unique"; + packageName = "array-unique"; + version = "0.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz"; + sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"; + }; + }; + "asap-2.0.6" = { + name = "asap"; + packageName = "asap"; + version = "2.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz"; + sha1 = "e50347611d7e690943208bbdafebcbc2fb866d46"; + }; + }; + "asn1-0.2.4" = { + name = "asn1"; + packageName = "asn1"; + version = "0.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz"; + sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg=="; + }; + }; + "asn1.js-4.10.1" = { + name = "asn1.js"; + packageName = "asn1.js"; + version = "4.10.1"; + src = fetchurl { + url = "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz"; + sha512 = "p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw=="; + }; + }; + "assert-1.5.0" = { + name = "assert"; + packageName = "assert"; + version = "1.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz"; + sha512 = "EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA=="; + }; + }; + "assert-plus-1.0.0" = { + name = "assert-plus"; + packageName = "assert-plus"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz"; + sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"; + }; + }; + "assign-symbols-1.0.0" = { + name = "assign-symbols"; + packageName = "assign-symbols"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz"; + sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"; + }; + }; + "astral-regex-1.0.0" = { + name = "astral-regex"; + packageName = "astral-regex"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz"; + sha512 = "+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg=="; + }; + }; + "async-1.5.2" = { + name = "async"; + packageName = "async"; + version = "1.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/async/-/async-1.5.2.tgz"; + sha1 = "ec6a61ae56480c0c3cb241c95618e20892f9672a"; + }; + }; + "async-each-1.0.3" = { + name = "async-each"; + packageName = "async-each"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz"; + sha512 = "z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ=="; + }; + }; + "async-limiter-1.0.0" = { + name = "async-limiter"; + packageName = "async-limiter"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz"; + sha512 = "jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg=="; + }; + }; + "asynckit-0.4.0" = { + name = "asynckit"; + packageName = "asynckit"; + version = "0.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"; + sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"; + }; + }; + "atob-2.1.2" = { + name = "atob"; + packageName = "atob"; + version = "2.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz"; + sha512 = "Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg=="; + }; + }; + "awesome-typescript-loader-5.2.1" = { + name = "awesome-typescript-loader"; + packageName = "awesome-typescript-loader"; + version = "5.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/awesome-typescript-loader/-/awesome-typescript-loader-5.2.1.tgz"; + sha512 = "slv66OAJB8orL+UUaTI3pKlLorwIvS4ARZzYR9iJJyGsEgOqueMfOMdKySWzZ73vIkEe3fcwFgsKMg4d8zyb1g=="; + }; + }; + "aws-sign2-0.7.0" = { + name = "aws-sign2"; + packageName = "aws-sign2"; + version = "0.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz"; + sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"; + }; + }; + "aws4-1.8.0" = { + name = "aws4"; + packageName = "aws4"; + version = "1.8.0"; + src = fetchurl { + url = "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz"; + sha512 = "ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ=="; + }; + }; + "axios-0.19.0" = { + name = "axios"; + packageName = "axios"; + version = "0.19.0"; + src = fetchurl { + url = "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz"; + sha512 = "1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ=="; + }; + }; + "babel-6.23.0" = { + name = "babel"; + packageName = "babel"; + version = "6.23.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel/-/babel-6.23.0.tgz"; + sha1 = "d0d1e7d803e974765beea3232d4e153c0efb90f4"; + }; + }; + "babel-code-frame-6.26.0" = { + name = "babel-code-frame"; + packageName = "babel-code-frame"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz"; + sha1 = "63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"; + }; + }; + "babel-core-6.26.3" = { + name = "babel-core"; + packageName = "babel-core"; + version = "6.26.3"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz"; + sha512 = "6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA=="; + }; + }; + "babel-generator-6.26.1" = { + name = "babel-generator"; + packageName = "babel-generator"; + version = "6.26.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz"; + sha512 = "HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA=="; + }; + }; + "babel-helper-builder-binary-assignment-operator-visitor-6.24.1" = { + name = "babel-helper-builder-binary-assignment-operator-visitor"; + packageName = "babel-helper-builder-binary-assignment-operator-visitor"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz"; + sha1 = "cce4517ada356f4220bcae8a02c2b346f9a56664"; + }; + }; + "babel-helper-call-delegate-6.24.1" = { + name = "babel-helper-call-delegate"; + packageName = "babel-helper-call-delegate"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz"; + sha1 = "ece6aacddc76e41c3461f88bfc575bd0daa2df8d"; + }; + }; + "babel-helper-define-map-6.26.0" = { + name = "babel-helper-define-map"; + packageName = "babel-helper-define-map"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz"; + sha1 = "a5f56dab41a25f97ecb498c7ebaca9819f95be5f"; + }; + }; + "babel-helper-explode-assignable-expression-6.24.1" = { + name = "babel-helper-explode-assignable-expression"; + packageName = "babel-helper-explode-assignable-expression"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz"; + sha1 = "f25b82cf7dc10433c55f70592d5746400ac22caa"; + }; + }; + "babel-helper-function-name-6.24.1" = { + name = "babel-helper-function-name"; + packageName = "babel-helper-function-name"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz"; + sha1 = "d3475b8c03ed98242a25b48351ab18399d3580a9"; + }; + }; + "babel-helper-get-function-arity-6.24.1" = { + name = "babel-helper-get-function-arity"; + packageName = "babel-helper-get-function-arity"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz"; + sha1 = "8f7782aa93407c41d3aa50908f89b031b1b6853d"; + }; + }; + "babel-helper-hoist-variables-6.24.1" = { + name = "babel-helper-hoist-variables"; + packageName = "babel-helper-hoist-variables"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz"; + sha1 = "1ecb27689c9d25513eadbc9914a73f5408be7a76"; + }; + }; + "babel-helper-optimise-call-expression-6.24.1" = { + name = "babel-helper-optimise-call-expression"; + packageName = "babel-helper-optimise-call-expression"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz"; + sha1 = "f7a13427ba9f73f8f4fa993c54a97882d1244257"; + }; + }; + "babel-helper-regex-6.26.0" = { + name = "babel-helper-regex"; + packageName = "babel-helper-regex"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz"; + sha1 = "325c59f902f82f24b74faceed0363954f6495e72"; + }; + }; + "babel-helper-remap-async-to-generator-6.24.1" = { + name = "babel-helper-remap-async-to-generator"; + packageName = "babel-helper-remap-async-to-generator"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz"; + sha1 = "5ec581827ad723fecdd381f1c928390676e4551b"; + }; + }; + "babel-helper-replace-supers-6.24.1" = { + name = "babel-helper-replace-supers"; + packageName = "babel-helper-replace-supers"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz"; + sha1 = "bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a"; + }; + }; + "babel-helpers-6.24.1" = { + name = "babel-helpers"; + packageName = "babel-helpers"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz"; + sha1 = "3471de9caec388e5c850e597e58a26ddf37602b2"; + }; + }; + "babel-jest-24.8.0" = { + name = "babel-jest"; + packageName = "babel-jest"; + version = "24.8.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-jest/-/babel-jest-24.8.0.tgz"; + sha512 = "+5/kaZt4I9efoXzPlZASyK/lN9qdRKmmUav9smVc0ruPQD7IsfucQ87gpOE8mn2jbDuS6M/YOW6n3v9ZoIfgnw=="; + }; + }; + "babel-jest-24.9.0" = { + name = "babel-jest"; + packageName = "babel-jest"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-jest/-/babel-jest-24.9.0.tgz"; + sha512 = "ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw=="; + }; + }; + "babel-messages-6.23.0" = { + name = "babel-messages"; + packageName = "babel-messages"; + version = "6.23.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz"; + sha1 = "f3cdf4703858035b2a2951c6ec5edf6c62f2630e"; + }; + }; + "babel-plugin-check-es2015-constants-6.22.0" = { + name = "babel-plugin-check-es2015-constants"; + packageName = "babel-plugin-check-es2015-constants"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz"; + sha1 = "35157b101426fd2ffd3da3f75c7d1e91835bbf8a"; + }; + }; + "babel-plugin-istanbul-5.2.0" = { + name = "babel-plugin-istanbul"; + packageName = "babel-plugin-istanbul"; + version = "5.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz"; + sha512 = "5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw=="; + }; + }; + "babel-plugin-jest-hoist-24.9.0" = { + name = "babel-plugin-jest-hoist"; + packageName = "babel-plugin-jest-hoist"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz"; + sha512 = "2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw=="; + }; + }; + "babel-plugin-syntax-async-functions-6.13.0" = { + name = "babel-plugin-syntax-async-functions"; + packageName = "babel-plugin-syntax-async-functions"; + version = "6.13.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz"; + sha1 = "cad9cad1191b5ad634bf30ae0872391e0647be95"; + }; + }; + "babel-plugin-syntax-exponentiation-operator-6.13.0" = { + name = "babel-plugin-syntax-exponentiation-operator"; + packageName = "babel-plugin-syntax-exponentiation-operator"; + version = "6.13.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz"; + sha1 = "9ee7e8337290da95288201a6a57f4170317830de"; + }; + }; + "babel-plugin-syntax-trailing-function-commas-6.22.0" = { + name = "babel-plugin-syntax-trailing-function-commas"; + packageName = "babel-plugin-syntax-trailing-function-commas"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz"; + sha1 = "ba0360937f8d06e40180a43fe0d5616fff532cf3"; + }; + }; + "babel-plugin-transform-async-to-generator-6.24.1" = { + name = "babel-plugin-transform-async-to-generator"; + packageName = "babel-plugin-transform-async-to-generator"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz"; + sha1 = "6536e378aff6cb1d5517ac0e40eb3e9fc8d08761"; + }; + }; + "babel-plugin-transform-es2015-arrow-functions-6.22.0" = { + name = "babel-plugin-transform-es2015-arrow-functions"; + packageName = "babel-plugin-transform-es2015-arrow-functions"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz"; + sha1 = "452692cb711d5f79dc7f85e440ce41b9f244d221"; + }; + }; + "babel-plugin-transform-es2015-block-scoped-functions-6.22.0" = { + name = "babel-plugin-transform-es2015-block-scoped-functions"; + packageName = "babel-plugin-transform-es2015-block-scoped-functions"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz"; + sha1 = "bbc51b49f964d70cb8d8e0b94e820246ce3a6141"; + }; + }; + "babel-plugin-transform-es2015-block-scoping-6.26.0" = { + name = "babel-plugin-transform-es2015-block-scoping"; + packageName = "babel-plugin-transform-es2015-block-scoping"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz"; + sha1 = "d70f5299c1308d05c12f463813b0a09e73b1895f"; + }; + }; + "babel-plugin-transform-es2015-classes-6.24.1" = { + name = "babel-plugin-transform-es2015-classes"; + packageName = "babel-plugin-transform-es2015-classes"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz"; + sha1 = "5a4c58a50c9c9461e564b4b2a3bfabc97a2584db"; + }; + }; + "babel-plugin-transform-es2015-computed-properties-6.24.1" = { + name = "babel-plugin-transform-es2015-computed-properties"; + packageName = "babel-plugin-transform-es2015-computed-properties"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz"; + sha1 = "6fe2a8d16895d5634f4cd999b6d3480a308159b3"; + }; + }; + "babel-plugin-transform-es2015-destructuring-6.23.0" = { + name = "babel-plugin-transform-es2015-destructuring"; + packageName = "babel-plugin-transform-es2015-destructuring"; + version = "6.23.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz"; + sha1 = "997bb1f1ab967f682d2b0876fe358d60e765c56d"; + }; + }; + "babel-plugin-transform-es2015-duplicate-keys-6.24.1" = { + name = "babel-plugin-transform-es2015-duplicate-keys"; + packageName = "babel-plugin-transform-es2015-duplicate-keys"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz"; + sha1 = "73eb3d310ca969e3ef9ec91c53741a6f1576423e"; + }; + }; + "babel-plugin-transform-es2015-for-of-6.23.0" = { + name = "babel-plugin-transform-es2015-for-of"; + packageName = "babel-plugin-transform-es2015-for-of"; + version = "6.23.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz"; + sha1 = "f47c95b2b613df1d3ecc2fdb7573623c75248691"; + }; + }; + "babel-plugin-transform-es2015-function-name-6.24.1" = { + name = "babel-plugin-transform-es2015-function-name"; + packageName = "babel-plugin-transform-es2015-function-name"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz"; + sha1 = "834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b"; + }; + }; + "babel-plugin-transform-es2015-literals-6.22.0" = { + name = "babel-plugin-transform-es2015-literals"; + packageName = "babel-plugin-transform-es2015-literals"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz"; + sha1 = "4f54a02d6cd66cf915280019a31d31925377ca2e"; + }; + }; + "babel-plugin-transform-es2015-modules-amd-6.24.1" = { + name = "babel-plugin-transform-es2015-modules-amd"; + packageName = "babel-plugin-transform-es2015-modules-amd"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz"; + sha1 = "3b3e54017239842d6d19c3011c4bd2f00a00d154"; + }; + }; + "babel-plugin-transform-es2015-modules-commonjs-6.26.2" = { + name = "babel-plugin-transform-es2015-modules-commonjs"; + packageName = "babel-plugin-transform-es2015-modules-commonjs"; + version = "6.26.2"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz"; + sha512 = "CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q=="; + }; + }; + "babel-plugin-transform-es2015-modules-systemjs-6.24.1" = { + name = "babel-plugin-transform-es2015-modules-systemjs"; + packageName = "babel-plugin-transform-es2015-modules-systemjs"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz"; + sha1 = "ff89a142b9119a906195f5f106ecf305d9407d23"; + }; + }; + "babel-plugin-transform-es2015-modules-umd-6.24.1" = { + name = "babel-plugin-transform-es2015-modules-umd"; + packageName = "babel-plugin-transform-es2015-modules-umd"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz"; + sha1 = "ac997e6285cd18ed6176adb607d602344ad38468"; + }; + }; + "babel-plugin-transform-es2015-object-super-6.24.1" = { + name = "babel-plugin-transform-es2015-object-super"; + packageName = "babel-plugin-transform-es2015-object-super"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz"; + sha1 = "24cef69ae21cb83a7f8603dad021f572eb278f8d"; + }; + }; + "babel-plugin-transform-es2015-parameters-6.24.1" = { + name = "babel-plugin-transform-es2015-parameters"; + packageName = "babel-plugin-transform-es2015-parameters"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz"; + sha1 = "57ac351ab49caf14a97cd13b09f66fdf0a625f2b"; + }; + }; + "babel-plugin-transform-es2015-shorthand-properties-6.24.1" = { + name = "babel-plugin-transform-es2015-shorthand-properties"; + packageName = "babel-plugin-transform-es2015-shorthand-properties"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz"; + sha1 = "24f875d6721c87661bbd99a4622e51f14de38aa0"; + }; + }; + "babel-plugin-transform-es2015-spread-6.22.0" = { + name = "babel-plugin-transform-es2015-spread"; + packageName = "babel-plugin-transform-es2015-spread"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz"; + sha1 = "d6d68a99f89aedc4536c81a542e8dd9f1746f8d1"; + }; + }; + "babel-plugin-transform-es2015-sticky-regex-6.24.1" = { + name = "babel-plugin-transform-es2015-sticky-regex"; + packageName = "babel-plugin-transform-es2015-sticky-regex"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz"; + sha1 = "00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc"; + }; + }; + "babel-plugin-transform-es2015-template-literals-6.22.0" = { + name = "babel-plugin-transform-es2015-template-literals"; + packageName = "babel-plugin-transform-es2015-template-literals"; + version = "6.22.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz"; + sha1 = "a84b3450f7e9f8f1f6839d6d687da84bb1236d8d"; + }; + }; + "babel-plugin-transform-es2015-typeof-symbol-6.23.0" = { + name = "babel-plugin-transform-es2015-typeof-symbol"; + packageName = "babel-plugin-transform-es2015-typeof-symbol"; + version = "6.23.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz"; + sha1 = "dec09f1cddff94b52ac73d505c84df59dcceb372"; + }; + }; + "babel-plugin-transform-es2015-unicode-regex-6.24.1" = { + name = "babel-plugin-transform-es2015-unicode-regex"; + packageName = "babel-plugin-transform-es2015-unicode-regex"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz"; + sha1 = "d38b12f42ea7323f729387f18a7c5ae1faeb35e9"; + }; + }; + "babel-plugin-transform-exponentiation-operator-6.24.1" = { + name = "babel-plugin-transform-exponentiation-operator"; + packageName = "babel-plugin-transform-exponentiation-operator"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz"; + sha1 = "2ab0c9c7f3098fa48907772bb813fe41e8de3a0e"; + }; + }; + "babel-plugin-transform-regenerator-6.26.0" = { + name = "babel-plugin-transform-regenerator"; + packageName = "babel-plugin-transform-regenerator"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz"; + sha1 = "e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"; + }; + }; + "babel-plugin-transform-strict-mode-6.24.1" = { + name = "babel-plugin-transform-strict-mode"; + packageName = "babel-plugin-transform-strict-mode"; + version = "6.24.1"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz"; + sha1 = "d5faf7aa578a65bbe591cf5edae04a0c67020758"; + }; + }; + "babel-preset-env-1.7.0" = { + name = "babel-preset-env"; + packageName = "babel-preset-env"; + version = "1.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz"; + sha512 = "9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg=="; + }; + }; + "babel-preset-jest-24.9.0" = { + name = "babel-preset-jest"; + packageName = "babel-preset-jest"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz"; + sha512 = "izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg=="; + }; + }; + "babel-register-6.26.0" = { + name = "babel-register"; + packageName = "babel-register"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz"; + sha1 = "6ed021173e2fcb486d7acb45c6009a856f647071"; + }; + }; + "babel-runtime-6.26.0" = { + name = "babel-runtime"; + packageName = "babel-runtime"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz"; + sha1 = "965c7058668e82b55d7bfe04ff2337bc8b5647fe"; + }; + }; + "babel-template-6.26.0" = { + name = "babel-template"; + packageName = "babel-template"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz"; + sha1 = "de03e2d16396b069f46dd9fff8521fb1a0e35e02"; + }; + }; + "babel-traverse-6.26.0" = { + name = "babel-traverse"; + packageName = "babel-traverse"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz"; + sha1 = "46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"; + }; + }; + "babel-types-6.26.0" = { + name = "babel-types"; + packageName = "babel-types"; + version = "6.26.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz"; + sha1 = "a3b073f94ab49eb6fa55cd65227a334380632497"; + }; + }; + "babylon-6.18.0" = { + name = "babylon"; + packageName = "babylon"; + version = "6.18.0"; + src = fetchurl { + url = "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz"; + sha512 = "q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ=="; + }; + }; + "balanced-match-1.0.0" = { + name = "balanced-match"; + packageName = "balanced-match"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz"; + sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767"; + }; + }; + "base-0.11.2" = { + name = "base"; + packageName = "base"; + version = "0.11.2"; + src = fetchurl { + url = "https://registry.npmjs.org/base/-/base-0.11.2.tgz"; + sha512 = "5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg=="; + }; + }; + "base64-js-1.3.1" = { + name = "base64-js"; + packageName = "base64-js"; + version = "1.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz"; + sha512 = "mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g=="; + }; + }; + "batch-0.6.1" = { + name = "batch"; + packageName = "batch"; + version = "0.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz"; + sha1 = "dc34314f4e679318093fc760272525f94bf25c16"; + }; + }; + "bcrypt-pbkdf-1.0.2" = { + name = "bcrypt-pbkdf"; + packageName = "bcrypt-pbkdf"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz"; + sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"; + }; + }; + "bfj-6.1.2" = { + name = "bfj"; + packageName = "bfj"; + version = "6.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz"; + sha512 = "BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw=="; + }; + }; + "big.js-5.2.2" = { + name = "big.js"; + packageName = "big.js"; + version = "5.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz"; + sha512 = "vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ=="; + }; + }; + "binary-extensions-1.13.1" = { + name = "binary-extensions"; + packageName = "binary-extensions"; + version = "1.13.1"; + src = fetchurl { + url = "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz"; + sha512 = "Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw=="; + }; + }; + "bluebird-3.5.5" = { + name = "bluebird"; + packageName = "bluebird"; + version = "3.5.5"; + src = fetchurl { + url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz"; + sha512 = "5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w=="; + }; + }; + "bn.js-4.11.8" = { + name = "bn.js"; + packageName = "bn.js"; + version = "4.11.8"; + src = fetchurl { + url = "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz"; + sha512 = "ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA=="; + }; + }; + "body-parser-1.19.0" = { + name = "body-parser"; + packageName = "body-parser"; + version = "1.19.0"; + src = fetchurl { + url = "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz"; + sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw=="; + }; + }; + "bonjour-3.5.0" = { + name = "bonjour"; + packageName = "bonjour"; + version = "3.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz"; + sha1 = "8e890a183d8ee9a2393b3844c691a42bcf7bc9f5"; + }; + }; + "brace-expansion-1.1.11" = { + name = "brace-expansion"; + packageName = "brace-expansion"; + version = "1.1.11"; + src = fetchurl { + url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz"; + sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA=="; + }; + }; + "braces-2.3.2" = { + name = "braces"; + packageName = "braces"; + version = "2.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz"; + sha512 = "aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w=="; + }; + }; + "brorand-1.1.0" = { + name = "brorand"; + packageName = "brorand"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz"; + sha1 = "12c25efe40a45e3c323eb8675a0a0ce57b22371f"; + }; + }; + "browser-process-hrtime-0.1.3" = { + name = "browser-process-hrtime"; + packageName = "browser-process-hrtime"; + version = "0.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz"; + sha512 = "bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw=="; + }; + }; + "browser-resolve-1.11.3" = { + name = "browser-resolve"; + packageName = "browser-resolve"; + version = "1.11.3"; + src = fetchurl { + url = "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz"; + sha512 = "exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ=="; + }; + }; + "browserify-aes-1.2.0" = { + name = "browserify-aes"; + packageName = "browserify-aes"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz"; + sha512 = "+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA=="; + }; + }; + "browserify-cipher-1.0.1" = { + name = "browserify-cipher"; + packageName = "browserify-cipher"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz"; + sha512 = "sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w=="; + }; + }; + "browserify-des-1.0.2" = { + name = "browserify-des"; + packageName = "browserify-des"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz"; + sha512 = "BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A=="; + }; + }; + "browserify-rsa-4.0.1" = { + name = "browserify-rsa"; + packageName = "browserify-rsa"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz"; + sha1 = "21e0abfaf6f2029cf2fafb133567a701d4135524"; + }; + }; + "browserify-sign-4.0.4" = { + name = "browserify-sign"; + packageName = "browserify-sign"; + version = "4.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz"; + sha1 = "aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298"; + }; + }; + "browserify-zlib-0.2.0" = { + name = "browserify-zlib"; + packageName = "browserify-zlib"; + version = "0.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz"; + sha512 = "Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA=="; + }; + }; + "browserslist-3.2.8" = { + name = "browserslist"; + packageName = "browserslist"; + version = "3.2.8"; + src = fetchurl { + url = "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz"; + sha512 = "WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ=="; + }; + }; + "bs-logger-0.2.6" = { + name = "bs-logger"; + packageName = "bs-logger"; + version = "0.2.6"; + src = fetchurl { + url = "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz"; + sha512 = "pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog=="; + }; + }; + "bser-2.1.0" = { + name = "bser"; + packageName = "bser"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/bser/-/bser-2.1.0.tgz"; + sha512 = "8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg=="; + }; + }; + "buffer-4.9.1" = { + name = "buffer"; + packageName = "buffer"; + version = "4.9.1"; + src = fetchurl { + url = "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz"; + sha1 = "6d1bb601b07a4efced97094132093027c95bc298"; + }; + }; + "buffer-from-1.1.1" = { + name = "buffer-from"; + packageName = "buffer-from"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz"; + sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="; + }; + }; + "buffer-indexof-1.1.1" = { + name = "buffer-indexof"; + packageName = "buffer-indexof"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz"; + sha512 = "4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g=="; + }; + }; + "buffer-xor-1.0.3" = { + name = "buffer-xor"; + packageName = "buffer-xor"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz"; + sha1 = "26e61ed1422fb70dd42e6e36729ed51d855fe8d9"; + }; + }; + "builtin-status-codes-3.0.0" = { + name = "builtin-status-codes"; + packageName = "builtin-status-codes"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz"; + sha1 = "85982878e21b98e1c66425e03d0174788f569ee8"; + }; + }; + "bytes-3.0.0" = { + name = "bytes"; + packageName = "bytes"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz"; + sha1 = "d32815404d689699f85a4ea4fa8755dd13a96048"; + }; + }; + "bytes-3.1.0" = { + name = "bytes"; + packageName = "bytes"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz"; + sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg=="; + }; + }; + "cacache-10.0.4" = { + name = "cacache"; + packageName = "cacache"; + version = "10.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz"; + sha512 = "Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA=="; + }; + }; + "cacache-12.0.3" = { + name = "cacache"; + packageName = "cacache"; + version = "12.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz"; + sha512 = "kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw=="; + }; + }; + "cache-base-1.0.1" = { + name = "cache-base"; + packageName = "cache-base"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz"; + sha512 = "AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ=="; + }; + }; + "cache-content-type-1.0.1" = { + name = "cache-content-type"; + packageName = "cache-content-type"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz"; + sha512 = "IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA=="; + }; + }; + "callsites-3.1.0" = { + name = "callsites"; + packageName = "callsites"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz"; + sha512 = "P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="; + }; + }; + "camelcase-1.2.1" = { + name = "camelcase"; + packageName = "camelcase"; + version = "1.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz"; + sha1 = "9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"; + }; + }; + "camelcase-4.1.0" = { + name = "camelcase"; + packageName = "camelcase"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz"; + sha1 = "d545635be1e33c542649c69173e5de6acfae34dd"; + }; + }; + "camelcase-5.3.1" = { + name = "camelcase"; + packageName = "camelcase"; + version = "5.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"; + sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="; + }; + }; + "caniuse-lite-1.0.30000997" = { + name = "caniuse-lite"; + packageName = "caniuse-lite"; + version = "1.0.30000997"; + src = fetchurl { + url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000997.tgz"; + sha512 = "BQLFPIdj2ntgBNWp9Q64LGUIEmvhKkzzHhUHR3CD5A9Lb7ZKF20/+sgadhFap69lk5XmK1fTUleDclaRFvgVUA=="; + }; + }; + "capture-exit-2.0.0" = { + name = "capture-exit"; + packageName = "capture-exit"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz"; + sha512 = "PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g=="; + }; + }; + "caseless-0.12.0" = { + name = "caseless"; + packageName = "caseless"; + version = "0.12.0"; + src = fetchurl { + url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz"; + sha1 = "1b681c21ff84033c826543090689420d187151dc"; + }; + }; + "center-align-0.1.3" = { + name = "center-align"; + packageName = "center-align"; + version = "0.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz"; + sha1 = "aa0d32629b6ee972200411cbd4461c907bc2b7ad"; + }; + }; + "chalk-1.1.3" = { + name = "chalk"; + packageName = "chalk"; + version = "1.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz"; + sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98"; + }; + }; + "chalk-2.4.2" = { + name = "chalk"; + packageName = "chalk"; + version = "2.4.2"; + src = fetchurl { + url = "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz"; + sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ=="; + }; + }; + "character-parser-2.2.0" = { + name = "character-parser"; + packageName = "character-parser"; + version = "2.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz"; + sha1 = "c7ce28f36d4bcd9744e5ffc2c5fcde1c73261fc0"; + }; + }; + "check-types-8.0.3" = { + name = "check-types"; + packageName = "check-types"; + version = "8.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz"; + sha512 = "YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ=="; + }; + }; + "chokidar-2.1.8" = { + name = "chokidar"; + packageName = "chokidar"; + version = "2.1.8"; + src = fetchurl { + url = "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz"; + sha512 = "ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg=="; + }; + }; + "chownr-1.1.3" = { + name = "chownr"; + packageName = "chownr"; + version = "1.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz"; + sha512 = "i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw=="; + }; + }; + "chrome-trace-event-1.0.2" = { + name = "chrome-trace-event"; + packageName = "chrome-trace-event"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz"; + sha512 = "9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ=="; + }; + }; + "ci-info-2.0.0" = { + name = "ci-info"; + packageName = "ci-info"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz"; + sha512 = "5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ=="; + }; + }; + "cipher-base-1.0.4" = { + name = "cipher-base"; + packageName = "cipher-base"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz"; + sha512 = "Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q=="; + }; + }; + "class-utils-0.3.6" = { + name = "class-utils"; + packageName = "class-utils"; + version = "0.3.6"; + src = fetchurl { + url = "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz"; + sha512 = "qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg=="; + }; + }; + "clean-css-4.2.1" = { + name = "clean-css"; + packageName = "clean-css"; + version = "4.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz"; + sha512 = "4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g=="; + }; + }; + "cli-cursor-2.1.0" = { + name = "cli-cursor"; + packageName = "cli-cursor"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz"; + sha1 = "b35dac376479facc3e94747d41d0d0f5238ffcb5"; + }; + }; + "cli-spinners-2.2.0" = { + name = "cli-spinners"; + packageName = "cli-spinners"; + version = "2.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.2.0.tgz"; + sha512 = "tgU3fKwzYjiLEQgPMD9Jt+JjHVL9kW93FiIMX/l7rivvOD4/LL0Mf7gda3+4U2KJBloybwgj5KEoQgGRioMiKQ=="; + }; + }; + "cliui-2.1.0" = { + name = "cliui"; + packageName = "cliui"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz"; + sha1 = "4b475760ff80264c762c3a1719032e91c7fea0d1"; + }; + }; + "cliui-4.1.0" = { + name = "cliui"; + packageName = "cliui"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz"; + sha512 = "4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ=="; + }; + }; + "cliui-5.0.0" = { + name = "cliui"; + packageName = "cliui"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz"; + sha512 = "PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA=="; + }; + }; + "clone-1.0.4" = { + name = "clone"; + packageName = "clone"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz"; + sha1 = "da309cc263df15994c688ca902179ca3c7cd7c7e"; + }; + }; + "co-4.6.0" = { + name = "co"; + packageName = "co"; + version = "4.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/co/-/co-4.6.0.tgz"; + sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"; + }; + }; + "co-body-5.2.0" = { + name = "co-body"; + packageName = "co-body"; + version = "5.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/co-body/-/co-body-5.2.0.tgz"; + sha512 = "sX/LQ7LqUhgyaxzbe7IqwPeTr2yfpfUIQ/dgpKo6ZI4y4lpQA0YxAomWIY+7I7rHWcG02PG+OuPREzMW/5tszQ=="; + }; + }; + "code-point-at-1.1.0" = { + name = "code-point-at"; + packageName = "code-point-at"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz"; + sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"; + }; + }; + "collection-visit-1.0.0" = { + name = "collection-visit"; + packageName = "collection-visit"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz"; + sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0"; + }; + }; + "color-convert-1.9.3" = { + name = "color-convert"; + packageName = "color-convert"; + version = "1.9.3"; + src = fetchurl { + url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz"; + sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg=="; + }; + }; + "color-name-1.1.3" = { + name = "color-name"; + packageName = "color-name"; + version = "1.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"; + sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25"; + }; + }; + "combined-stream-1.0.8" = { + name = "combined-stream"; + packageName = "combined-stream"; + version = "1.0.8"; + src = fetchurl { + url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"; + sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="; + }; + }; + "command-line-args-5.1.1" = { + name = "command-line-args"; + packageName = "command-line-args"; + version = "5.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/command-line-args/-/command-line-args-5.1.1.tgz"; + sha512 = "hL/eG8lrll1Qy1ezvkant+trihbGnaKaeEjj6Scyr3DN+RC7iQ5Rz84IeLERfAWDGo0HBSNAakczwgCilDXnWg=="; + }; + }; + "commander-2.20.0" = { + name = "commander"; + packageName = "commander"; + version = "2.20.0"; + src = fetchurl { + url = "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz"; + sha512 = "7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ=="; + }; + }; + "commondir-1.0.1" = { + name = "commondir"; + packageName = "commondir"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz"; + sha1 = "ddd800da0c66127393cca5950ea968a3aaf1253b"; + }; + }; + "component-emitter-1.3.0" = { + name = "component-emitter"; + packageName = "component-emitter"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz"; + sha512 = "Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg=="; + }; + }; + "compressible-2.0.17" = { + name = "compressible"; + packageName = "compressible"; + version = "2.0.17"; + src = fetchurl { + url = "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz"; + sha512 = "BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw=="; + }; + }; + "compression-1.7.4" = { + name = "compression"; + packageName = "compression"; + version = "1.7.4"; + src = fetchurl { + url = "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz"; + sha512 = "jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ=="; + }; + }; + "concat-map-0.0.1" = { + name = "concat-map"; + packageName = "concat-map"; + version = "0.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"; + sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b"; + }; + }; + "concat-stream-1.6.2" = { + name = "concat-stream"; + packageName = "concat-stream"; + version = "1.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz"; + sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw=="; + }; + }; + "condense-newlines-0.2.1" = { + name = "condense-newlines"; + packageName = "condense-newlines"; + version = "0.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz"; + sha1 = "3de985553139475d32502c83b02f60684d24c55f"; + }; + }; + "config-chain-1.1.12" = { + name = "config-chain"; + packageName = "config-chain"; + version = "1.1.12"; + src = fetchurl { + url = "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz"; + sha512 = "a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA=="; + }; + }; + "connect-history-api-fallback-1.6.0" = { + name = "connect-history-api-fallback"; + packageName = "connect-history-api-fallback"; + version = "1.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz"; + sha512 = "e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg=="; + }; + }; + "console-browserify-1.1.0" = { + name = "console-browserify"; + packageName = "console-browserify"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz"; + sha1 = "f0241c45730a9fc6323b206dbf38edc741d0bb10"; + }; + }; + "consolidate-0.15.1" = { + name = "consolidate"; + packageName = "consolidate"; + version = "0.15.1"; + src = fetchurl { + url = "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz"; + sha512 = "DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw=="; + }; + }; + "constantinople-3.1.2" = { + name = "constantinople"; + packageName = "constantinople"; + version = "3.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz"; + sha512 = "yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw=="; + }; + }; + "constants-browserify-1.0.0" = { + name = "constants-browserify"; + packageName = "constants-browserify"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz"; + sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75"; + }; + }; + "content-disposition-0.5.3" = { + name = "content-disposition"; + packageName = "content-disposition"; + version = "0.5.3"; + src = fetchurl { + url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz"; + sha512 = "ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g=="; + }; + }; + "content-type-1.0.4" = { + name = "content-type"; + packageName = "content-type"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz"; + sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="; + }; + }; + "convert-source-map-1.6.0" = { + name = "convert-source-map"; + packageName = "convert-source-map"; + version = "1.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz"; + sha512 = "eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A=="; + }; + }; + "cookie-0.4.0" = { + name = "cookie"; + packageName = "cookie"; + version = "0.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz"; + sha512 = "+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg=="; + }; + }; + "cookie-signature-1.0.6" = { + name = "cookie-signature"; + packageName = "cookie-signature"; + version = "1.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz"; + sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c"; + }; + }; + "cookies-0.7.3" = { + name = "cookies"; + packageName = "cookies"; + version = "0.7.3"; + src = fetchurl { + url = "https://registry.npmjs.org/cookies/-/cookies-0.7.3.tgz"; + sha512 = "+gixgxYSgQLTaTIilDHAdlNPZDENDQernEMiIcZpYYP14zgHsCt4Ce1FEjFtcp6GefhozebB6orvhAAWx/IS0A=="; + }; + }; + "copy-concurrently-1.0.5" = { + name = "copy-concurrently"; + packageName = "copy-concurrently"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz"; + sha512 = "f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A=="; + }; + }; + "copy-descriptor-0.1.1" = { + name = "copy-descriptor"; + packageName = "copy-descriptor"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz"; + sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d"; + }; + }; + "copy-webpack-plugin-4.6.0" = { + name = "copy-webpack-plugin"; + packageName = "copy-webpack-plugin"; + version = "4.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.6.0.tgz"; + sha512 = "Y+SQCF+0NoWQryez2zXn5J5knmr9z/9qSQt7fbL78u83rxmigOy8X5+BFn8CFSuX+nKT8gpYwJX68ekqtQt6ZA=="; + }; + }; + "core-js-2.6.9" = { + name = "core-js"; + packageName = "core-js"; + version = "2.6.9"; + src = fetchurl { + url = "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz"; + sha512 = "HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A=="; + }; + }; + "core-util-is-1.0.2" = { + name = "core-util-is"; + packageName = "core-util-is"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz"; + sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7"; + }; + }; + "create-ecdh-4.0.3" = { + name = "create-ecdh"; + packageName = "create-ecdh"; + version = "4.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz"; + sha512 = "GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw=="; + }; + }; + "create-hash-1.2.0" = { + name = "create-hash"; + packageName = "create-hash"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz"; + sha512 = "z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg=="; + }; + }; + "create-hmac-1.1.7" = { + name = "create-hmac"; + packageName = "create-hmac"; + version = "1.1.7"; + src = fetchurl { + url = "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz"; + sha512 = "MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg=="; + }; + }; + "cron-1.7.1" = { + name = "cron"; + packageName = "cron"; + version = "1.7.1"; + src = fetchurl { + url = "https://registry.npmjs.org/cron/-/cron-1.7.1.tgz"; + sha512 = "gmMB/pJcqUVs/NklR1sCGlNYM7TizEw+1gebz20BMc/8bTm/r7QUp3ZPSPlG8Z5XRlvb7qhjEjq/+bdIfUCL2A=="; + }; + }; + "cross-spawn-6.0.5" = { + name = "cross-spawn"; + packageName = "cross-spawn"; + version = "6.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz"; + sha512 = "eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ=="; + }; + }; + "crypto-browserify-3.12.0" = { + name = "crypto-browserify"; + packageName = "crypto-browserify"; + version = "3.12.0"; + src = fetchurl { + url = "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz"; + sha512 = "fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg=="; + }; + }; + "cssom-0.3.8" = { + name = "cssom"; + packageName = "cssom"; + version = "0.3.8"; + src = fetchurl { + url = "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz"; + sha512 = "b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg=="; + }; + }; + "cssstyle-1.4.0" = { + name = "cssstyle"; + packageName = "cssstyle"; + version = "1.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz"; + sha512 = "GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA=="; + }; + }; + "cyclist-1.0.1" = { + name = "cyclist"; + packageName = "cyclist"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz"; + sha1 = "596e9698fd0c80e12038c2b82d6eb1b35b6224d9"; + }; + }; + "d-1.0.1" = { + name = "d"; + packageName = "d"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/d/-/d-1.0.1.tgz"; + sha512 = "m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA=="; + }; + }; + "dashdash-1.14.1" = { + name = "dashdash"; + packageName = "dashdash"; + version = "1.14.1"; + src = fetchurl { + url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz"; + sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"; + }; + }; + "data-urls-1.1.0" = { + name = "data-urls"; + packageName = "data-urls"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz"; + sha512 = "YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ=="; + }; + }; + "date-now-0.1.4" = { + name = "date-now"; + packageName = "date-now"; + version = "0.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz"; + sha1 = "eaf439fd4d4848ad74e5cc7dbef200672b9e345b"; + }; + }; + "debug-2.6.9" = { + name = "debug"; + packageName = "debug"; + version = "2.6.9"; + src = fetchurl { + url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"; + sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="; + }; + }; + "debug-3.1.0" = { + name = "debug"; + packageName = "debug"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz"; + sha512 = "OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g=="; + }; + }; + "debug-3.2.6" = { + name = "debug"; + packageName = "debug"; + version = "3.2.6"; + src = fetchurl { + url = "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz"; + sha512 = "mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ=="; + }; + }; + "debug-4.1.1" = { + name = "debug"; + packageName = "debug"; + version = "4.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz"; + sha512 = "pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw=="; + }; + }; + "decamelize-1.2.0" = { + name = "decamelize"; + packageName = "decamelize"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"; + sha1 = "f6534d15148269b20352e7bee26f501f9a191290"; + }; + }; + "decode-uri-component-0.2.0" = { + name = "decode-uri-component"; + packageName = "decode-uri-component"; + version = "0.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz"; + sha1 = "eb3913333458775cb84cd1a1fae062106bb87545"; + }; + }; + "deep-equal-1.0.1" = { + name = "deep-equal"; + packageName = "deep-equal"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz"; + sha1 = "f5d260292b660e084eff4cdbc9f08ad3247448b5"; + }; + }; + "deep-is-0.1.3" = { + name = "deep-is"; + packageName = "deep-is"; + version = "0.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz"; + sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34"; + }; + }; + "default-gateway-4.2.0" = { + name = "default-gateway"; + packageName = "default-gateway"; + version = "4.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz"; + sha512 = "h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA=="; + }; + }; + "defaults-1.0.3" = { + name = "defaults"; + packageName = "defaults"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz"; + sha1 = "c656051e9817d9ff08ed881477f3fe4019f3ef7d"; + }; + }; + "define-properties-1.1.3" = { + name = "define-properties"; + packageName = "define-properties"; + version = "1.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz"; + sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ=="; + }; + }; + "define-property-0.2.5" = { + name = "define-property"; + packageName = "define-property"; + version = "0.2.5"; + src = fetchurl { + url = "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz"; + sha1 = "c35b1ef918ec3c990f9a5bc57be04aacec5c8116"; + }; + }; + "define-property-1.0.0" = { + name = "define-property"; + packageName = "define-property"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz"; + sha1 = "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"; + }; + }; + "define-property-2.0.2" = { + name = "define-property"; + packageName = "define-property"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz"; + sha512 = "jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ=="; + }; + }; + "del-4.1.1" = { + name = "del"; + packageName = "del"; + version = "4.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/del/-/del-4.1.1.tgz"; + sha512 = "QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ=="; + }; + }; + "delayed-stream-1.0.0" = { + name = "delayed-stream"; + packageName = "delayed-stream"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"; + sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619"; + }; + }; + "delegates-1.0.0" = { + name = "delegates"; + packageName = "delegates"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz"; + sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a"; + }; + }; + "depd-1.1.2" = { + name = "depd"; + packageName = "depd"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz"; + sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9"; + }; + }; + "des.js-1.0.0" = { + name = "des.js"; + packageName = "des.js"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz"; + sha1 = "c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc"; + }; + }; + "destroy-1.0.4" = { + name = "destroy"; + packageName = "destroy"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz"; + sha1 = "978857442c44749e4206613e37946205826abd80"; + }; + }; + "detect-file-1.0.0" = { + name = "detect-file"; + packageName = "detect-file"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz"; + sha1 = "f0d66d03672a825cb1b73bdb3fe62310c8e552b7"; + }; + }; + "detect-indent-4.0.0" = { + name = "detect-indent"; + packageName = "detect-indent"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz"; + sha1 = "f76d064352cdf43a1cb6ce619c4ee3a9475de208"; + }; + }; + "detect-newline-2.1.0" = { + name = "detect-newline"; + packageName = "detect-newline"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz"; + sha1 = "f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"; + }; + }; + "detect-node-2.0.4" = { + name = "detect-node"; + packageName = "detect-node"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz"; + sha512 = "ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw=="; + }; + }; + "diff-sequences-24.9.0" = { + name = "diff-sequences"; + packageName = "diff-sequences"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.9.0.tgz"; + sha512 = "Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew=="; + }; + }; + "diffie-hellman-5.0.3" = { + name = "diffie-hellman"; + packageName = "diffie-hellman"; + version = "5.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz"; + sha512 = "kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg=="; + }; + }; + "dir-glob-2.2.2" = { + name = "dir-glob"; + packageName = "dir-glob"; + version = "2.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz"; + sha512 = "f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw=="; + }; + }; + "dns-equal-1.0.0" = { + name = "dns-equal"; + packageName = "dns-equal"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz"; + sha1 = "b39e7f1da6eb0a75ba9c17324b34753c47e0654d"; + }; + }; + "dns-packet-1.3.1" = { + name = "dns-packet"; + packageName = "dns-packet"; + version = "1.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz"; + sha512 = "0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg=="; + }; + }; + "dns-txt-2.0.2" = { + name = "dns-txt"; + packageName = "dns-txt"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz"; + sha1 = "b91d806f5d27188e4ab3e7d107d881a1cc4642b6"; + }; + }; + "doctypes-1.1.0" = { + name = "doctypes"; + packageName = "doctypes"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz"; + sha1 = "ea80b106a87538774e8a3a4a5afe293de489e0a9"; + }; + }; + "domain-browser-1.2.0" = { + name = "domain-browser"; + packageName = "domain-browser"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz"; + sha512 = "jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA=="; + }; + }; + "domexception-1.0.1" = { + name = "domexception"; + packageName = "domexception"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz"; + sha512 = "raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug=="; + }; + }; + "duplexer-0.1.1" = { + name = "duplexer"; + packageName = "duplexer"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz"; + sha1 = "ace6ff808c1ce66b57d1ebf97977acb02334cfc1"; + }; + }; + "duplexify-3.7.1" = { + name = "duplexify"; + packageName = "duplexify"; + version = "3.7.1"; + src = fetchurl { + url = "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz"; + sha512 = "07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g=="; + }; + }; + "ecc-jsbn-0.1.2" = { + name = "ecc-jsbn"; + packageName = "ecc-jsbn"; + version = "0.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz"; + sha1 = "3a83a904e54353287874c564b7549386849a98c9"; + }; + }; + "editorconfig-0.15.3" = { + name = "editorconfig"; + packageName = "editorconfig"; + version = "0.15.3"; + src = fetchurl { + url = "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz"; + sha512 = "M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g=="; + }; + }; + "ee-first-1.1.1" = { + name = "ee-first"; + packageName = "ee-first"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz"; + sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d"; + }; + }; + "ejs-2.7.1" = { + name = "ejs"; + packageName = "ejs"; + version = "2.7.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ejs/-/ejs-2.7.1.tgz"; + sha512 = "kS/gEPzZs3Y1rRsbGX4UOSjtP/CeJP0CxSNZHYxGfVM/VgLcv0ZqM7C45YyTj2DI2g7+P9Dd24C+IMIg6D0nYQ=="; + }; + }; + "electron-to-chromium-1.3.267" = { + name = "electron-to-chromium"; + packageName = "electron-to-chromium"; + version = "1.3.267"; + src = fetchurl { + url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.267.tgz"; + sha512 = "9Q2ixAJC+oHjWNtJV0MQ4vJMCWSowIrC6V6vcr+bwPddTDHj2ddv9xxXCzf4jT/fy6HP7maPoW0gifXkRxCttQ=="; + }; + }; + "elliptic-6.5.1" = { + name = "elliptic"; + packageName = "elliptic"; + version = "6.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/elliptic/-/elliptic-6.5.1.tgz"; + sha512 = "xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg=="; + }; + }; + "emoji-regex-7.0.3" = { + name = "emoji-regex"; + packageName = "emoji-regex"; + version = "7.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz"; + sha512 = "CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA=="; + }; + }; + "emojis-list-2.1.0" = { + name = "emojis-list"; + packageName = "emojis-list"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz"; + sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389"; + }; + }; + "encodeurl-1.0.2" = { + name = "encodeurl"; + packageName = "encodeurl"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz"; + sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"; + }; + }; + "end-of-stream-1.4.4" = { + name = "end-of-stream"; + packageName = "end-of-stream"; + version = "1.4.4"; + src = fetchurl { + url = "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz"; + sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q=="; + }; + }; + "enhanced-resolve-4.1.0" = { + name = "enhanced-resolve"; + packageName = "enhanced-resolve"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz"; + sha512 = "F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng=="; + }; + }; + "errno-0.1.7" = { + name = "errno"; + packageName = "errno"; + version = "0.1.7"; + src = fetchurl { + url = "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz"; + sha512 = "MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg=="; + }; + }; + "error-ex-1.3.2" = { + name = "error-ex"; + packageName = "error-ex"; + version = "1.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"; + sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g=="; + }; + }; + "error-inject-1.0.0" = { + name = "error-inject"; + packageName = "error-inject"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz"; + sha1 = "e2b3d91b54aed672f309d950d154850fa11d4f37"; + }; + }; + "es-abstract-1.14.2" = { + name = "es-abstract"; + packageName = "es-abstract"; + version = "1.14.2"; + src = fetchurl { + url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.2.tgz"; + sha512 = "DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg=="; + }; + }; + "es-to-primitive-1.2.0" = { + name = "es-to-primitive"; + packageName = "es-to-primitive"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz"; + sha512 = "qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg=="; + }; + }; + "es5-ext-0.10.51" = { + name = "es5-ext"; + packageName = "es5-ext"; + version = "0.10.51"; + src = fetchurl { + url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.51.tgz"; + sha512 = "oRpWzM2WcLHVKpnrcyB7OW8j/s67Ba04JCm0WnNv3RiABSvs7mrQlutB8DBv793gKcp0XENR8Il8WxGTlZ73gQ=="; + }; + }; + "es6-iterator-2.0.3" = { + name = "es6-iterator"; + packageName = "es6-iterator"; + version = "2.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz"; + sha1 = "a7de889141a05a94b0854403b2d0a0fbfa98f3b7"; + }; + }; + "es6-symbol-3.1.2" = { + name = "es6-symbol"; + packageName = "es6-symbol"; + version = "3.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.2.tgz"; + sha512 = "/ZypxQsArlv+KHpGvng52/Iz8by3EQPxhmbuz8yFG89N/caTFBSbcXONDw0aMjy827gQg26XAjP4uXFvnfINmQ=="; + }; + }; + "escape-html-1.0.3" = { + name = "escape-html"; + packageName = "escape-html"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz"; + sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988"; + }; + }; + "escape-string-regexp-1.0.5" = { + name = "escape-string-regexp"; + packageName = "escape-string-regexp"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz"; + sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"; + }; + }; + "escodegen-1.12.0" = { + name = "escodegen"; + packageName = "escodegen"; + version = "1.12.0"; + src = fetchurl { + url = "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz"; + sha512 = "TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg=="; + }; + }; + "eslint-scope-4.0.3" = { + name = "eslint-scope"; + packageName = "eslint-scope"; + version = "4.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz"; + sha512 = "p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg=="; + }; + }; + "esprima-3.1.3" = { + name = "esprima"; + packageName = "esprima"; + version = "3.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz"; + sha1 = "fdca51cee6133895e3c88d535ce49dbff62a4633"; + }; + }; + "esprima-4.0.1" = { + name = "esprima"; + packageName = "esprima"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"; + sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="; + }; + }; + "esrecurse-4.2.1" = { + name = "esrecurse"; + packageName = "esrecurse"; + version = "4.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz"; + sha512 = "64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ=="; + }; + }; + "estraverse-4.3.0" = { + name = "estraverse"; + packageName = "estraverse"; + version = "4.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"; + sha512 = "39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="; + }; + }; + "esutils-2.0.2" = { + name = "esutils"; + packageName = "esutils"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz"; + sha1 = "0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"; + }; + }; + "etag-1.8.1" = { + name = "etag"; + packageName = "etag"; + version = "1.8.1"; + src = fetchurl { + url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz"; + sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887"; + }; + }; + "eventemitter3-4.0.0" = { + name = "eventemitter3"; + packageName = "eventemitter3"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz"; + sha512 = "qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg=="; + }; + }; + "events-3.0.0" = { + name = "events"; + packageName = "events"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/events/-/events-3.0.0.tgz"; + sha512 = "Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA=="; + }; + }; + "eventsource-1.0.7" = { + name = "eventsource"; + packageName = "eventsource"; + version = "1.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz"; + sha512 = "4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ=="; + }; + }; + "evp_bytestokey-1.0.3" = { + name = "evp_bytestokey"; + packageName = "evp_bytestokey"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz"; + sha512 = "/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA=="; + }; + }; + "exec-sh-0.3.2" = { + name = "exec-sh"; + packageName = "exec-sh"; + version = "0.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz"; + sha512 = "9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg=="; + }; + }; + "execa-1.0.0" = { + name = "execa"; + packageName = "execa"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz"; + sha512 = "adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA=="; + }; + }; + "exit-0.1.2" = { + name = "exit"; + packageName = "exit"; + version = "0.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz"; + sha1 = "0632638f8d877cc82107d30a0fff1a17cba1cd0c"; + }; + }; + "expand-brackets-2.1.4" = { + name = "expand-brackets"; + packageName = "expand-brackets"; + version = "2.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz"; + sha1 = "b77735e315ce30f6b6eff0f83b04151a22449622"; + }; + }; + "expand-tilde-2.0.2" = { + name = "expand-tilde"; + packageName = "expand-tilde"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz"; + sha1 = "97e801aa052df02454de46b02bf621642cdc8502"; + }; + }; + "expect-24.9.0" = { + name = "expect"; + packageName = "expect"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz"; + sha512 = "wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q=="; + }; + }; + "express-4.17.1" = { + name = "express"; + packageName = "express"; + version = "4.17.1"; + src = fetchurl { + url = "https://registry.npmjs.org/express/-/express-4.17.1.tgz"; + sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g=="; + }; + }; + "extend-3.0.2" = { + name = "extend"; + packageName = "extend"; + version = "3.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz"; + sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="; + }; + }; + "extend-shallow-2.0.1" = { + name = "extend-shallow"; + packageName = "extend-shallow"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz"; + sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f"; + }; + }; + "extend-shallow-3.0.2" = { + name = "extend-shallow"; + packageName = "extend-shallow"; + version = "3.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz"; + sha1 = "26a71aaf073b39fb2127172746131c2704028db8"; + }; + }; + "extglob-2.0.4" = { + name = "extglob"; + packageName = "extglob"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz"; + sha512 = "Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw=="; + }; + }; + "extsprintf-1.3.0" = { + name = "extsprintf"; + packageName = "extsprintf"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz"; + sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05"; + }; + }; + "fast-deep-equal-2.0.1" = { + name = "fast-deep-equal"; + packageName = "fast-deep-equal"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz"; + sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"; + }; + }; + "fast-json-stable-stringify-2.0.0" = { + name = "fast-json-stable-stringify"; + packageName = "fast-json-stable-stringify"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz"; + sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2"; + }; + }; + "fast-levenshtein-2.0.6" = { + name = "fast-levenshtein"; + packageName = "fast-levenshtein"; + version = "2.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz"; + sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917"; + }; + }; + "faye-websocket-0.10.0" = { + name = "faye-websocket"; + packageName = "faye-websocket"; + version = "0.10.0"; + src = fetchurl { + url = "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz"; + sha1 = "4e492f8d04dfb6f89003507f6edbf2d501e7c6f4"; + }; + }; + "faye-websocket-0.11.3" = { + name = "faye-websocket"; + packageName = "faye-websocket"; + version = "0.11.3"; + src = fetchurl { + url = "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz"; + sha512 = "D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA=="; + }; + }; + "fb-watchman-2.0.0" = { + name = "fb-watchman"; + packageName = "fb-watchman"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz"; + sha1 = "54e9abf7dfa2f26cd9b1636c588c1afc05de5d58"; + }; + }; + "figgy-pudding-3.5.1" = { + name = "figgy-pudding"; + packageName = "figgy-pudding"; + version = "3.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz"; + sha512 = "vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w=="; + }; + }; + "filesize-3.6.1" = { + name = "filesize"; + packageName = "filesize"; + version = "3.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz"; + sha512 = "7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg=="; + }; + }; + "fill-range-4.0.0" = { + name = "fill-range"; + packageName = "fill-range"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz"; + sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7"; + }; + }; + "finalhandler-1.1.2" = { + name = "finalhandler"; + packageName = "finalhandler"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz"; + sha512 = "aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA=="; + }; + }; + "find-cache-dir-1.0.0" = { + name = "find-cache-dir"; + packageName = "find-cache-dir"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz"; + sha1 = "9288e3e9e3cc3748717d39eade17cf71fc30ee6f"; + }; + }; + "find-cache-dir-2.1.0" = { + name = "find-cache-dir"; + packageName = "find-cache-dir"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz"; + sha512 = "Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ=="; + }; + }; + "find-replace-3.0.0" = { + name = "find-replace"; + packageName = "find-replace"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz"; + sha512 = "6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ=="; + }; + }; + "find-up-2.1.0" = { + name = "find-up"; + packageName = "find-up"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz"; + sha1 = "45d1b7e506c717ddd482775a2b77920a3c0c57a7"; + }; + }; + "find-up-3.0.0" = { + name = "find-up"; + packageName = "find-up"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz"; + sha512 = "1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg=="; + }; + }; + "findup-sync-2.0.0" = { + name = "findup-sync"; + packageName = "findup-sync"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz"; + sha1 = "9326b1488c22d1a6088650a86901b2d9a90a2cbc"; + }; + }; + "flush-write-stream-1.1.1" = { + name = "flush-write-stream"; + packageName = "flush-write-stream"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz"; + sha512 = "3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w=="; + }; + }; + "follow-redirects-1.5.10" = { + name = "follow-redirects"; + packageName = "follow-redirects"; + version = "1.5.10"; + src = fetchurl { + url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz"; + sha512 = "0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ=="; + }; + }; + "for-in-1.0.2" = { + name = "for-in"; + packageName = "for-in"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz"; + sha1 = "81068d295a8142ec0ac726c6e2200c30fb6d5e80"; + }; + }; + "forever-agent-0.6.1" = { + name = "forever-agent"; + packageName = "forever-agent"; + version = "0.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz"; + sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"; + }; + }; + "form-data-2.3.3" = { + name = "form-data"; + packageName = "form-data"; + version = "2.3.3"; + src = fetchurl { + url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz"; + sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ=="; + }; + }; + "form-data-2.5.1" = { + name = "form-data"; + packageName = "form-data"; + version = "2.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz"; + sha512 = "m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA=="; + }; + }; + "formidable-1.2.1" = { + name = "formidable"; + packageName = "formidable"; + version = "1.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz"; + sha512 = "Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg=="; + }; + }; + "forwarded-0.1.2" = { + name = "forwarded"; + packageName = "forwarded"; + version = "0.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz"; + sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84"; + }; + }; + "fragment-cache-0.2.1" = { + name = "fragment-cache"; + packageName = "fragment-cache"; + version = "0.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz"; + sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19"; + }; + }; + "fresh-0.5.2" = { + name = "fresh"; + packageName = "fresh"; + version = "0.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz"; + sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7"; + }; + }; + "from2-2.3.0" = { + name = "from2"; + packageName = "from2"; + version = "2.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz"; + sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af"; + }; + }; + "fs-extra-4.0.3" = { + name = "fs-extra"; + packageName = "fs-extra"; + version = "4.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz"; + sha512 = "q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg=="; + }; + }; + "fs-write-stream-atomic-1.0.10" = { + name = "fs-write-stream-atomic"; + packageName = "fs-write-stream-atomic"; + version = "1.0.10"; + src = fetchurl { + url = "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz"; + sha1 = "b47df53493ef911df75731e70a9ded0189db40c9"; + }; + }; + "fs.realpath-1.0.0" = { + name = "fs.realpath"; + packageName = "fs.realpath"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"; + sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f"; + }; + }; + "fsevents-1.2.9" = { + name = "fsevents"; + packageName = "fsevents"; + version = "1.2.9"; + src = fetchurl { + url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz"; + sha512 = "oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw=="; + }; + }; + "function-bind-1.1.1" = { + name = "function-bind"; + packageName = "function-bind"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz"; + sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="; + }; + }; + "get-caller-file-1.0.3" = { + name = "get-caller-file"; + packageName = "get-caller-file"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz"; + sha512 = "3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w=="; + }; + }; + "get-caller-file-2.0.5" = { + name = "get-caller-file"; + packageName = "get-caller-file"; + version = "2.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz"; + sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="; + }; + }; + "get-paths-0.0.4" = { + name = "get-paths"; + packageName = "get-paths"; + version = "0.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/get-paths/-/get-paths-0.0.4.tgz"; + sha512 = "+AxlfMGN7FuJr2zhT6aErH08HMKkRwynTTHtWCenIWkIZgx2OlkZKgt7SM4+rh8Dfi32lo6HcvqeTLxph3kjQw=="; + }; + }; + "get-stream-4.1.0" = { + name = "get-stream"; + packageName = "get-stream"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz"; + sha512 = "GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w=="; + }; + }; + "get-value-2.0.6" = { + name = "get-value"; + packageName = "get-value"; + version = "2.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz"; + sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28"; + }; + }; + "getpass-0.1.7" = { + name = "getpass"; + packageName = "getpass"; + version = "0.1.7"; + src = fetchurl { + url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz"; + sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa"; + }; + }; + "glob-7.1.4" = { + name = "glob"; + packageName = "glob"; + version = "7.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz"; + sha512 = "hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A=="; + }; + }; + "glob-parent-3.1.0" = { + name = "glob-parent"; + packageName = "glob-parent"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz"; + sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae"; + }; + }; + "global-modules-1.0.0" = { + name = "global-modules"; + packageName = "global-modules"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz"; + sha512 = "sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg=="; + }; + }; + "global-prefix-1.0.2" = { + name = "global-prefix"; + packageName = "global-prefix"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz"; + sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe"; + }; + }; + "globals-11.12.0" = { + name = "globals"; + packageName = "globals"; + version = "11.12.0"; + src = fetchurl { + url = "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz"; + sha512 = "WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="; + }; + }; + "globals-9.18.0" = { + name = "globals"; + packageName = "globals"; + version = "9.18.0"; + src = fetchurl { + url = "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz"; + sha512 = "S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ=="; + }; + }; + "globby-6.1.0" = { + name = "globby"; + packageName = "globby"; + version = "6.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz"; + sha1 = "f5a6d70e8395e21c858fb0489d64df02424d506c"; + }; + }; + "globby-7.1.1" = { + name = "globby"; + packageName = "globby"; + version = "7.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz"; + sha1 = "fb2ccff9401f8600945dfada97440cca972b8680"; + }; + }; + "graceful-fs-4.1.15" = { + name = "graceful-fs"; + packageName = "graceful-fs"; + version = "4.1.15"; + src = fetchurl { + url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz"; + sha512 = "6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA=="; + }; + }; + "growly-1.3.0" = { + name = "growly"; + packageName = "growly"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz"; + sha1 = "f10748cbe76af964b7c96c93c6bcc28af120c081"; + }; + }; + "gzip-size-5.1.1" = { + name = "gzip-size"; + packageName = "gzip-size"; + version = "5.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz"; + sha512 = "FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA=="; + }; + }; + "handle-thing-2.0.0" = { + name = "handle-thing"; + packageName = "handle-thing"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz"; + sha512 = "d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ=="; + }; + }; + "handlebars-4.3.3" = { + name = "handlebars"; + packageName = "handlebars"; + version = "4.3.3"; + src = fetchurl { + url = "https://registry.npmjs.org/handlebars/-/handlebars-4.3.3.tgz"; + sha512 = "VupOxR91xcGojfINrzMqrvlyYbBs39sXIrWa7YdaQWeBudOlvKEGvCczMfJPgnuwHE/zyH1M6J+IUP6cgDVyxg=="; + }; + }; + "har-schema-2.0.0" = { + name = "har-schema"; + packageName = "har-schema"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz"; + sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92"; + }; + }; + "har-validator-5.1.3" = { + name = "har-validator"; + packageName = "har-validator"; + version = "5.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz"; + sha512 = "sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g=="; + }; + }; + "has-1.0.3" = { + name = "has"; + packageName = "has"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/has/-/has-1.0.3.tgz"; + sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw=="; + }; + }; + "has-ansi-2.0.0" = { + name = "has-ansi"; + packageName = "has-ansi"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz"; + sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91"; + }; + }; + "has-flag-3.0.0" = { + name = "has-flag"; + packageName = "has-flag"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz"; + sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd"; + }; + }; + "has-symbols-1.0.0" = { + name = "has-symbols"; + packageName = "has-symbols"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz"; + sha1 = "ba1a8f1af2a0fc39650f5c850367704122063b44"; + }; + }; + "has-value-0.3.1" = { + name = "has-value"; + packageName = "has-value"; + version = "0.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz"; + sha1 = "7b1f58bada62ca827ec0a2078025654845995e1f"; + }; + }; + "has-value-1.0.0" = { + name = "has-value"; + packageName = "has-value"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz"; + sha1 = "18b281da585b1c5c51def24c930ed29a0be6b177"; + }; + }; + "has-values-0.1.4" = { + name = "has-values"; + packageName = "has-values"; + version = "0.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz"; + sha1 = "6d61de95d91dfca9b9a02089ad384bff8f62b771"; + }; + }; + "has-values-1.0.0" = { + name = "has-values"; + packageName = "has-values"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz"; + sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f"; + }; + }; + "hash-base-3.0.4" = { + name = "hash-base"; + packageName = "hash-base"; + version = "3.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz"; + sha1 = "5fc8686847ecd73499403319a6b0a3f3f6ae4918"; + }; + }; + "hash.js-1.1.7" = { + name = "hash.js"; + packageName = "hash.js"; + version = "1.1.7"; + src = fetchurl { + url = "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz"; + sha512 = "taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA=="; + }; + }; + "hmac-drbg-1.0.1" = { + name = "hmac-drbg"; + packageName = "hmac-drbg"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz"; + sha1 = "d2745701025a6c775a6c545793ed502fc0c649a1"; + }; + }; + "home-or-tmp-2.0.0" = { + name = "home-or-tmp"; + packageName = "home-or-tmp"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz"; + sha1 = "e36c3f2d2cae7d746a857e38d18d5f32a7882db8"; + }; + }; + "homedir-polyfill-1.0.3" = { + name = "homedir-polyfill"; + packageName = "homedir-polyfill"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz"; + sha512 = "eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA=="; + }; + }; + "hoopy-0.1.4" = { + name = "hoopy"; + packageName = "hoopy"; + version = "0.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz"; + sha512 = "HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ=="; + }; + }; + "hosted-git-info-2.8.4" = { + name = "hosted-git-info"; + packageName = "hosted-git-info"; + version = "2.8.4"; + src = fetchurl { + url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz"; + sha512 = "pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ=="; + }; + }; + "hpack.js-2.1.6" = { + name = "hpack.js"; + packageName = "hpack.js"; + version = "2.1.6"; + src = fetchurl { + url = "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz"; + sha1 = "87774c0949e513f42e84575b3c45681fade2a0b2"; + }; + }; + "html-encoding-sniffer-1.0.2" = { + name = "html-encoding-sniffer"; + packageName = "html-encoding-sniffer"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz"; + sha512 = "71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw=="; + }; + }; + "html-entities-1.2.1" = { + name = "html-entities"; + packageName = "html-entities"; + version = "1.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz"; + sha1 = "0df29351f0721163515dfb9e5543e5f6eed5162f"; + }; + }; + "http-assert-1.4.1" = { + name = "http-assert"; + packageName = "http-assert"; + version = "1.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/http-assert/-/http-assert-1.4.1.tgz"; + sha512 = "rdw7q6GTlibqVVbXr0CKelfV5iY8G2HqEUkhSk297BMbSpSL8crXC+9rjKoMcZZEsksX30le6f/4ul4E28gegw=="; + }; + }; + "http-deceiver-1.2.7" = { + name = "http-deceiver"; + packageName = "http-deceiver"; + version = "1.2.7"; + src = fetchurl { + url = "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz"; + sha1 = "fa7168944ab9a519d337cb0bec7284dc3e723d87"; + }; + }; + "http-errors-1.6.3" = { + name = "http-errors"; + packageName = "http-errors"; + version = "1.6.3"; + src = fetchurl { + url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz"; + sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d"; + }; + }; + "http-errors-1.7.2" = { + name = "http-errors"; + packageName = "http-errors"; + version = "1.7.2"; + src = fetchurl { + url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz"; + sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg=="; + }; + }; + "http-parser-js-0.4.10" = { + name = "http-parser-js"; + packageName = "http-parser-js"; + version = "0.4.10"; + src = fetchurl { + url = "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz"; + sha1 = "92c9c1374c35085f75db359ec56cc257cbb93fa4"; + }; + }; + "http-proxy-1.18.0" = { + name = "http-proxy"; + packageName = "http-proxy"; + version = "1.18.0"; + src = fetchurl { + url = "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz"; + sha512 = "84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ=="; + }; + }; + "http-proxy-middleware-0.19.1" = { + name = "http-proxy-middleware"; + packageName = "http-proxy-middleware"; + version = "0.19.1"; + src = fetchurl { + url = "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz"; + sha512 = "yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q=="; + }; + }; + "http-signature-1.2.0" = { + name = "http-signature"; + packageName = "http-signature"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz"; + sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1"; + }; + }; + "https-browserify-1.0.0" = { + name = "https-browserify"; + packageName = "https-browserify"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz"; + sha1 = "ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"; + }; + }; + "iconv-lite-0.4.24" = { + name = "iconv-lite"; + packageName = "iconv-lite"; + version = "0.4.24"; + src = fetchurl { + url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz"; + sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA=="; + }; + }; + "ieee754-1.1.13" = { + name = "ieee754"; + packageName = "ieee754"; + version = "1.1.13"; + src = fetchurl { + url = "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz"; + sha512 = "4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg=="; + }; + }; + "iferr-0.1.5" = { + name = "iferr"; + packageName = "iferr"; + version = "0.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz"; + sha1 = "c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501"; + }; + }; + "ignore-3.3.10" = { + name = "ignore"; + packageName = "ignore"; + version = "3.3.10"; + src = fetchurl { + url = "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz"; + sha512 = "Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug=="; + }; + }; + "import-local-2.0.0" = { + name = "import-local"; + packageName = "import-local"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz"; + sha512 = "b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ=="; + }; + }; + "imurmurhash-0.1.4" = { + name = "imurmurhash"; + packageName = "imurmurhash"; + version = "0.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"; + sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea"; + }; + }; + "infer-owner-1.0.4" = { + name = "infer-owner"; + packageName = "infer-owner"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz"; + sha512 = "IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A=="; + }; + }; + "inflation-2.0.0" = { + name = "inflation"; + packageName = "inflation"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz"; + sha1 = "8b417e47c28f925a45133d914ca1fd389107f30f"; + }; + }; + "inflight-1.0.6" = { + name = "inflight"; + packageName = "inflight"; + version = "1.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz"; + sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9"; + }; + }; + "inherits-2.0.1" = { + name = "inherits"; + packageName = "inherits"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"; + sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1"; + }; + }; + "inherits-2.0.3" = { + name = "inherits"; + packageName = "inherits"; + version = "2.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz"; + sha1 = "633c2c83e3da42a502f52466022480f4208261de"; + }; + }; + "ini-1.3.5" = { + name = "ini"; + packageName = "ini"; + version = "1.3.5"; + src = fetchurl { + url = "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz"; + sha512 = "RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="; + }; + }; + "internal-ip-4.3.0" = { + name = "internal-ip"; + packageName = "internal-ip"; + version = "4.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz"; + sha512 = "S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg=="; + }; + }; + "interpret-1.2.0" = { + name = "interpret"; + packageName = "interpret"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz"; + sha512 = "mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw=="; + }; + }; + "invariant-2.2.4" = { + name = "invariant"; + packageName = "invariant"; + version = "2.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz"; + sha512 = "phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA=="; + }; + }; + "invert-kv-2.0.0" = { + name = "invert-kv"; + packageName = "invert-kv"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz"; + sha512 = "wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA=="; + }; + }; + "ip-1.1.5" = { + name = "ip"; + packageName = "ip"; + version = "1.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz"; + sha1 = "bdded70114290828c0a039e72ef25f5aaec4354a"; + }; + }; + "ip-regex-2.1.0" = { + name = "ip-regex"; + packageName = "ip-regex"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz"; + sha1 = "fa78bf5d2e6913c911ce9f819ee5146bb6d844e9"; + }; + }; + "ipaddr.js-1.9.0" = { + name = "ipaddr.js"; + packageName = "ipaddr.js"; + version = "1.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz"; + sha512 = "M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA=="; + }; + }; + "is-accessor-descriptor-0.1.6" = { + name = "is-accessor-descriptor"; + packageName = "is-accessor-descriptor"; + version = "0.1.6"; + src = fetchurl { + url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz"; + sha1 = "a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"; + }; + }; + "is-accessor-descriptor-1.0.0" = { + name = "is-accessor-descriptor"; + packageName = "is-accessor-descriptor"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz"; + sha512 = "m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ=="; + }; + }; + "is-arrayish-0.2.1" = { + name = "is-arrayish"; + packageName = "is-arrayish"; + version = "0.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"; + sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d"; + }; + }; + "is-binary-path-1.0.1" = { + name = "is-binary-path"; + packageName = "is-binary-path"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz"; + sha1 = "75f16642b480f187a711c814161fd3a4a7655898"; + }; + }; + "is-buffer-1.1.6" = { + name = "is-buffer"; + packageName = "is-buffer"; + version = "1.1.6"; + src = fetchurl { + url = "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz"; + sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="; + }; + }; + "is-buffer-2.0.3" = { + name = "is-buffer"; + packageName = "is-buffer"; + version = "2.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz"; + sha512 = "U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw=="; + }; + }; + "is-callable-1.1.4" = { + name = "is-callable"; + packageName = "is-callable"; + version = "1.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz"; + sha512 = "r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA=="; + }; + }; + "is-ci-2.0.0" = { + name = "is-ci"; + packageName = "is-ci"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz"; + sha512 = "YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w=="; + }; + }; + "is-data-descriptor-0.1.4" = { + name = "is-data-descriptor"; + packageName = "is-data-descriptor"; + version = "0.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz"; + sha1 = "0b5ee648388e2c860282e793f1856fec3f301b56"; + }; + }; + "is-data-descriptor-1.0.0" = { + name = "is-data-descriptor"; + packageName = "is-data-descriptor"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz"; + sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ=="; + }; + }; + "is-date-object-1.0.1" = { + name = "is-date-object"; + packageName = "is-date-object"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz"; + sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"; + }; + }; + "is-descriptor-0.1.6" = { + name = "is-descriptor"; + packageName = "is-descriptor"; + version = "0.1.6"; + src = fetchurl { + url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz"; + sha512 = "avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg=="; + }; + }; + "is-descriptor-1.0.2" = { + name = "is-descriptor"; + packageName = "is-descriptor"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz"; + sha512 = "2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg=="; + }; + }; + "is-expression-3.0.0" = { + name = "is-expression"; + packageName = "is-expression"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz"; + sha1 = "39acaa6be7fd1f3471dc42c7416e61c24317ac9f"; + }; + }; + "is-extendable-0.1.1" = { + name = "is-extendable"; + packageName = "is-extendable"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz"; + sha1 = "62b110e289a471418e3ec36a617d472e301dfc89"; + }; + }; + "is-extendable-1.0.1" = { + name = "is-extendable"; + packageName = "is-extendable"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz"; + sha512 = "arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA=="; + }; + }; + "is-extglob-2.1.1" = { + name = "is-extglob"; + packageName = "is-extglob"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"; + sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2"; + }; + }; + "is-finite-1.0.2" = { + name = "is-finite"; + packageName = "is-finite"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz"; + sha1 = "cc6677695602be550ef11e8b4aa6305342b6d0aa"; + }; + }; + "is-fullwidth-code-point-1.0.0" = { + name = "is-fullwidth-code-point"; + packageName = "is-fullwidth-code-point"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz"; + sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb"; + }; + }; + "is-fullwidth-code-point-2.0.0" = { + name = "is-fullwidth-code-point"; + packageName = "is-fullwidth-code-point"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz"; + sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f"; + }; + }; + "is-generator-fn-2.1.0" = { + name = "is-generator-fn"; + packageName = "is-generator-fn"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz"; + sha512 = "cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ=="; + }; + }; + "is-generator-function-1.0.7" = { + name = "is-generator-function"; + packageName = "is-generator-function"; + version = "1.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.7.tgz"; + sha512 = "YZc5EwyO4f2kWCax7oegfuSr9mFz1ZvieNYBEjmukLxgXfBUbxAWGVF7GZf0zidYtoBl3WvC07YK0wT76a+Rtw=="; + }; + }; + "is-glob-3.1.0" = { + name = "is-glob"; + packageName = "is-glob"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz"; + sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a"; + }; + }; + "is-glob-4.0.1" = { + name = "is-glob"; + packageName = "is-glob"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz"; + sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg=="; + }; + }; + "is-number-3.0.0" = { + name = "is-number"; + packageName = "is-number"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz"; + sha1 = "24fd6201a4782cf50561c810276afc7d12d71195"; + }; + }; + "is-path-cwd-2.2.0" = { + name = "is-path-cwd"; + packageName = "is-path-cwd"; + version = "2.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz"; + sha512 = "w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ=="; + }; + }; + "is-path-in-cwd-2.1.0" = { + name = "is-path-in-cwd"; + packageName = "is-path-in-cwd"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz"; + sha512 = "rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ=="; + }; + }; + "is-path-inside-2.1.0" = { + name = "is-path-inside"; + packageName = "is-path-inside"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz"; + sha512 = "wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg=="; + }; + }; + "is-plain-object-2.0.4" = { + name = "is-plain-object"; + packageName = "is-plain-object"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz"; + sha512 = "h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og=="; + }; + }; + "is-promise-2.1.0" = { + name = "is-promise"; + packageName = "is-promise"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz"; + sha1 = "79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"; + }; + }; + "is-regex-1.0.4" = { + name = "is-regex"; + packageName = "is-regex"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz"; + sha1 = "5517489b547091b0930e095654ced25ee97e9491"; + }; + }; + "is-stream-1.1.0" = { + name = "is-stream"; + packageName = "is-stream"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz"; + sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"; + }; + }; + "is-symbol-1.0.2" = { + name = "is-symbol"; + packageName = "is-symbol"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz"; + sha512 = "HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw=="; + }; + }; + "is-typedarray-1.0.0" = { + name = "is-typedarray"; + packageName = "is-typedarray"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz"; + sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a"; + }; + }; + "is-whitespace-0.3.0" = { + name = "is-whitespace"; + packageName = "is-whitespace"; + version = "0.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz"; + sha1 = "1639ecb1be036aec69a54cbb401cfbed7114ab7f"; + }; + }; + "is-windows-1.0.2" = { + name = "is-windows"; + packageName = "is-windows"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz"; + sha512 = "eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="; + }; + }; + "is-wsl-1.1.0" = { + name = "is-wsl"; + packageName = "is-wsl"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz"; + sha1 = "1f16e4aa22b04d1336b66188a66af3c600c3a66d"; + }; + }; + "isarray-0.0.1" = { + name = "isarray"; + packageName = "isarray"; + version = "0.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz"; + sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf"; + }; + }; + "isarray-1.0.0" = { + name = "isarray"; + packageName = "isarray"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz"; + sha1 = "bb935d48582cba168c06834957a54a3e07124f11"; + }; + }; + "isexe-2.0.0" = { + name = "isexe"; + packageName = "isexe"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"; + sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10"; + }; + }; + "isobject-2.1.0" = { + name = "isobject"; + packageName = "isobject"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz"; + sha1 = "f065561096a3f1da2ef46272f815c840d87e0c89"; + }; + }; + "isobject-3.0.1" = { + name = "isobject"; + packageName = "isobject"; + version = "3.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz"; + sha1 = "4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"; + }; + }; + "isomorphic-ws-4.0.1" = { + name = "isomorphic-ws"; + packageName = "isomorphic-ws"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz"; + sha512 = "BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w=="; + }; + }; + "isstream-0.1.2" = { + name = "isstream"; + packageName = "isstream"; + version = "0.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz"; + sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a"; + }; + }; + "istanbul-lib-coverage-2.0.5" = { + name = "istanbul-lib-coverage"; + packageName = "istanbul-lib-coverage"; + version = "2.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz"; + sha512 = "8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA=="; + }; + }; + "istanbul-lib-instrument-3.3.0" = { + name = "istanbul-lib-instrument"; + packageName = "istanbul-lib-instrument"; + version = "3.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz"; + sha512 = "5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA=="; + }; + }; + "istanbul-lib-report-2.0.8" = { + name = "istanbul-lib-report"; + packageName = "istanbul-lib-report"; + version = "2.0.8"; + src = fetchurl { + url = "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz"; + sha512 = "fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ=="; + }; + }; + "istanbul-lib-source-maps-3.0.6" = { + name = "istanbul-lib-source-maps"; + packageName = "istanbul-lib-source-maps"; + version = "3.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz"; + sha512 = "R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw=="; + }; + }; + "istanbul-reports-2.2.6" = { + name = "istanbul-reports"; + packageName = "istanbul-reports"; + version = "2.2.6"; + src = fetchurl { + url = "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz"; + sha512 = "SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA=="; + }; + }; + "jest-24.8.0" = { + name = "jest"; + packageName = "jest"; + version = "24.8.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest/-/jest-24.8.0.tgz"; + sha512 = "o0HM90RKFRNWmAWvlyV8i5jGZ97pFwkeVoGvPW1EtLTgJc2+jcuqcbbqcSZLE/3f2S5pt0y2ZBETuhpWNl1Reg=="; + }; + }; + "jest-changed-files-24.9.0" = { + name = "jest-changed-files"; + packageName = "jest-changed-files"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz"; + sha512 = "6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg=="; + }; + }; + "jest-cli-24.9.0" = { + name = "jest-cli"; + packageName = "jest-cli"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-cli/-/jest-cli-24.9.0.tgz"; + sha512 = "+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg=="; + }; + }; + "jest-config-24.9.0" = { + name = "jest-config"; + packageName = "jest-config"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-config/-/jest-config-24.9.0.tgz"; + sha512 = "RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ=="; + }; + }; + "jest-diff-24.9.0" = { + name = "jest-diff"; + packageName = "jest-diff"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-diff/-/jest-diff-24.9.0.tgz"; + sha512 = "qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ=="; + }; + }; + "jest-docblock-24.9.0" = { + name = "jest-docblock"; + packageName = "jest-docblock"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.9.0.tgz"; + sha512 = "F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA=="; + }; + }; + "jest-each-24.9.0" = { + name = "jest-each"; + packageName = "jest-each"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-each/-/jest-each-24.9.0.tgz"; + sha512 = "ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog=="; + }; + }; + "jest-environment-jsdom-24.9.0" = { + name = "jest-environment-jsdom"; + packageName = "jest-environment-jsdom"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz"; + sha512 = "Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA=="; + }; + }; + "jest-environment-node-24.9.0" = { + name = "jest-environment-node"; + packageName = "jest-environment-node"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.9.0.tgz"; + sha512 = "6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA=="; + }; + }; + "jest-get-type-24.9.0" = { + name = "jest-get-type"; + packageName = "jest-get-type"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz"; + sha512 = "lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q=="; + }; + }; + "jest-haste-map-24.9.0" = { + name = "jest-haste-map"; + packageName = "jest-haste-map"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz"; + sha512 = "kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ=="; + }; + }; + "jest-jasmine2-24.9.0" = { + name = "jest-jasmine2"; + packageName = "jest-jasmine2"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz"; + sha512 = "Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw=="; + }; + }; + "jest-leak-detector-24.9.0" = { + name = "jest-leak-detector"; + packageName = "jest-leak-detector"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz"; + sha512 = "tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA=="; + }; + }; + "jest-matcher-utils-24.9.0" = { + name = "jest-matcher-utils"; + packageName = "jest-matcher-utils"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz"; + sha512 = "OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA=="; + }; + }; + "jest-message-util-24.9.0" = { + name = "jest-message-util"; + packageName = "jest-message-util"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz"; + sha512 = "oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw=="; + }; + }; + "jest-mock-24.9.0" = { + name = "jest-mock"; + packageName = "jest-mock"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz"; + sha512 = "3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w=="; + }; + }; + "jest-pnp-resolver-1.2.1" = { + name = "jest-pnp-resolver"; + packageName = "jest-pnp-resolver"; + version = "1.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz"; + sha512 = "pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ=="; + }; + }; + "jest-regex-util-24.9.0" = { + name = "jest-regex-util"; + packageName = "jest-regex-util"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.9.0.tgz"; + sha512 = "05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA=="; + }; + }; + "jest-resolve-24.9.0" = { + name = "jest-resolve"; + packageName = "jest-resolve"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.9.0.tgz"; + sha512 = "TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ=="; + }; + }; + "jest-resolve-dependencies-24.9.0" = { + name = "jest-resolve-dependencies"; + packageName = "jest-resolve-dependencies"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz"; + sha512 = "Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g=="; + }; + }; + "jest-runner-24.9.0" = { + name = "jest-runner"; + packageName = "jest-runner"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-runner/-/jest-runner-24.9.0.tgz"; + sha512 = "KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg=="; + }; + }; + "jest-runtime-24.9.0" = { + name = "jest-runtime"; + packageName = "jest-runtime"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.9.0.tgz"; + sha512 = "8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw=="; + }; + }; + "jest-serializer-24.9.0" = { + name = "jest-serializer"; + packageName = "jest-serializer"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz"; + sha512 = "DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ=="; + }; + }; + "jest-snapshot-24.9.0" = { + name = "jest-snapshot"; + packageName = "jest-snapshot"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.9.0.tgz"; + sha512 = "uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew=="; + }; + }; + "jest-util-24.9.0" = { + name = "jest-util"; + packageName = "jest-util"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz"; + sha512 = "x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg=="; + }; + }; + "jest-validate-24.9.0" = { + name = "jest-validate"; + packageName = "jest-validate"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz"; + sha512 = "HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ=="; + }; + }; + "jest-watcher-24.9.0" = { + name = "jest-watcher"; + packageName = "jest-watcher"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.9.0.tgz"; + sha512 = "+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw=="; + }; + }; + "jest-worker-24.9.0" = { + name = "jest-worker"; + packageName = "jest-worker"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz"; + sha512 = "51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw=="; + }; + }; + "js-beautify-1.10.2" = { + name = "js-beautify"; + packageName = "js-beautify"; + version = "1.10.2"; + src = fetchurl { + url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.2.tgz"; + sha512 = "ZtBYyNUYJIsBWERnQP0rPN9KjkrDfJcMjuVGcvXOUJrD1zmOGwhRwQ4msG+HJ+Ni/FA7+sRQEMYVzdTQDvnzvQ=="; + }; + }; + "js-stringify-1.0.2" = { + name = "js-stringify"; + packageName = "js-stringify"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz"; + sha1 = "1736fddfd9724f28a3682adc6230ae7e4e9679db"; + }; + }; + "js-tokens-3.0.2" = { + name = "js-tokens"; + packageName = "js-tokens"; + version = "3.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz"; + sha1 = "9866df395102130e38f7f996bceb65443209c25b"; + }; + }; + "js-tokens-4.0.0" = { + name = "js-tokens"; + packageName = "js-tokens"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"; + sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="; + }; + }; + "js-yaml-3.13.1" = { + name = "js-yaml"; + packageName = "js-yaml"; + version = "3.13.1"; + src = fetchurl { + url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz"; + sha512 = "YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw=="; + }; + }; + "jsbn-0.1.1" = { + name = "jsbn"; + packageName = "jsbn"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz"; + sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"; + }; + }; + "jsdom-11.12.0" = { + name = "jsdom"; + packageName = "jsdom"; + version = "11.12.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz"; + sha512 = "y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw=="; + }; + }; + "jsesc-0.5.0" = { + name = "jsesc"; + packageName = "jsesc"; + version = "0.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz"; + sha1 = "e7dee66e35d6fc16f710fe91d5cf69f70f08911d"; + }; + }; + "jsesc-1.3.0" = { + name = "jsesc"; + packageName = "jsesc"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz"; + sha1 = "46c3fec8c1892b12b0833db9bc7622176dbab34b"; + }; + }; + "jsesc-2.5.2" = { + name = "jsesc"; + packageName = "jsesc"; + version = "2.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz"; + sha512 = "OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="; + }; + }; + "json-parse-better-errors-1.0.2" = { + name = "json-parse-better-errors"; + packageName = "json-parse-better-errors"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz"; + sha512 = "mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw=="; + }; + }; + "json-schema-0.2.3" = { + name = "json-schema"; + packageName = "json-schema"; + version = "0.2.3"; + src = fetchurl { + url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz"; + sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13"; + }; + }; + "json-schema-traverse-0.4.1" = { + name = "json-schema-traverse"; + packageName = "json-schema-traverse"; + version = "0.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz"; + sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="; + }; + }; + "json-stream-1.0.0" = { + name = "json-stream"; + packageName = "json-stream"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/json-stream/-/json-stream-1.0.0.tgz"; + sha1 = "1a3854e28d2bbeeab31cc7ddf683d2ddc5652708"; + }; + }; + "json-stringify-safe-5.0.1" = { + name = "json-stringify-safe"; + packageName = "json-stringify-safe"; + version = "5.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz"; + sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"; + }; + }; + "json3-3.3.3" = { + name = "json3"; + packageName = "json3"; + version = "3.3.3"; + src = fetchurl { + url = "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz"; + sha512 = "c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA=="; + }; + }; + "json5-0.5.1" = { + name = "json5"; + packageName = "json5"; + version = "0.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz"; + sha1 = "1eade7acc012034ad84e2396767ead9fa5495821"; + }; + }; + "json5-1.0.1" = { + name = "json5"; + packageName = "json5"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz"; + sha512 = "aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow=="; + }; + }; + "json5-2.1.0" = { + name = "json5"; + packageName = "json5"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz"; + sha512 = "8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ=="; + }; + }; + "jsonfile-4.0.0" = { + name = "jsonfile"; + packageName = "jsonfile"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz"; + sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb"; + }; + }; + "jsonpath-plus-0.19.0" = { + name = "jsonpath-plus"; + packageName = "jsonpath-plus"; + version = "0.19.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-0.19.0.tgz"; + sha512 = "GSVwsrzW9LsA5lzsqe4CkuZ9wp+kxBb2GwNniaWzI2YFn5Ig42rSW8ZxVpWXaAfakXNrx5pgY5AbQq7kzX29kg=="; + }; + }; + "jsprim-1.4.1" = { + name = "jsprim"; + packageName = "jsprim"; + version = "1.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz"; + sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"; + }; + }; + "jstransformer-1.0.0" = { + name = "jstransformer"; + packageName = "jstransformer"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz"; + sha1 = "ed8bf0921e2f3f1ed4d5c1a44f68709ed24722c3"; + }; + }; + "keygrip-1.0.3" = { + name = "keygrip"; + packageName = "keygrip"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/keygrip/-/keygrip-1.0.3.tgz"; + sha512 = "/PpesirAIfaklxUzp4Yb7xBper9MwP6hNRA6BGGUFCgbJ+BM5CKBtsoxinNXkLHAr+GXS1/lSlF2rP7cv5Fl+g=="; + }; + }; + "killable-1.0.1" = { + name = "killable"; + packageName = "killable"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz"; + sha512 = "LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg=="; + }; + }; + "kind-of-3.2.2" = { + name = "kind-of"; + packageName = "kind-of"; + version = "3.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz"; + sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64"; + }; + }; + "kind-of-4.0.0" = { + name = "kind-of"; + packageName = "kind-of"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz"; + sha1 = "20813df3d712928b207378691a45066fae72dd57"; + }; + }; + "kind-of-5.1.0" = { + name = "kind-of"; + packageName = "kind-of"; + version = "5.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz"; + sha512 = "NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="; + }; + }; + "kind-of-6.0.2" = { + name = "kind-of"; + packageName = "kind-of"; + version = "6.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz"; + sha512 = "s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA=="; + }; + }; + "kleur-3.0.3" = { + name = "kleur"; + packageName = "kleur"; + version = "3.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz"; + sha512 = "eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w=="; + }; + }; + "koa-2.7.0" = { + name = "koa"; + packageName = "koa"; + version = "2.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa/-/koa-2.7.0.tgz"; + sha512 = "7ojD05s2Q+hFudF8tDLZ1CpCdVZw8JQELWSkcfG9bdtoTDzMmkRF6BQBU7JzIzCCOY3xd3tftiy/loHBUYaY2Q=="; + }; + }; + "koa-body-4.1.0" = { + name = "koa-body"; + packageName = "koa-body"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-body/-/koa-body-4.1.0.tgz"; + sha512 = "rWkMfMaCjFmIAMohtjlrg4BqDzcotK5BdZhiwJu1ONuR1ceoFUjnH3wp0hEV39HuBlc9tI3eUUFMK4Cp6ccFtA=="; + }; + }; + "koa-compose-3.2.1" = { + name = "koa-compose"; + packageName = "koa-compose"; + version = "3.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz"; + sha1 = "a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7"; + }; + }; + "koa-compose-4.1.0" = { + name = "koa-compose"; + packageName = "koa-compose"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz"; + sha512 = "8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw=="; + }; + }; + "koa-convert-1.2.0" = { + name = "koa-convert"; + packageName = "koa-convert"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz"; + sha1 = "da40875df49de0539098d1700b50820cebcd21d0"; + }; + }; + "koa-is-json-1.0.0" = { + name = "koa-is-json"; + packageName = "koa-is-json"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz"; + sha1 = "273c07edcdcb8df6a2c1ab7d59ee76491451ec14"; + }; + }; + "koa-router-7.4.0" = { + name = "koa-router"; + packageName = "koa-router"; + version = "7.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-router/-/koa-router-7.4.0.tgz"; + sha512 = "IWhaDXeAnfDBEpWS6hkGdZ1ablgr6Q6pGdXCyK38RbzuH4LkUOpPqPw+3f8l8aTDrQmBQ7xJc0bs2yV4dzcO+g=="; + }; + }; + "koa-send-5.0.0" = { + name = "koa-send"; + packageName = "koa-send"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-send/-/koa-send-5.0.0.tgz"; + sha512 = "90ZotV7t0p3uN9sRwW2D484rAaKIsD8tAVtypw/aBU+ryfV+fR2xrcAwhI8Wl6WRkojLUs/cB9SBSCuIb+IanQ=="; + }; + }; + "koa-static-5.0.0" = { + name = "koa-static"; + packageName = "koa-static"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz"; + sha512 = "UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ=="; + }; + }; + "koa-views-6.2.0" = { + name = "koa-views"; + packageName = "koa-views"; + version = "6.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/koa-views/-/koa-views-6.2.0.tgz"; + sha512 = "Y1rCFd4I5uSjZg0r4Zzs4hDjYTSGHhdBM5DuEhccWzknWikwOfc2ph/DkrocKhtQfFbLPHkkz/Ox38AL+p99BA=="; + }; + }; + "lazy-cache-1.0.4" = { + name = "lazy-cache"; + packageName = "lazy-cache"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz"; + sha1 = "a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"; + }; + }; + "lcid-2.0.0" = { + name = "lcid"; + packageName = "lcid"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz"; + sha512 = "avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA=="; + }; + }; + "left-pad-1.3.0" = { + name = "left-pad"; + packageName = "left-pad"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz"; + sha512 = "XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA=="; + }; + }; + "leven-3.1.0" = { + name = "leven"; + packageName = "leven"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz"; + sha512 = "qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A=="; + }; + }; + "levn-0.3.0" = { + name = "levn"; + packageName = "levn"; + version = "0.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz"; + sha1 = "3b09924edf9f083c0490fdd4c0bc4421e04764ee"; + }; + }; + "load-json-file-4.0.0" = { + name = "load-json-file"; + packageName = "load-json-file"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz"; + sha1 = "2f5f45ab91e33216234fd53adab668eb4ec0993b"; + }; + }; + "loader-runner-2.4.0" = { + name = "loader-runner"; + packageName = "loader-runner"; + version = "2.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz"; + sha512 = "Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw=="; + }; + }; + "loader-utils-1.2.3" = { + name = "loader-utils"; + packageName = "loader-utils"; + version = "1.2.3"; + src = fetchurl { + url = "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz"; + sha512 = "fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA=="; + }; + }; + "locate-path-2.0.0" = { + name = "locate-path"; + packageName = "locate-path"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz"; + sha1 = "2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"; + }; + }; + "locate-path-3.0.0" = { + name = "locate-path"; + packageName = "locate-path"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz"; + sha512 = "7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A=="; + }; + }; + "lodash-4.17.15" = { + name = "lodash"; + packageName = "lodash"; + version = "4.17.15"; + src = fetchurl { + url = "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz"; + sha512 = "8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="; + }; + }; + "lodash.camelcase-4.3.0" = { + name = "lodash.camelcase"; + packageName = "lodash.camelcase"; + version = "4.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz"; + sha1 = "b28aa6288a2b9fc651035c7711f65ab6190331a6"; + }; + }; + "lodash.clonedeep-4.5.0" = { + name = "lodash.clonedeep"; + packageName = "lodash.clonedeep"; + version = "4.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz"; + sha1 = "e23f3f9c4f8fbdde872529c1071857a086e5ccef"; + }; + }; + "lodash.sortby-4.7.0" = { + name = "lodash.sortby"; + packageName = "lodash.sortby"; + version = "4.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz"; + sha1 = "edd14c824e2cc9c1e0b0a1b42bb5210516a42438"; + }; + }; + "log-symbols-2.2.0" = { + name = "log-symbols"; + packageName = "log-symbols"; + version = "2.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz"; + sha512 = "VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg=="; + }; + }; + "loglevel-1.6.4" = { + name = "loglevel"; + packageName = "loglevel"; + version = "1.6.4"; + src = fetchurl { + url = "https://registry.npmjs.org/loglevel/-/loglevel-1.6.4.tgz"; + sha512 = "p0b6mOGKcGa+7nnmKbpzR6qloPbrgLcnio++E+14Vo/XffOGwZtRpUhr8dTH/x2oCMmEoIU0Zwm3ZauhvYD17g=="; + }; + }; + "loglevelnext-1.0.5" = { + name = "loglevelnext"; + packageName = "loglevelnext"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz"; + sha512 = "V/73qkPuJmx4BcBF19xPBr+0ZRVBhc4POxvZTZdMeXpJ4NItXSJ/MSwuFT0kQJlCbXvdlZoQQ/418bS1y9Jh6A=="; + }; + }; + "longest-1.0.1" = { + name = "longest"; + packageName = "longest"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz"; + sha1 = "30a0b2da38f73770e8294a0d22e6625ed77d0097"; + }; + }; + "loose-envify-1.4.0" = { + name = "loose-envify"; + packageName = "loose-envify"; + version = "1.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz"; + sha512 = "lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q=="; + }; + }; + "lru-cache-4.1.5" = { + name = "lru-cache"; + packageName = "lru-cache"; + version = "4.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz"; + sha512 = "sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g=="; + }; + }; + "lru-cache-5.1.1" = { + name = "lru-cache"; + packageName = "lru-cache"; + version = "5.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz"; + sha512 = "KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="; + }; + }; + "make-dir-1.3.0" = { + name = "make-dir"; + packageName = "make-dir"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz"; + sha512 = "2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ=="; + }; + }; + "make-dir-2.1.0" = { + name = "make-dir"; + packageName = "make-dir"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz"; + sha512 = "LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA=="; + }; + }; + "make-error-1.3.5" = { + name = "make-error"; + packageName = "make-error"; + version = "1.3.5"; + src = fetchurl { + url = "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz"; + sha512 = "c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g=="; + }; + }; + "makeerror-1.0.11" = { + name = "makeerror"; + packageName = "makeerror"; + version = "1.0.11"; + src = fetchurl { + url = "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz"; + sha1 = "e01a5c9109f2af79660e4e8b9587790184f5a96c"; + }; + }; + "mamacro-0.0.3" = { + name = "mamacro"; + packageName = "mamacro"; + version = "0.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz"; + sha512 = "qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA=="; + }; + }; + "map-age-cleaner-0.1.3" = { + name = "map-age-cleaner"; + packageName = "map-age-cleaner"; + version = "0.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz"; + sha512 = "bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w=="; + }; + }; + "map-cache-0.2.2" = { + name = "map-cache"; + packageName = "map-cache"; + version = "0.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz"; + sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"; + }; + }; + "map-visit-1.0.0" = { + name = "map-visit"; + packageName = "map-visit"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz"; + sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"; + }; + }; + "md5.js-1.3.5" = { + name = "md5.js"; + packageName = "md5.js"; + version = "1.3.5"; + src = fetchurl { + url = "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz"; + sha512 = "xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg=="; + }; + }; + "media-typer-0.3.0" = { + name = "media-typer"; + packageName = "media-typer"; + version = "0.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz"; + sha1 = "8710d7af0aa626f8fffa1ce00168545263255748"; + }; + }; + "mem-4.3.0" = { + name = "mem"; + packageName = "mem"; + version = "4.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz"; + sha512 = "qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w=="; + }; + }; + "memory-fs-0.4.1" = { + name = "memory-fs"; + packageName = "memory-fs"; + version = "0.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz"; + sha1 = "3a9a20b8462523e447cfbc7e8bb80ed667bfc552"; + }; + }; + "merge-descriptors-1.0.1" = { + name = "merge-descriptors"; + packageName = "merge-descriptors"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz"; + sha1 = "b00aaa556dd8b44568150ec9d1b953f3f90cbb61"; + }; + }; + "merge-stream-2.0.0" = { + name = "merge-stream"; + packageName = "merge-stream"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz"; + sha512 = "abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="; + }; + }; + "methods-1.1.2" = { + name = "methods"; + packageName = "methods"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz"; + sha1 = "5529a4d67654134edcc5266656835b0f851afcee"; + }; + }; + "micromatch-3.1.10" = { + name = "micromatch"; + packageName = "micromatch"; + version = "3.1.10"; + src = fetchurl { + url = "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz"; + sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg=="; + }; + }; + "miller-rabin-4.0.1" = { + name = "miller-rabin"; + packageName = "miller-rabin"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz"; + sha512 = "115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA=="; + }; + }; + "mime-1.6.0" = { + name = "mime"; + packageName = "mime"; + version = "1.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz"; + sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="; + }; + }; + "mime-2.4.4" = { + name = "mime"; + packageName = "mime"; + version = "2.4.4"; + src = fetchurl { + url = "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz"; + sha512 = "LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA=="; + }; + }; + "mime-db-1.40.0" = { + name = "mime-db"; + packageName = "mime-db"; + version = "1.40.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz"; + sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA=="; + }; + }; + "mime-types-2.1.24" = { + name = "mime-types"; + packageName = "mime-types"; + version = "2.1.24"; + src = fetchurl { + url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz"; + sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ=="; + }; + }; + "mimic-fn-1.2.0" = { + name = "mimic-fn"; + packageName = "mimic-fn"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz"; + sha512 = "jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ=="; + }; + }; + "mimic-fn-2.1.0" = { + name = "mimic-fn"; + packageName = "mimic-fn"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"; + sha512 = "OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="; + }; + }; + "minimalistic-assert-1.0.1" = { + name = "minimalistic-assert"; + packageName = "minimalistic-assert"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz"; + sha512 = "UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="; + }; + }; + "minimalistic-crypto-utils-1.0.1" = { + name = "minimalistic-crypto-utils"; + packageName = "minimalistic-crypto-utils"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz"; + sha1 = "f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"; + }; + }; + "minimatch-3.0.4" = { + name = "minimatch"; + packageName = "minimatch"; + version = "3.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz"; + sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA=="; + }; + }; + "minimist-0.0.10" = { + name = "minimist"; + packageName = "minimist"; + version = "0.0.10"; + src = fetchurl { + url = "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz"; + sha1 = "de3f98543dbf96082be48ad1a0c7cda836301dcf"; + }; + }; + "minimist-0.0.8" = { + name = "minimist"; + packageName = "minimist"; + version = "0.0.8"; + src = fetchurl { + url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz"; + sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d"; + }; + }; + "minimist-1.2.0" = { + name = "minimist"; + packageName = "minimist"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz"; + sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284"; + }; + }; + "mississippi-2.0.0" = { + name = "mississippi"; + packageName = "mississippi"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz"; + sha512 = "zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw=="; + }; + }; + "mississippi-3.0.0" = { + name = "mississippi"; + packageName = "mississippi"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz"; + sha512 = "x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA=="; + }; + }; + "mixin-deep-1.3.2" = { + name = "mixin-deep"; + packageName = "mixin-deep"; + version = "1.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz"; + sha512 = "WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA=="; + }; + }; + "mkdirp-0.5.1" = { + name = "mkdirp"; + packageName = "mkdirp"; + version = "0.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz"; + sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903"; + }; + }; + "moment-2.24.0" = { + name = "moment"; + packageName = "moment"; + version = "2.24.0"; + src = fetchurl { + url = "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz"; + sha512 = "bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg=="; + }; + }; + "moment-timezone-0.5.26" = { + name = "moment-timezone"; + packageName = "moment-timezone"; + version = "0.5.26"; + src = fetchurl { + url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.26.tgz"; + sha512 = "sFP4cgEKTCymBBKgoxZjYzlSovC20Y6J7y3nanDc5RoBIXKlZhoYwBoZGe3flwU6A372AcRwScH8KiwV6zjy1g=="; + }; + }; + "move-concurrently-1.0.1" = { + name = "move-concurrently"; + packageName = "move-concurrently"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz"; + sha1 = "be2c005fda32e0b29af1f05d7c4b33214c701f92"; + }; + }; + "ms-2.0.0" = { + name = "ms"; + packageName = "ms"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"; + sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8"; + }; + }; + "ms-2.1.1" = { + name = "ms"; + packageName = "ms"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz"; + sha512 = "tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="; + }; + }; + "ms-2.1.2" = { + name = "ms"; + packageName = "ms"; + version = "2.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"; + sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="; + }; + }; + "multicast-dns-6.2.3" = { + name = "multicast-dns"; + packageName = "multicast-dns"; + version = "6.2.3"; + src = fetchurl { + url = "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz"; + sha512 = "ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g=="; + }; + }; + "multicast-dns-service-types-1.1.0" = { + name = "multicast-dns-service-types"; + packageName = "multicast-dns-service-types"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz"; + sha1 = "899f11d9686e5e05cb91b35d5f0e63b773cfc901"; + }; + }; + "mz-2.7.0" = { + name = "mz"; + packageName = "mz"; + version = "2.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz"; + sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q=="; + }; + }; + "nan-2.14.0" = { + name = "nan"; + packageName = "nan"; + version = "2.14.0"; + src = fetchurl { + url = "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz"; + sha512 = "INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg=="; + }; + }; + "nanomatch-1.2.13" = { + name = "nanomatch"; + packageName = "nanomatch"; + version = "1.2.13"; + src = fetchurl { + url = "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz"; + sha512 = "fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA=="; + }; + }; + "natural-compare-1.4.0" = { + name = "natural-compare"; + packageName = "natural-compare"; + version = "1.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz"; + sha1 = "4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"; + }; + }; + "negotiator-0.6.2" = { + name = "negotiator"; + packageName = "negotiator"; + version = "0.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz"; + sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw=="; + }; + }; + "neo-async-2.6.1" = { + name = "neo-async"; + packageName = "neo-async"; + version = "2.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz"; + sha512 = "iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw=="; + }; + }; + "next-tick-1.0.0" = { + name = "next-tick"; + packageName = "next-tick"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz"; + sha1 = "ca86d1fe8828169b0120208e3dc8424b9db8342c"; + }; + }; + "nice-try-1.0.5" = { + name = "nice-try"; + packageName = "nice-try"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz"; + sha512 = "1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ=="; + }; + }; + "node-forge-0.8.2" = { + name = "node-forge"; + packageName = "node-forge"; + version = "0.8.2"; + src = fetchurl { + url = "https://registry.npmjs.org/node-forge/-/node-forge-0.8.2.tgz"; + sha512 = "mXQ9GBq1N3uDCyV1pdSzgIguwgtVpM7f5/5J4ipz12PKWElmPpVWLDuWl8iXmhysr21+WmX/OJ5UKx82wjomgg=="; + }; + }; + "node-int64-0.4.0" = { + name = "node-int64"; + packageName = "node-int64"; + version = "0.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"; + sha1 = "87a9065cdb355d3182d8f94ce11188b825c68a3b"; + }; + }; + "node-libs-browser-2.2.1" = { + name = "node-libs-browser"; + packageName = "node-libs-browser"; + version = "2.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz"; + sha512 = "h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q=="; + }; + }; + "node-modules-regexp-1.0.0" = { + name = "node-modules-regexp"; + packageName = "node-modules-regexp"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz"; + sha1 = "8d9dbe28964a4ac5712e9131642107c71e90ec40"; + }; + }; + "node-notifier-5.4.3" = { + name = "node-notifier"; + packageName = "node-notifier"; + version = "5.4.3"; + src = fetchurl { + url = "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz"; + sha512 = "M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q=="; + }; + }; + "nopt-4.0.1" = { + name = "nopt"; + packageName = "nopt"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz"; + sha1 = "d0d4685afd5415193c8c7505602d0d17cd64474d"; + }; + }; + "normalize-package-data-2.5.0" = { + name = "normalize-package-data"; + packageName = "normalize-package-data"; + version = "2.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz"; + sha512 = "/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA=="; + }; + }; + "normalize-path-2.1.1" = { + name = "normalize-path"; + packageName = "normalize-path"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz"; + sha1 = "1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"; + }; + }; + "normalize-path-3.0.0" = { + name = "normalize-path"; + packageName = "normalize-path"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz"; + sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="; + }; + }; + "npm-run-path-2.0.2" = { + name = "npm-run-path"; + packageName = "npm-run-path"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz"; + sha1 = "35a9232dfa35d7067b4cb2ddf2357b1871536c5f"; + }; + }; + "number-is-nan-1.0.1" = { + name = "number-is-nan"; + packageName = "number-is-nan"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz"; + sha1 = "097b602b53422a522c1afb8790318336941a011d"; + }; + }; + "nwsapi-2.1.4" = { + name = "nwsapi"; + packageName = "nwsapi"; + version = "2.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz"; + sha512 = "iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw=="; + }; + }; + "oauth-sign-0.9.0" = { + name = "oauth-sign"; + packageName = "oauth-sign"; + version = "0.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz"; + sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="; + }; + }; + "object-assign-4.1.1" = { + name = "object-assign"; + packageName = "object-assign"; + version = "4.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"; + sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863"; + }; + }; + "object-copy-0.1.0" = { + name = "object-copy"; + packageName = "object-copy"; + version = "0.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz"; + sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c"; + }; + }; + "object-inspect-1.6.0" = { + name = "object-inspect"; + packageName = "object-inspect"; + version = "1.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz"; + sha512 = "GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ=="; + }; + }; + "object-keys-1.1.1" = { + name = "object-keys"; + packageName = "object-keys"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"; + sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="; + }; + }; + "object-visit-1.0.1" = { + name = "object-visit"; + packageName = "object-visit"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz"; + sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb"; + }; + }; + "object.assign-4.1.0" = { + name = "object.assign"; + packageName = "object.assign"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz"; + sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w=="; + }; + }; + "object.getownpropertydescriptors-2.0.3" = { + name = "object.getownpropertydescriptors"; + packageName = "object.getownpropertydescriptors"; + version = "2.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz"; + sha1 = "8758c846f5b407adab0f236e0986f14b051caa16"; + }; + }; + "object.pick-1.3.0" = { + name = "object.pick"; + packageName = "object.pick"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz"; + sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747"; + }; + }; + "obuf-1.1.2" = { + name = "obuf"; + packageName = "obuf"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz"; + sha512 = "PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg=="; + }; + }; + "on-finished-2.3.0" = { + name = "on-finished"; + packageName = "on-finished"; + version = "2.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz"; + sha1 = "20f1336481b083cd75337992a16971aa2d906947"; + }; + }; + "on-headers-1.0.2" = { + name = "on-headers"; + packageName = "on-headers"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz"; + sha512 = "pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA=="; + }; + }; + "once-1.4.0" = { + name = "once"; + packageName = "once"; + version = "1.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz"; + sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1"; + }; + }; + "onetime-2.0.1" = { + name = "onetime"; + packageName = "onetime"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz"; + sha1 = "067428230fd67443b2794b22bba528b6867962d4"; + }; + }; + "only-0.0.2" = { + name = "only"; + packageName = "only"; + version = "0.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/only/-/only-0.0.2.tgz"; + sha1 = "2afde84d03e50b9a8edc444e30610a70295edfb4"; + }; + }; + "opener-1.5.1" = { + name = "opener"; + packageName = "opener"; + version = "1.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/opener/-/opener-1.5.1.tgz"; + sha512 = "goYSy5c2UXE4Ra1xixabeVh1guIX/ZV/YokJksb6q2lubWu6UbvPQ20p542/sFIll1nl8JnCyK9oBaOcCWXwvA=="; + }; + }; + "opn-5.5.0" = { + name = "opn"; + packageName = "opn"; + version = "5.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz"; + sha512 = "PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA=="; + }; + }; + "optimist-0.6.1" = { + name = "optimist"; + packageName = "optimist"; + version = "0.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz"; + sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686"; + }; + }; + "optionator-0.8.2" = { + name = "optionator"; + packageName = "optionator"; + version = "0.8.2"; + src = fetchurl { + url = "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz"; + sha1 = "364c5e409d3f4d6301d6c0b4c05bba50180aeb64"; + }; + }; + "ora-3.4.0" = { + name = "ora"; + packageName = "ora"; + version = "3.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz"; + sha512 = "eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg=="; + }; + }; + "original-1.0.2" = { + name = "original"; + packageName = "original"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/original/-/original-1.0.2.tgz"; + sha512 = "hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg=="; + }; + }; + "os-browserify-0.3.0" = { + name = "os-browserify"; + packageName = "os-browserify"; + version = "0.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz"; + sha1 = "854373c7f5c2315914fc9bfc6bd8238fdda1ec27"; + }; + }; + "os-homedir-1.0.2" = { + name = "os-homedir"; + packageName = "os-homedir"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz"; + sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3"; + }; + }; + "os-locale-3.1.0" = { + name = "os-locale"; + packageName = "os-locale"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz"; + sha512 = "Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q=="; + }; + }; + "os-tmpdir-1.0.2" = { + name = "os-tmpdir"; + packageName = "os-tmpdir"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz"; + sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274"; + }; + }; + "osenv-0.1.5" = { + name = "osenv"; + packageName = "osenv"; + version = "0.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz"; + sha512 = "0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g=="; + }; + }; + "p-defer-1.0.0" = { + name = "p-defer"; + packageName = "p-defer"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz"; + sha1 = "9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c"; + }; + }; + "p-each-series-1.0.0" = { + name = "p-each-series"; + packageName = "p-each-series"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz"; + sha1 = "930f3d12dd1f50e7434457a22cd6f04ac6ad7f71"; + }; + }; + "p-finally-1.0.0" = { + name = "p-finally"; + packageName = "p-finally"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz"; + sha1 = "3fbcfb15b899a44123b34b6dcc18b724336a2cae"; + }; + }; + "p-is-promise-2.1.0" = { + name = "p-is-promise"; + packageName = "p-is-promise"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz"; + sha512 = "Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg=="; + }; + }; + "p-limit-1.3.0" = { + name = "p-limit"; + packageName = "p-limit"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz"; + sha512 = "vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q=="; + }; + }; + "p-limit-2.2.1" = { + name = "p-limit"; + packageName = "p-limit"; + version = "2.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz"; + sha512 = "85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg=="; + }; + }; + "p-locate-2.0.0" = { + name = "p-locate"; + packageName = "p-locate"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz"; + sha1 = "20a0103b222a70c8fd39cc2e580680f3dde5ec43"; + }; + }; + "p-locate-3.0.0" = { + name = "p-locate"; + packageName = "p-locate"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz"; + sha512 = "x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ=="; + }; + }; + "p-map-2.1.0" = { + name = "p-map"; + packageName = "p-map"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz"; + sha512 = "y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw=="; + }; + }; + "p-reduce-1.0.0" = { + name = "p-reduce"; + packageName = "p-reduce"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz"; + sha1 = "18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"; + }; + }; + "p-retry-3.0.1" = { + name = "p-retry"; + packageName = "p-retry"; + version = "3.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz"; + sha512 = "XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w=="; + }; + }; + "p-try-1.0.0" = { + name = "p-try"; + packageName = "p-try"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz"; + sha1 = "cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"; + }; + }; + "p-try-2.2.0" = { + name = "p-try"; + packageName = "p-try"; + version = "2.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"; + sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="; + }; + }; + "pako-1.0.10" = { + name = "pako"; + packageName = "pako"; + version = "1.0.10"; + src = fetchurl { + url = "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz"; + sha512 = "0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw=="; + }; + }; + "parallel-transform-1.2.0" = { + name = "parallel-transform"; + packageName = "parallel-transform"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz"; + sha512 = "P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg=="; + }; + }; + "parse-asn1-5.1.5" = { + name = "parse-asn1"; + packageName = "parse-asn1"; + version = "5.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz"; + sha512 = "jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ=="; + }; + }; + "parse-json-4.0.0" = { + name = "parse-json"; + packageName = "parse-json"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz"; + sha1 = "be35f5425be1f7f6c747184f98a788cb99477ee0"; + }; + }; + "parse-passwd-1.0.0" = { + name = "parse-passwd"; + packageName = "parse-passwd"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz"; + sha1 = "6d5b934a456993b23d37f40a382d6f1666a8e5c6"; + }; + }; + "parse5-4.0.0" = { + name = "parse5"; + packageName = "parse5"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz"; + sha512 = "VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA=="; + }; + }; + "parseurl-1.3.3" = { + name = "parseurl"; + packageName = "parseurl"; + version = "1.3.3"; + src = fetchurl { + url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz"; + sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="; + }; + }; + "pascalcase-0.1.1" = { + name = "pascalcase"; + packageName = "pascalcase"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz"; + sha1 = "b363e55e8006ca6fe21784d2db22bd15d7917f14"; + }; + }; + "path-browserify-0.0.1" = { + name = "path-browserify"; + packageName = "path-browserify"; + version = "0.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz"; + sha512 = "BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ=="; + }; + }; + "path-dirname-1.0.2" = { + name = "path-dirname"; + packageName = "path-dirname"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz"; + sha1 = "cc33d24d525e099a5388c0336c6e32b9160609e0"; + }; + }; + "path-exists-3.0.0" = { + name = "path-exists"; + packageName = "path-exists"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz"; + sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"; + }; + }; + "path-is-absolute-1.0.1" = { + name = "path-is-absolute"; + packageName = "path-is-absolute"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz"; + sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"; + }; + }; + "path-is-inside-1.0.2" = { + name = "path-is-inside"; + packageName = "path-is-inside"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz"; + sha1 = "365417dede44430d1c11af61027facf074bdfc53"; + }; + }; + "path-key-2.0.1" = { + name = "path-key"; + packageName = "path-key"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz"; + sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40"; + }; + }; + "path-parse-1.0.6" = { + name = "path-parse"; + packageName = "path-parse"; + version = "1.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz"; + sha512 = "GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw=="; + }; + }; + "path-to-regexp-0.1.7" = { + name = "path-to-regexp"; + packageName = "path-to-regexp"; + version = "0.1.7"; + src = fetchurl { + url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz"; + sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c"; + }; + }; + "path-to-regexp-1.7.0" = { + name = "path-to-regexp"; + packageName = "path-to-regexp"; + version = "1.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz"; + sha1 = "59fde0f435badacba103a84e9d3bc64e96b9937d"; + }; + }; + "path-type-3.0.0" = { + name = "path-type"; + packageName = "path-type"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz"; + sha512 = "T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg=="; + }; + }; + "pbkdf2-3.0.17" = { + name = "pbkdf2"; + packageName = "pbkdf2"; + version = "3.0.17"; + src = fetchurl { + url = "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz"; + sha512 = "U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA=="; + }; + }; + "performance-now-2.1.0" = { + name = "performance-now"; + packageName = "performance-now"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz"; + sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"; + }; + }; + "pify-2.3.0" = { + name = "pify"; + packageName = "pify"; + version = "2.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz"; + sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c"; + }; + }; + "pify-3.0.0" = { + name = "pify"; + packageName = "pify"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz"; + sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"; + }; + }; + "pify-4.0.1" = { + name = "pify"; + packageName = "pify"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz"; + sha512 = "uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g=="; + }; + }; + "pinkie-2.0.4" = { + name = "pinkie"; + packageName = "pinkie"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz"; + sha1 = "72556b80cfa0d48a974e80e77248e80ed4f7f870"; + }; + }; + "pinkie-promise-2.0.1" = { + name = "pinkie-promise"; + packageName = "pinkie-promise"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz"; + sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa"; + }; + }; + "pirates-4.0.1" = { + name = "pirates"; + packageName = "pirates"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz"; + sha512 = "WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA=="; + }; + }; + "pkg-dir-2.0.0" = { + name = "pkg-dir"; + packageName = "pkg-dir"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz"; + sha1 = "f6d5d1109e19d63edf428e0bd57e12777615334b"; + }; + }; + "pkg-dir-3.0.0" = { + name = "pkg-dir"; + packageName = "pkg-dir"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz"; + sha512 = "/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw=="; + }; + }; + "pn-1.1.0" = { + name = "pn"; + packageName = "pn"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz"; + sha512 = "2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA=="; + }; + }; + "portfinder-1.0.24" = { + name = "portfinder"; + packageName = "portfinder"; + version = "1.0.24"; + src = fetchurl { + url = "https://registry.npmjs.org/portfinder/-/portfinder-1.0.24.tgz"; + sha512 = "ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg=="; + }; + }; + "posix-character-classes-0.1.1" = { + name = "posix-character-classes"; + packageName = "posix-character-classes"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz"; + sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"; + }; + }; + "prelude-ls-1.1.2" = { + name = "prelude-ls"; + packageName = "prelude-ls"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz"; + sha1 = "21932a549f5e52ffd9a827f570e04be62a97da54"; + }; + }; + "prettier-1.18.2" = { + name = "prettier"; + packageName = "prettier"; + version = "1.18.2"; + src = fetchurl { + url = "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz"; + sha512 = "OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw=="; + }; + }; + "pretty-2.0.0" = { + name = "pretty"; + packageName = "pretty"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz"; + sha1 = "adbc7960b7bbfe289a557dc5f737619a220d06a5"; + }; + }; + "pretty-format-24.9.0" = { + name = "pretty-format"; + packageName = "pretty-format"; + version = "24.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz"; + sha512 = "00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA=="; + }; + }; + "private-0.1.8" = { + name = "private"; + packageName = "private"; + version = "0.1.8"; + src = fetchurl { + url = "https://registry.npmjs.org/private/-/private-0.1.8.tgz"; + sha512 = "VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg=="; + }; + }; + "process-0.11.10" = { + name = "process"; + packageName = "process"; + version = "0.11.10"; + src = fetchurl { + url = "https://registry.npmjs.org/process/-/process-0.11.10.tgz"; + sha1 = "7332300e840161bda3e69a1d1d91a7d4bc16f182"; + }; + }; + "process-nextick-args-2.0.1" = { + name = "process-nextick-args"; + packageName = "process-nextick-args"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz"; + sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="; + }; + }; + "promise-7.3.1" = { + name = "promise"; + packageName = "promise"; + version = "7.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz"; + sha512 = "nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg=="; + }; + }; + "promise-inflight-1.0.1" = { + name = "promise-inflight"; + packageName = "promise-inflight"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz"; + sha1 = "98472870bf228132fcbdd868129bad12c3c029e3"; + }; + }; + "prompts-2.2.1" = { + name = "prompts"; + packageName = "prompts"; + version = "2.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/prompts/-/prompts-2.2.1.tgz"; + sha512 = "VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw=="; + }; + }; + "proto-list-1.2.4" = { + name = "proto-list"; + packageName = "proto-list"; + version = "1.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz"; + sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849"; + }; + }; + "proxy-addr-2.0.5" = { + name = "proxy-addr"; + packageName = "proxy-addr"; + version = "2.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz"; + sha512 = "t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ=="; + }; + }; + "prr-1.0.1" = { + name = "prr"; + packageName = "prr"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz"; + sha1 = "d3fc114ba06995a45ec6893f484ceb1d78f5f476"; + }; + }; + "pseudomap-1.0.2" = { + name = "pseudomap"; + packageName = "pseudomap"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz"; + sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3"; + }; + }; + "psl-1.1.32" = { + name = "psl"; + packageName = "psl"; + version = "1.1.32"; + src = fetchurl { + url = "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz"; + sha512 = "MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g=="; + }; + }; + "public-encrypt-4.0.3" = { + name = "public-encrypt"; + packageName = "public-encrypt"; + version = "4.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz"; + sha512 = "zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q=="; + }; + }; + "pug-2.0.4" = { + name = "pug"; + packageName = "pug"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz"; + sha512 = "XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw=="; + }; + }; + "pug-attrs-2.0.4" = { + name = "pug-attrs"; + packageName = "pug-attrs"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz"; + sha512 = "TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ=="; + }; + }; + "pug-code-gen-2.0.2" = { + name = "pug-code-gen"; + packageName = "pug-code-gen"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz"; + sha512 = "kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw=="; + }; + }; + "pug-error-1.3.3" = { + name = "pug-error"; + packageName = "pug-error"; + version = "1.3.3"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz"; + sha512 = "qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ=="; + }; + }; + "pug-filters-3.1.1" = { + name = "pug-filters"; + packageName = "pug-filters"; + version = "3.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz"; + sha512 = "lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg=="; + }; + }; + "pug-lexer-4.1.0" = { + name = "pug-lexer"; + packageName = "pug-lexer"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz"; + sha512 = "i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA=="; + }; + }; + "pug-linker-3.0.6" = { + name = "pug-linker"; + packageName = "pug-linker"; + version = "3.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz"; + sha512 = "bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg=="; + }; + }; + "pug-load-2.0.12" = { + name = "pug-load"; + packageName = "pug-load"; + version = "2.0.12"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz"; + sha512 = "UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg=="; + }; + }; + "pug-parser-5.0.1" = { + name = "pug-parser"; + packageName = "pug-parser"; + version = "5.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz"; + sha512 = "nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA=="; + }; + }; + "pug-runtime-2.0.5" = { + name = "pug-runtime"; + packageName = "pug-runtime"; + version = "2.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz"; + sha512 = "P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw=="; + }; + }; + "pug-strip-comments-1.0.4" = { + name = "pug-strip-comments"; + packageName = "pug-strip-comments"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz"; + sha512 = "i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw=="; + }; + }; + "pug-walk-1.1.8" = { + name = "pug-walk"; + packageName = "pug-walk"; + version = "1.1.8"; + src = fetchurl { + url = "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz"; + sha512 = "GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA=="; + }; + }; + "pump-2.0.1" = { + name = "pump"; + packageName = "pump"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz"; + sha512 = "ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA=="; + }; + }; + "pump-3.0.0" = { + name = "pump"; + packageName = "pump"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz"; + sha512 = "LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww=="; + }; + }; + "pumpify-1.5.1" = { + name = "pumpify"; + packageName = "pumpify"; + version = "1.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz"; + sha512 = "oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ=="; + }; + }; + "punycode-1.3.2" = { + name = "punycode"; + packageName = "punycode"; + version = "1.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz"; + sha1 = "9653a036fb7c1ee42342f2325cceefea3926c48d"; + }; + }; + "punycode-1.4.1" = { + name = "punycode"; + packageName = "punycode"; + version = "1.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz"; + sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"; + }; + }; + "punycode-2.1.1" = { + name = "punycode"; + packageName = "punycode"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"; + sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="; + }; + }; + "qs-6.5.2" = { + name = "qs"; + packageName = "qs"; + version = "6.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz"; + sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="; + }; + }; + "qs-6.7.0" = { + name = "qs"; + packageName = "qs"; + version = "6.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz"; + sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ=="; + }; + }; + "querystring-0.2.0" = { + name = "querystring"; + packageName = "querystring"; + version = "0.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz"; + sha1 = "b209849203bb25df820da756e747005878521620"; + }; + }; + "querystring-es3-0.2.1" = { + name = "querystring-es3"; + packageName = "querystring-es3"; + version = "0.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz"; + sha1 = "9ec61f79049875707d69414596fd907a4d711e73"; + }; + }; + "querystringify-2.1.1" = { + name = "querystringify"; + packageName = "querystringify"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz"; + sha512 = "w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA=="; + }; + }; + "randombytes-2.1.0" = { + name = "randombytes"; + packageName = "randombytes"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz"; + sha512 = "vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ=="; + }; + }; + "randomfill-1.0.4" = { + name = "randomfill"; + packageName = "randomfill"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz"; + sha512 = "87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw=="; + }; + }; + "range-parser-1.2.1" = { + name = "range-parser"; + packageName = "range-parser"; + version = "1.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz"; + sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="; + }; + }; + "raw-body-2.4.0" = { + name = "raw-body"; + packageName = "raw-body"; + version = "2.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz"; + sha512 = "4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q=="; + }; + }; + "react-is-16.9.0" = { + name = "react-is"; + packageName = "react-is"; + version = "16.9.0"; + src = fetchurl { + url = "https://registry.npmjs.org/react-is/-/react-is-16.9.0.tgz"; + sha512 = "tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw=="; + }; + }; + "read-pkg-3.0.0" = { + name = "read-pkg"; + packageName = "read-pkg"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz"; + sha1 = "9cbc686978fee65d16c00e2b19c237fcf6e38389"; + }; + }; + "read-pkg-up-4.0.0" = { + name = "read-pkg-up"; + packageName = "read-pkg-up"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz"; + sha512 = "6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA=="; + }; + }; + "readable-stream-2.3.6" = { + name = "readable-stream"; + packageName = "readable-stream"; + version = "2.3.6"; + src = fetchurl { + url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz"; + sha512 = "tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw=="; + }; + }; + "readable-stream-3.4.0" = { + name = "readable-stream"; + packageName = "readable-stream"; + version = "3.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz"; + sha512 = "jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ=="; + }; + }; + "readdirp-2.2.1" = { + name = "readdirp"; + packageName = "readdirp"; + version = "2.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz"; + sha512 = "1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ=="; + }; + }; + "realpath-native-1.1.0" = { + name = "realpath-native"; + packageName = "realpath-native"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz"; + sha512 = "wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA=="; + }; + }; + "rechoir-0.6.2" = { + name = "rechoir"; + packageName = "rechoir"; + version = "0.6.2"; + src = fetchurl { + url = "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz"; + sha1 = "85204b54dba82d5742e28c96756ef43af50e3384"; + }; + }; + "regenerate-1.4.0" = { + name = "regenerate"; + packageName = "regenerate"; + version = "1.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz"; + sha512 = "1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg=="; + }; + }; + "regenerator-runtime-0.11.1" = { + name = "regenerator-runtime"; + packageName = "regenerator-runtime"; + version = "0.11.1"; + src = fetchurl { + url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz"; + sha512 = "MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="; + }; + }; + "regenerator-transform-0.10.1" = { + name = "regenerator-transform"; + packageName = "regenerator-transform"; + version = "0.10.1"; + src = fetchurl { + url = "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz"; + sha512 = "PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q=="; + }; + }; + "regex-not-1.0.2" = { + name = "regex-not"; + packageName = "regex-not"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz"; + sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A=="; + }; + }; + "regexpu-core-2.0.0" = { + name = "regexpu-core"; + packageName = "regexpu-core"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz"; + sha1 = "49d038837b8dcf8bfa5b9a42139938e6ea2ae240"; + }; + }; + "regjsgen-0.2.0" = { + name = "regjsgen"; + packageName = "regjsgen"; + version = "0.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz"; + sha1 = "6c016adeac554f75823fe37ac05b92d5a4edb1f7"; + }; + }; + "regjsparser-0.1.5" = { + name = "regjsparser"; + packageName = "regjsparser"; + version = "0.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz"; + sha1 = "7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"; + }; + }; + "remove-trailing-separator-1.1.0" = { + name = "remove-trailing-separator"; + packageName = "remove-trailing-separator"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz"; + sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef"; + }; + }; + "repeat-element-1.1.3" = { + name = "repeat-element"; + packageName = "repeat-element"; + version = "1.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz"; + sha512 = "ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g=="; + }; + }; + "repeat-string-1.6.1" = { + name = "repeat-string"; + packageName = "repeat-string"; + version = "1.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz"; + sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637"; + }; + }; + "repeating-2.0.1" = { + name = "repeating"; + packageName = "repeating"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz"; + sha1 = "5214c53a926d3552707527fbab415dbc08d06dda"; + }; + }; + "request-2.88.0" = { + name = "request"; + packageName = "request"; + version = "2.88.0"; + src = fetchurl { + url = "https://registry.npmjs.org/request/-/request-2.88.0.tgz"; + sha512 = "NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg=="; + }; + }; + "request-promise-core-1.1.2" = { + name = "request-promise-core"; + packageName = "request-promise-core"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz"; + sha512 = "UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag=="; + }; + }; + "request-promise-native-1.0.7" = { + name = "request-promise-native"; + packageName = "request-promise-native"; + version = "1.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz"; + sha512 = "rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w=="; + }; + }; + "require-directory-2.1.1" = { + name = "require-directory"; + packageName = "require-directory"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz"; + sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"; + }; + }; + "require-main-filename-1.0.1" = { + name = "require-main-filename"; + packageName = "require-main-filename"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz"; + sha1 = "97f717b69d48784f5f526a6c5aa8ffdda055a4d1"; + }; + }; + "require-main-filename-2.0.0" = { + name = "require-main-filename"; + packageName = "require-main-filename"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz"; + sha512 = "NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="; + }; + }; + "requires-port-1.0.0" = { + name = "requires-port"; + packageName = "requires-port"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz"; + sha1 = "925d2601d39ac485e091cf0da5c6e694dc3dcaff"; + }; + }; + "resolve-1.1.7" = { + name = "resolve"; + packageName = "resolve"; + version = "1.1.7"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz"; + sha1 = "203114d82ad2c5ed9e8e0411b3932875e889e97b"; + }; + }; + "resolve-1.11.0" = { + name = "resolve"; + packageName = "resolve"; + version = "1.11.0"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz"; + sha512 = "WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw=="; + }; + }; + "resolve-cwd-2.0.0" = { + name = "resolve-cwd"; + packageName = "resolve-cwd"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz"; + sha1 = "00a9f7387556e27038eae232caa372a6a59b665a"; + }; + }; + "resolve-dir-1.0.1" = { + name = "resolve-dir"; + packageName = "resolve-dir"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz"; + sha1 = "79a40644c362be82f26effe739c9bb5382046f43"; + }; + }; + "resolve-from-3.0.0" = { + name = "resolve-from"; + packageName = "resolve-from"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz"; + sha1 = "b22c7af7d9d6881bc8b6e653335eebcb0a188748"; + }; + }; + "resolve-path-1.4.0" = { + name = "resolve-path"; + packageName = "resolve-path"; + version = "1.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz"; + sha1 = "c4bda9f5efb2fce65247873ab36bb4d834fe16f7"; + }; + }; + "resolve-url-0.2.1" = { + name = "resolve-url"; + packageName = "resolve-url"; + version = "0.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz"; + sha1 = "2c637fe77c893afd2a663fe21aa9080068e2052a"; + }; + }; + "restore-cursor-2.0.0" = { + name = "restore-cursor"; + packageName = "restore-cursor"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz"; + sha1 = "9f7ee287f82fd326d4fd162923d62129eee0dfaf"; + }; + }; + "ret-0.1.15" = { + name = "ret"; + packageName = "ret"; + version = "0.1.15"; + src = fetchurl { + url = "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz"; + sha512 = "TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg=="; + }; + }; + "retry-0.12.0" = { + name = "retry"; + packageName = "retry"; + version = "0.12.0"; + src = fetchurl { + url = "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz"; + sha1 = "1b42a6266a21f07421d1b0b54b7dc167b01c013b"; + }; + }; + "right-align-0.1.3" = { + name = "right-align"; + packageName = "right-align"; + version = "0.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz"; + sha1 = "61339b722fe6a3515689210d24e14c96148613ef"; + }; + }; + "rimraf-2.7.1" = { + name = "rimraf"; + packageName = "rimraf"; + version = "2.7.1"; + src = fetchurl { + url = "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz"; + sha512 = "uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w=="; + }; + }; + "ripemd160-2.0.2" = { + name = "ripemd160"; + packageName = "ripemd160"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz"; + sha512 = "ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA=="; + }; + }; + "rsvp-4.8.5" = { + name = "rsvp"; + packageName = "rsvp"; + version = "4.8.5"; + src = fetchurl { + url = "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz"; + sha512 = "nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA=="; + }; + }; + "run-queue-1.0.3" = { + name = "run-queue"; + packageName = "run-queue"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz"; + sha1 = "e848396f057d223f24386924618e25694161ec47"; + }; + }; + "rxjs-6.5.2" = { + name = "rxjs"; + packageName = "rxjs"; + version = "6.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz"; + sha512 = "HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg=="; + }; + }; + "safe-buffer-5.1.2" = { + name = "safe-buffer"; + packageName = "safe-buffer"; + version = "5.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz"; + sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="; + }; + }; + "safe-regex-1.1.0" = { + name = "safe-regex"; + packageName = "safe-regex"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz"; + sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e"; + }; + }; + "safer-buffer-2.1.2" = { + name = "safer-buffer"; + packageName = "safer-buffer"; + version = "2.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"; + sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="; + }; + }; + "sane-4.1.0" = { + name = "sane"; + packageName = "sane"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz"; + sha512 = "hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA=="; + }; + }; + "sax-1.2.4" = { + name = "sax"; + packageName = "sax"; + version = "1.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz"; + sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="; + }; + }; + "schema-utils-1.0.0" = { + name = "schema-utils"; + packageName = "schema-utils"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz"; + sha512 = "i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g=="; + }; + }; + "select-hose-2.0.0" = { + name = "select-hose"; + packageName = "select-hose"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz"; + sha1 = "625d8658f865af43ec962bfc376a37359a4994ca"; + }; + }; + "selfsigned-1.10.6" = { + name = "selfsigned"; + packageName = "selfsigned"; + version = "1.10.6"; + src = fetchurl { + url = "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.6.tgz"; + sha512 = "i3+CeqxL7DpAazgVpAGdKMwHuL63B5nhJMh9NQ7xmChGkA3jNFflq6Jyo1LLJYcr3idWiNOPWHCrm4zMayLG4w=="; + }; + }; + "semver-5.7.0" = { + name = "semver"; + packageName = "semver"; + version = "5.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz"; + sha512 = "Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA=="; + }; + }; + "semver-6.3.0" = { + name = "semver"; + packageName = "semver"; + version = "6.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz"; + sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="; + }; + }; + "send-0.17.1" = { + name = "send"; + packageName = "send"; + version = "0.17.1"; + src = fetchurl { + url = "https://registry.npmjs.org/send/-/send-0.17.1.tgz"; + sha512 = "BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg=="; + }; + }; + "serialize-javascript-1.9.1" = { + name = "serialize-javascript"; + packageName = "serialize-javascript"; + version = "1.9.1"; + src = fetchurl { + url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz"; + sha512 = "0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A=="; + }; + }; + "serve-index-1.9.1" = { + name = "serve-index"; + packageName = "serve-index"; + version = "1.9.1"; + src = fetchurl { + url = "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz"; + sha1 = "d3768d69b1e7d82e5ce050fff5b453bea12a9239"; + }; + }; + "serve-static-1.14.1" = { + name = "serve-static"; + packageName = "serve-static"; + version = "1.14.1"; + src = fetchurl { + url = "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz"; + sha512 = "JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg=="; + }; + }; + "set-blocking-2.0.0" = { + name = "set-blocking"; + packageName = "set-blocking"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz"; + sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7"; + }; + }; + "set-value-2.0.1" = { + name = "set-value"; + packageName = "set-value"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz"; + sha512 = "JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw=="; + }; + }; + "setimmediate-1.0.5" = { + name = "setimmediate"; + packageName = "setimmediate"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz"; + sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285"; + }; + }; + "setprototypeof-1.1.0" = { + name = "setprototypeof"; + packageName = "setprototypeof"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz"; + sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="; + }; + }; + "setprototypeof-1.1.1" = { + name = "setprototypeof"; + packageName = "setprototypeof"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz"; + sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw=="; + }; + }; + "sha.js-2.4.11" = { + name = "sha.js"; + packageName = "sha.js"; + version = "2.4.11"; + src = fetchurl { + url = "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz"; + sha512 = "QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ=="; + }; + }; + "shebang-command-1.2.0" = { + name = "shebang-command"; + packageName = "shebang-command"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz"; + sha1 = "44aac65b695b03398968c39f363fee5deafdf1ea"; + }; + }; + "shebang-regex-1.0.0" = { + name = "shebang-regex"; + packageName = "shebang-regex"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz"; + sha1 = "da42f49740c0b42db2ca9728571cb190c98efea3"; + }; + }; + "shelljs-0.8.3" = { + name = "shelljs"; + packageName = "shelljs"; + version = "0.8.3"; + src = fetchurl { + url = "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz"; + sha512 = "fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A=="; + }; + }; + "shellwords-0.1.1" = { + name = "shellwords"; + packageName = "shellwords"; + version = "0.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz"; + sha512 = "vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww=="; + }; + }; + "sigmund-1.0.1" = { + name = "sigmund"; + packageName = "sigmund"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz"; + sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590"; + }; + }; + "signal-exit-3.0.2" = { + name = "signal-exit"; + packageName = "signal-exit"; + version = "3.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz"; + sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d"; + }; + }; + "simple-git-1.96.0" = { + name = "simple-git"; + packageName = "simple-git"; + version = "1.96.0"; + src = fetchurl { + url = "https://registry.npmjs.org/simple-git/-/simple-git-1.96.0.tgz"; + sha512 = "+gXuzJFpGtK9zCa7rPMMNs8AF2weWMsB0Vlyym5VkFX2VGQ3VBzKhnxPN//PWrGuPFGQ/u0F1yL6rZoPhj/KPQ=="; + }; + }; + "sisteransi-1.0.3" = { + name = "sisteransi"; + packageName = "sisteransi"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.3.tgz"; + sha512 = "SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg=="; + }; + }; + "slash-1.0.0" = { + name = "slash"; + packageName = "slash"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz"; + sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"; + }; + }; + "slash-2.0.0" = { + name = "slash"; + packageName = "slash"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz"; + sha512 = "ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A=="; + }; + }; + "snapdragon-0.8.2" = { + name = "snapdragon"; + packageName = "snapdragon"; + version = "0.8.2"; + src = fetchurl { + url = "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz"; + sha512 = "FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg=="; + }; + }; + "snapdragon-node-2.1.1" = { + name = "snapdragon-node"; + packageName = "snapdragon-node"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz"; + sha512 = "O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw=="; + }; + }; + "snapdragon-util-3.0.1" = { + name = "snapdragon-util"; + packageName = "snapdragon-util"; + version = "3.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz"; + sha512 = "mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ=="; + }; + }; + "sockjs-0.3.19" = { + name = "sockjs"; + packageName = "sockjs"; + version = "0.3.19"; + src = fetchurl { + url = "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz"; + sha512 = "V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw=="; + }; + }; + "sockjs-client-1.3.0" = { + name = "sockjs-client"; + packageName = "sockjs-client"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz"; + sha512 = "R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg=="; + }; + }; + "source-list-map-2.0.1" = { + name = "source-list-map"; + packageName = "source-list-map"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz"; + sha512 = "qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw=="; + }; + }; + "source-map-0.5.7" = { + name = "source-map"; + packageName = "source-map"; + version = "0.5.7"; + src = fetchurl { + url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz"; + sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"; + }; + }; + "source-map-0.6.1" = { + name = "source-map"; + packageName = "source-map"; + version = "0.6.1"; + src = fetchurl { + url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"; + sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="; + }; + }; + "source-map-resolve-0.5.2" = { + name = "source-map-resolve"; + packageName = "source-map-resolve"; + version = "0.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz"; + sha512 = "MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA=="; + }; + }; + "source-map-support-0.4.18" = { + name = "source-map-support"; + packageName = "source-map-support"; + version = "0.4.18"; + src = fetchurl { + url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz"; + sha512 = "try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA=="; + }; + }; + "source-map-support-0.5.13" = { + name = "source-map-support"; + packageName = "source-map-support"; + version = "0.5.13"; + src = fetchurl { + url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz"; + sha512 = "SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w=="; + }; + }; + "source-map-url-0.4.0" = { + name = "source-map-url"; + packageName = "source-map-url"; + version = "0.4.0"; + src = fetchurl { + url = "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz"; + sha1 = "3e935d7ddd73631b97659956d55128e87b5084a3"; + }; + }; + "spdx-correct-3.1.0" = { + name = "spdx-correct"; + packageName = "spdx-correct"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz"; + sha512 = "lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q=="; + }; + }; + "spdx-exceptions-2.2.0" = { + name = "spdx-exceptions"; + packageName = "spdx-exceptions"; + version = "2.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz"; + sha512 = "2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA=="; + }; + }; + "spdx-expression-parse-3.0.0" = { + name = "spdx-expression-parse"; + packageName = "spdx-expression-parse"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz"; + sha512 = "Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg=="; + }; + }; + "spdx-license-ids-3.0.5" = { + name = "spdx-license-ids"; + packageName = "spdx-license-ids"; + version = "3.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz"; + sha512 = "J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q=="; + }; + }; + "spdy-4.0.1" = { + name = "spdy"; + packageName = "spdy"; + version = "4.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz"; + sha512 = "HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA=="; + }; + }; + "spdy-transport-3.0.0" = { + name = "spdy-transport"; + packageName = "spdy-transport"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz"; + sha512 = "hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw=="; + }; + }; + "split-string-3.1.0" = { + name = "split-string"; + packageName = "split-string"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz"; + sha512 = "NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw=="; + }; + }; + "sprintf-js-1.0.3" = { + name = "sprintf-js"; + packageName = "sprintf-js"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz"; + sha1 = "04e6926f662895354f3dd015203633b857297e2c"; + }; + }; + "sshpk-1.16.1" = { + name = "sshpk"; + packageName = "sshpk"; + version = "1.16.1"; + src = fetchurl { + url = "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz"; + sha512 = "HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg=="; + }; + }; + "ssri-5.3.0" = { + name = "ssri"; + packageName = "ssri"; + version = "5.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz"; + sha512 = "XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ=="; + }; + }; + "ssri-6.0.1" = { + name = "ssri"; + packageName = "ssri"; + version = "6.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz"; + sha512 = "3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA=="; + }; + }; + "stack-utils-1.0.2" = { + name = "stack-utils"; + packageName = "stack-utils"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz"; + sha512 = "MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA=="; + }; + }; + "static-extend-0.1.2" = { + name = "static-extend"; + packageName = "static-extend"; + version = "0.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz"; + sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6"; + }; + }; + "statuses-1.5.0" = { + name = "statuses"; + packageName = "statuses"; + version = "1.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz"; + sha1 = "161c7dac177659fd9811f43771fa99381478628c"; + }; + }; + "stealthy-require-1.1.1" = { + name = "stealthy-require"; + packageName = "stealthy-require"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz"; + sha1 = "35b09875b4ff49f26a777e509b3090a3226bf24b"; + }; + }; + "stream-browserify-2.0.2" = { + name = "stream-browserify"; + packageName = "stream-browserify"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz"; + sha512 = "nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg=="; + }; + }; + "stream-each-1.2.3" = { + name = "stream-each"; + packageName = "stream-each"; + version = "1.2.3"; + src = fetchurl { + url = "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz"; + sha512 = "vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw=="; + }; + }; + "stream-http-2.8.3" = { + name = "stream-http"; + packageName = "stream-http"; + version = "2.8.3"; + src = fetchurl { + url = "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz"; + sha512 = "+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw=="; + }; + }; + "stream-shift-1.0.0" = { + name = "stream-shift"; + packageName = "stream-shift"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz"; + sha1 = "d5c752825e5367e786f78e18e445ea223a155952"; + }; + }; + "string-length-2.0.0" = { + name = "string-length"; + packageName = "string-length"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz"; + sha1 = "d40dbb686a3ace960c1cffca562bf2c45f8363ed"; + }; + }; + "string-width-1.0.2" = { + name = "string-width"; + packageName = "string-width"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz"; + sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"; + }; + }; + "string-width-2.1.1" = { + name = "string-width"; + packageName = "string-width"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz"; + sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw=="; + }; + }; + "string-width-3.1.0" = { + name = "string-width"; + packageName = "string-width"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz"; + sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w=="; + }; + }; + "string.prototype.trimleft-2.1.0" = { + name = "string.prototype.trimleft"; + packageName = "string.prototype.trimleft"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz"; + sha512 = "FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw=="; + }; + }; + "string.prototype.trimright-2.1.0" = { + name = "string.prototype.trimright"; + packageName = "string.prototype.trimright"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz"; + sha512 = "fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg=="; + }; + }; + "string_decoder-1.1.1" = { + name = "string_decoder"; + packageName = "string_decoder"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz"; + sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg=="; + }; + }; + "strip-ansi-3.0.1" = { + name = "strip-ansi"; + packageName = "strip-ansi"; + version = "3.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz"; + sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"; + }; + }; + "strip-ansi-4.0.0" = { + name = "strip-ansi"; + packageName = "strip-ansi"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz"; + sha1 = "a8479022eb1ac368a871389b635262c505ee368f"; + }; + }; + "strip-ansi-5.2.0" = { + name = "strip-ansi"; + packageName = "strip-ansi"; + version = "5.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz"; + sha512 = "DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA=="; + }; + }; + "strip-bom-3.0.0" = { + name = "strip-bom"; + packageName = "strip-bom"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz"; + sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"; + }; + }; + "strip-eof-1.0.0" = { + name = "strip-eof"; + packageName = "strip-eof"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz"; + sha1 = "bb43ff5598a6eb05d89b59fcd129c983313606bf"; + }; + }; + "supports-color-2.0.0" = { + name = "supports-color"; + packageName = "supports-color"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz"; + sha1 = "535d045ce6b6363fa40117084629995e9df324c7"; + }; + }; + "supports-color-5.5.0" = { + name = "supports-color"; + packageName = "supports-color"; + version = "5.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz"; + sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow=="; + }; + }; + "supports-color-6.1.0" = { + name = "supports-color"; + packageName = "supports-color"; + version = "6.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz"; + sha512 = "qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ=="; + }; + }; + "symbol-tree-3.2.4" = { + name = "symbol-tree"; + packageName = "symbol-tree"; + version = "3.2.4"; + src = fetchurl { + url = "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz"; + sha512 = "9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw=="; + }; + }; + "tapable-1.1.3" = { + name = "tapable"; + packageName = "tapable"; + version = "1.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz"; + sha512 = "4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA=="; + }; + }; + "terser-4.3.3" = { + name = "terser"; + packageName = "terser"; + version = "4.3.3"; + src = fetchurl { + url = "https://registry.npmjs.org/terser/-/terser-4.3.3.tgz"; + sha512 = "Nzr7dpRjSzMEUS+z2UYQBtzE0LDm5k0Yy8RgLRPy85QUo1TjU5lIOBwzS5/FVAMaVyHZ3WTTU2BuQcMn8KXnNQ=="; + }; + }; + "terser-webpack-plugin-1.4.1" = { + name = "terser-webpack-plugin"; + packageName = "terser-webpack-plugin"; + version = "1.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz"; + sha512 = "ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg=="; + }; + }; + "test-exclude-5.2.3" = { + name = "test-exclude"; + packageName = "test-exclude"; + version = "5.2.3"; + src = fetchurl { + url = "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz"; + sha512 = "M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g=="; + }; + }; + "thenify-3.3.0" = { + name = "thenify"; + packageName = "thenify"; + version = "3.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz"; + sha1 = "e69e38a1babe969b0108207978b9f62b88604839"; + }; + }; + "thenify-all-1.6.0" = { + name = "thenify-all"; + packageName = "thenify-all"; + version = "1.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz"; + sha1 = "1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"; + }; + }; + "throat-4.1.0" = { + name = "throat"; + packageName = "throat"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz"; + sha1 = "89037cbc92c56ab18926e6ba4cbb200e15672a6a"; + }; + }; + "through2-2.0.5" = { + name = "through2"; + packageName = "through2"; + version = "2.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz"; + sha512 = "/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ=="; + }; + }; + "thunky-1.0.3" = { + name = "thunky"; + packageName = "thunky"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz"; + sha512 = "YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow=="; + }; + }; + "timers-browserify-2.0.11" = { + name = "timers-browserify"; + packageName = "timers-browserify"; + version = "2.0.11"; + src = fetchurl { + url = "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz"; + sha512 = "60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ=="; + }; + }; + "tmpl-1.0.4" = { + name = "tmpl"; + packageName = "tmpl"; + version = "1.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz"; + sha1 = "23640dd7b42d00433911140820e5cf440e521dd1"; + }; + }; + "to-arraybuffer-1.0.1" = { + name = "to-arraybuffer"; + packageName = "to-arraybuffer"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz"; + sha1 = "7d229b1fcc637e466ca081180836a7aabff83f43"; + }; + }; + "to-fast-properties-1.0.3" = { + name = "to-fast-properties"; + packageName = "to-fast-properties"; + version = "1.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz"; + sha1 = "b83571fa4d8c25b82e231b06e3a3055de4ca1a47"; + }; + }; + "to-fast-properties-2.0.0" = { + name = "to-fast-properties"; + packageName = "to-fast-properties"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz"; + sha1 = "dc5e698cbd079265bc73e0377681a4e4e83f616e"; + }; + }; + "to-object-path-0.3.0" = { + name = "to-object-path"; + packageName = "to-object-path"; + version = "0.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz"; + sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af"; + }; + }; + "to-regex-3.0.2" = { + name = "to-regex"; + packageName = "to-regex"; + version = "3.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz"; + sha512 = "FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw=="; + }; + }; + "to-regex-range-2.1.1" = { + name = "to-regex-range"; + packageName = "to-regex-range"; + version = "2.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz"; + sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38"; + }; + }; + "toidentifier-1.0.0" = { + name = "toidentifier"; + packageName = "toidentifier"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz"; + sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw=="; + }; + }; + "token-stream-0.0.1" = { + name = "token-stream"; + packageName = "token-stream"; + version = "0.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz"; + sha1 = "ceeefc717a76c4316f126d0b9dbaa55d7e7df01a"; + }; + }; + "tough-cookie-2.4.3" = { + name = "tough-cookie"; + packageName = "tough-cookie"; + version = "2.4.3"; + src = fetchurl { + url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz"; + sha512 = "Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ=="; + }; + }; + "tough-cookie-2.5.0" = { + name = "tough-cookie"; + packageName = "tough-cookie"; + version = "2.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz"; + sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g=="; + }; + }; + "tr46-1.0.1" = { + name = "tr46"; + packageName = "tr46"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz"; + sha1 = "a8b13fd6bfd2489519674ccde55ba3693b706d09"; + }; + }; + "trim-right-1.0.1" = { + name = "trim-right"; + packageName = "trim-right"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz"; + sha1 = "cb2e1203067e0c8de1f614094b9fe45704ea6003"; + }; + }; + "tryer-1.0.1" = { + name = "tryer"; + packageName = "tryer"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz"; + sha512 = "c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA=="; + }; + }; + "ts-jest-24.0.2" = { + name = "ts-jest"; + packageName = "ts-jest"; + version = "24.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/ts-jest/-/ts-jest-24.0.2.tgz"; + sha512 = "h6ZCZiA1EQgjczxq+uGLXQlNgeg02WWJBbeT8j6nyIBRQdglqbvzDoHahTEIiS6Eor6x8mK6PfZ7brQ9Q6tzHw=="; + }; + }; + "tslib-1.10.0" = { + name = "tslib"; + packageName = "tslib"; + version = "1.10.0"; + src = fetchurl { + url = "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz"; + sha512 = "qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ=="; + }; + }; + "tty-browserify-0.0.0" = { + name = "tty-browserify"; + packageName = "tty-browserify"; + version = "0.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz"; + sha1 = "a157ba402da24e9bf957f9aa69d524eed42901a6"; + }; + }; + "tunnel-agent-0.6.0" = { + name = "tunnel-agent"; + packageName = "tunnel-agent"; + version = "0.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz"; + sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd"; + }; + }; + "tweetnacl-0.14.5" = { + name = "tweetnacl"; + packageName = "tweetnacl"; + version = "0.14.5"; + src = fetchurl { + url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz"; + sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64"; + }; + }; + "type-1.2.0" = { + name = "type"; + packageName = "type"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/type/-/type-1.2.0.tgz"; + sha512 = "+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="; + }; + }; + "type-check-0.3.2" = { + name = "type-check"; + packageName = "type-check"; + version = "0.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz"; + sha1 = "5884cab512cf1d355e3fb784f30804b2b520db72"; + }; + }; + "type-is-1.6.18" = { + name = "type-is"; + packageName = "type-is"; + version = "1.6.18"; + src = fetchurl { + url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz"; + sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g=="; + }; + }; + "typedarray-0.0.6" = { + name = "typedarray"; + packageName = "typedarray"; + version = "0.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"; + sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777"; + }; + }; + "typedarray-to-buffer-3.1.5" = { + name = "typedarray-to-buffer"; + packageName = "typedarray-to-buffer"; + version = "3.1.5"; + src = fetchurl { + url = "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz"; + sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q=="; + }; + }; + "typescript-3.5.2" = { + name = "typescript"; + packageName = "typescript"; + version = "3.5.2"; + src = fetchurl { + url = "https://registry.npmjs.org/typescript/-/typescript-3.5.2.tgz"; + sha512 = "7KxJovlYhTX5RaRbUdkAXN1KUZ8PwWlTzQdHV6xNqvuFOs7+WBo10TQUqT19Q/Jz2hk5v9TQDIhyLhhJY4p5AA=="; + }; + }; + "typical-4.0.0" = { + name = "typical"; + packageName = "typical"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz"; + sha512 = "VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw=="; + }; + }; + "uglify-js-2.8.29" = { + name = "uglify-js"; + packageName = "uglify-js"; + version = "2.8.29"; + src = fetchurl { + url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz"; + sha1 = "29c5733148057bb4e1f75df35b7a9cb72e6a59dd"; + }; + }; + "uglify-js-3.6.0" = { + name = "uglify-js"; + packageName = "uglify-js"; + version = "3.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz"; + sha512 = "W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg=="; + }; + }; + "uglify-to-browserify-1.0.2" = { + name = "uglify-to-browserify"; + packageName = "uglify-to-browserify"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz"; + sha1 = "6e0924d6bda6b5afe349e39a6d632850a0f882b7"; + }; + }; + "underscore-1.9.1" = { + name = "underscore"; + packageName = "underscore"; + version = "1.9.1"; + src = fetchurl { + url = "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz"; + sha512 = "5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg=="; + }; + }; + "union-value-1.0.1" = { + name = "union-value"; + packageName = "union-value"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz"; + sha512 = "tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg=="; + }; + }; + "unique-filename-1.1.1" = { + name = "unique-filename"; + packageName = "unique-filename"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz"; + sha512 = "Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ=="; + }; + }; + "unique-slug-2.0.2" = { + name = "unique-slug"; + packageName = "unique-slug"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz"; + sha512 = "zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w=="; + }; + }; + "universalify-0.1.2" = { + name = "universalify"; + packageName = "universalify"; + version = "0.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz"; + sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="; + }; + }; + "unpipe-1.0.0" = { + name = "unpipe"; + packageName = "unpipe"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz"; + sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec"; + }; + }; + "unset-value-1.0.0" = { + name = "unset-value"; + packageName = "unset-value"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz"; + sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"; + }; + }; + "upath-1.2.0" = { + name = "upath"; + packageName = "upath"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz"; + sha512 = "aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg=="; + }; + }; + "uri-js-4.2.2" = { + name = "uri-js"; + packageName = "uri-js"; + version = "4.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz"; + sha512 = "KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ=="; + }; + }; + "urijs-1.19.1" = { + name = "urijs"; + packageName = "urijs"; + version = "1.19.1"; + src = fetchurl { + url = "https://registry.npmjs.org/urijs/-/urijs-1.19.1.tgz"; + sha512 = "xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg=="; + }; + }; + "urix-0.1.0" = { + name = "urix"; + packageName = "urix"; + version = "0.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz"; + sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72"; + }; + }; + "url-0.11.0" = { + name = "url"; + packageName = "url"; + version = "0.11.0"; + src = fetchurl { + url = "https://registry.npmjs.org/url/-/url-0.11.0.tgz"; + sha1 = "3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"; + }; + }; + "url-parse-1.4.7" = { + name = "url-parse"; + packageName = "url-parse"; + version = "1.4.7"; + src = fetchurl { + url = "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz"; + sha512 = "d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg=="; + }; + }; + "use-3.1.1" = { + name = "use"; + packageName = "use"; + version = "3.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/use/-/use-3.1.1.tgz"; + sha512 = "cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ=="; + }; + }; + "util-0.10.3" = { + name = "util"; + packageName = "util"; + version = "0.10.3"; + src = fetchurl { + url = "https://registry.npmjs.org/util/-/util-0.10.3.tgz"; + sha1 = "7afb1afe50805246489e3db7fe0ed379336ac0f9"; + }; + }; + "util-0.11.1" = { + name = "util"; + packageName = "util"; + version = "0.11.1"; + src = fetchurl { + url = "https://registry.npmjs.org/util/-/util-0.11.1.tgz"; + sha512 = "HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ=="; + }; + }; + "util-deprecate-1.0.2" = { + name = "util-deprecate"; + packageName = "util-deprecate"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"; + sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf"; + }; + }; + "util.promisify-1.0.0" = { + name = "util.promisify"; + packageName = "util.promisify"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz"; + sha512 = "i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA=="; + }; + }; + "utils-merge-1.0.1" = { + name = "utils-merge"; + packageName = "utils-merge"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz"; + sha1 = "9f95710f50a267947b2ccc124741c1028427e713"; + }; + }; + "uuid-3.3.2" = { + name = "uuid"; + packageName = "uuid"; + version = "3.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz"; + sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA=="; + }; + }; + "v8-compile-cache-2.1.0" = { + name = "v8-compile-cache"; + packageName = "v8-compile-cache"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz"; + sha512 = "usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g=="; + }; + }; + "validate-npm-package-license-3.0.4" = { + name = "validate-npm-package-license"; + packageName = "validate-npm-package-license"; + version = "3.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz"; + sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew=="; + }; + }; + "vary-1.1.2" = { + name = "vary"; + packageName = "vary"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz"; + sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc"; + }; + }; + "verror-1.10.0" = { + name = "verror"; + packageName = "verror"; + version = "1.10.0"; + src = fetchurl { + url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz"; + sha1 = "3a105ca17053af55d6e270c1f8288682e18da400"; + }; + }; + "vm-browserify-1.1.0" = { + name = "vm-browserify"; + packageName = "vm-browserify"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz"; + sha512 = "iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw=="; + }; + }; + "void-elements-2.0.1" = { + name = "void-elements"; + packageName = "void-elements"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz"; + sha1 = "c066afb582bb1cb4128d60ea92392e94d5e9dbec"; + }; + }; + "w3c-hr-time-1.0.1" = { + name = "w3c-hr-time"; + packageName = "w3c-hr-time"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz"; + sha1 = "82ac2bff63d950ea9e3189a58a65625fedf19045"; + }; + }; + "walker-1.0.7" = { + name = "walker"; + packageName = "walker"; + version = "1.0.7"; + src = fetchurl { + url = "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz"; + sha1 = "2f7f9b8fd10d677262b18a884e28d19618e028fb"; + }; + }; + "watchpack-1.6.0" = { + name = "watchpack"; + packageName = "watchpack"; + version = "1.6.0"; + src = fetchurl { + url = "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz"; + sha512 = "i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA=="; + }; + }; + "wbuf-1.7.3" = { + name = "wbuf"; + packageName = "wbuf"; + version = "1.7.3"; + src = fetchurl { + url = "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz"; + sha512 = "O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA=="; + }; + }; + "wcwidth-1.0.1" = { + name = "wcwidth"; + packageName = "wcwidth"; + version = "1.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz"; + sha1 = "f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8"; + }; + }; + "webidl-conversions-4.0.2" = { + name = "webidl-conversions"; + packageName = "webidl-conversions"; + version = "4.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz"; + sha512 = "YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="; + }; + }; + "webpack-4.35.0" = { + name = "webpack"; + packageName = "webpack"; + version = "4.35.0"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack/-/webpack-4.35.0.tgz"; + sha512 = "M5hL3qpVvtr8d4YaJANbAQBc4uT01G33eDpl/psRTBCfjxFTihdhin1NtAKB1ruDwzeVdcsHHV3NX+QsAgOosw=="; + }; + }; + "webpack-bundle-analyzer-3.3.2" = { + name = "webpack-bundle-analyzer"; + packageName = "webpack-bundle-analyzer"; + version = "3.3.2"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.3.2.tgz"; + sha512 = "7qvJLPKB4rRWZGjVp5U1KEjwutbDHSKboAl0IfafnrdXMrgC0tOtZbQD6Rw0u4cmpgRN4O02Fc0t8eAT+FgGzA=="; + }; + }; + "webpack-cli-3.3.4" = { + name = "webpack-cli"; + packageName = "webpack-cli"; + version = "3.3.4"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.4.tgz"; + sha512 = "ubJGQEKMtBSpT+LiL5hXvn2GIOWiRWItR1DGUqJRhwRBeGhpRXjvF5f0erqdRJLErkfqS5/Ldkkedh4AL5Q1ZQ=="; + }; + }; + "webpack-dev-middleware-3.7.1" = { + name = "webpack-dev-middleware"; + packageName = "webpack-dev-middleware"; + version = "3.7.1"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.1.tgz"; + sha512 = "5MWu9SH1z3hY7oHOV6Kbkz5x7hXbxK56mGHNqHTe6d+ewxOwKUxoUJBs7QIaJb33lPjl9bJZ3X0vCoooUzC36A=="; + }; + }; + "webpack-dev-server-3.7.2" = { + name = "webpack-dev-server"; + packageName = "webpack-dev-server"; + version = "3.7.2"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.7.2.tgz"; + sha512 = "mjWtrKJW2T9SsjJ4/dxDC2fkFVUw8jlpemDERqV0ZJIkjjjamR2AbQlr3oz+j4JLhYCHImHnXZK5H06P2wvUew=="; + }; + }; + "webpack-log-1.2.0" = { + name = "webpack-log"; + packageName = "webpack-log"; + version = "1.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-log/-/webpack-log-1.2.0.tgz"; + sha512 = "U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA=="; + }; + }; + "webpack-log-2.0.0" = { + name = "webpack-log"; + packageName = "webpack-log"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz"; + sha512 = "cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg=="; + }; + }; + "webpack-sources-1.4.3" = { + name = "webpack-sources"; + packageName = "webpack-sources"; + version = "1.4.3"; + src = fetchurl { + url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz"; + sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ=="; + }; + }; + "websocket-1.0.28" = { + name = "websocket"; + packageName = "websocket"; + version = "1.0.28"; + src = fetchurl { + url = "https://registry.npmjs.org/websocket/-/websocket-1.0.28.tgz"; + sha512 = "00y/20/80P7H4bCYkzuuvvfDvh+dgtXi5kzDf3UcZwN6boTYaKvsrtZ5lIYm1Gsg48siMErd9M4zjSYfYFHTrA=="; + }; + }; + "websocket-driver-0.7.3" = { + name = "websocket-driver"; + packageName = "websocket-driver"; + version = "0.7.3"; + src = fetchurl { + url = "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz"; + sha512 = "bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg=="; + }; + }; + "websocket-extensions-0.1.3" = { + name = "websocket-extensions"; + packageName = "websocket-extensions"; + version = "0.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz"; + sha512 = "nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg=="; + }; + }; + "whatwg-encoding-1.0.5" = { + name = "whatwg-encoding"; + packageName = "whatwg-encoding"; + version = "1.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz"; + sha512 = "b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw=="; + }; + }; + "whatwg-mimetype-2.3.0" = { + name = "whatwg-mimetype"; + packageName = "whatwg-mimetype"; + version = "2.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz"; + sha512 = "M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g=="; + }; + }; + "whatwg-url-6.5.0" = { + name = "whatwg-url"; + packageName = "whatwg-url"; + version = "6.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz"; + sha512 = "rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ=="; + }; + }; + "whatwg-url-7.0.0" = { + name = "whatwg-url"; + packageName = "whatwg-url"; + version = "7.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz"; + sha512 = "37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ=="; + }; + }; + "which-1.3.1" = { + name = "which"; + packageName = "which"; + version = "1.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/which/-/which-1.3.1.tgz"; + sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ=="; + }; + }; + "which-module-2.0.0" = { + name = "which-module"; + packageName = "which-module"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz"; + sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"; + }; + }; + "window-size-0.1.0" = { + name = "window-size"; + packageName = "window-size"; + version = "0.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz"; + sha1 = "5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"; + }; + }; + "with-5.1.1" = { + name = "with"; + packageName = "with"; + version = "5.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/with/-/with-5.1.1.tgz"; + sha1 = "fa4daa92daf32c4ea94ed453c81f04686b575dfe"; + }; + }; + "wordwrap-0.0.2" = { + name = "wordwrap"; + packageName = "wordwrap"; + version = "0.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz"; + sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f"; + }; + }; + "wordwrap-1.0.0" = { + name = "wordwrap"; + packageName = "wordwrap"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz"; + sha1 = "27584810891456a4171c8d0226441ade90cbcaeb"; + }; + }; + "worker-farm-1.7.0" = { + name = "worker-farm"; + packageName = "worker-farm"; + version = "1.7.0"; + src = fetchurl { + url = "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz"; + sha512 = "rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw=="; + }; + }; + "wrap-ansi-2.1.0" = { + name = "wrap-ansi"; + packageName = "wrap-ansi"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz"; + sha1 = "d8fc3d284dd05794fe84973caecdd1cf824fdd85"; + }; + }; + "wrap-ansi-5.1.0" = { + name = "wrap-ansi"; + packageName = "wrap-ansi"; + version = "5.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz"; + sha512 = "QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q=="; + }; + }; + "wrappy-1.0.2" = { + name = "wrappy"; + packageName = "wrappy"; + version = "1.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"; + sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"; + }; + }; + "write-file-atomic-2.4.1" = { + name = "write-file-atomic"; + packageName = "write-file-atomic"; + version = "2.4.1"; + src = fetchurl { + url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz"; + sha512 = "TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg=="; + }; + }; + "ws-5.2.2" = { + name = "ws"; + packageName = "ws"; + version = "5.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz"; + sha512 = "jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA=="; + }; + }; + "ws-6.2.1" = { + name = "ws"; + packageName = "ws"; + version = "6.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz"; + sha512 = "GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA=="; + }; + }; + "xml-name-validator-3.0.0" = { + name = "xml-name-validator"; + packageName = "xml-name-validator"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz"; + sha512 = "A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw=="; + }; + }; + "xtend-4.0.2" = { + name = "xtend"; + packageName = "xtend"; + version = "4.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz"; + sha512 = "LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="; + }; + }; + "y18n-4.0.0" = { + name = "y18n"; + packageName = "y18n"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz"; + sha512 = "r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w=="; + }; + }; + "yaeti-0.0.6" = { + name = "yaeti"; + packageName = "yaeti"; + version = "0.0.6"; + src = fetchurl { + url = "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz"; + sha1 = "f26f484d72684cf42bedfb76970aa1608fbf9577"; + }; + }; + "yallist-2.1.2" = { + name = "yallist"; + packageName = "yallist"; + version = "2.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz"; + sha1 = "1c11f9218f076089a47dd512f93c6699a6a81d52"; + }; + }; + "yallist-3.1.0" = { + name = "yallist"; + packageName = "yallist"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/yallist/-/yallist-3.1.0.tgz"; + sha512 = "6gpP93MR+VOOehKbCPchro3wFZNSNmek8A2kbkOAZLIZAYx1KP/zAqwO0sOHi3xJEb+UBz8NaYt/17UNit1Q9w=="; + }; + }; + "yargs-12.0.5" = { + name = "yargs"; + packageName = "yargs"; + version = "12.0.5"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz"; + sha512 = "Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw=="; + }; + }; + "yargs-13.3.0" = { + name = "yargs"; + packageName = "yargs"; + version = "13.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz"; + sha512 = "2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA=="; + }; + }; + "yargs-3.10.0" = { + name = "yargs"; + packageName = "yargs"; + version = "3.10.0"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz"; + sha1 = "f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"; + }; + }; + "yargs-parser-10.1.0" = { + name = "yargs-parser"; + packageName = "yargs-parser"; + version = "10.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz"; + sha512 = "VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ=="; + }; + }; + "yargs-parser-11.1.1" = { + name = "yargs-parser"; + packageName = "yargs-parser"; + version = "11.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz"; + sha512 = "C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ=="; + }; + }; + "yargs-parser-13.1.1" = { + name = "yargs-parser"; + packageName = "yargs-parser"; + version = "13.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz"; + sha512 = "oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ=="; + }; + }; + "yarn-1.16.0" = { + name = "yarn"; + packageName = "yarn"; + version = "1.16.0"; + src = fetchurl { + url = "https://registry.npmjs.org/yarn/-/yarn-1.16.0.tgz"; + sha512 = "cfemyGlnWKA1zopUUgebTPf8C4WkPIZ+TJmklwcEAJ4u6oWPtJeAzrsamaGGh/+b1XWe8W51yzAImC4AWbWR1g=="; + }; + }; + "ylru-1.2.1" = { + name = "ylru"; + packageName = "ylru"; + version = "1.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ylru/-/ylru-1.2.1.tgz"; + sha512 = "faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ=="; + }; + }; + }; + args = { + name = "spacegun"; + packageName = "spacegun"; + version = "0.3.3"; + src = ./.; + dependencies = [ + sources."@babel/code-frame-7.5.5" + (sources."@babel/core-7.6.2" // { + dependencies = [ + sources."debug-4.1.1" + sources."json5-2.1.0" + sources."lodash-4.17.15" + sources."ms-2.1.2" + sources."source-map-0.5.7" + ]; + }) + (sources."@babel/generator-7.6.2" // { + dependencies = [ + sources."jsesc-2.5.2" + sources."lodash-4.17.15" + sources."source-map-0.5.7" + ]; + }) + sources."@babel/helper-function-name-7.1.0" + sources."@babel/helper-get-function-arity-7.0.0" + sources."@babel/helper-plugin-utils-7.0.0" + sources."@babel/helper-split-export-declaration-7.4.4" + sources."@babel/helpers-7.6.2" + (sources."@babel/highlight-7.5.0" // { + dependencies = [ + sources."js-tokens-4.0.0" + ]; + }) + sources."@babel/parser-7.6.2" + sources."@babel/plugin-syntax-object-rest-spread-7.2.0" + sources."@babel/template-7.6.0" + (sources."@babel/traverse-7.6.2" // { + dependencies = [ + sources."debug-4.1.1" + sources."globals-11.12.0" + sources."lodash-4.17.15" + sources."ms-2.1.2" + ]; + }) + (sources."@babel/types-7.6.1" // { + dependencies = [ + sources."lodash-4.17.15" + sources."to-fast-properties-2.0.0" + ]; + }) + sources."@cnakazawa/watch-1.0.3" + (sources."@jest/console-24.9.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + (sources."@jest/core-24.9.0" // { + dependencies = [ + sources."ansi-regex-4.1.0" + sources."slash-2.0.0" + sources."strip-ansi-5.2.0" + ]; + }) + sources."@jest/environment-24.9.0" + sources."@jest/fake-timers-24.9.0" + (sources."@jest/reporters-24.9.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + sources."@jest/source-map-24.9.0" + sources."@jest/test-result-24.9.0" + sources."@jest/test-sequencer-24.9.0" + (sources."@jest/transform-24.9.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + sources."@jest/types-24.9.0" + (sources."@kubernetes/client-node-0.10.1" // { + dependencies = [ + sources."@types/node-10.14.19" + ]; + }) + sources."@types/accepts-1.3.5" + sources."@types/axios-0.14.0" + sources."@types/babel-types-7.0.7" + sources."@types/babel__core-7.1.3" + sources."@types/babel__generator-7.6.0" + sources."@types/babel__template-7.0.2" + sources."@types/babel__traverse-7.0.7" + sources."@types/babylon-6.16.5" + sources."@types/body-parser-1.17.1" + sources."@types/caseless-0.12.2" + sources."@types/command-line-args-5.0.0" + sources."@types/connect-3.4.32" + sources."@types/cookies-0.7.3" + sources."@types/cron-1.7.1" + sources."@types/events-3.0.0" + sources."@types/express-4.17.1" + sources."@types/express-serve-static-core-4.16.9" + sources."@types/form-data-2.5.0" + sources."@types/formidable-1.0.31" + sources."@types/glob-7.1.1" + sources."@types/http-assert-1.5.1" + sources."@types/istanbul-lib-coverage-2.0.1" + sources."@types/istanbul-lib-report-1.1.1" + sources."@types/istanbul-reports-1.1.1" + sources."@types/jest-24.0.15" + sources."@types/jest-diff-20.0.1" + sources."@types/js-yaml-3.12.1" + sources."@types/keygrip-1.0.1" + sources."@types/koa-2.0.48" + sources."@types/koa-compose-3.2.4" + sources."@types/koa-router-7.0.41" + sources."@types/koa-send-4.1.2" + sources."@types/koa-static-4.0.1" + sources."@types/koa-views-2.0.3" + sources."@types/lodash-4.14.140" + sources."@types/lodash.clonedeep-4.5.6" + sources."@types/mime-2.0.1" + sources."@types/minimatch-3.0.3" + sources."@types/mkdirp-0.5.2" + sources."@types/node-12.0.8" + sources."@types/ora-3.2.0" + sources."@types/range-parser-1.2.3" + sources."@types/request-2.48.1" + sources."@types/serve-static-1.13.3" + sources."@types/stack-utils-1.0.1" + sources."@types/tough-cookie-2.3.5" + sources."@types/underscore-1.9.3" + sources."@types/websocket-0.0.40" + sources."@types/ws-6.0.3" + sources."@types/yargs-13.0.3" + sources."@types/yargs-parser-13.1.0" + sources."@webassemblyjs/ast-1.8.5" + sources."@webassemblyjs/floating-point-hex-parser-1.8.5" + sources."@webassemblyjs/helper-api-error-1.8.5" + sources."@webassemblyjs/helper-buffer-1.8.5" + sources."@webassemblyjs/helper-code-frame-1.8.5" + sources."@webassemblyjs/helper-fsm-1.8.5" + sources."@webassemblyjs/helper-module-context-1.8.5" + sources."@webassemblyjs/helper-wasm-bytecode-1.8.5" + sources."@webassemblyjs/helper-wasm-section-1.8.5" + sources."@webassemblyjs/ieee754-1.8.5" + sources."@webassemblyjs/leb128-1.8.5" + sources."@webassemblyjs/utf8-1.8.5" + sources."@webassemblyjs/wasm-edit-1.8.5" + sources."@webassemblyjs/wasm-gen-1.8.5" + sources."@webassemblyjs/wasm-opt-1.8.5" + sources."@webassemblyjs/wasm-parser-1.8.5" + sources."@webassemblyjs/wast-parser-1.8.5" + sources."@webassemblyjs/wast-printer-1.8.5" + sources."@xtuc/ieee754-1.2.0" + sources."@xtuc/long-4.2.2" + sources."abab-2.0.2" + sources."abbrev-1.1.1" + sources."accepts-1.3.7" + sources."acorn-5.7.3" + sources."acorn-dynamic-import-4.0.0" + (sources."acorn-globals-3.1.0" // { + dependencies = [ + sources."acorn-4.0.13" + ]; + }) + sources."acorn-walk-6.2.0" + sources."ajv-6.10.0" + sources."ajv-errors-1.0.1" + sources."ajv-keywords-3.4.1" + sources."align-text-0.1.4" + sources."ansi-colors-3.2.4" + sources."ansi-escapes-3.2.0" + sources."ansi-html-0.0.7" + sources."ansi-regex-2.1.1" + sources."ansi-styles-3.2.1" + sources."any-promise-1.3.0" + sources."anymatch-2.0.0" + sources."aproba-1.2.0" + sources."argparse-1.0.10" + sources."arr-diff-4.0.0" + sources."arr-flatten-1.1.0" + sources."arr-union-3.1.0" + sources."array-back-3.1.0" + sources."array-equal-1.0.0" + sources."array-flatten-1.1.1" + sources."array-union-1.0.2" + sources."array-uniq-1.0.3" + sources."array-unique-0.3.2" + sources."asap-2.0.6" + sources."asn1-0.2.4" + sources."asn1.js-4.10.1" + (sources."assert-1.5.0" // { + dependencies = [ + sources."inherits-2.0.1" + sources."util-0.10.3" + ]; + }) + sources."assert-plus-1.0.0" + sources."assign-symbols-1.0.0" + sources."astral-regex-1.0.0" + sources."async-1.5.2" + sources."async-each-1.0.3" + sources."async-limiter-1.0.0" + sources."asynckit-0.4.0" + sources."atob-2.1.2" + sources."awesome-typescript-loader-5.2.1" + sources."aws-sign2-0.7.0" + sources."aws4-1.8.0" + (sources."axios-0.19.0" // { + dependencies = [ + sources."is-buffer-2.0.3" + ]; + }) + sources."babel-6.23.0" + (sources."babel-code-frame-6.26.0" // { + dependencies = [ + sources."ansi-styles-2.2.1" + sources."chalk-1.1.3" + ]; + }) + (sources."babel-core-6.26.3" // { + dependencies = [ + sources."json5-0.5.1" + sources."source-map-0.5.7" + ]; + }) + (sources."babel-generator-6.26.1" // { + dependencies = [ + sources."source-map-0.5.7" + ]; + }) + sources."babel-helper-builder-binary-assignment-operator-visitor-6.24.1" + sources."babel-helper-call-delegate-6.24.1" + sources."babel-helper-define-map-6.26.0" + sources."babel-helper-explode-assignable-expression-6.24.1" + sources."babel-helper-function-name-6.24.1" + sources."babel-helper-get-function-arity-6.24.1" + sources."babel-helper-hoist-variables-6.24.1" + sources."babel-helper-optimise-call-expression-6.24.1" + sources."babel-helper-regex-6.26.0" + sources."babel-helper-remap-async-to-generator-6.24.1" + sources."babel-helper-replace-supers-6.24.1" + sources."babel-helpers-6.24.1" + (sources."babel-jest-24.8.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + sources."babel-messages-6.23.0" + sources."babel-plugin-check-es2015-constants-6.22.0" + sources."babel-plugin-istanbul-5.2.0" + sources."babel-plugin-jest-hoist-24.9.0" + sources."babel-plugin-syntax-async-functions-6.13.0" + sources."babel-plugin-syntax-exponentiation-operator-6.13.0" + sources."babel-plugin-syntax-trailing-function-commas-6.22.0" + sources."babel-plugin-transform-async-to-generator-6.24.1" + sources."babel-plugin-transform-es2015-arrow-functions-6.22.0" + sources."babel-plugin-transform-es2015-block-scoped-functions-6.22.0" + sources."babel-plugin-transform-es2015-block-scoping-6.26.0" + sources."babel-plugin-transform-es2015-classes-6.24.1" + sources."babel-plugin-transform-es2015-computed-properties-6.24.1" + sources."babel-plugin-transform-es2015-destructuring-6.23.0" + sources."babel-plugin-transform-es2015-duplicate-keys-6.24.1" + sources."babel-plugin-transform-es2015-for-of-6.23.0" + sources."babel-plugin-transform-es2015-function-name-6.24.1" + sources."babel-plugin-transform-es2015-literals-6.22.0" + sources."babel-plugin-transform-es2015-modules-amd-6.24.1" + sources."babel-plugin-transform-es2015-modules-commonjs-6.26.2" + sources."babel-plugin-transform-es2015-modules-systemjs-6.24.1" + sources."babel-plugin-transform-es2015-modules-umd-6.24.1" + sources."babel-plugin-transform-es2015-object-super-6.24.1" + sources."babel-plugin-transform-es2015-parameters-6.24.1" + sources."babel-plugin-transform-es2015-shorthand-properties-6.24.1" + sources."babel-plugin-transform-es2015-spread-6.22.0" + sources."babel-plugin-transform-es2015-sticky-regex-6.24.1" + sources."babel-plugin-transform-es2015-template-literals-6.22.0" + sources."babel-plugin-transform-es2015-typeof-symbol-6.23.0" + sources."babel-plugin-transform-es2015-unicode-regex-6.24.1" + sources."babel-plugin-transform-exponentiation-operator-6.24.1" + sources."babel-plugin-transform-regenerator-6.26.0" + sources."babel-plugin-transform-strict-mode-6.24.1" + sources."babel-preset-env-1.7.0" + sources."babel-preset-jest-24.9.0" + (sources."babel-register-6.26.0" // { + dependencies = [ + sources."source-map-0.5.7" + sources."source-map-support-0.4.18" + ]; + }) + sources."babel-runtime-6.26.0" + sources."babel-template-6.26.0" + sources."babel-traverse-6.26.0" + sources."babel-types-6.26.0" + sources."babylon-6.18.0" + sources."balanced-match-1.0.0" + (sources."base-0.11.2" // { + dependencies = [ + sources."define-property-1.0.0" + sources."is-accessor-descriptor-1.0.0" + sources."is-data-descriptor-1.0.0" + sources."is-descriptor-1.0.2" + sources."kind-of-6.0.2" + ]; + }) + sources."base64-js-1.3.1" + sources."batch-0.6.1" + sources."bcrypt-pbkdf-1.0.2" + sources."bfj-6.1.2" + sources."big.js-5.2.2" + sources."binary-extensions-1.13.1" + sources."bluebird-3.5.5" + sources."bn.js-4.11.8" + sources."body-parser-1.19.0" + (sources."bonjour-3.5.0" // { + dependencies = [ + sources."array-flatten-2.1.2" + ]; + }) + sources."brace-expansion-1.1.11" + sources."braces-2.3.2" + sources."brorand-1.1.0" + sources."browser-process-hrtime-0.1.3" + (sources."browser-resolve-1.11.3" // { + dependencies = [ + sources."resolve-1.1.7" + ]; + }) + sources."browserify-aes-1.2.0" + sources."browserify-cipher-1.0.1" + sources."browserify-des-1.0.2" + sources."browserify-rsa-4.0.1" + sources."browserify-sign-4.0.4" + sources."browserify-zlib-0.2.0" + sources."browserslist-3.2.8" + sources."bs-logger-0.2.6" + sources."bser-2.1.0" + sources."buffer-4.9.1" + sources."buffer-from-1.1.1" + sources."buffer-indexof-1.1.1" + sources."buffer-xor-1.0.3" + sources."builtin-status-codes-3.0.0" + sources."bytes-3.1.0" + sources."cacache-10.0.4" + sources."cache-base-1.0.1" + sources."cache-content-type-1.0.1" + sources."callsites-3.1.0" + sources."camelcase-5.3.1" + sources."caniuse-lite-1.0.30000997" + sources."capture-exit-2.0.0" + sources."caseless-0.12.0" + sources."center-align-0.1.3" + (sources."chalk-2.4.2" // { + dependencies = [ + sources."supports-color-5.5.0" + ]; + }) + sources."character-parser-2.2.0" + sources."check-types-8.0.3" + (sources."chokidar-2.1.8" // { + dependencies = [ + sources."normalize-path-3.0.0" + ]; + }) + sources."chownr-1.1.3" + sources."chrome-trace-event-1.0.2" + sources."ci-info-2.0.0" + sources."cipher-base-1.0.4" + (sources."class-utils-0.3.6" // { + dependencies = [ + sources."define-property-0.2.5" + ]; + }) + sources."clean-css-4.2.1" + sources."cli-cursor-2.1.0" + sources."cli-spinners-2.2.0" + (sources."cliui-5.0.0" // { + dependencies = [ + sources."ansi-regex-4.1.0" + sources."strip-ansi-5.2.0" + ]; + }) + sources."clone-1.0.4" + sources."co-4.6.0" + sources."co-body-5.2.0" + sources."code-point-at-1.1.0" + sources."collection-visit-1.0.0" + sources."color-convert-1.9.3" + sources."color-name-1.1.3" + sources."combined-stream-1.0.8" + sources."command-line-args-5.1.1" + sources."commander-2.20.0" + sources."commondir-1.0.1" + sources."component-emitter-1.3.0" + sources."compressible-2.0.17" + (sources."compression-1.7.4" // { + dependencies = [ + sources."bytes-3.0.0" + ]; + }) + sources."concat-map-0.0.1" + sources."concat-stream-1.6.2" + sources."condense-newlines-0.2.1" + sources."config-chain-1.1.12" + sources."connect-history-api-fallback-1.6.0" + sources."console-browserify-1.1.0" + sources."consolidate-0.15.1" + sources."constantinople-3.1.2" + sources."constants-browserify-1.0.0" + sources."content-disposition-0.5.3" + sources."content-type-1.0.4" + sources."convert-source-map-1.6.0" + sources."cookie-0.4.0" + sources."cookie-signature-1.0.6" + sources."cookies-0.7.3" + sources."copy-concurrently-1.0.5" + sources."copy-descriptor-0.1.1" + (sources."copy-webpack-plugin-4.6.0" // { + dependencies = [ + sources."p-limit-1.3.0" + sources."p-try-1.0.0" + ]; + }) + sources."core-js-2.6.9" + sources."core-util-is-1.0.2" + sources."create-ecdh-4.0.3" + sources."create-hash-1.2.0" + sources."create-hmac-1.1.7" + sources."cron-1.7.1" + sources."cross-spawn-6.0.5" + sources."crypto-browserify-3.12.0" + sources."cssom-0.3.8" + sources."cssstyle-1.4.0" + sources."cyclist-1.0.1" + sources."d-1.0.1" + sources."dashdash-1.14.1" + (sources."data-urls-1.1.0" // { + dependencies = [ + sources."whatwg-url-7.0.0" + ]; + }) + sources."date-now-0.1.4" + sources."debug-2.6.9" + sources."decamelize-1.2.0" + sources."decode-uri-component-0.2.0" + sources."deep-equal-1.0.1" + sources."deep-is-0.1.3" + sources."default-gateway-4.2.0" + sources."defaults-1.0.3" + sources."define-properties-1.1.3" + (sources."define-property-2.0.2" // { + dependencies = [ + sources."is-accessor-descriptor-1.0.0" + sources."is-data-descriptor-1.0.0" + sources."is-descriptor-1.0.2" + sources."kind-of-6.0.2" + ]; + }) + (sources."del-4.1.1" // { + dependencies = [ + (sources."globby-6.1.0" // { + dependencies = [ + sources."pify-2.3.0" + ]; + }) + sources."pify-4.0.1" + ]; + }) + sources."delayed-stream-1.0.0" + sources."delegates-1.0.0" + sources."depd-1.1.2" + sources."des.js-1.0.0" + sources."destroy-1.0.4" + sources."detect-file-1.0.0" + sources."detect-indent-4.0.0" + sources."detect-newline-2.1.0" + sources."detect-node-2.0.4" + sources."diff-sequences-24.9.0" + sources."diffie-hellman-5.0.3" + sources."dir-glob-2.2.2" + sources."dns-equal-1.0.0" + sources."dns-packet-1.3.1" + sources."dns-txt-2.0.2" + sources."doctypes-1.1.0" + sources."domain-browser-1.2.0" + sources."domexception-1.0.1" + sources."duplexer-0.1.1" + sources."duplexify-3.7.1" + sources."ecc-jsbn-0.1.2" + sources."editorconfig-0.15.3" + sources."ee-first-1.1.1" + sources."ejs-2.7.1" + sources."electron-to-chromium-1.3.267" + sources."elliptic-6.5.1" + sources."emoji-regex-7.0.3" + sources."emojis-list-2.1.0" + sources."encodeurl-1.0.2" + sources."end-of-stream-1.4.4" + sources."enhanced-resolve-4.1.0" + sources."errno-0.1.7" + sources."error-ex-1.3.2" + sources."error-inject-1.0.0" + sources."es-abstract-1.14.2" + sources."es-to-primitive-1.2.0" + sources."es5-ext-0.10.51" + sources."es6-iterator-2.0.3" + sources."es6-symbol-3.1.2" + sources."escape-html-1.0.3" + sources."escape-string-regexp-1.0.5" + (sources."escodegen-1.12.0" // { + dependencies = [ + sources."esprima-3.1.3" + ]; + }) + sources."eslint-scope-4.0.3" + sources."esprima-4.0.1" + sources."esrecurse-4.2.1" + sources."estraverse-4.3.0" + sources."esutils-2.0.2" + sources."etag-1.8.1" + sources."eventemitter3-4.0.0" + sources."events-3.0.0" + sources."eventsource-1.0.7" + sources."evp_bytestokey-1.0.3" + sources."exec-sh-0.3.2" + sources."execa-1.0.0" + sources."exit-0.1.2" + (sources."expand-brackets-2.1.4" // { + dependencies = [ + sources."define-property-0.2.5" + ]; + }) + sources."expand-tilde-2.0.2" + sources."expect-24.9.0" + (sources."express-4.17.1" // { + dependencies = [ + sources."path-to-regexp-0.1.7" + ]; + }) + sources."extend-3.0.2" + sources."extend-shallow-2.0.1" + (sources."extglob-2.0.4" // { + dependencies = [ + sources."define-property-1.0.0" + sources."is-accessor-descriptor-1.0.0" + sources."is-data-descriptor-1.0.0" + sources."is-descriptor-1.0.2" + sources."kind-of-6.0.2" + ]; + }) + sources."extsprintf-1.3.0" + sources."fast-deep-equal-2.0.1" + sources."fast-json-stable-stringify-2.0.0" + sources."fast-levenshtein-2.0.6" + sources."faye-websocket-0.10.0" + sources."fb-watchman-2.0.0" + sources."figgy-pudding-3.5.1" + sources."filesize-3.6.1" + sources."fill-range-4.0.0" + sources."finalhandler-1.1.2" + sources."find-cache-dir-1.0.0" + sources."find-replace-3.0.0" + sources."find-up-3.0.0" + (sources."findup-sync-2.0.0" // { + dependencies = [ + sources."is-glob-3.1.0" + ]; + }) + sources."flush-write-stream-1.1.1" + (sources."follow-redirects-1.5.10" // { + dependencies = [ + sources."debug-3.1.0" + ]; + }) + sources."for-in-1.0.2" + sources."forever-agent-0.6.1" + sources."form-data-2.5.1" + sources."formidable-1.2.1" + sources."forwarded-0.1.2" + sources."fragment-cache-0.2.1" + sources."fresh-0.5.2" + sources."from2-2.3.0" + sources."fs-extra-4.0.3" + sources."fs-write-stream-atomic-1.0.10" + sources."fs.realpath-1.0.0" + sources."fsevents-1.2.9" + sources."function-bind-1.1.1" + sources."get-caller-file-2.0.5" + sources."get-paths-0.0.4" + sources."get-stream-4.1.0" + sources."get-value-2.0.6" + sources."getpass-0.1.7" + sources."glob-7.1.4" + (sources."glob-parent-3.1.0" // { + dependencies = [ + sources."is-glob-3.1.0" + ]; + }) + sources."global-modules-1.0.0" + sources."global-prefix-1.0.2" + sources."globals-9.18.0" + sources."globby-7.1.1" + sources."graceful-fs-4.1.15" + sources."growly-1.3.0" + (sources."gzip-size-5.1.1" // { + dependencies = [ + sources."pify-4.0.1" + ]; + }) + sources."handle-thing-2.0.0" + (sources."handlebars-4.3.3" // { + dependencies = [ + sources."uglify-js-3.6.0" + ]; + }) + sources."har-schema-2.0.0" + sources."har-validator-5.1.3" + sources."has-1.0.3" + sources."has-ansi-2.0.0" + sources."has-flag-3.0.0" + sources."has-symbols-1.0.0" + sources."has-value-1.0.0" + (sources."has-values-1.0.0" // { + dependencies = [ + sources."kind-of-4.0.0" + ]; + }) + sources."hash-base-3.0.4" + sources."hash.js-1.1.7" + sources."hmac-drbg-1.0.1" + sources."home-or-tmp-2.0.0" + sources."homedir-polyfill-1.0.3" + sources."hoopy-0.1.4" + sources."hosted-git-info-2.8.4" + sources."hpack.js-2.1.6" + sources."html-encoding-sniffer-1.0.2" + sources."html-entities-1.2.1" + sources."http-assert-1.4.1" + sources."http-deceiver-1.2.7" + sources."http-errors-1.7.2" + sources."http-parser-js-0.4.10" + sources."http-proxy-1.18.0" + sources."http-proxy-middleware-0.19.1" + sources."http-signature-1.2.0" + sources."https-browserify-1.0.0" + sources."iconv-lite-0.4.24" + sources."ieee754-1.1.13" + sources."iferr-0.1.5" + sources."ignore-3.3.10" + (sources."import-local-2.0.0" // { + dependencies = [ + sources."pkg-dir-3.0.0" + ]; + }) + sources."imurmurhash-0.1.4" + sources."infer-owner-1.0.4" + sources."inflation-2.0.0" + sources."inflight-1.0.6" + sources."inherits-2.0.3" + sources."ini-1.3.5" + sources."internal-ip-4.3.0" + sources."interpret-1.2.0" + sources."invariant-2.2.4" + sources."invert-kv-2.0.0" + sources."ip-1.1.5" + sources."ip-regex-2.1.0" + sources."ipaddr.js-1.9.0" + sources."is-accessor-descriptor-0.1.6" + sources."is-arrayish-0.2.1" + sources."is-binary-path-1.0.1" + sources."is-buffer-1.1.6" + sources."is-callable-1.1.4" + sources."is-ci-2.0.0" + sources."is-data-descriptor-0.1.4" + sources."is-date-object-1.0.1" + (sources."is-descriptor-0.1.6" // { + dependencies = [ + sources."kind-of-5.1.0" + ]; + }) + (sources."is-expression-3.0.0" // { + dependencies = [ + sources."acorn-4.0.13" + ]; + }) + sources."is-extendable-0.1.1" + sources."is-extglob-2.1.1" + sources."is-finite-1.0.2" + sources."is-fullwidth-code-point-2.0.0" + sources."is-generator-fn-2.1.0" + sources."is-generator-function-1.0.7" + sources."is-glob-4.0.1" + sources."is-number-3.0.0" + sources."is-path-cwd-2.2.0" + sources."is-path-in-cwd-2.1.0" + sources."is-path-inside-2.1.0" + sources."is-plain-object-2.0.4" + sources."is-promise-2.1.0" + sources."is-regex-1.0.4" + sources."is-stream-1.1.0" + sources."is-symbol-1.0.2" + sources."is-typedarray-1.0.0" + sources."is-whitespace-0.3.0" + sources."is-windows-1.0.2" + sources."is-wsl-1.1.0" + sources."isarray-1.0.0" + sources."isexe-2.0.0" + sources."isobject-3.0.1" + sources."isomorphic-ws-4.0.1" + sources."isstream-0.1.2" + sources."istanbul-lib-coverage-2.0.5" + (sources."istanbul-lib-instrument-3.3.0" // { + dependencies = [ + sources."semver-6.3.0" + ]; + }) + (sources."istanbul-lib-report-2.0.8" // { + dependencies = [ + sources."make-dir-2.1.0" + sources."pify-4.0.1" + sources."supports-color-6.1.0" + ]; + }) + (sources."istanbul-lib-source-maps-3.0.6" // { + dependencies = [ + sources."debug-4.1.1" + sources."make-dir-2.1.0" + sources."ms-2.1.2" + sources."pify-4.0.1" + ]; + }) + sources."istanbul-reports-2.2.6" + (sources."jest-24.8.0" // { + dependencies = [ + sources."jest-cli-24.9.0" + ]; + }) + sources."jest-changed-files-24.9.0" + (sources."jest-config-24.9.0" // { + dependencies = [ + sources."babel-jest-24.9.0" + sources."slash-2.0.0" + ]; + }) + sources."jest-diff-24.9.0" + sources."jest-docblock-24.9.0" + sources."jest-each-24.9.0" + sources."jest-environment-jsdom-24.9.0" + sources."jest-environment-node-24.9.0" + sources."jest-get-type-24.9.0" + sources."jest-haste-map-24.9.0" + sources."jest-jasmine2-24.9.0" + sources."jest-leak-detector-24.9.0" + sources."jest-matcher-utils-24.9.0" + (sources."jest-message-util-24.9.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + sources."jest-mock-24.9.0" + sources."jest-pnp-resolver-1.2.1" + sources."jest-regex-util-24.9.0" + sources."jest-resolve-24.9.0" + sources."jest-resolve-dependencies-24.9.0" + sources."jest-runner-24.9.0" + (sources."jest-runtime-24.9.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + sources."jest-serializer-24.9.0" + (sources."jest-snapshot-24.9.0" // { + dependencies = [ + sources."semver-6.3.0" + ]; + }) + (sources."jest-util-24.9.0" // { + dependencies = [ + sources."slash-2.0.0" + ]; + }) + sources."jest-validate-24.9.0" + sources."jest-watcher-24.9.0" + (sources."jest-worker-24.9.0" // { + dependencies = [ + sources."supports-color-6.1.0" + ]; + }) + sources."js-beautify-1.10.2" + sources."js-stringify-1.0.2" + sources."js-tokens-3.0.2" + sources."js-yaml-3.13.1" + sources."jsbn-0.1.1" + (sources."jsdom-11.12.0" // { + dependencies = [ + (sources."acorn-globals-4.3.4" // { + dependencies = [ + sources."acorn-6.3.0" + ]; + }) + sources."ws-5.2.2" + ]; + }) + sources."jsesc-1.3.0" + sources."json-parse-better-errors-1.0.2" + sources."json-schema-0.2.3" + sources."json-schema-traverse-0.4.1" + sources."json-stream-1.0.0" + sources."json-stringify-safe-5.0.1" + sources."json3-3.3.3" + sources."json5-1.0.1" + sources."jsonfile-4.0.0" + sources."jsonpath-plus-0.19.0" + sources."jsprim-1.4.1" + sources."jstransformer-1.0.0" + sources."keygrip-1.0.3" + sources."killable-1.0.1" + sources."kind-of-3.2.2" + sources."kleur-3.0.3" + (sources."koa-2.7.0" // { + dependencies = [ + sources."debug-3.1.0" + ]; + }) + sources."koa-body-4.1.0" + sources."koa-compose-4.1.0" + (sources."koa-convert-1.2.0" // { + dependencies = [ + sources."koa-compose-3.2.1" + ]; + }) + sources."koa-is-json-1.0.0" + (sources."koa-router-7.4.0" // { + dependencies = [ + sources."debug-3.2.6" + sources."koa-compose-3.2.1" + sources."ms-2.1.2" + ]; + }) + (sources."koa-send-5.0.0" // { + dependencies = [ + sources."debug-3.2.6" + sources."ms-2.1.2" + ]; + }) + (sources."koa-static-5.0.0" // { + dependencies = [ + sources."debug-3.2.6" + sources."ms-2.1.2" + ]; + }) + (sources."koa-views-6.2.0" // { + dependencies = [ + sources."debug-4.1.1" + sources."ms-2.1.2" + ]; + }) + sources."lazy-cache-1.0.4" + sources."lcid-2.0.0" + sources."left-pad-1.3.0" + sources."leven-3.1.0" + sources."levn-0.3.0" + sources."load-json-file-4.0.0" + sources."loader-runner-2.4.0" + sources."loader-utils-1.2.3" + sources."locate-path-3.0.0" + sources."lodash-4.17.15" + sources."lodash.camelcase-4.3.0" + sources."lodash.clonedeep-4.5.0" + sources."lodash.sortby-4.7.0" + sources."log-symbols-2.2.0" + sources."loglevel-1.6.4" + sources."loglevelnext-1.0.5" + sources."longest-1.0.1" + sources."loose-envify-1.4.0" + (sources."lru-cache-4.1.5" // { + dependencies = [ + sources."yallist-2.1.2" + ]; + }) + sources."make-dir-1.3.0" + sources."make-error-1.3.5" + sources."makeerror-1.0.11" + sources."mamacro-0.0.3" + sources."map-age-cleaner-0.1.3" + sources."map-cache-0.2.2" + sources."map-visit-1.0.0" + sources."md5.js-1.3.5" + sources."media-typer-0.3.0" + sources."mem-4.3.0" + sources."memory-fs-0.4.1" + sources."merge-descriptors-1.0.1" + sources."merge-stream-2.0.0" + sources."methods-1.1.2" + (sources."micromatch-3.1.10" // { + dependencies = [ + sources."extend-shallow-3.0.2" + sources."is-extendable-1.0.1" + sources."kind-of-6.0.2" + ]; + }) + sources."miller-rabin-4.0.1" + sources."mime-1.6.0" + sources."mime-db-1.40.0" + sources."mime-types-2.1.24" + sources."mimic-fn-2.1.0" + sources."minimalistic-assert-1.0.1" + sources."minimalistic-crypto-utils-1.0.1" + sources."minimatch-3.0.4" + sources."minimist-1.2.0" + (sources."mississippi-2.0.0" // { + dependencies = [ + sources."pump-2.0.1" + ]; + }) + (sources."mixin-deep-1.3.2" // { + dependencies = [ + sources."is-extendable-1.0.1" + ]; + }) + (sources."mkdirp-0.5.1" // { + dependencies = [ + sources."minimist-0.0.8" + ]; + }) + sources."moment-2.24.0" + sources."moment-timezone-0.5.26" + sources."move-concurrently-1.0.1" + sources."ms-2.0.0" + sources."multicast-dns-6.2.3" + sources."multicast-dns-service-types-1.1.0" + sources."mz-2.7.0" + sources."nan-2.14.0" + (sources."nanomatch-1.2.13" // { + dependencies = [ + sources."extend-shallow-3.0.2" + sources."is-extendable-1.0.1" + sources."kind-of-6.0.2" + ]; + }) + sources."natural-compare-1.4.0" + sources."negotiator-0.6.2" + sources."neo-async-2.6.1" + sources."next-tick-1.0.0" + sources."nice-try-1.0.5" + sources."node-forge-0.8.2" + sources."node-int64-0.4.0" + (sources."node-libs-browser-2.2.1" // { + dependencies = [ + sources."punycode-1.4.1" + ]; + }) + sources."node-modules-regexp-1.0.0" + sources."node-notifier-5.4.3" + sources."nopt-4.0.1" + sources."normalize-package-data-2.5.0" + sources."normalize-path-2.1.1" + sources."npm-run-path-2.0.2" + sources."number-is-nan-1.0.1" + sources."nwsapi-2.1.4" + sources."oauth-sign-0.9.0" + sources."object-assign-4.1.1" + (sources."object-copy-0.1.0" // { + dependencies = [ + sources."define-property-0.2.5" + ]; + }) + sources."object-inspect-1.6.0" + sources."object-keys-1.1.1" + sources."object-visit-1.0.1" + sources."object.assign-4.1.0" + sources."object.getownpropertydescriptors-2.0.3" + sources."object.pick-1.3.0" + sources."obuf-1.1.2" + sources."on-finished-2.3.0" + sources."on-headers-1.0.2" + sources."once-1.4.0" + (sources."onetime-2.0.1" // { + dependencies = [ + sources."mimic-fn-1.2.0" + ]; + }) + sources."only-0.0.2" + sources."opener-1.5.1" + sources."opn-5.5.0" + (sources."optimist-0.6.1" // { + dependencies = [ + sources."minimist-0.0.10" + ]; + }) + (sources."optionator-0.8.2" // { + dependencies = [ + sources."wordwrap-1.0.0" + ]; + }) + (sources."ora-3.4.0" // { + dependencies = [ + sources."ansi-regex-4.1.0" + sources."strip-ansi-5.2.0" + ]; + }) + sources."original-1.0.2" + sources."os-browserify-0.3.0" + sources."os-homedir-1.0.2" + sources."os-locale-3.1.0" + sources."os-tmpdir-1.0.2" + sources."osenv-0.1.5" + sources."p-defer-1.0.0" + sources."p-each-series-1.0.0" + sources."p-finally-1.0.0" + sources."p-is-promise-2.1.0" + sources."p-limit-2.2.1" + sources."p-locate-3.0.0" + sources."p-map-2.1.0" + sources."p-reduce-1.0.0" + sources."p-retry-3.0.1" + sources."p-try-2.2.0" + sources."pako-1.0.10" + sources."parallel-transform-1.2.0" + sources."parse-asn1-5.1.5" + sources."parse-json-4.0.0" + sources."parse-passwd-1.0.0" + sources."parse5-4.0.0" + sources."parseurl-1.3.3" + sources."pascalcase-0.1.1" + sources."path-browserify-0.0.1" + sources."path-dirname-1.0.2" + sources."path-exists-3.0.0" + sources."path-is-absolute-1.0.1" + sources."path-is-inside-1.0.2" + sources."path-key-2.0.1" + sources."path-parse-1.0.6" + (sources."path-to-regexp-1.7.0" // { + dependencies = [ + sources."isarray-0.0.1" + ]; + }) + sources."path-type-3.0.0" + sources."pbkdf2-3.0.17" + sources."performance-now-2.1.0" + sources."pify-3.0.0" + sources."pinkie-2.0.4" + sources."pinkie-promise-2.0.1" + sources."pirates-4.0.1" + (sources."pkg-dir-2.0.0" // { + dependencies = [ + sources."find-up-2.1.0" + sources."locate-path-2.0.0" + sources."p-limit-1.3.0" + sources."p-locate-2.0.0" + sources."p-try-1.0.0" + ]; + }) + sources."pn-1.1.0" + sources."portfinder-1.0.24" + sources."posix-character-classes-0.1.1" + sources."prelude-ls-1.1.2" + sources."prettier-1.18.2" + sources."pretty-2.0.0" + (sources."pretty-format-24.9.0" // { + dependencies = [ + sources."ansi-regex-4.1.0" + ]; + }) + sources."private-0.1.8" + sources."process-0.11.10" + sources."process-nextick-args-2.0.1" + sources."promise-7.3.1" + sources."promise-inflight-1.0.1" + sources."prompts-2.2.1" + sources."proto-list-1.2.4" + sources."proxy-addr-2.0.5" + sources."prr-1.0.1" + sources."pseudomap-1.0.2" + sources."psl-1.1.32" + sources."public-encrypt-4.0.3" + sources."pug-2.0.4" + sources."pug-attrs-2.0.4" + sources."pug-code-gen-2.0.2" + sources."pug-error-1.3.3" + sources."pug-filters-3.1.1" + sources."pug-lexer-4.1.0" + sources."pug-linker-3.0.6" + sources."pug-load-2.0.12" + sources."pug-parser-5.0.1" + sources."pug-runtime-2.0.5" + sources."pug-strip-comments-1.0.4" + sources."pug-walk-1.1.8" + sources."pump-3.0.0" + (sources."pumpify-1.5.1" // { + dependencies = [ + sources."pump-2.0.1" + ]; + }) + sources."punycode-2.1.1" + sources."qs-6.7.0" + sources."querystring-0.2.0" + sources."querystring-es3-0.2.1" + sources."querystringify-2.1.1" + sources."randombytes-2.1.0" + sources."randomfill-1.0.4" + sources."range-parser-1.2.1" + sources."raw-body-2.4.0" + sources."react-is-16.9.0" + sources."read-pkg-3.0.0" + sources."read-pkg-up-4.0.0" + sources."readable-stream-2.3.6" + sources."readdirp-2.2.1" + sources."realpath-native-1.1.0" + sources."rechoir-0.6.2" + sources."regenerate-1.4.0" + sources."regenerator-runtime-0.11.1" + sources."regenerator-transform-0.10.1" + (sources."regex-not-1.0.2" // { + dependencies = [ + sources."extend-shallow-3.0.2" + sources."is-extendable-1.0.1" + ]; + }) + sources."regexpu-core-2.0.0" + sources."regjsgen-0.2.0" + (sources."regjsparser-0.1.5" // { + dependencies = [ + sources."jsesc-0.5.0" + ]; + }) + sources."remove-trailing-separator-1.1.0" + sources."repeat-element-1.1.3" + sources."repeat-string-1.6.1" + sources."repeating-2.0.1" + (sources."request-2.88.0" // { + dependencies = [ + sources."form-data-2.3.3" + sources."punycode-1.4.1" + sources."qs-6.5.2" + sources."tough-cookie-2.4.3" + ]; + }) + sources."request-promise-core-1.1.2" + sources."request-promise-native-1.0.7" + sources."require-directory-2.1.1" + sources."require-main-filename-2.0.0" + sources."requires-port-1.0.0" + sources."resolve-1.11.0" + sources."resolve-cwd-2.0.0" + sources."resolve-dir-1.0.1" + sources."resolve-from-3.0.0" + (sources."resolve-path-1.4.0" // { + dependencies = [ + sources."http-errors-1.6.3" + sources."setprototypeof-1.1.0" + ]; + }) + sources."resolve-url-0.2.1" + sources."restore-cursor-2.0.0" + sources."ret-0.1.15" + sources."retry-0.12.0" + sources."right-align-0.1.3" + sources."rimraf-2.7.1" + sources."ripemd160-2.0.2" + sources."rsvp-4.8.5" + sources."run-queue-1.0.3" + sources."rxjs-6.5.2" + sources."safe-buffer-5.1.2" + sources."safe-regex-1.1.0" + sources."safer-buffer-2.1.2" + sources."sane-4.1.0" + sources."sax-1.2.4" + sources."schema-utils-1.0.0" + sources."select-hose-2.0.0" + sources."selfsigned-1.10.6" + sources."semver-5.7.0" + (sources."send-0.17.1" // { + dependencies = [ + sources."ms-2.1.1" + ]; + }) + sources."serialize-javascript-1.9.1" + (sources."serve-index-1.9.1" // { + dependencies = [ + sources."http-errors-1.6.3" + sources."setprototypeof-1.1.0" + ]; + }) + sources."serve-static-1.14.1" + sources."set-blocking-2.0.0" + sources."set-value-2.0.1" + sources."setimmediate-1.0.5" + sources."setprototypeof-1.1.1" + sources."sha.js-2.4.11" + sources."shebang-command-1.2.0" + sources."shebang-regex-1.0.0" + sources."shelljs-0.8.3" + sources."shellwords-0.1.1" + sources."sigmund-1.0.1" + sources."signal-exit-3.0.2" + (sources."simple-git-1.96.0" // { + dependencies = [ + sources."debug-3.2.6" + sources."ms-2.1.2" + ]; + }) + sources."sisteransi-1.0.3" + sources."slash-1.0.0" + (sources."snapdragon-0.8.2" // { + dependencies = [ + sources."define-property-0.2.5" + sources."source-map-0.5.7" + ]; + }) + (sources."snapdragon-node-2.1.1" // { + dependencies = [ + sources."define-property-1.0.0" + sources."is-accessor-descriptor-1.0.0" + sources."is-data-descriptor-1.0.0" + sources."is-descriptor-1.0.2" + sources."kind-of-6.0.2" + ]; + }) + sources."snapdragon-util-3.0.1" + sources."sockjs-0.3.19" + (sources."sockjs-client-1.3.0" // { + dependencies = [ + sources."debug-3.2.6" + sources."faye-websocket-0.11.3" + sources."ms-2.1.2" + ]; + }) + sources."source-list-map-2.0.1" + sources."source-map-0.6.1" + sources."source-map-resolve-0.5.2" + sources."source-map-support-0.5.13" + sources."source-map-url-0.4.0" + sources."spdx-correct-3.1.0" + sources."spdx-exceptions-2.2.0" + sources."spdx-expression-parse-3.0.0" + sources."spdx-license-ids-3.0.5" + (sources."spdy-4.0.1" // { + dependencies = [ + sources."debug-4.1.1" + sources."ms-2.1.2" + ]; + }) + (sources."spdy-transport-3.0.0" // { + dependencies = [ + sources."debug-4.1.1" + sources."ms-2.1.2" + sources."readable-stream-3.4.0" + ]; + }) + (sources."split-string-3.1.0" // { + dependencies = [ + sources."extend-shallow-3.0.2" + sources."is-extendable-1.0.1" + ]; + }) + sources."sprintf-js-1.0.3" + sources."sshpk-1.16.1" + sources."ssri-5.3.0" + sources."stack-utils-1.0.2" + (sources."static-extend-0.1.2" // { + dependencies = [ + sources."define-property-0.2.5" + ]; + }) + sources."statuses-1.5.0" + sources."stealthy-require-1.1.1" + sources."stream-browserify-2.0.2" + sources."stream-each-1.2.3" + sources."stream-http-2.8.3" + sources."stream-shift-1.0.0" + (sources."string-length-2.0.0" // { + dependencies = [ + sources."ansi-regex-3.0.0" + sources."strip-ansi-4.0.0" + ]; + }) + (sources."string-width-3.1.0" // { + dependencies = [ + sources."ansi-regex-4.1.0" + sources."strip-ansi-5.2.0" + ]; + }) + sources."string.prototype.trimleft-2.1.0" + sources."string.prototype.trimright-2.1.0" + sources."string_decoder-1.1.1" + sources."strip-ansi-3.0.1" + sources."strip-bom-3.0.0" + sources."strip-eof-1.0.0" + sources."supports-color-2.0.0" + sources."symbol-tree-3.2.4" + sources."tapable-1.1.3" + sources."terser-4.3.3" + (sources."terser-webpack-plugin-1.4.1" // { + dependencies = [ + sources."cacache-12.0.3" + sources."find-cache-dir-2.1.0" + sources."lru-cache-5.1.1" + sources."make-dir-2.1.0" + sources."mississippi-3.0.0" + sources."pify-4.0.1" + sources."pkg-dir-3.0.0" + sources."ssri-6.0.1" + ]; + }) + sources."test-exclude-5.2.3" + sources."thenify-3.3.0" + sources."thenify-all-1.6.0" + sources."throat-4.1.0" + sources."through2-2.0.5" + sources."thunky-1.0.3" + sources."timers-browserify-2.0.11" + sources."tmpl-1.0.4" + sources."to-arraybuffer-1.0.1" + sources."to-fast-properties-1.0.3" + sources."to-object-path-0.3.0" + (sources."to-regex-3.0.2" // { + dependencies = [ + sources."extend-shallow-3.0.2" + sources."is-extendable-1.0.1" + ]; + }) + sources."to-regex-range-2.1.1" + sources."toidentifier-1.0.0" + sources."token-stream-0.0.1" + sources."tough-cookie-2.5.0" + sources."tr46-1.0.1" + sources."trim-right-1.0.1" + sources."tryer-1.0.1" + (sources."ts-jest-24.0.2" // { + dependencies = [ + sources."camelcase-4.1.0" + sources."json5-2.1.0" + sources."yargs-parser-10.1.0" + ]; + }) + sources."tslib-1.10.0" + sources."tty-browserify-0.0.0" + sources."tunnel-agent-0.6.0" + sources."tweetnacl-0.14.5" + sources."type-1.2.0" + sources."type-check-0.3.2" + sources."type-is-1.6.18" + sources."typedarray-0.0.6" + sources."typedarray-to-buffer-3.1.5" + sources."typescript-3.5.2" + sources."typical-4.0.0" + (sources."uglify-js-2.8.29" // { + dependencies = [ + sources."camelcase-1.2.1" + sources."cliui-2.1.0" + sources."source-map-0.5.7" + sources."yargs-3.10.0" + ]; + }) + sources."uglify-to-browserify-1.0.2" + sources."underscore-1.9.1" + sources."union-value-1.0.1" + sources."unique-filename-1.1.1" + sources."unique-slug-2.0.2" + sources."universalify-0.1.2" + sources."unpipe-1.0.0" + (sources."unset-value-1.0.0" // { + dependencies = [ + (sources."has-value-0.3.1" // { + dependencies = [ + sources."isobject-2.1.0" + ]; + }) + sources."has-values-0.1.4" + ]; + }) + sources."upath-1.2.0" + sources."uri-js-4.2.2" + sources."urijs-1.19.1" + sources."urix-0.1.0" + (sources."url-0.11.0" // { + dependencies = [ + sources."punycode-1.3.2" + ]; + }) + sources."url-parse-1.4.7" + sources."use-3.1.1" + sources."util-0.11.1" + sources."util-deprecate-1.0.2" + sources."util.promisify-1.0.0" + sources."utils-merge-1.0.1" + sources."uuid-3.3.2" + sources."v8-compile-cache-2.1.0" + sources."validate-npm-package-license-3.0.4" + sources."vary-1.1.2" + sources."verror-1.10.0" + sources."vm-browserify-1.1.0" + sources."void-elements-2.0.1" + sources."w3c-hr-time-1.0.1" + sources."walker-1.0.7" + sources."watchpack-1.6.0" + sources."wbuf-1.7.3" + sources."wcwidth-1.0.1" + sources."webidl-conversions-4.0.2" + (sources."webpack-4.35.0" // { + dependencies = [ + sources."acorn-6.3.0" + ]; + }) + (sources."webpack-bundle-analyzer-3.3.2" // { + dependencies = [ + sources."acorn-6.3.0" + ]; + }) + (sources."webpack-cli-3.3.4" // { + dependencies = [ + sources."ansi-regex-3.0.0" + sources."cliui-4.1.0" + sources."get-caller-file-1.0.3" + sources."require-main-filename-1.0.1" + sources."string-width-2.1.1" + sources."strip-ansi-4.0.0" + sources."supports-color-5.5.0" + (sources."wrap-ansi-2.1.0" // { + dependencies = [ + sources."ansi-regex-2.1.1" + sources."is-fullwidth-code-point-1.0.0" + sources."string-width-1.0.2" + sources."strip-ansi-3.0.1" + ]; + }) + sources."yargs-12.0.5" + sources."yargs-parser-11.1.1" + ]; + }) + (sources."webpack-dev-middleware-3.7.1" // { + dependencies = [ + sources."mime-2.4.4" + sources."webpack-log-2.0.0" + ]; + }) + (sources."webpack-dev-server-3.7.2" // { + dependencies = [ + sources."ansi-regex-3.0.0" + (sources."cliui-4.1.0" // { + dependencies = [ + sources."strip-ansi-4.0.0" + ]; + }) + sources."debug-4.1.1" + sources."get-caller-file-1.0.3" + sources."ms-2.1.2" + sources."require-main-filename-1.0.1" + sources."semver-6.3.0" + (sources."string-width-2.1.1" // { + dependencies = [ + sources."strip-ansi-4.0.0" + ]; + }) + sources."supports-color-6.1.0" + sources."webpack-log-2.0.0" + (sources."wrap-ansi-2.1.0" // { + dependencies = [ + sources."is-fullwidth-code-point-1.0.0" + sources."string-width-1.0.2" + ]; + }) + sources."yargs-12.0.5" + sources."yargs-parser-11.1.1" + ]; + }) + sources."webpack-log-1.2.0" + sources."webpack-sources-1.4.3" + sources."websocket-1.0.28" + sources."websocket-driver-0.7.3" + sources."websocket-extensions-0.1.3" + sources."whatwg-encoding-1.0.5" + sources."whatwg-mimetype-2.3.0" + sources."whatwg-url-6.5.0" + sources."which-1.3.1" + sources."which-module-2.0.0" + sources."window-size-0.1.0" + (sources."with-5.1.1" // { + dependencies = [ + sources."acorn-3.3.0" + ]; + }) + sources."wordwrap-0.0.2" + sources."worker-farm-1.7.0" + (sources."wrap-ansi-5.1.0" // { + dependencies = [ + sources."ansi-regex-4.1.0" + sources."strip-ansi-5.2.0" + ]; + }) + sources."wrappy-1.0.2" + sources."write-file-atomic-2.4.1" + sources."ws-6.2.1" + sources."xml-name-validator-3.0.0" + sources."xtend-4.0.2" + sources."y18n-4.0.0" + sources."yaeti-0.0.6" + sources."yallist-3.1.0" + sources."yargs-13.3.0" + sources."yargs-parser-13.1.1" + sources."yarn-1.16.0" + sources."ylru-1.2.1" + ]; + buildInputs = globalBuildInputs; + meta = { + license = "MIT"; + }; + production = false; + bypassCache = true; + reconstructLock = false; + }; +in +{ + args = args; + sources = sources; + tarball = nodeEnv.buildNodeSourceDist args; + package = nodeEnv.buildNodePackage args; + shell = nodeEnv.buildNodeShell args; + nodeDependencies = nodeEnv.buildNodeDependencies (lib.overrideExisting args { + src = stdenv.mkDerivation { + name = args.name + "-package-json"; + src = nix-gitignore.gitignoreSourcePure [ + "*" + "!package.json" + "!package-lock.json" + ] args.src; + dontBuild = true; + installPhase = "mkdir -p $out; cp -r ./* $out;"; + }; + }); +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix b/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix new file mode 100644 index 000000000000..76230b8e1003 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix @@ -0,0 +1,56 @@ +{ lib, stdenv, fetchzip, makeWrapper, jre, pythonPackages, coreutils, hadoop +, RSupport? true, R +}: + +with lib; + +stdenv.mkDerivation rec { + + pname = "spark"; + version = "2.4.4"; + + src = fetchzip { + url = "mirror://apache/spark/${pname}-${version}/${pname}-${version}-bin-without-hadoop.tgz"; + sha256 = "1a9w5k0207fysgpxx6db3a00fs5hdc2ncx99x4ccy2s0v5ndc66g"; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ jre pythonPackages.python pythonPackages.numpy ] + ++ optional RSupport R; + + untarDir = "${pname}-${version}-bin-without-hadoop"; + installPhase = '' + mkdir -p $out/{lib/${untarDir}/conf,bin,/share/java} + mv * $out/lib/${untarDir} + + sed -e 's/INFO, console/WARN, console/' < \ + $out/lib/${untarDir}/conf/log4j.properties.template > \ + $out/lib/${untarDir}/conf/log4j.properties + + cat > $out/lib/${untarDir}/conf/spark-env.sh <<- EOF + export JAVA_HOME="${jre}" + export SPARK_HOME="$out/lib/${untarDir}" + export SPARK_DIST_CLASSPATH=$(${hadoop}/bin/hadoop classpath) + export PYSPARK_PYTHON="${pythonPackages.python}/bin/${pythonPackages.python.executable}" + export PYTHONPATH="\$PYTHONPATH:$PYTHONPATH" + ${optionalString RSupport + ''export SPARKR_R_SHELL="${R}/bin/R" + export PATH=$PATH:"${R}/bin/R"''} + EOF + + for n in $(find $out/lib/${untarDir}/bin -type f ! -name "*.*"); do + makeWrapper "$n" "$out/bin/$(basename $n)" + substituteInPlace "$n" --replace dirname ${coreutils.out}/bin/dirname + done + ln -s $out/lib/${untarDir}/lib/spark-assembly-*.jar $out/share/java + ''; + + meta = { + description = "Apache Spark is a fast and general engine for large-scale data processing"; + homepage = "http://spark.apache.org"; + license = lib.licenses.asl20; + platforms = lib.platforms.all; + maintainers = with maintainers; [ thoughtpolice offline kamilchm ]; + repositories.git = "git://git.apache.org/spark.git"; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch b/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch new file mode 100644 index 000000000000..364f7653efa3 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch @@ -0,0 +1,44 @@ +From bea6307ec2a77d90d59c13940381d73ec0f05b70 Mon Sep 17 00:00:00 2001 +From: Graham Christensen <graham@grahamc.com> +Date: Mon, 1 Mar 2021 10:57:44 -0500 +Subject: [PATCH] Disable NIC tests that fail in the Nix sandbox. + +--- + agent/managedInstances/fingerprint/fingerprint_integ_test.go | 2 ++ + agent/ssm/service_test.go | 1 + + 2 files changed, 3 insertions(+) + +diff --git a/agent/managedInstances/fingerprint/fingerprint_integ_test.go b/agent/managedInstances/fingerprint/fingerprint_integ_test.go +index a1f969ff..631ea1f5 100644 +--- a/agent/managedInstances/fingerprint/fingerprint_integ_test.go ++++ b/agent/managedInstances/fingerprint/fingerprint_integ_test.go +@@ -28,12 +28,14 @@ func TestHostnameInfo(t *testing.T) { + } + + func TestPrimaryIpInfo(t *testing.T) { ++ t.Skip("The Nix build sandbox has no non-loopback IPs, causing this test to fail."); + ip, err := primaryIpInfo() + assert.NoError(t, err, "expected no error fetching the primary ip") + assert.NotEmpty(t, ip, "expected to fetch primary ip") + } + + func TestMacAddrInfo(t *testing.T) { ++ t.Skip("The Nix build sandbox has no non-loopback interfaces, causing this test to fail."); + mac, err := macAddrInfo() + assert.NoError(t, err, "expected no error fetching the mac addr") + assert.NotEmpty(t, mac, "expected to fetch mac address") +diff --git a/agent/ssm/service_test.go b/agent/ssm/service_test.go +index f4b34f83..d8216dba 100644 +--- a/agent/ssm/service_test.go ++++ b/agent/ssm/service_test.go +@@ -85,6 +85,7 @@ func (suite *SsmServiceTestSuite) TestUpdateEmptyInstanceInformation() { + // Test function for update instance information + // This function update the agent name, agent statuc, and agent version. + func (suite *SsmServiceTestSuite) TestUpdateInstanceInformation() { ++ suite.T().Skip("The Nix build sandbox has no interfaces for IP and MAC address reports."); + // Give mock value to test UpdateInstanceInformation, assert the error is nil, assert the log.Debug function get called. + response, err := suite.sdkService.UpdateInstanceInformation(suite.logMock, "2.2.3.2", "active", "Amazon-ssm-agent") + assert.Nil(suite.T(), err, "Err should be nil") +-- +2.29.2 + diff --git a/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/0002-version-gen-don-t-use-unnecessary-constants.patch b/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/0002-version-gen-don-t-use-unnecessary-constants.patch new file mode 100644 index 000000000000..234e510d3d17 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/0002-version-gen-don-t-use-unnecessary-constants.patch @@ -0,0 +1,46 @@ +From 473e3f8544915a35b3a45c548743978b34e5310e Mon Sep 17 00:00:00 2001 +From: Cole Helbling <cole.e.helbling@outlook.com> +Date: Tue, 2 Mar 2021 00:24:00 -0800 +Subject: [PATCH] version-gen: don't use unnecessary constants + +This prevents the tool from being built with Nix, because this project +doesn't use Go modules (or something; I'm not really familiar with Go, +much less Go + Nix). +--- + agent/version/versiongenerator/version-gen.go | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/agent/version/versiongenerator/version-gen.go b/agent/version/versiongenerator/version-gen.go +index d710effc..55c9a001 100644 +--- a/agent/version/versiongenerator/version-gen.go ++++ b/agent/version/versiongenerator/version-gen.go +@@ -22,8 +22,6 @@ import ( + "path/filepath" + "strings" + "text/template" +- +- "github.com/aws/amazon-ssm-agent/agent/appconfig" + ) + + const versiongoTemplate = `// This is an autogenerated file and should not be edited. +@@ -59,7 +57,7 @@ func main() { + versionStr := strings.TrimSpace(string(versionContent)) + + fmt.Printf("Agent Version: %v", versionStr) +- if err := ioutil.WriteFile(filepath.Join("VERSION"), []byte(versionStr), appconfig.ReadWriteAccess); err != nil { ++ if err := ioutil.WriteFile(filepath.Join("VERSION"), []byte(versionStr), 0600); err != nil { + log.Fatalf("Error writing to VERSION file. %v", err) + } + +@@ -108,7 +106,7 @@ func main() { + + releaseNoteOutFile := strings.Join(releaseNoteLines, "\n") + +- if err = ioutil.WriteFile(filepath.Join(releaseNotesFile), []byte(releaseNoteOutFile), appconfig.ReadWriteAccess); err != nil { ++ if err = ioutil.WriteFile(filepath.Join(releaseNotesFile), []byte(releaseNoteOutFile), 0600); err != nil { + log.Fatalf("Error writing to RELEASENOTES.md file. %v", err) + } + +-- +2.30.0 + diff --git a/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/default.nix b/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/default.nix new file mode 100644 index 000000000000..3aa583f3ae39 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/ssm-agent/default.nix @@ -0,0 +1,110 @@ +{ lib +, writeShellScriptBin +, buildGoPackage +, makeWrapper +, fetchFromGitHub +, coreutils +, nettools +, dmidecode +, util-linux +, bashInteractive +}: + +let + # Tests use lsb_release, so we mock it (the SSM agent used to not + # read from our /etc/os-release file, but now it does) because in + # reality, it won't (shouldn't) be used when active on a system with + # /etc/os-release. If it is, we fake the only two fields it cares about. + fake-lsb-release = writeShellScriptBin "lsb_release" '' + . /etc/os-release || true + + case "$1" in + -i) echo "''${NAME:-unknown}";; + -r) echo "''${VERSION:-unknown}";; + esac + ''; +in +buildGoPackage rec { + pname = "amazon-ssm-agent"; + version = "3.0.755.0"; + + goPackagePath = "github.com/aws/${pname}"; + + nativeBuildInputs = [ makeWrapper ]; + + src = fetchFromGitHub { + rev = version; + owner = "aws"; + repo = "amazon-ssm-agent"; + hash = "sha256-yVQJL1MJ1JlAndlrXfEbNLQihlbLhSoQXTKzJMRzhao="; + }; + + patches = [ + # Some tests use networking, so we skip them. + ./0001-Disable-NIC-tests-that-fail-in-the-Nix-sandbox.patch + + # They used constants from another package that I couldn't figure + # out how to resolve, so hardcoded the constants. + ./0002-version-gen-don-t-use-unnecessary-constants.patch + ]; + + preConfigure = '' + rm -r ./Tools/src/goreportcard + printf "#!/bin/sh\ntrue" > ./Tools/src/checkstyle.sh + + substituteInPlace agent/platform/platform_unix.go \ + --replace "/usr/bin/uname" "${coreutils}/bin/uname" \ + --replace '"/bin", "hostname"' '"${nettools}/bin/hostname"' \ + --replace '"lsb_release"' '"${fake-lsb-release}/bin/lsb_release"' + + substituteInPlace agent/managedInstances/fingerprint/hardwareInfo_unix.go \ + --replace /usr/sbin/dmidecode ${dmidecode}/bin/dmidecode + + substituteInPlace agent/session/shell/shell_unix.go \ + --replace '"script"' '"${util-linux}/bin/script"' + + echo "${version}" > VERSION + ''; + + preBuild = '' + cp -r go/src/${goPackagePath}/vendor/src go + + pushd go/src/${goPackagePath} + + # Note: if this step fails, please patch the code to fix it! Please only skip + # tests if it is not feasible for the test to pass in a sandbox. + make quick-integtest + + make pre-release + make pre-build + + popd + ''; + + postBuild = '' + pushd go/bin + + rm integration-cli versiongenerator generator + + mv core amazon-ssm-agent + mv agent ssm-agent-worker + mv cli-main ssm-cli + mv worker ssm-document-worker + mv logging ssm-session-logger + mv sessionworker ssm-session-worker + + popd + ''; + + postFixup = '' + wrapProgram $out/bin/amazon-ssm-agent --prefix PATH : ${bashInteractive}/bin + ''; + + meta = with lib; { + description = "Agent to enable remote management of your Amazon EC2 instance configuration"; + homepage = "https://github.com/aws/amazon-ssm-agent"; + license = licenses.asl20; + platforms = platforms.unix; + maintainers = with maintainers; [ copumpkin manveru ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix b/nixpkgs/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix new file mode 100644 index 000000000000..15a3b0ac24c7 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix @@ -0,0 +1,39 @@ +{ stdenv, lib, fetchurl, autoPatchelfHook, dpkg, awscli, unzip }: +let + ver = "1.2.7.0"; + source = if stdenv.isDarwin then { + url = + "https://s3.amazonaws.com/session-manager-downloads/plugin/${ver}/mac/sessionmanager-bundle.zip"; + sha256 = "sha256-HP+opNjS53zR9eUxpNUHGD9rZN1z7lDc6+nONR8fa/s="; + } else { + url = + "https://s3.amazonaws.com/session-manager-downloads/plugin/${ver}/ubuntu_64bit/session-manager-plugin.deb"; + sha256 = "sha256-EZ9ncj1YYlod1RLfXOpZFijnKjLYWYVBb+C6yd42l34="; + }; + platformBuildInput = if stdenv.isDarwin then [ unzip ] else [ dpkg ]; + unpackCmd = if stdenv.isDarwin then "unzip $src" else "dpkg-deb -x $src ."; + archivePath = if stdenv.isDarwin then "sessionmanager-bundle" else "usr/local/sessionmanagerplugin"; +in +stdenv.mkDerivation rec { + pname = "ssm-session-manager-plugin"; + version = ver; + + src = fetchurl source; + + nativeBuildInputs = [ autoPatchelfHook ] ++ platformBuildInput; + + buildInputs = [ awscli ]; + + unpackPhase = unpackCmd; + + installPhase = "install -m755 -D ${archivePath}/bin/session-manager-plugin $out/bin/session-manager-plugin"; + + meta = with lib; { + homepage = + "https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html"; + description = "Amazon SSM Session Manager Plugin"; + platforms = [ "x86_64-linux" "x86_64-darwin" ]; + license = licenses.unfree; + maintainers = with maintainers; [ mbaillie ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix b/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix new file mode 100644 index 000000000000..4fdcdf1ea2b1 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix @@ -0,0 +1,42 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "starboard"; + version = "0.9.2"; + + src = fetchFromGitHub { + owner = "aquasecurity"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-w+xaZPEMmJYDPQG4MuAlWMhwhEyeVcpaeDwqsnIbIHA="; + }; + + vendorSha256 = "sha256-aVKQcRZgxhIph+y28HhR15DUjwiz/4+t1bMrYXjPW7Q="; + + subPackages = [ "cmd/starboard" ]; + + doCheck = false; + + buildFlagsArray = [ + "-ldflags=" + "-s" + "-w" + "-X main.version=v${version}" + ]; + + meta = with lib; { + description = "Kubernetes-native security tool kit"; + longDescription = '' + Starboard integrates security tools into the Kubernetes environment, so + that users can find and view the risks that relate to different resources + in a Kubernetes-native way. Starboard provides custom security resources + definitions and a Go module to work with a range of existing security + tools, as well as a kubectl-compatible command-line tool and an Octant + plug-in that make security reports available through familiar Kubernetes + tools. + ''; + homepage = src.meta.homepage; + license = licenses.asl20; + maintainers = with maintainers; [ jk ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/stern/default.nix b/nixpkgs/pkgs/applications/networking/cluster/stern/default.nix new file mode 100644 index 000000000000..962647993447 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/stern/default.nix @@ -0,0 +1,40 @@ +{ stdenv, lib, buildPackages, buildGoModule, fetchFromGitHub, installShellFiles }: +let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; + +in +buildGoModule rec { + pname = "stern"; + version = "1.14.0"; + + src = fetchFromGitHub { + owner = "stern"; + repo = "stern"; + rev = "v${version}"; + sha256 = "sha256-8l/Tr+IxR3yPmt9hI70XuUQ4YEYzRTMLbo8BsngoU60="; + }; + + vendorSha256 = "sha256-pvFT4A7bDBvBf1odyv3z4inw1/IsvOA+++OPbfNjzxM="; + + nativeBuildInputs = [ installShellFiles ]; + + buildFlagsArray = + [ "-ldflags=-s -w -X github.com/stern/stern/cmd.version=${version}" ]; + + postInstall = + let stern = if isCrossBuild then buildPackages.stern else "$out"; + in + '' + for shell in bash zsh; do + ${stern}/bin/stern --completion $shell > stern.$shell + installShellCompletion stern.$shell + done + ''; + + meta = with lib; { + description = "Multi pod and container log tailing for Kubernetes"; + homepage = "https://github.com/stern/stern"; + license = licenses.asl20; + maintainers = with maintainers; [ mbode preisschild ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/taktuk/default.nix b/nixpkgs/pkgs/applications/networking/cluster/taktuk/default.nix new file mode 100644 index 000000000000..5cb9f8160067 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/taktuk/default.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchurl, perl }: + +stdenv.mkDerivation rec { + version = "3.7.7"; + pname = "taktuk"; + + buildInputs = [ perl ]; + + src = fetchurl { + url = "https://gforge.inria.fr/frs/download.php/33412/${pname}-${version}.tar.gz"; + sha256 = "0w0h3ynlcxvq2nzm8hkj20g0805ww3vkw53g0qwj7wvp7p3gcvnr"; + }; + + preBuild = '' + substituteInPlace ./taktuk --replace "/usr/bin/perl" "${perl}/bin/perl" + ''; + + meta = { + description = "Efficient, large scale, parallel remote execution of commands"; + longDescription = '' + TakTuk allows one to execute commands in parallel on a potentially large set + of remote nodes (using ssh to connect to each node). It is typically used + inside high performance computing clusters and grids. It uses an adaptive + algorithm to efficiently distribute the work and sets up an interconnection + network to transport commands and perform I/Os multiplexing. It doesn't + require any specific software on the nodes thanks to a self-propagation + algorithm.''; + homepage = "http://taktuk.gforge.inria.fr/"; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.bzizou ]; + platforms = lib.platforms.linux; + }; +} + diff --git a/nixpkgs/pkgs/applications/networking/cluster/tanka/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tanka/default.nix new file mode 100644 index 000000000000..8e7731590aad --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/tanka/default.nix @@ -0,0 +1,36 @@ +{ buildGoModule, fetchFromGitHub, lib, installShellFiles }: + +buildGoModule rec { + pname = "tanka"; + version = "0.15.0"; + + src = fetchFromGitHub { + owner = "grafana"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-ckXvDB3TU9HAXowAAr/fRmX3mylVvPKW8I74R/vUaRY="; + }; + + vendorSha256 = "sha256-vpm2y/CxRNWkz6+AOMmmZH5AjRQWAa6WD5Fnx5lqJYw="; + + doCheck = false; + + subPackages = [ "cmd/tk" ]; + + buildFlagsArray = [ "-ldflags=-s -w -extldflags \"-static\" -X github.com/grafana/tanka/pkg/tanka.CURRENT_VERSION=v${version}" ]; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = '' + echo "complete -C $out/bin/tk tk" > tk.bash + installShellCompletion tk.bash + ''; + + meta = with lib; { + description = "Flexible, reusable and concise configuration for Kubernetes"; + homepage = "https://tanka.dev"; + license = licenses.asl20; + maintainers = with maintainers; [ mikefaille ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix new file mode 100644 index 000000000000..c59c03714890 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix @@ -0,0 +1,59 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "tektoncd-cli"; + version = "0.17.1"; + + src = fetchFromGitHub { + owner = "tektoncd"; + repo = "cli"; + rev = "v${version}"; + sha256 = "sha256-xwUTSJ0rlNzQqGQp6jL03L4SuHUvvD3aWXxa1Xp0UyM="; + }; + + vendorSha256 = null; + + preBuild = '' + buildFlagsArray+=("-ldflags" "-s -w -X github.com/tektoncd/cli/pkg/cmd/version.clientVersion=${version}") + ''; + + nativeBuildInputs = [ installShellFiles ]; + + # third_party/VENDOR-LICENSE breaks build/check as go files are still included + # docs is a tool for generating docs + excludedPackages = "\\(third_party\\|cmd/docs\\)"; + + preCheck = '' + # Change the golden files to match our desired version + sed -i "s/dev/${version}/" pkg/cmd/version/testdata/TestGetVersions-*.golden + ''; + + postInstall = '' + installManPage docs/man/man1/* + + installShellCompletion --cmd tkn \ + --bash <($out/bin/tkn completion bash) \ + --fish <($out/bin/tkn completion fish) \ + --zsh <($out/bin/tkn completion zsh) + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + $out/bin/tkn --help + $out/bin/tkn version | grep "Client version: ${version}" + runHook postInstallCheck + ''; + + meta = with lib; { + homepage = "https://tekton.dev"; + changelog = "https://github.com/tektoncd/cli/releases/tag/v${version}"; + description = "Provides a CLI for interacting with Tekton"; + longDescription = '' + The Tekton Pipelines cli project provides a CLI for interacting with Tekton! + For your convenience, it is recommended that you install the Tekton CLI, tkn, together with the core component of Tekton, Tekton Pipelines. + ''; + license = licenses.asl20; + maintainers = with maintainers; [ jk mstrangfeld vdemeester ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-compliance/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-compliance/default.nix new file mode 100644 index 000000000000..5f71f8d70cb6 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-compliance/default.nix @@ -0,0 +1,61 @@ +{ lib +, GitPython +, buildPythonApplication +, emoji +, fetchFromGitHub +, filetype +, ipython +, junit-xml +, lxml +, mock +, netaddr +, pytestCheckHook +, python3Packages +, radish-bdd +, semver +}: + +buildPythonApplication rec { + pname = "terraform-compliance"; + version = "1.2.11"; + + # No tests in Pypi package + src = fetchFromGitHub { + owner = "eerkunt"; + repo = pname; + rev = version; + sha256 = "161mszmxqp3wypnda48ama2mmq8yjilkxahwc1mxjwzy1n19sn7v"; + }; + + postPatch = '' + substituteInPlace setup.py \ + --replace "IPython==7.16.1" "IPython" + ''; + + checkInputs = [ pytestCheckHook ]; + + disabledTests = [ + "test_which_success" + "test_readable_plan_file_is_not_json" + ]; + + propagatedBuildInputs = [ + GitPython + emoji + filetype + ipython + junit-xml + lxml + mock + netaddr + radish-bdd + semver + ]; + + meta = with lib; { + description = "BDD test framework for terraform"; + homepage = "https://github.com/eerkunt/terraform-compliance"; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-docs/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-docs/default.nix new file mode 100644 index 000000000000..313bd46a5194 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-docs/default.nix @@ -0,0 +1,27 @@ +{ lib, buildGoModule, fetchFromGitHub }: +buildGoModule rec { + pname = "terraform-docs"; + version = "0.12.1"; + + src = fetchFromGitHub { + owner = "terraform-docs"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-zQFPuHxfFvfwPVV0vPeA+A6XCw2Vt4tY4S2JBGcqaBQ="; + }; + + vendorSha256 = "sha256-HO2E8i5A/2Xi7Pq+Mqb/2ogK1to8IvZjRuDXfzGvOXk="; + + subPackages = [ "." ]; + + preBuild = '' + buildFlagsArray+=("-ldflags" "-X main.version=${version}") + ''; + + meta = with lib; { + description = "A utility to generate documentation from Terraform modules in various output formats"; + homepage = "https://github.com/terraform-docs/terraform-docs/"; + license = licenses.mit; + maintainers = with maintainers; [ zimbatm ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-inventory/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-inventory/default.nix new file mode 100644 index 000000000000..085b504314ee --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-inventory/default.nix @@ -0,0 +1,27 @@ +{ lib, buildGoPackage, fetchFromGitHub}: + +buildGoPackage rec { + pname = "terraform-inventory"; + version = "0.7-pre"; + rev = "v${version}"; + + goPackagePath = "github.com/adammck/terraform-inventory"; + + subPackages = [ "./" ]; + + src = fetchFromGitHub { + inherit rev; + owner = "adammck"; + repo = "terraform-inventory"; + sha256 = "0wwyi2nfyn3wfpmvj8aabn0cjba0lpr5nw3rgd6qdywy7sc3rmb1"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + homepage = "https://github.com/adammck/terraform-inventory"; + description = "Terraform state to ansible inventory adapter"; + license = licenses.mit; + maintainers = with maintainers; [ htr ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-inventory/deps.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-inventory/deps.nix new file mode 100644 index 000000000000..9f7b5e317fe3 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-inventory/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/adammck/venv"; + fetch = { + type = "git"; + url = "https://github.com/adammck/venv"; + rev = "8a9c907a37d36a8f34fa1c5b81aaf80c2554a306"; + sha256 = "1fzk3j4q59kpd2ks2aw8rmic6b123p5mh981cjh0kzs716grc6y8"; + }; + } + { + goPackagePath = "github.com/blang/vfs"; + fetch = { + type = "git"; + url = "https://github.com/blang/vfs"; + rev = "c14afcac17253ce7418da751ec6b1988790cdc8f"; + sha256 = "00q5qzxpn9n59nrmrljz4w9lljxvrr8i5j8i8b4iw86j0alcx53b"; + }; + } +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/Gemfile b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/Gemfile new file mode 100644 index 000000000000..c4f9a5511de9 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/Gemfile @@ -0,0 +1,2 @@ +source 'https://rubygems.org' +gem 'terraform_landscape' diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock new file mode 100644 index 000000000000..7307d8a33f3c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock @@ -0,0 +1,25 @@ +GEM + remote: https://rubygems.org/ + specs: + colorize (0.8.1) + commander (4.4.6) + highline (~> 1.7.2) + diffy (3.2.1) + highline (1.7.10) + polyglot (0.3.5) + terraform_landscape (0.2.1) + colorize (~> 0.7) + commander (~> 4.4) + diffy (~> 3.0) + treetop (~> 1.6) + treetop (1.6.10) + polyglot (~> 0.3) + +PLATFORMS + ruby + +DEPENDENCIES + terraform_landscape + +BUNDLED WITH + 2.1.4 diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/default.nix new file mode 100644 index 000000000000..903aa9abb6e2 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/default.nix @@ -0,0 +1,18 @@ +{ lib, bundlerApp, bundlerUpdateScript }: + +bundlerApp { + pname = "terraform_landscape"; + + gemdir = ./.; + exes = [ "landscape" ]; + + passthru.updateScript = bundlerUpdateScript "terraform-landscape"; + + meta = with lib; { + description = "Improve Terraform's plan output to be easier to read and understand"; + homepage = "https://github.com/coinbase/terraform-landscape"; + license = with licenses; asl20; + maintainers = with maintainers; [ mbode manveru nicknovitski ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix new file mode 100644 index 000000000000..bf3767486eaf --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix @@ -0,0 +1,61 @@ +{ + colorize = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "133rqj85n400qk6g3dhf2bmfws34mak1wqihvh3bgy9jhajw580b"; + type = "gem"; + }; + version = "0.8.1"; + }; + commander = { + dependencies = ["highline"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "11sd2sb0id2dbxkv4pvymdiia1xxhms45kh4nr8mryqybad0fwwf"; + type = "gem"; + }; + version = "4.4.6"; + }; + diffy = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "119imrkn01agwhx5raxhknsi331y5i4yda7r0ws0an6905ximzjg"; + type = "gem"; + }; + version = "3.2.1"; + }; + highline = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01ib7jp85xjc4gh4jg0wyzllm46hwv8p0w1m4c75pbgi41fps50y"; + type = "gem"; + }; + version = "1.7.10"; + }; + polyglot = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr"; + type = "gem"; + }; + version = "0.3.5"; + }; + terraform_landscape = { + dependencies = ["colorize" "commander" "diffy" "treetop"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1i93pih7r6zcqpjhsmvkpfkgbh0l66c60i6fkiymq7vy2xd6wnns"; + type = "gem"; + }; + version = "0.2.1"; + }; + treetop = { + dependencies = ["polyglot"]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0g31pijhnv7z960sd09lckmw9h8rs3wmc8g4ihmppszxqm99zpv7"; + type = "gem"; + }; + version = "1.6.10"; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix new file mode 100644 index 000000000000..b8e3c1540e94 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix @@ -0,0 +1,26 @@ +{ lib, fetchFromGitHub, buildGoPackage }: +buildGoPackage rec { + pname = "terraform-provider-ansible"; + version = "1.0.3"; + + goPackagePath = "github.com/nbering/terraform-provider-ansible"; + goDeps = ./deps.nix; + + src = fetchFromGitHub { + owner = "nbering"; + repo = "terraform-provider-ansible"; + rev = "v${version}"; + sha256 = "0dqi9ym0xvnz3h73cmd1vf6k2qwfhxvj1mcakkpmsd4cpxq4l6pr"; + }; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv go/bin/terraform-provider-ansible{,_v${version}}"; + + meta = with lib; { + description = "A Terraform provider serving as an interop layer for an Ansible dynamic inventory script."; + homepage = "https://github.com/nbering/terraform-provider-ansible"; + license = licenses.mpl20; + maintainers = with maintainers; [ uskudnik ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix new file mode 100644 index 000000000000..dc49f24afa59 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix @@ -0,0 +1,11 @@ +[ + { + goPackagePath = "github.com/hashicorp/terraform"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/terraform"; + rev = "v0.12.5"; + sha256 = "0p064rhaanwx4szs8hv6mdqad8d2bgfd94h2la11j58xbsxc7hap"; + }; + } +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix new file mode 100644 index 000000000000..1ee986d20303 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/cloudfoundry/default.nix @@ -0,0 +1,29 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "terraform-provider-cloudfoundry"; + version = "0.12.6"; + + src = fetchFromGitHub { + owner = "cloudfoundry-community"; + repo = pname; + rev = "v${version}"; + sha256 = "0n5ybpzk6zkrnd9vpmbjlkm8fdp7nbfr046wih0jk72pmiyrcygi"; + }; + + vendorSha256 = "01lfsd9aw9w3kr1a2a5b7ac6d8jaij83lhxl4y4qsnjlqk86fbxq"; + + # needs a running cloudfoundry + doCheck = false; + + postInstall = "mv $out/bin/terraform-provider-cloudfoundry{,_v${version}}"; + + passthru = { provider-source-address = "registry.terraform.io/cloudfoundry-community/cloudfoundry"; }; + + meta = with lib; { + homepage = "https://github.com/cloudfoundry-community/terraform-provider-cloudfoundry"; + description = "Terraform provider for cloudfoundry"; + license = licenses.mpl20; + maintainers = with maintainers; [ ris ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/default.nix new file mode 100644 index 000000000000..a08a3d336bf5 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/default.nix @@ -0,0 +1,69 @@ +{ lib +, buildGoModule +, buildGoPackage +, fetchFromGitHub +, callPackage +, runtimeShell +}: +let + list = lib.importJSON ./providers.json; + + buildWithGoModule = data: + buildGoModule { + pname = data.repo; + version = data.version; + subPackages = [ "." ]; + src = fetchFromGitHub { + inherit (data) owner repo rev sha256; + }; + vendorSha256 = data.vendorSha256 or null; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv $NIX_BUILD_TOP/go/bin/${data.repo}{,_v${data.version}}"; + passthru = data; + }; + + buildWithGoPackage = data: + buildGoPackage { + pname = data.repo; + version = data.version; + goPackagePath = "github.com/${data.owner}/${data.repo}"; + subPackages = [ "." ]; + src = fetchFromGitHub { + inherit (data) owner repo rev sha256; + }; + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv $NIX_BUILD_TOP/go/bin/${data.repo}{,_v${data.version}}"; + passthru = data; + }; + + # These providers are managed with the ./update-all script + automated-providers = lib.mapAttrs (_: attrs: + (if (lib.hasAttr "vendorSha256" attrs) then buildWithGoModule else buildWithGoPackage) + attrs) list; + + # These are the providers that don't fall in line with the default model + special-providers = { + acme = automated-providers.acme.overrideAttrs (attrs: { + prePatch = attrs.prePatch or "" + '' + substituteInPlace go.mod --replace terraform-providers/terraform-provider-acme getstackhead/terraform-provider-acme + substituteInPlace main.go --replace terraform-providers/terraform-provider-acme getstackhead/terraform-provider-acme + ''; + }); + + # Packages that don't fit the default model + ansible = callPackage ./ansible {}; + cloudfoundry = callPackage ./cloudfoundry {}; + gandi = callPackage ./gandi {}; + hcloud = callPackage ./hcloud {}; + keycloak = callPackage ./keycloak {}; + libvirt = callPackage ./libvirt {}; + linuxbox = callPackage ./linuxbox {}; + lxd = callPackage ./lxd {}; + vpsadmin = callPackage ./vpsadmin {}; + vercel = callPackage ./vercel {}; + }; +in + automated-providers // special-providers diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/gandi/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/gandi/default.nix new file mode 100644 index 000000000000..13afa8d3818a --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/gandi/default.nix @@ -0,0 +1,26 @@ +{ lib, fetchFromGitHub, buildGoPackage }: +buildGoPackage rec { + pname = "terraform-provider-gandi"; + version = "1.0.0"; + + goPackagePath = "github.com/tiramiseb/terraform-provider-gandi"; + goDeps = ./deps.nix; + + src = fetchFromGitHub { + owner = "tiramiseb"; + repo = "terraform-provider-gandi"; + rev = "v${version}"; + sha256 = "0byydpqsimvnk11bh9iz8zlxbsmsk65w55pvkp18vjzqrhf4kyfv"; + }; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv go/bin/terraform-provider-gandi{,_v${version}}"; + + meta = with lib; { + description = "Terraform provider for the Gandi LiveDNS service."; + homepage = "https://github.com/tiramiseb/terraform-provider-gandi"; + license = licenses.mpl20; + maintainers = with maintainers; [ manveru ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/gandi/deps.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/gandi/deps.nix new file mode 100644 index 000000000000..3d4a3547502d --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/gandi/deps.nix @@ -0,0 +1,21 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 +[ + { + goPackagePath = "github.com/hashicorp/terraform"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/terraform"; + rev = "27b720113ed5143a870ec151b3b7c9d955a09bc0"; + sha256 = "1f0hwdf2z68p0ll3pgrx949h09q52gcfaxap0zz52m7px98sfab4"; + }; + } + { + goPackagePath = "github.com/tiramiseb/go-gandi-livedns"; + fetch = { + type = "git"; + url = "https://github.com/tiramiseb/go-gandi-livedns"; + rev = "4773a84f8ee7365ed21edc6cd0602aaf93e94e59"; + sha256 = "1i8s7yclrkhf974vs2splh5symzk0ym54px0bc216bq4ifzkwkqc"; + }; + } +] diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/hcloud/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/hcloud/default.nix new file mode 100644 index 000000000000..f9a848669344 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/hcloud/default.nix @@ -0,0 +1,32 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "terraform-provider-hcloud"; + version = "1.22.0"; + + src = fetchFromGitHub { + owner = "hetznercloud"; + repo = pname; + rev = "v${version}"; + sha256 = "1h4kplrmpsbwa0nq3zyqa0cnvhv1s5avdrjyf1k1f2z6b6h4gynf"; + }; + + vendorSha256 = "070p34g0ca55rmfdwf1l53yr8vyhmm5sb8hm8q036n066yp03yfs"; + + # Spends an awful time in other test folders, apparently tries to reach + # opencensus and fails. + checkPhase = '' + pushd hcloud + go test -v + popd + ''; + + postInstall = "mv $out/bin/terraform-provider-hcloud{,_v${version}}"; + + meta = with lib; { + homepage = "https://github.com/cloudfoundry-community/terraform-provider-cloudfoundry"; + description = "Terraform provider for cloudfoundry"; + license = licenses.mpl20; + maintainers = with maintainers; [ ris ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/keycloak/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/keycloak/default.nix new file mode 100644 index 000000000000..043e081d94ed --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/keycloak/default.nix @@ -0,0 +1,30 @@ +{ lib +, fetchFromGitHub +, buildGoModule +}: + +buildGoModule rec { + pname = "terraform-provider-keycloak"; + version = "1.20.0"; + + src = fetchFromGitHub { + owner = "mrparkers"; + repo = "terraform-provider-keycloak"; + rev = version; + sha256 = "1h8780k8345pf0s14k1pmwdjbv2j08h4rq3jwds81mmv6qgj1r2n"; + }; + + vendorSha256 = "12iary7p5qsbl4xdhfd1wh92mvf2fiylnb3m1d3m7cdcn32rfimq"; + + doCheck = false; + + postInstall = "mv $out/bin/terraform-provider-keycloak{,_v${version}}"; + + meta = with lib; { + description = "Terraform provider for keycloak"; + homepage = "https://github.com/mrparkers/terraform-provider-keycloak"; + license = licenses.mpl20; + maintainers = with maintainers; [ eonpatapon ]; + }; + +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix new file mode 100644 index 000000000000..ed2409ead9a3 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix @@ -0,0 +1,60 @@ +{ lib, buildGoPackage, fetchFromGitHub, fetchpatch, libvirt, pkg-config, makeWrapper, cdrtools }: + +# USAGE: +# install the following package globally or in nix-shell: +# +# (terraform.withPlugins (p: [p.libvirt])) +# +# configuration.nix: +# +# virtualisation.libvirtd.enable = true; +# +# terraform-provider-libvirt does not manage pools at the moment: +# +# $ virsh --connect "qemu:///system" pool-define-as default dir - - - - /var/lib/libvirt/images +# $ virsh --connect "qemu:///system" pool-start default +# +# pick an example from (i.e ubuntu): +# https://github.com/dmacvicar/terraform-provider-libvirt/tree/master/examples + +buildGoPackage rec { + pname = "terraform-provider-libvirt"; + version = "0.6.3"; + + goPackagePath = "github.com/dmacvicar/terraform-provider-libvirt"; + + patches = [ + (fetchpatch { + name = "base_volume_copy.patch"; + url = "https://github.com/cyril-s/terraform-provider-libvirt/commit/52df264e8a28c40ce26e2b614ee3daea882931c3.patch"; + sha256 = "1fg7ii2fi4c93hl41nhcncy9bpw3avbh6yiq99p1vkf87hhrw72n"; + }) + ]; + + src = fetchFromGitHub { + owner = "dmacvicar"; + repo = "terraform-provider-libvirt"; + rev = "v${version}"; + sha256 = "0ak2lpnv6h0i7lzfcggd90jpfhvsasdr6nflkflk2drlcpalggj9"; + }; + + nativeBuildInputs = [ pkg-config makeWrapper ]; + + buildInputs = [ libvirt ]; + + # mkisofs needed to create ISOs holding cloud-init data, + # and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630 + propagatedBuildInputs = [ cdrtools ]; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv go/bin/terraform-provider-libvirt{,_v${version}}"; + + meta = with lib; { + homepage = "https://github.com/dmacvicar/terraform-provider-libvirt"; + description = "Terraform provider for libvirt"; + platforms = platforms.linux; + license = licenses.asl20; + maintainers = with maintainers; [ mic92 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/linuxbox/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/linuxbox/default.nix new file mode 100644 index 000000000000..4f8c44aad3f1 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/linuxbox/default.nix @@ -0,0 +1,26 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "terraform-provider-linuxbox"; + version = "0.3.11"; + + src = fetchFromGitHub { + owner = "numtide"; + repo = pname; + rev = "v${version}"; + sha256 = "1sxb2iv4dl0rw3v1r7k5dfkyh14nmp19cprqafhb7ncarmvawq39"; + }; + + vendorSha256 = "16hp0pv1qpvr34ac1syjci39csvyj3c748inllypjwx76q6rwp7k"; + + postInstall = "mv $out/bin/terraform-provider-linuxbox{,_v${version}}"; + + passthru.provider-source-address = "registry.terraform.io/numtide/linuxbox"; + + meta = with lib; { + homepage = "https://github.com/numtide/terraform-provider-linuxbox"; + description = "Basic building block for Seed DevOps"; + license = licenses.bsd3; + maintainers = with maintainers; [ zimbatm ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix new file mode 100644 index 000000000000..ab3d07a7f47b --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix @@ -0,0 +1,27 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "terraform-provider-lxd"; + version = "1.5.0"; + + src = fetchFromGitHub { + owner = "sl1pm4t"; + repo = "terraform-provider-lxd"; + rev = "v${version}"; + sha256 = "sha256-ikI8LQ6qawdeUSb1Ee03H409DQw2M4QtsIxAESxXNRI="; + }; + + vendorSha256 = "sha256-IjpC7bFodqdrqVUEQdZBc6N8py5+t2kRYvcQiPr7CHc="; + + doCheck = false; + + postBuild = "mv ../go/bin/terraform-provider-lxd{,_v${version}}"; + + meta = with lib; { + homepage = "https://github.com/sl1pm4t/terraform-provider-lxd"; + description = "Terraform provider for lxd"; + platforms = platforms.linux; + license = licenses.mpl20; + maintainers = with maintainers; [ gila ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json new file mode 100644 index 000000000000..329b1be682cc --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -0,0 +1,1096 @@ +{ + "aci": { + "owner": "terraform-providers", + "repo": "terraform-provider-aci", + "rev": "v0.2.3", + "sha256": "0sk0pp178w03fhsb65b9mpim1l4wqfnv9r9x64kiapjnvfb1rz3j", + "version": "0.2.3" + }, + "acme": { + "owner": "getstackhead", + "provider-source-address": "registry.terraform.io/getstackhead/acme", + "repo": "terraform-provider-acme", + "rev": "v1.5.0-patched", + "sha256": "1wdrjpd3l0xadsa3lqhsc9c57g8x2qkwb76q824sk8za1a7lapii", + "version": "1.5.0-patched" + }, + "akamai": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/akamai/akamai", + "repo": "terraform-provider-akamai", + "rev": "v0.7.1", + "sha256": "0mg81147yz0m24xqljpw6v0ayhvb4fwf6qwaj7ii34hy2gjwv405", + "version": "0.7.1" + }, + "alicloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-alicloud", + "rev": "v1.86.0", + "sha256": "1hbv9ah7fd173sapwgsbg7790piwxw9zx90wfj5vz5b96ggbg28d", + "version": "1.86.0" + }, + "archive": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/archive", + "repo": "terraform-provider-archive", + "rev": "v2.0.0", + "sha256": "1d5n379zyjp2srg43g78a8h33qwcpkfkj7c35idvbyydi35vzlpl", + "vendorSha256": null, + "version": "2.0.0" + }, + "arukas": { + "owner": "terraform-providers", + "repo": "terraform-provider-arukas", + "rev": "v1.1.0", + "sha256": "1akl9fzgm5qv01vz18xjzyqjnlxw699qq4x8vr96j16l1zf10h99", + "version": "1.1.0" + }, + "auth0": { + "owner": "terraform-providers", + "repo": "terraform-provider-auth0", + "rev": "v0.11.0", + "sha256": "1dkcgzvvwmw5z5q4146jk0gj5b1zrv51vvkhhjd8qh9ipinipn97", + "version": "0.11.0" + }, + "avi": { + "owner": "terraform-providers", + "repo": "terraform-provider-avi", + "rev": "v0.2.2", + "sha256": "0dgpjg6iw21vfcn4i0x6x1l329a09wrd2jwghrjigwlq68wd835d", + "version": "0.2.2" + }, + "aviatrix": { + "owner": "terraform-providers", + "repo": "terraform-provider-aviatrix", + "rev": "v2.14.1", + "sha256": "137z7fgy5gp9n9fdvllyjh3nkbalrs2giqljfldbllymhvrv7xgr", + "version": "2.14.1" + }, + "aws": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/aws", + "repo": "terraform-provider-aws", + "rev": "v3.27.0", + "sha256": "0hn55mpg64bibf10m7x7wpfkipvlm8q4avgqcf0rf8rmprwvdlxd", + "vendorSha256": "0ph106bqsy988s20adf6gyc5jfvvy9zsj74lkbciwx7mvw5f514s", + "version": "3.27.0" + }, + "azuread": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/hashicorp/azuread", + "repo": "terraform-provider-azuread", + "rev": "v0.10.0", + "sha256": "0i9xrsqgh1024189hihm2nqrcy2pcyf1bwxnamwmwph5cas6hfb3", + "version": "0.10.0" + }, + "azurerm": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/hashicorp/azurerm", + "repo": "terraform-provider-azurerm", + "rev": "v2.13.0", + "sha256": "0aj19vy1flpb2233rxaypjcfimjr1wfqri1m3p15dy1r108q84r7", + "version": "2.13.0" + }, + "azurestack": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/hashicorp/azurestack", + "repo": "terraform-provider-azurestack", + "rev": "v0.9.0", + "sha256": "1msm7jwzry0vmas3l68h6p0migrsm6d18zpxcncv197m8xbvg324", + "version": "0.9.0" + }, + "baiducloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-baiducloud", + "rev": "v1.2.0", + "sha256": "1s2vk4vjni5nc50pdw60pm0grrf835xy551i6d4cmfxkkpqx3f6f", + "version": "1.2.0" + }, + "bigip": { + "owner": "terraform-providers", + "repo": "terraform-provider-bigip", + "rev": "v1.2.0", + "sha256": "0z0l4j8sn8yf6kw5sbyhp6s0046f738lsm650skcspqa5f63mbd9", + "version": "1.2.0" + }, + "bitbucket": { + "owner": "terraform-providers", + "repo": "terraform-provider-bitbucket", + "rev": "v1.2.0", + "sha256": "11n4wpvmaab164g6k077n9dbdbhd5lwl7pxpha5492ks468nd95b", + "version": "1.2.0" + }, + "brightbox": { + "owner": "terraform-providers", + "repo": "terraform-provider-brightbox", + "rev": "v1.3.0", + "sha256": "127l1ic70fkcqr0h23qhbpl1j2mzp44p9593x8jl936xz4ll8l70", + "version": "1.3.0" + }, + "checkpoint": { + "owner": "terraform-providers", + "repo": "terraform-provider-checkpoint", + "rev": "v1.0.2", + "sha256": "0zypjcg1z8fkz31lfhysxx42lpw8ak4aqgdis6rxzqbnkk491fjp", + "version": "1.0.2" + }, + "chef": { + "owner": "terraform-providers", + "repo": "terraform-provider-chef", + "rev": "v0.2.0", + "sha256": "0ihn4706fflmf0585w22l7arzxsa9biq4cgh8nlhlp5y0zy934ns", + "version": "0.2.0" + }, + "cherryservers": { + "owner": "terraform-providers", + "repo": "terraform-provider-cherryservers", + "rev": "v1.0.0", + "sha256": "1z6ai6q8aw38kiy8x13rp0dsvb4jk40cv8pk5c069q15m4jab8lh", + "version": "1.0.0" + }, + "ciscoasa": { + "owner": "terraform-providers", + "repo": "terraform-provider-ciscoasa", + "rev": "v1.2.0", + "sha256": "033pgy42qwjpmjyzylpml7sfzd6dvvybs56cid1f6sm4ykmxbal7", + "version": "1.2.0" + }, + "clc": { + "owner": "terraform-providers", + "repo": "terraform-provider-clc", + "rev": "v0.1.0", + "sha256": "0gvsjnwk6xkgxai1gxsjf0hsjxbv8d8jg5hq8yd3hjhc6785fgnf", + "version": "0.1.0" + }, + "cloudflare": { + "owner": "terraform-providers", + "repo": "terraform-provider-cloudflare", + "rev": "v2.7.0", + "sha256": "1r18lxhfi2sd42ja4bzxbkf5bli8iljrpqbgdcn1a7rcf44vnxa2", + "version": "2.7.0" + }, + "cloudinit": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/cloudinit", + "repo": "terraform-provider-cloudinit", + "rev": "v1.0.0", + "sha256": "0i926f4xkfydd2bxmim69xrvi9ymn1vrc66zl117axzsmy9200zx", + "version": "1.0.0" + }, + "cloudscale": { + "owner": "terraform-providers", + "repo": "terraform-provider-cloudscale", + "rev": "v2.1.2", + "sha256": "052pa17a77fkmhvygfgmpz87xlc08qvz1apzc2scg2449xfdv7zb", + "version": "2.1.2" + }, + "cloudstack": { + "owner": "terraform-providers", + "repo": "terraform-provider-cloudstack", + "rev": "v0.3.0", + "sha256": "0zmyww6z3j839ydlmv254hr8gcsixng4lcvmiwkhxb3hj1nw8hcw", + "version": "0.3.0" + }, + "cobbler": { + "owner": "terraform-providers", + "repo": "terraform-provider-cobbler", + "rev": "v1.1.0", + "sha256": "08ljqibfi6alpvv8f7pzvjl2k4w6br6g6ac755x4xw4ycrr24xw9", + "version": "1.1.0" + }, + "cohesity": { + "owner": "terraform-providers", + "repo": "terraform-provider-cohesity", + "rev": "v0.1.0", + "sha256": "1yifipjf51n8q9xyqcmc4zjpszmpyzb330f4zas81hahjml78hgx", + "version": "0.1.0" + }, + "constellix": { + "owner": "terraform-providers", + "repo": "terraform-provider-constellix", + "rev": "v0.1.0", + "sha256": "14y0v8ilbrjj0aymrw50fkz2mihnwyv83z8a9f8dh399s8l624w1", + "version": "0.1.0" + }, + "consul": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/hashicorp/consul", + "repo": "terraform-provider-consul", + "rev": "v2.8.0", + "sha256": "1brd0fp9ksc3x8cygxm0k2q1sh4v5x89298pnidg6xirn41lvcr4", + "version": "2.8.0" + }, + "ct": { + "owner": "poseidon", + "repo": "terraform-provider-ct", + "rev": "v0.6.1", + "sha256": "0hh3hvi8lwb0h8x9viz5p991w94gn7354nw95b51rdmir9qi2x89", + "version": "0.6.1" + }, + "datadog": { + "owner": "terraform-providers", + "repo": "terraform-provider-datadog", + "rev": "v2.7.0", + "sha256": "0cq11cjcm2nlszqhsrj425mk8dp0h5ljrrn7jplrbffp8g6wvadd", + "version": "2.7.0" + }, + "digitalocean": { + "owner": "digitalocean", + "provider-source-address": "registry.terraform.io/digitalocean/digitalocean", + "repo": "terraform-provider-digitalocean", + "rev": "v2.2.0", + "sha256": "14v9sh2qqdflzzp5mvkr7hd5c21hch8b8shxiwm0ar4qgdxq3wfy", + "vendorSha256": null, + "version": "2.2.0" + }, + "dme": { + "owner": "terraform-providers", + "repo": "terraform-provider-dme", + "rev": "v0.1.0", + "sha256": "1ipqw1sbx0i9rhxawsysrqxvf10z8ra2y86xwd4iz0f12x9drblv", + "version": "0.1.0" + }, + "dns": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/dns", + "repo": "terraform-provider-dns", + "rev": "v3.0.0", + "sha256": "160dbmg7xg7iyc70f66dphyiysrdbscwya2n28idi8wp5rjx8bid", + "vendorSha256": null, + "version": "3.0.0" + }, + "dnsimple": { + "owner": "terraform-providers", + "repo": "terraform-provider-dnsimple", + "rev": "v0.4.0", + "sha256": "1f1cpfa30frghp4yxp9n313yaf2mm1hnjq4kzmn6n9210prab9h1", + "version": "0.4.0" + }, + "docker": { + "owner": "terraform-providers", + "repo": "terraform-provider-docker", + "rev": "v2.7.1", + "sha256": "1jqnlc3dfy354yjdkj8iyxv0vamyxgmwxmhjim11alwzwjafbv9s", + "version": "2.7.1" + }, + "dome9": { + "owner": "terraform-providers", + "repo": "terraform-provider-dome9", + "rev": "v1.19.0", + "sha256": "190q74aaa1v7n7pqcri8kib0g0d4njf9dzm3cygyzmsjs3pxj1lc", + "version": "1.19.0" + }, + "dyn": { + "owner": "terraform-providers", + "repo": "terraform-provider-dyn", + "rev": "v1.2.0", + "sha256": "1a3kxmbib2y0nl7gnxknbhsflj5kfknxnm3gjxxrb2h5d2kvqy48", + "version": "1.2.0" + }, + "elasticsearch": { + "owner": "phillbaker", + "provider-source-address": "registry.terraform.io/phillbaker/elasticsearch", + "repo": "terraform-provider-elasticsearch", + "rev": "v1.5.2", + "sha256": "1yfmlqab2jb679gbns04sdcjfihzsa0dfp7blhfk3v5zhgv1g7ys", + "vendorSha256": "15m9aqb2lqjv6g3k46zyha2m118wpbjrh4ap1bfps0fcxn20qvr5", + "version": "1.5.2" + }, + "exoscale": { + "owner": "terraform-providers", + "repo": "terraform-provider-exoscale", + "rev": "v0.16.2", + "sha256": "102z4v3shk0as76v90151j4c6p93wy16m1hzzk1yp50dlc8ffsks", + "version": "0.16.2" + }, + "external": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/external", + "repo": "terraform-provider-external", + "rev": "v2.0.0", + "sha256": "16wciz08gicicsirij2ql0gy8dg0372jjsqmaigkl2n07mqz2b6a", + "vendorSha256": null, + "version": "2.0.0" + }, + "fastly": { + "owner": "terraform-providers", + "repo": "terraform-provider-fastly", + "rev": "v0.16.1", + "sha256": "1pjrcw03a86xgkzcx778f7kk79svv8csy05b7qi0m5x77zy4pws7", + "version": "0.16.1" + }, + "flexibleengine": { + "owner": "terraform-providers", + "repo": "terraform-provider-flexibleengine", + "rev": "v1.12.1", + "sha256": "0klxi40dd3a4dp7gjsjjwh6zv2m94hh6mk5m9g0dyhvn0r28w5j2", + "version": "1.12.1" + }, + "fortios": { + "owner": "terraform-providers", + "repo": "terraform-provider-fortios", + "rev": "v1.2.0", + "sha256": "0sqp23pyldxjkfw33xn5l5fqs4vn00kkfhy9wnl690wn0cwmldbx", + "version": "1.2.0" + }, + "genymotion": { + "owner": "terraform-providers", + "repo": "terraform-provider-genymotion", + "rev": "v1.1.0", + "sha256": "02jpr3cm7rrf810c69sr6lcxzvxpnf7icc5z80gnvg67wwfg4ph4", + "version": "1.1.0" + }, + "github": { + "owner": "terraform-providers", + "repo": "terraform-provider-github", + "rev": "v3.1.0", + "sha256": "1xl4fd1lfbn1vnrdmg2xljnv8hy6rmf0iv7g8pzbnzbvj2pi7w3b", + "version": "3.1.0" + }, + "gitlab": { + "owner": "gitlabhq", + "provider-source-address": "registry.terraform.io/gitlabhq/gitlab", + "repo": "terraform-provider-gitlab", + "rev": "v3.4.0", + "sha256": "03k3xjhxw70n00dvwd0fkdshff9hnicrah6rm6zqmksb4mb7wji3", + "version": "3.4.0" + }, + "google": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/google", + "repo": "terraform-provider-google", + "rev": "v3.62.0", + "sha256": "0x0qp8nk88667hvlpgxrdjsgirw8iwv85gn3k9xb37a3lw7xs4qz", + "vendorSha256": "0w6aavj1c4blpvsy00vz4dcj8rnxx6a586b16lqp6s1flqmlqrbi", + "version": "3.62.0" + }, + "google-beta": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/google-beta", + "repo": "terraform-provider-google-beta", + "rev": "v3.47.0", + "sha256": "1nk0bg2q7dg65rn3j5pkdjv07x0gs7bkv1bpfvlhi9p4fzx9g4by", + "vendorSha256": "0c2q4d2khsi3v9b659q1kmncnlshv4px6ch99jpcymwqg3xrxda2", + "version": "3.47.0" + }, + "grafana": { + "owner": "terraform-providers", + "repo": "terraform-provider-grafana", + "rev": "v1.5.0", + "sha256": "0zy3bqgpxymp2zygaxzllk1ysdankwxa1sy1djfgr4fs2nlggkwi", + "version": "1.5.0" + }, + "gridscale": { + "owner": "terraform-providers", + "repo": "terraform-provider-gridscale", + "rev": "v1.6.0", + "sha256": "00l3cwvyyjk0n3j535qfj3bsf1s5l07786gnxycj0f8vz3a06bcq", + "version": "1.6.0" + }, + "hedvig": { + "owner": "terraform-providers", + "repo": "terraform-provider-hedvig", + "rev": "v1.1.1", + "sha256": "1gd26jm9frn52hy2vm5sv003lbai5sjgdign6akhjmw5sdsmfr05", + "version": "1.1.1" + }, + "helm": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/helm", + "repo": "terraform-provider-helm", + "rev": "v2.0.2", + "sha256": "119zvlkwa7ygwsjxxdl7z8cqb0c4m6gy21356jnsasf4c3557rrb", + "vendorSha256": null, + "version": "2.0.2" + }, + "heroku": { + "owner": "terraform-providers", + "repo": "terraform-provider-heroku", + "rev": "v2.4.1", + "sha256": "10dacnd0y8q952s53n5myy08slw349pbfddjz63wcblcjyhvq0df", + "version": "2.4.1" + }, + "http": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/http", + "repo": "terraform-provider-http", + "rev": "v2.0.0", + "sha256": "0x6a9qf819g16dj9inyvhwff67xy0ixyy70ck56lkidrldara444", + "vendorSha256": null, + "version": "2.0.0" + }, + "huaweicloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-huaweicloud", + "rev": "v1.14.0", + "sha256": "10g5xl3pspzmj0bjzqbw3br4k7kh2jplph06f7sz2zg9dncl4h5z", + "version": "1.14.0" + }, + "huaweicloudstack": { + "owner": "terraform-providers", + "repo": "terraform-provider-huaweicloudstack", + "rev": "v1.2.0", + "sha256": "0jhx9rap4128j8sfkvpp8lbdmvdba0rkd3nxvy38wr3n18m7v1xg", + "version": "1.2.0" + }, + "ibm": { + "owner": "IBM-Cloud", + "provider-source-address": "registry.terraform.io/IBM-Cloud/ibm", + "repo": "terraform-provider-ibm", + "rev": "v1.14.0", + "sha256": "1r3y7r0mnbzd7xk6d5f7pvysl3p8vl5i5phya89dfwrk2x9xyw21", + "vendorSha256": null, + "version": "1.14.0" + }, + "icinga2": { + "owner": "terraform-providers", + "repo": "terraform-provider-icinga2", + "rev": "v0.3.0", + "sha256": "0xwjxb84glhp9viqykziwanj696w2prq4r7k0565k0w3qiaz440v", + "version": "0.3.0" + }, + "ignition": { + "owner": "terraform-providers", + "repo": "terraform-provider-ignition", + "rev": "v1.2.1", + "sha256": "0wd29iw0a5w7ykgs9m1mmi0bw5z9dl4z640qyz64x8rlh5hl1wql", + "version": "1.2.1" + }, + "incapsula": { + "owner": "terraform-providers", + "repo": "terraform-provider-incapsula", + "rev": "v2.1.0", + "sha256": "12zw2m7j52rszfawywbiv9rgv976h1w6bp98012qn45d4ap2kvzy", + "version": "2.1.0" + }, + "influxdb": { + "owner": "terraform-providers", + "repo": "terraform-provider-influxdb", + "rev": "v1.3.0", + "sha256": "19af40g8hgz2rdz6523v0fs71ww7qdlf2mh5j9vb7pfzriqwa5k9", + "version": "1.3.0" + }, + "infoblox": { + "owner": "terraform-providers", + "repo": "terraform-provider-infoblox", + "rev": "v1.0.0", + "sha256": "0p95y5w3fzddygmsjc0j60z0f4aazvy5iwbwszj0i8gs42qhda2f", + "version": "1.0.0" + }, + "jdcloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-jdcloud", + "rev": "v1.1.0", + "sha256": "04vz0m3z9rfw2hp0h3jhn625r2v37b319krznvhqylqzksv39dzf", + "version": "1.1.0" + }, + "kafka": { + "owner": "Mongey", + "provider-source-address": "registry.terraform.io/Mongey/kafka", + "repo": "terraform-provider-kafka", + "rev": "v0.2.12", + "sha256": "0jm592chliiph5643rymzpwnlcq7q6bpwg2h86x5qmbzbiyqsi83", + "vendorSha256": "08wg16g4mvn6kl8xwn89195a826cb132ijvrgf32c6p7zp4lgmjd", + "version": "0.2.12" + }, + "ksyun": { + "owner": "terraform-providers", + "repo": "terraform-provider-ksyun", + "rev": "v1.0.0", + "sha256": "1vcx612bz2p0rjsrx11j6fdc0f0q2jm5m3xl94wrpx9jjb7aczvc", + "version": "1.0.0" + }, + "kubernetes": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/kubernetes", + "repo": "terraform-provider-kubernetes", + "rev": "v2.0.2", + "sha256": "129aylw6hxa44syfnb0kkkihwvlaa6d1jnxrcbwkql6xxhn9zizf", + "vendorSha256": null, + "version": "2.0.2" + }, + "kubernetes-alpha": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/kubernetes-alpha", + "repo": "terraform-provider-kubernetes-alpha", + "rev": "v0.3.2", + "sha256": "0lgh42fvfwvj6cw8i7800k016ay4babqiz38q0y7apq4s7vs62sb", + "vendorSha256": null, + "version": "0.3.2" + }, + "launchdarkly": { + "owner": "terraform-providers", + "repo": "terraform-provider-launchdarkly", + "rev": "v1.3.2", + "sha256": "0vgkivzbf6hcl9by6l0whpwidva7zmmgdabkshjjk0npl2cj8f9n", + "version": "1.3.2" + }, + "librato": { + "owner": "terraform-providers", + "repo": "terraform-provider-librato", + "rev": "v0.1.0", + "sha256": "0bxadwj5s7bvc4vlymn3w6qckf14hz82r7q98w2nh55sqr52d923", + "version": "0.1.0" + }, + "linode": { + "owner": "terraform-providers", + "repo": "terraform-provider-linode", + "rev": "v1.12.3", + "sha256": "17hnm7wivd75psap2qdmlnmmlf964s7jf4jrfgsm6njx32wwwfpp", + "version": "1.12.3" + }, + "local": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/local", + "repo": "terraform-provider-local", + "rev": "v2.0.0", + "sha256": "0c1mk63lh3qmj8pl80lyvvsgyg4gg7673abr8cfxrj45635h74z5", + "vendorSha256": null, + "version": "2.0.0" + }, + "logentries": { + "owner": "terraform-providers", + "repo": "terraform-provider-logentries", + "rev": "v1.0.0", + "sha256": "04xprkb9zwdjyzmsdf10bgmn8sa8q7jw0izz8lw0cc9hag97qgbq", + "version": "1.0.0" + }, + "logicmonitor": { + "owner": "terraform-providers", + "repo": "terraform-provider-logicmonitor", + "rev": "v1.3.0", + "sha256": "00d8qx95cxaif636dyh935nv9nn6lmb1ybxy7n4myy9g80y50ap1", + "version": "1.3.0" + }, + "mailgun": { + "owner": "terraform-providers", + "repo": "terraform-provider-mailgun", + "rev": "v0.4.1", + "sha256": "1l76pg4hmww9zg2n4rkhm5dwjh42fxri6d41ih1bf670krkxwsmz", + "version": "0.4.1" + }, + "matchbox": { + "owner": "poseidon", + "repo": "terraform-provider-matchbox", + "rev": "v0.3.0", + "sha256": "1nq7k8qa7rv8xyryjigwpwcwvj1sw85c4j46rkfdv70b6js25jz3", + "version": "0.3.0" + }, + "metalcloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-metalcloud", + "rev": "v2.2.0", + "sha256": "0xii9gk96srzi9y4pbvlx2cvwypll4igvk89f9qrg18qrw72ags3", + "version": "2.2.0" + }, + "mongodbatlas": { + "owner": "terraform-providers", + "repo": "terraform-provider-mongodbatlas", + "rev": "v0.5.1", + "sha256": "0sl5yd1bqj79f7pj49aqh7l3fvdrbf8r7a4g7cv15qbc8g3lr1dh", + "version": "0.5.1" + }, + "mysql": { + "owner": "terraform-providers", + "repo": "terraform-provider-mysql", + "rev": "v1.9.0", + "sha256": "14gxxki3jhncv3s2x828ns2vgmf2xxzigdyp9b54mbkw5rnv1k2g", + "version": "1.9.0" + }, + "ncloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-ncloud", + "rev": "v1.2.0", + "sha256": "1h2fr0ss58dr3ypqj6kw90iyji6s83sz2i85vhs5z2adjbk7h8va", + "version": "1.2.0" + }, + "netlify": { + "owner": "terraform-providers", + "repo": "terraform-provider-netlify", + "rev": "v0.4.0", + "sha256": "07xds84k2vgpvn2cy3id7hmzg57sz2603zs4msn3ysxmi28lmqyg", + "version": "0.4.0" + }, + "newrelic": { + "owner": "terraform-providers", + "repo": "terraform-provider-newrelic", + "rev": "v1.19.0", + "sha256": "0nmbgw4qyzsw8kxi7p8dy4j1lkxcz7qfs56qsvwf2w07y4qm382p", + "version": "1.19.0" + }, + "nixos": { + "owner": "tweag", + "repo": "terraform-provider-nixos", + "rev": "v0.0.1", + "sha256": "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf", + "version": "0.0.1" + }, + "nomad": { + "owner": "terraform-providers", + "repo": "terraform-provider-nomad", + "rev": "v1.4.5", + "sha256": "1sccm4mspjn92ky6nscsrmbb573mx53wzsvvapsf2p4119h9s30i", + "version": "1.4.5" + }, + "ns1": { + "owner": "terraform-providers", + "repo": "terraform-provider-ns1", + "rev": "v1.8.3", + "sha256": "18mq6r8sw2jjvngay0zyvzlfiln8c0xb8hcrl2wcmnpqv2iinbkl", + "version": "1.8.3" + }, + "nsxt": { + "owner": "terraform-providers", + "repo": "terraform-provider-nsxt", + "rev": "v2.0.0", + "sha256": "0fka793r0c06sz8vlxk0z7vbm6kab5xzk39r5pznkq34004r17sl", + "version": "2.0.0" + }, + "null": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/null", + "repo": "terraform-provider-null", + "rev": "v3.0.0", + "sha256": "0r1kvsc96922i85hdvf1pk8aicxjr6bc69gc63qi21hrl0jpvr7r", + "vendorSha256": null, + "version": "3.0.0" + }, + "nutanix": { + "owner": "terraform-providers", + "repo": "terraform-provider-nutanix", + "rev": "v1.0.2", + "sha256": "17sgsxsh8minirks08c6gz52cf7ndn220sx4xzi6bq64yi6qw2yc", + "version": "1.0.2" + }, + "oci": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/hashicorp/oci", + "repo": "terraform-provider-oci", + "rev": "v3.79.0", + "sha256": "11n2v537zniiv5xvhpypqrm09my8zybirvq4ly94hp69v73xj89c", + "version": "3.79.0" + }, + "okta": { + "owner": "terraform-providers", + "repo": "terraform-provider-okta", + "rev": "v3.3.0", + "sha256": "1z557z1yagp2caf85hmcr6sddax9a5h47jja17082qmmr1qy0i07", + "version": "3.3.0" + }, + "oktaasa": { + "owner": "terraform-providers", + "repo": "terraform-provider-oktaasa", + "rev": "v1.0.0", + "sha256": "093d5r8dz8gryk8qp5var2qrrgkvs1gwgw3zqpxry9xc5cpn30w0", + "version": "1.0.0" + }, + "oneandone": { + "owner": "terraform-providers", + "repo": "terraform-provider-oneandone", + "rev": "v1.3.0", + "sha256": "0c412nqg3k17124i51nn3ffra6gcll904h37h7hyvz97cdblcncn", + "version": "1.3.0" + }, + "opc": { + "owner": "terraform-providers", + "repo": "terraform-provider-opc", + "rev": "v1.4.0", + "sha256": "1yl8bbh4pf94wlmna294zcawylr9hiaix82wr321g9wb0vi3d5l8", + "version": "1.4.0" + }, + "opennebula": { + "owner": "terraform-providers", + "repo": "terraform-provider-opennebula", + "rev": "v0.1.1", + "sha256": "048cqd89fz5xpji1w8ylg75nbzzcx1c5n89y1k0ra8d3g2208yb2", + "version": "0.1.1" + }, + "openstack": { + "owner": "terraform-providers", + "repo": "terraform-provider-openstack", + "rev": "v1.28.0", + "sha256": "1g2nxv312ddvkgpph17m9sh4zmy5ddj8gqwnfb3frbfbbamrgar6", + "version": "1.28.0" + }, + "opentelekomcloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-opentelekomcloud", + "rev": "v1.17.1", + "sha256": "1d4w35hpvxy5wkb6n9wrh2nfcsy0xgk6d4jbk4sy7dn44w3nkqbg", + "version": "1.17.1" + }, + "opsgenie": { + "owner": "terraform-providers", + "repo": "terraform-provider-opsgenie", + "rev": "v0.3.4", + "sha256": "11pbkhn7yhz2mfa01ikn7rdajl28zwxfq9g9qdf9lvkdrv88gwh0", + "version": "0.3.4" + }, + "oraclepaas": { + "owner": "terraform-providers", + "repo": "terraform-provider-oraclepaas", + "rev": "v1.5.3", + "sha256": "0xb03b5jgm06rgrllib6zj1nkh54zv2mqjnyfflgnazpf4c1ia15", + "version": "1.5.3" + }, + "ovh": { + "owner": "terraform-providers", + "repo": "terraform-provider-ovh", + "rev": "v0.8.0", + "sha256": "1ww4ng8w5hm50rbxd83xzbkq8qsn04dqwpdjhs587v9d0x2vwrf1", + "version": "0.8.0" + }, + "packet": { + "owner": "packethost", + "repo": "terraform-provider-packet", + "rev": "v3.2.0", + "sha256": "sha256-YIv4OPRbR00YTVwz0iJ/y6qTbj50nsi5ylrWEx1kZck=", + "version": "3.2.0" + }, + "pagerduty": { + "owner": "terraform-providers", + "repo": "terraform-provider-pagerduty", + "rev": "v1.7.2", + "sha256": "1a8g8rpn52wibrxhnvhlda7ja38vw9aadgdc8nbj7zs50x4aj3ic", + "version": "1.7.2" + }, + "panos": { + "owner": "terraform-providers", + "repo": "terraform-provider-panos", + "rev": "v1.6.2", + "sha256": "1qy6jynv61zhvq16s8jkwjhxz7r65cmk9k37ahh07pbhdx707mz5", + "version": "1.6.2" + }, + "pass": { + "owner": "camptocamp", + "repo": "terraform-provider-pass", + "rev": "1.2.1", + "sha256": "1hf5mvgz5ycp7shiy8px205d9kwswfjmclg7mlh9a55bkraffahk", + "version": "1.2.1" + }, + "postgresql": { + "owner": "cyrilgdn", + "provider-source-address": "registry.terraform.io/cyrilgdn/postgresql", + "repo": "terraform-provider-postgresql", + "rev": "v1.8.1", + "sha256": "07qaiy3vmz179am1qrxwvrk7xpraaa8g0hf49bj54pw7nkrmaixq", + "vendorSha256": null, + "version": "1.8.1" + }, + "powerdns": { + "owner": "terraform-providers", + "repo": "terraform-provider-powerdns", + "rev": "v1.4.0", + "sha256": "1mfcj32v66w5gnzbrdkampydl3m9f1155vcdw8l1f2nba59irkgw", + "version": "1.4.0" + }, + "profitbricks": { + "owner": "terraform-providers", + "repo": "terraform-provider-profitbricks", + "rev": "v1.5.2", + "sha256": "0gass4gzv8axlzn5rgg35nqvd61q82k041r0sr6x6pv6j8v1ixln", + "version": "1.5.2" + }, + "pureport": { + "owner": "terraform-providers", + "repo": "terraform-provider-pureport", + "rev": "v1.1.8", + "sha256": "02vmqwjz5m5hj4zghwicjp27dxvc4qsiwj4gjsi66w6djdqnh4h1", + "version": "1.1.8" + }, + "rabbitmq": { + "owner": "cyrilgdn", + "provider-source-address": "registry.terraform.io/cyrilgdn/rabbitmq", + "repo": "terraform-provider-rabbitmq", + "rev": "v1.5.1", + "sha256": "1yxvhzrp63wv5zbzj3ma2745g1marpj32b5h41ha27h0i42498ky", + "vendorSha256": null, + "version": "1.5.1" + }, + "rancher": { + "owner": "terraform-providers", + "repo": "terraform-provider-rancher", + "rev": "v1.5.0", + "sha256": "0yhv9ahj6ajspgnl2f77gpyd6klq44dyl74lvl10bx6yy56abi2m", + "version": "1.5.0" + }, + "rancher2": { + "owner": "terraform-providers", + "repo": "terraform-provider-rancher2", + "rev": "v1.8.3", + "sha256": "1k2d9j17b7sssliraww6as196ihdcra1ylhg1qbynklpr0asiwna", + "version": "1.8.3" + }, + "random": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/random", + "repo": "terraform-provider-random", + "rev": "v3.0.0", + "sha256": "00dkpcri9ckp0kxwgh3p8175cyd44m8z13cb013pm4mrr61n4wq9", + "vendorSha256": null, + "version": "3.0.0" + }, + "rightscale": { + "owner": "terraform-providers", + "repo": "terraform-provider-rightscale", + "rev": "v1.3.1", + "sha256": "0abwxaghrxpahpsk6kd02fjh0rhck4xsdrzcpv629yh8ip9rzcaj", + "version": "1.3.1" + }, + "rundeck": { + "owner": "terraform-providers", + "repo": "terraform-provider-rundeck", + "rev": "v0.4.0", + "sha256": "1x131djsny8w84yf7w2il33wlc3ysy3k399dziii2lmq4h8sgrpr", + "version": "0.4.0" + }, + "runscope": { + "owner": "terraform-providers", + "repo": "terraform-provider-runscope", + "rev": "v0.6.0", + "sha256": "1fsph2cnyvzdwa5hwdjabfk4azmc3x8a7afpwpawxfdvqhgpr595", + "version": "0.6.0" + }, + "scaleway": { + "owner": "terraform-providers", + "repo": "terraform-provider-scaleway", + "rev": "v1.15.0", + "sha256": "0bdhjrml14f5z4spkl7l305g0vdzpgama7ahngws8jhvl8yfa208", + "version": "1.15.0" + }, + "secret": { + "owner": "tweag", + "repo": "terraform-provider-secret", + "rev": "v1.1.1", + "sha256": "1pr0amzgv1i1lxniqlx8spdb73q522l7pm8a4m25hwy1kwby37sd", + "version": "1.1.1" + }, + "segment": { + "owner": "ajbosco", + "repo": "terraform-provider-segment", + "rev": "v0.2.0", + "sha256": "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz", + "version": "0.2.0" + }, + "selectel": { + "owner": "terraform-providers", + "repo": "terraform-provider-selectel", + "rev": "v3.3.0", + "sha256": "1fs96qd2b4glk8hhn5m9r04ap679g0kf3nnhjx1a2idqwrv71gcl", + "version": "3.3.0" + }, + "shell": { + "owner": "scottwinkler", + "provider-source-address": "registry.terraform.io/scottwinkler/shell", + "repo": "terraform-provider-shell", + "rev": "v1.6.0", + "sha256": "0jxb30vw93ibnwz8nfqapac7p9r2famzvsf2h4nfbmhkm6mpan4l", + "vendorSha256": "1p2ja6cw3dl7mx41svri6frjpgb9pxsrl7sq0rk1d3sviw0f88sg", + "version": "1.6.0" + }, + "signalfx": { + "owner": "terraform-providers", + "repo": "terraform-provider-signalfx", + "rev": "v4.23.0", + "sha256": "1v3whvqb6nilfvw4c0xziq6yrlkl96d2cya094c7bd7wp9hzif1l", + "version": "4.23.0" + }, + "skytap": { + "owner": "terraform-providers", + "repo": "terraform-provider-skytap", + "rev": "v0.14.1", + "sha256": "0ygsdkv7czyhsjsx1q57rmmcl8x66d65yarhg40hlng5c7xpi52g", + "version": "0.14.1" + }, + "softlayer": { + "owner": "terraform-providers", + "repo": "terraform-provider-softlayer", + "rev": "v0.0.1", + "sha256": "1xcg5zm2n1pc3l7ng94k589r7ykv6fxsmr5qn9xmmpdf912rdnfq", + "version": "0.0.1" + }, + "sops": { + "owner": "carlpett", + "repo": "terraform-provider-sops", + "rev": "v0.5.1", + "sha256": "1x32w1qw46rwa8bjhkfn6ybr1dkbdqk0prlm0bnwn3gvvj0hc7kh", + "version": "0.5.1" + }, + "spotinst": { + "owner": "terraform-providers", + "repo": "terraform-provider-spotinst", + "rev": "v1.17.0", + "sha256": "0pmbr2xdqrzkd66zv4gpyxzahs7p2m2xl5qyvqpg0apxn91z3ra7", + "version": "1.17.0" + }, + "stackpath": { + "owner": "terraform-providers", + "repo": "terraform-provider-stackpath", + "rev": "v1.3.0", + "sha256": "0gsr903v6fngaxm2r5h53g9yc3jpx2zccqq07rhzm9jbsfb6rlzn", + "version": "1.3.0" + }, + "statuscake": { + "owner": "terraform-providers", + "repo": "terraform-provider-statuscake", + "rev": "v1.0.0", + "sha256": "1x295va6c72465cxps0kx3rrb7s9aip2cniy6icsg1b2yrsb9b26", + "version": "1.0.0" + }, + "sumologic": { + "owner": "terraform-providers", + "repo": "terraform-provider-sumologic", + "rev": "v2.0.3", + "sha256": "0d7xsfdfs6dj02bh90bhwsa2jgxf84df3pqmsjlmxvpv65dv4vs8", + "version": "2.0.3" + }, + "telefonicaopencloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-telefonicaopencloud", + "rev": "v1.0.0", + "sha256": "1761wkjz3d2458xl7855lxklyxgyk05fddh92rp6975y0ca6xa5m", + "version": "1.0.0" + }, + "template": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/template", + "repo": "terraform-provider-template", + "rev": "v2.2.0", + "sha256": "12pn1i06jz4xl50md94yfdggg3pg5bv1viwf35izizm5rnyksyv2", + "vendorSha256": null, + "version": "2.2.0" + }, + "tencentcloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-tencentcloud", + "rev": "v1.36.0", + "sha256": "1sqynm0g1al5hnxzccv8iiqcgd07ys0g828f3xfw53b6f5vzbhfr", + "version": "1.36.0" + }, + "terraform": { + "owner": "terraform-providers", + "repo": "terraform-provider-terraform", + "rev": "v1.0.2", + "sha256": "1aj6g6l68n9kqmxfjlkwwxnac7fhha6wrmvsw4yylf0qyssww75v", + "version": "1.0.2" + }, + "tfe": { + "owner": "terraform-providers", + "repo": "terraform-provider-tfe", + "rev": "v0.18.0", + "sha256": "1cl83afm00fflsd3skynjvncid3r74fkxfznrs1v8qypcg1j79g1", + "version": "0.18.0" + }, + "time": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/time", + "repo": "terraform-provider-time", + "rev": "v0.6.0", + "sha256": "0fb81hisjicib9rzbn51jqfrchyjd3hzq98adnf22cbra8wlnxlm", + "version": "0.6.0" + }, + "tls": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/tls", + "repo": "terraform-provider-tls", + "rev": "v3.0.0", + "sha256": "1p9d5wrr4xwf2i930zlcarm1zl8ysj3nyc6rrbhpxk04kr6ap0wz", + "vendorSha256": null, + "version": "3.0.0" + }, + "triton": { + "owner": "terraform-providers", + "repo": "terraform-provider-triton", + "rev": "v0.7.0", + "sha256": "14wbdm2rlmjld9y7iizdinhk1fnx5s8fgjgd3jcs1b4g126s0pl0", + "version": "0.7.0" + }, + "turbot": { + "owner": "terraform-providers", + "repo": "terraform-provider-turbot", + "rev": "v1.3.0", + "sha256": "0z56s3kmx84raiwiny9jing8ac9msfd5vk8va24k8czwj2v5gb0f", + "version": "1.3.0" + }, + "ucloud": { + "owner": "terraform-providers", + "repo": "terraform-provider-ucloud", + "rev": "v1.20.0", + "sha256": "1s3xgdrngiy7slxwk5cmhij681yyfvc8185yig7jmrm21q2981f6", + "version": "1.20.0" + }, + "ultradns": { + "owner": "terraform-providers", + "repo": "terraform-provider-ultradns", + "rev": "v0.1.0", + "sha256": "0bq2y6bxdax7qnmq6vxh8pz9sqy1r3m05dv7q5dbv2xvba1b88hj", + "version": "0.1.0" + }, + "vault": { + "owner": "terraform-providers", + "provider-source-address": "registry.terraform.io/hashicorp/vault", + "repo": "terraform-provider-vault", + "rev": "v2.11.0", + "sha256": "1yzakc7jp0rs9axnfdqw409asrbjhq0qa7xn4xzpi7m94g1ii12d", + "version": "2.11.0" + }, + "vcd": { + "owner": "terraform-providers", + "repo": "terraform-provider-vcd", + "rev": "v2.8.0", + "sha256": "0myj5a9mrh7vg6h3gk5f0wsdp6832nz0z10h184107sdchpv253n", + "version": "2.8.0" + }, + "venafi": { + "owner": "terraform-providers", + "repo": "terraform-provider-venafi", + "rev": "v0.9.2", + "sha256": "06nk5c7lxs8fc04sz97lc3yk1zk1b9phkzw6fj9fnmpgaak87bj9", + "version": "0.9.2" + }, + "vra7": { + "owner": "terraform-providers", + "repo": "terraform-provider-vra7", + "rev": "v1.0.1", + "sha256": "0qmldgxmrv840c5rbmskdf4f9g4v52gg9v7magm6j2w2g0dp1022", + "version": "1.0.1" + }, + "vsphere": { + "owner": "hashicorp", + "provider-source-address": "registry.terraform.io/hashicorp/vsphere", + "repo": "terraform-provider-vsphere", + "rev": "v1.24.3", + "sha256": "1sc60x3r4nb48p8yb7778fpk78acq808jzcd5ijnwxqakccml5kl", + "vendorSha256": null, + "version": "1.24.3" + }, + "vthunder": { + "owner": "terraform-providers", + "repo": "terraform-provider-vthunder", + "rev": "v0.1.0", + "sha256": "1mw55g0kjgp300p6y4s8wc91fgfxjm0cbszfzgbc8ca4b00j8cc2", + "version": "0.1.0" + }, + "vultr": { + "owner": "vultr", + "repo": "terraform-provider-vultr", + "rev": "v2.1.3", + "sha256": "sha256-fvqkzg3j2TYAMbPc8Ifh35sBe0D76LYH6Ut5Ugdyexg=", + "version": "2.1.3" + }, + "wavefront": { + "owner": "terraform-providers", + "repo": "terraform-provider-wavefront", + "rev": "v2.3.0", + "sha256": "0aci96852bd4y8bi9y68p550jiji0c69kiw4zhf9qfld0sjz44j2", + "version": "2.3.0" + }, + "yandex": { + "owner": "yandex-cloud", + "repo": "terraform-provider-yandex", + "rev": "v0.54.0", + "sha256": "0q9m7520zl7q1liri6x849xjp221wbc9l2w6dj19mmgfwspqv02l", + "vendorSha256": "0rzldsb8gyhvnsd26wg9byqngzzj64pi86v2hb4i63rlfmnn77xi", + "version": "0.54.0" + } +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/update-all-providers b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/update-all-providers new file mode 100755 index 000000000000..052c56742c5f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/update-all-providers @@ -0,0 +1,22 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p jq +# shellcheck shell=bash + +# Update all providers which have specified provider source address +set -euo pipefail + +providers=$( + jq -r 'to_entries + | map_values(.value + { alias: .key }) + | .[] + | select(."provider-source-address"?) + | .alias' providers.json +) + +echo "Will update providers:" +echo "$providers" + +for provider in $providers; do + echo "Updating $provider" + ./update-provider "$provider" +done diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/update-provider b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/update-provider new file mode 100755 index 000000000000..f97bbce83faa --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/update-provider @@ -0,0 +1,179 @@ +#!/usr/bin/env nix-shell +#! nix-shell -I nixpkgs=../../../../.. -i bash -p coreutils curl jq moreutils nix +# shellcheck shell=bash +# vim: ft=sh +# +# Update a terraform provider to the latest version advertised at the +# provider source address. +# +set -euo pipefail + +show_usage() { + cat <<DOC +Usage: ./update-provider [--force] [--vendor] [<owner>/]<provider> + +Update a single provider in the providers.json inventory file. + +For example to update 'terraform-providers.aws' run: + + ./update-provider aws + +If the provider is not in the list already, use the form '<owner>/<provider>' +to add the provider to the list: + + ./update-provider hetznercloud/hcloud + +Options: + + * --force: Force the update even if the version matches. + * --vendor: Switch from go package to go modules with vendor. + * --vendor-sha256 <sha256>: Override the SHA256 or "null". +DOC +} + +force= +provider= +vendor= +vendorSha256= + +while [[ $# -gt 0 ]]; do + case "$1" in + -h | --help) + show_usage + exit + ;; + --force) + force=1 + shift + ;; + --vendor) + force=1 + vendor=1 + shift + ;; + --vendor-sha256) + force=1 + vendorSha256=$2 + shift 2 + ;; + *) + if [[ -n "$provider" ]]; then + echo "ERROR: provider name was passed two times: '$provider' and '$1'" + echo "Use --help for more info" + exit 1 + fi + provider=$1 + shift + esac +done + +if [[ -z "$provider" ]]; then + echo "ERROR: No providers specified!" + echo + show_usage + exit 1 +fi + +provider_name=$(basename "$provider") + +# Usage: read_attr <key> +read_attr() { + jq -r ".\"$provider_name\".\"$1\"" providers.json +} + +# Usage: update_attr <key> <value> +update_attr() { + if [[ "$2" == "null" ]]; then + jq -S ".\"$provider_name\".\"$1\" = null" providers.json | sponge providers.json + else + jq -S ".\"$provider_name\".\"$1\" = \"$2\"" providers.json | sponge providers.json + fi +} + +prefetch_github() { + # of a given owner, repo and rev, fetch the tarball and return the output of + # `nix-prefetch-url` + local owner=$1 + local repo=$2 + local rev=$3 + nix-prefetch-url --unpack "https://github.com/$owner/$repo/archive/$rev.tar.gz" +} + +old_source_address="$(read_attr provider-source-address)" +old_vendor_sha256=$(read_attr vendorSha256) +old_version=$(read_attr version) + +if [[ $provider =~ ^[^/]+/[^/]+$ ]]; then + source_address=registry.terraform.io/$provider +else + source_address=$old_source_address +fi +if [[ "$source_address" == "null" ]]; then + echo "Could not find the source address for provider: $provider" + exit 1 +fi +update_attr "provider-source-address" "$source_address" + +# The provider source address (used inside Terraform `required_providers` block) is +# used to compute the registry API endpoint +# +# registry.terraform.io/hashicorp/aws (provider source address) +# registry.terraform.io/providers/hashicorp/aws (provider URL for the website) +# registry.terraform.io/v1/providers/hashicorp/aws (provider URL for the JSON API) +registry_response=$(curl -s https://"${source_address/\///v1/providers/}") + +version="$(jq -r '.version' <<< "$registry_response")" +if [[ "$old_version" = "$version" && "$force" != 1 && -z "$vendorSha256" && "$old_vendor_sha256" != "$vendorSha256" ]]; then + echo "$provider_name is already at version $version" + exit +fi +update_attr version "$version" + +provider_source_url="$(jq -r '.source' <<< "$registry_response")" + +org="$(echo "$provider_source_url" | cut -d '/' -f 4)" +update_attr owner "$org" +repo="$(echo "$provider_source_url" | cut -d '/' -f 5)" +update_attr repo "$repo" +rev="$(jq -r '.tag' <<< "$registry_response")" +update_attr rev "$rev" +sha256=$(prefetch_github "$org" "$repo" "$rev") +update_attr sha256 "$sha256" + +repo_root=$(git rev-parse --show-toplevel) + +if [[ -z "$vendorSha256" ]]; then + if [[ "$old_vendor_sha256" == null ]]; then + vendorSha256=null + elif [[ -n "$old_vendor_sha256" || "$vendor" = 1 ]]; then + echo "=== Calculating vendorSha256 ===" + update_attr vendorSha256 "0000000000000000000000000000000000000000000000000000000000000000" + # Hackish way to find out the desired sha256. First build, then extract the + # error message from the logs. + set +e + nix-build --no-out-link "$repo_root" -A "terraform-providers.$provider_name.go-modules" 2>vendor_log.txt + set -e + logs=$(< vendor_log.txt) + if ! [[ $logs =~ got:\ +([^\ ]+) ]]; then + echo "ERROR: could not find new hash in output:" + cat vendor_log.txt + rm -f vendor_log.txt + exit 1 + fi + rm -f vendor_log.txt + # trim the results in case it they have a sha256: prefix or contain more than one line + vendorSha256=$(echo "${BASH_REMATCH[1]#sha256:}" | head -n 1) + # Deal with nix unstable + if [[ $vendorSha256 = sha256-* ]]; then + vendorSha256=$(nix to-base32 "$vendorSha256") + fi + fi +fi + +if [[ -n "$vendorSha256" ]]; then + update_attr vendorSha256 "$vendorSha256" +fi + +# Check that the provider builds +echo "=== Building terraform-providers.$provider_name ===" +nix-build "$repo_root" -A "terraform-providers.$provider_name" diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/vercel/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/vercel/default.nix new file mode 100644 index 000000000000..f37d1ac5d87a --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/vercel/default.nix @@ -0,0 +1,23 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "terraform-provider-vercel"; + version = "2.1.0"; + + src = fetchFromGitHub { + owner = "ondrejsika"; + repo = pname; + rev = "v${version}"; + sha256 = "06lskp3mmax7g0lchq6jaxavycj7snkhip9madzqkr552qvz5cgw"; + }; + + vendorSha256 = "0s0kf1v2217q9hfmc7r2yybcfk33k566dfvs2jiq63kyjnadhb0k"; + + postInstall = "mv $out/bin/terraform-provider-vercel{,_v${version}}"; + + meta = with lib; { + homepage = "https://github.com/ondrejsika/terraform-provider-vercel"; + description = "Terraform provider for Vercel"; + maintainers = with maintainers; [ mmahut ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix new file mode 100644 index 000000000000..93401dfc635b --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix @@ -0,0 +1,29 @@ +{ lib, fetchFromGitHub, buildGoModule }: +buildGoModule rec { + pname = "terraform-provider-vpsadmin"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "vpsfreecz"; + repo = "terraform-provider-vpsadmin"; + rev = "v${version}"; + sha256 = "1vny6w9arbbra04bjjafisaswinm93ic1phy59l0g78sqf6x3a7v"; + }; + + vendorSha256 = "0j90fnzba23mwf9bzf9w5h0hszkl3h61p5i780s9v9c0hbzhbqsh"; + + doCheck = false; + + subPackages = [ "." ]; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postInstall = "mv $out/bin/${pname}{,_v${version}}"; + + meta = with lib; { + description = "Terraform provider for vpsAdmin"; + homepage = "https://github.com/vpsfreecz/terraform-provider-vpsadmin"; + license = licenses.mpl20; + maintainers = with maintainers; [ zimbatm ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix new file mode 100644 index 000000000000..6cd2cf52efc1 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix @@ -0,0 +1,187 @@ +{ stdenv, lib, buildGoModule, fetchFromGitHub, makeWrapper, coreutils +, runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }: + +let + generic = { version, sha256, vendorSha256 ? null, ... }@attrs: + let attrs' = builtins.removeAttrs attrs [ "version" "sha256" "vendorSha256" ]; + in buildGoModule ({ + name = "terraform-${version}"; + + inherit vendorSha256; + + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "terraform"; + rev = "v${version}"; + inherit sha256; + }; + + postConfigure = '' + # speakeasy hardcodes /bin/stty https://github.com/bgentry/speakeasy/issues/22 + substituteInPlace vendor/github.com/bgentry/speakeasy/speakeasy_unix.go \ + --replace "/bin/stty" "${coreutils}/bin/stty" + ''; + + postInstall = '' + # remove all plugins, they are part of the main binary now + for i in $out/bin/*; do + if [[ $(basename $i) != terraform ]]; then + rm "$i" + fi + done + ''; + + preCheck = '' + export HOME=$TMPDIR + export TF_SKIP_REMOTE_TESTS=1 + ''; + + subPackages = [ "." ]; + + meta = with lib; { + description = + "Tool for building, changing, and versioning infrastructure"; + homepage = "https://www.terraform.io/"; + changelog = "https://github.com/hashicorp/terraform/blob/v${version}/CHANGELOG.md"; + license = licenses.mpl20; + maintainers = with maintainers; [ + Chili-Man + babariviere + kalbasit + marsam + peterhoeg + timstott + zimbatm + ]; + }; + } // attrs'); + + pluggable = terraform: + let + withPlugins = plugins: + let + actualPlugins = plugins terraform.plugins; + + # Make providers available in Terraform 0.13 and 0.12 search paths. + pluginDir = lib.concatMapStrings (pl: let + inherit (pl) version GOOS GOARCH; + + pname = pl.pname or (throw "${pl.name} is missing a pname attribute"); + + # This is just the name, without the terraform-provider- prefix + plugin_name = lib.removePrefix "terraform-provider-" pname; + + slug = pl.passthru.provider-source-address or "registry.terraform.io/nixpkgs/${plugin_name}"; + + shim = writeText "shim" '' + #!${runtimeShell} + exec ${pl}/bin/${pname}_v${version} "$@" + ''; + in '' + TF_0_13_PROVIDER_PATH=$out/plugins/${slug}/${version}/${GOOS}_${GOARCH}/${pname}_v${version} + mkdir -p "$(dirname $TF_0_13_PROVIDER_PATH)" + + cp ${shim} "$TF_0_13_PROVIDER_PATH" + chmod +x "$TF_0_13_PROVIDER_PATH" + + TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version} + + cp ${shim} "$TF_0_12_PROVIDER_PATH" + chmod +x "$TF_0_12_PROVIDER_PATH" + '' + ) actualPlugins; + + # Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries + wrapperInputs = lib.unique (lib.flatten + (lib.catAttrs "propagatedBuildInputs" + (builtins.filter (x: x != null) actualPlugins))); + + passthru = { + withPlugins = newplugins: + withPlugins (x: newplugins x ++ actualPlugins); + full = withPlugins lib.attrValues; + + # Ouch + overrideDerivation = f: + (pluggable (terraform.overrideDerivation f)).withPlugins plugins; + overrideAttrs = f: + (pluggable (terraform.overrideAttrs f)).withPlugins plugins; + override = x: + (pluggable (terraform.override x)).withPlugins plugins; + }; + # Don't bother wrapping unless we actually have plugins, since the wrapper will stop automatic downloading + # of plugins, which might be counterintuitive if someone just wants a vanilla Terraform. + in if actualPlugins == [ ] then + terraform.overrideAttrs + (orig: { passthru = orig.passthru // passthru; }) + else + lib.appendToName "with-plugins" (stdenv.mkDerivation { + inherit (terraform) name meta; + nativeBuildInputs = [ makeWrapper ]; + + buildCommand = pluginDir + '' + mkdir -p $out/bin/ + makeWrapper "${terraform}/bin/terraform" "$out/bin/terraform" \ + --set NIX_TERRAFORM_PLUGIN_DIR $out/plugins \ + --prefix PATH : "${lib.makeBinPath wrapperInputs}" + ''; + + inherit passthru; + }); + in withPlugins (_: [ ]); + + plugins = removeAttrs terraform-providers [ + "override" + "overrideDerivation" + "recurseForDerivations" + ]; +in rec { + terraform_0_12 = pluggable (generic { + version = "0.12.30"; + sha256 = "0mv2nsy2ygb1kgkw98xckihcdqxpzhdmks5p2gi2l7wb7lx51yz2"; + patches = [ + ./provider-path.patch + (fetchpatch { + name = "fix-mac-mojave-crashes.patch"; + url = "https://github.com/hashicorp/terraform/commit/cd65b28da051174a13ac76e54b7bb95d3051255c.patch"; + sha256 = "1k70kk4hli72x8gza6fy3vpckdm3sf881w61fmssrah3hgmfmbrs"; + }) ]; + passthru = { inherit plugins; }; + }); + + terraform_0_13 = pluggable (generic { + version = "0.13.6"; + sha256 = "04vas8i894ssfhncdvljdvmvj2qzfrcs20zcv71l1wmnnv9ibs6l"; + patches = [ ./provider-path.patch ]; + passthru = { inherit plugins; }; + }); + + terraform_0_14 = pluggable (generic { + version = "0.14.10"; + sha256 = "05vfb8hzma3qxq4w1h25mmgv96g90if214zlar0sm9fq8zsvb1yw"; + vendorSha256 = "1d93aqkjdrvabkvix6h1qaxpjzv7w1wa7xa44czdnjs2lapx4smm"; + patches = [ ./provider-path.patch ]; + passthru = { inherit plugins; }; + }); + + # Tests that the plugins are being used. Terraform looks at the specific + # file pattern and if the plugin is not found it will try to download it + # from the Internet. With sandboxing enable this test will fail if that is + # the case. + terraform_plugins_test = let + mainTf = writeText "main.tf" '' + resource "random_id" "test" {} + ''; + terraform = terraform_0_12.withPlugins (p: [ p.random ]); + test = + runCommand "terraform-plugin-test" { buildInputs = [ terraform ]; } '' + set -e + # make it fail outside of sandbox + export HTTP_PROXY=http://127.0.0.1:0 HTTPS_PROXY=https://127.0.0.1:0 + cp ${mainTf} main.tf + terraform init + touch $out + ''; + in test; + +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform/provider-path.patch b/nixpkgs/pkgs/applications/networking/cluster/terraform/provider-path.patch new file mode 100644 index 000000000000..39a69e4a389f --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraform/provider-path.patch @@ -0,0 +1,16 @@ +diff --git a/command/init.go b/command/init.go +index 403ca245b..05d98329a 100644 +--- a/command/init.go ++++ b/command/init.go +@@ -64,6 +64,11 @@ func (c *InitCommand) Run(args []string) int { + return 1 + } + ++ val, ok := os.LookupEnv("NIX_TERRAFORM_PLUGIN_DIR") ++ if ok { ++ flagPluginPath = append(flagPluginPath, val) ++ } ++ + if len(flagPluginPath) > 0 { + c.pluginPath = flagPluginPath + c.getPlugins = false diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraforming/Gemfile b/nixpkgs/pkgs/applications/networking/cluster/terraforming/Gemfile new file mode 100644 index 000000000000..e6a4991e899d --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraforming/Gemfile @@ -0,0 +1,3 @@ +source "https://rubygems.org" + +gem 'terraforming' diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraforming/Gemfile.lock b/nixpkgs/pkgs/applications/networking/cluster/terraforming/Gemfile.lock new file mode 100644 index 000000000000..ae2a40cc35b0 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraforming/Gemfile.lock @@ -0,0 +1,92 @@ +GEM + remote: https://rubygems.org/ + specs: + aws-eventstream (1.1.1) + aws-partitions (1.436.0) + aws-sdk-autoscaling (1.59.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-cloudwatch (1.50.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-core (3.113.0) + aws-eventstream (~> 1, >= 1.0.2) + aws-partitions (~> 1, >= 1.239.0) + aws-sigv4 (~> 1.1) + jmespath (~> 1.0) + aws-sdk-dynamodb (1.60.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-ec2 (1.230.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-efs (1.39.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-elasticache (1.54.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-elasticloadbalancing (1.31.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-elasticloadbalancingv2 (1.61.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-iam (1.51.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-kms (1.43.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-rds (1.117.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-redshift (1.58.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-route53 (1.48.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-s3 (1.93.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sdk-kms (~> 1) + aws-sigv4 (~> 1.1) + aws-sdk-sns (1.39.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sdk-sqs (1.38.0) + aws-sdk-core (~> 3, >= 3.112.0) + aws-sigv4 (~> 1.1) + aws-sigv4 (1.2.3) + aws-eventstream (~> 1, >= 1.0.2) + jmespath (1.4.0) + multi_json (1.12.2) + terraforming (0.18.0) + aws-sdk-autoscaling (~> 1) + aws-sdk-cloudwatch (~> 1) + aws-sdk-dynamodb (~> 1.18) + aws-sdk-ec2 (~> 1) + aws-sdk-efs (~> 1, >= 1.13.0) + aws-sdk-elasticache (~> 1) + aws-sdk-elasticloadbalancing (~> 1) + aws-sdk-elasticloadbalancingv2 (~> 1) + aws-sdk-iam (~> 1) + aws-sdk-kms (~> 1) + aws-sdk-rds (~> 1) + aws-sdk-redshift (~> 1) + aws-sdk-route53 (~> 1) + aws-sdk-s3 (~> 1) + aws-sdk-sns (~> 1) + aws-sdk-sqs (~> 1) + multi_json (~> 1.12.1) + thor + thor (1.1.0) + +PLATFORMS + ruby + +DEPENDENCIES + terraforming + +BUNDLED WITH + 2.1.4 diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraforming/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraforming/default.nix new file mode 100644 index 000000000000..85d522257cde --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraforming/default.nix @@ -0,0 +1,20 @@ +{ lib, bundlerApp, bundlerUpdateScript, ruby }: + +bundlerApp rec { + inherit ruby; + + pname = "terraforming"; + gemdir = ./.; + exes = [ "terraforming" ]; + + passthru.updateScript = bundlerUpdateScript "terraforming"; + + meta = with lib; { + inherit (ruby.meta) platforms; + + description = "Export existing AWS resources to Terraform style (tf, tfstate)"; + homepage = "https://github.com/dtan4/terraforming"; + license = with licenses; mit; + maintainers = with maintainers; [ kalbasit ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraforming/gemset.nix b/nixpkgs/pkgs/applications/networking/cluster/terraforming/gemset.nix new file mode 100644 index 000000000000..9882efc29e80 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terraforming/gemset.nix @@ -0,0 +1,261 @@ +{ + aws-eventstream = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jfki5ikfr8ln5cdgv4iv1643kax0bjpp29jh78chzy713274jh3"; + type = "gem"; + }; + version = "1.1.1"; + }; + aws-partitions = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1gn09cafg2n6gdc3ja80r3xjllly05r0m7x3w3b3rywir6k6ai4f"; + type = "gem"; + }; + version = "1.436.0"; + }; + aws-sdk-autoscaling = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0br6hfi2i5rri8ivamkmnx00p640s24pqmp8s67sm5asvdfzx4vr"; + type = "gem"; + }; + version = "1.59.0"; + }; + aws-sdk-cloudwatch = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xga00dn925rfgz4p2zf734aaik00dqb9psll27lg5626jd6xr0c"; + type = "gem"; + }; + version = "1.50.0"; + }; + aws-sdk-core = { + dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1774xyfqf307qvh5npvf01948ayrviaadq576r4jxin6xvlg8j9z"; + type = "gem"; + }; + version = "3.113.0"; + }; + aws-sdk-dynamodb = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1dfsmkzv9cziykzc56g9pwxmbdqjpykxka3fq07b6iarzh38j1i3"; + type = "gem"; + }; + version = "1.60.0"; + }; + aws-sdk-ec2 = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1c7qqly2f94db3643xwjj9mcb34vilx11awbv40v2f8z7xisvvz3"; + type = "gem"; + }; + version = "1.230.0"; + }; + aws-sdk-efs = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0kmpz86sxkm6nzcf80nd65902fy29hz8lvx1kjwl5idx07ls8pnd"; + type = "gem"; + }; + version = "1.39.0"; + }; + aws-sdk-elasticache = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05kn2k437rnsf9nkwc1x5i2klrasjgyk1pj89f2gb0za86swjcza"; + type = "gem"; + }; + version = "1.54.0"; + }; + aws-sdk-elasticloadbalancing = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0j3px8dn2yxsnmy010kfkwa1a2flbdxachmly20f436ysi3ql3v3"; + type = "gem"; + }; + version = "1.31.0"; + }; + aws-sdk-elasticloadbalancingv2 = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "16hknbqv5s1im04dch9kdbc79x072613imdih62w48mvsf12c1mm"; + type = "gem"; + }; + version = "1.61.0"; + }; + aws-sdk-iam = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0x2768blsy8lpib9pi2f2d67flabar3bq6chmbj07iqzpwvpz569"; + type = "gem"; + }; + version = "1.51.0"; + }; + aws-sdk-kms = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01pd0f4srsa65zl4zq4014p9j5yrr2yy9h9ab17g3w9d0qqm2vsh"; + type = "gem"; + }; + version = "1.43.0"; + }; + aws-sdk-rds = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hwxgcka6bmzdn5pazss0fv8xgbbgas4h2cwpzwhkjkwhh23dx6a"; + type = "gem"; + }; + version = "1.117.0"; + }; + aws-sdk-redshift = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1sp186v00lj517hia6rsn28ph8rqknz9r79vbkbyh5fgrbh2j6bd"; + type = "gem"; + }; + version = "1.58.0"; + }; + aws-sdk-route53 = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0p9g0scw9c6qancdwvaw3kkj3pywchy2vl3qz2rqpjncqvj04pn5"; + type = "gem"; + }; + version = "1.48.0"; + }; + aws-sdk-s3 = { + dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0iy2f9z43pc6fgwmga2cz8nf9gy2pwcw4jib141vp8z8dhylqj94"; + type = "gem"; + }; + version = "1.93.0"; + }; + aws-sdk-sns = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0pmxi871r2nkl6by89vsy05ahk8dr6hmkny56fycrby6r9kri9q4"; + type = "gem"; + }; + version = "1.39.0"; + }; + aws-sdk-sqs = { + dependencies = ["aws-sdk-core" "aws-sigv4"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01m2l8y4q4fixjvl70w5bi1ihmmx2y4krms9kkjwd3ch21y14hif"; + type = "gem"; + }; + version = "1.38.0"; + }; + aws-sigv4 = { + dependencies = ["aws-eventstream"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d9zhmi3mpfzkkpg7yw7s9r1dwk157kh9875j3c7gh6cy95lmmaw"; + type = "gem"; + }; + version = "1.2.3"; + }; + jmespath = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d4wac0dcd1jf6kc57891glih9w57552zgqswgy74d1xhgnk0ngf"; + type = "gem"; + }; + version = "1.4.0"; + }; + multi_json = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1raim9ddjh672m32psaa9niw67ywzjbxbdb8iijx3wv9k5b0pk2x"; + type = "gem"; + }; + version = "1.12.2"; + }; + terraforming = { + dependencies = ["aws-sdk-autoscaling" "aws-sdk-cloudwatch" "aws-sdk-dynamodb" "aws-sdk-ec2" "aws-sdk-efs" "aws-sdk-elasticache" "aws-sdk-elasticloadbalancing" "aws-sdk-elasticloadbalancingv2" "aws-sdk-iam" "aws-sdk-kms" "aws-sdk-rds" "aws-sdk-redshift" "aws-sdk-route53" "aws-sdk-s3" "aws-sdk-sns" "aws-sdk-sqs" "multi_json" "thor"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03fyhqx6bxpbn26pbcz748gz7rh7q3r9r0jimq7vj07fl454fmwh"; + type = "gem"; + }; + version = "0.18.0"; + }; + thor = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18yhlvmfya23cs3pvhr1qy38y41b6mhr5q9vwv5lrgk16wmf3jna"; + type = "gem"; + }; + version = "1.1.0"; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix new file mode 100644 index 000000000000..eb230062feec --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix @@ -0,0 +1,37 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "terragrunt"; + version = "0.28.18"; + + src = fetchFromGitHub { + owner = "gruntwork-io"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-W0HjGILezhuc1lXvGCHw23h8Sx1uw4YLLsOOBZYGvU8="; + }; + + vendorSha256 = "sha256-kcRM76xfajtQist1aJTmaRludxRlfvHQ9ucB3LOgnBk="; + + doCheck = false; + + preBuild = '' + buildFlagsArray+=("-ldflags" "-s -w -X main.VERSION=v${version}") + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + $out/bin/terragrunt --help + $out/bin/terragrunt --version | grep "v${version}" + runHook postInstallCheck + ''; + + meta = with lib; { + homepage = "https://terragrunt.gruntwork.io"; + changelog = "https://github.com/gruntwork-io/terragrunt/releases/tag/v${version}"; + description = "A thin wrapper for Terraform that supports locking for Terraform state and enforces best practices"; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg jk ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/terranix/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terranix/default.nix new file mode 100644 index 000000000000..89a96cc12ca5 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/terranix/default.nix @@ -0,0 +1,29 @@ +{ lib, stdenv, fetchFromGitHub, ... }: + +stdenv.mkDerivation rec { + + pname = "terranix"; + version = "2.3.0"; + + src = fetchFromGitHub { + owner = "mrVanDalo"; + repo = "terranix"; + rev = version; + sha256 = "030067h3gjc02llaa7rx5iml0ikvw6szadm0nrss2sqzshsfimm4"; + }; + + installPhase = '' + mkdir -p $out + mv bin core modules lib $out/ + ''; + + meta = with lib; { + description = "A NixOS like terraform-json generator"; + homepage = "https://terranix.org"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ mrVanDalo ]; + }; + +} + diff --git a/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix new file mode 100644 index 000000000000..ccbe9d9a7ac0 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix @@ -0,0 +1,28 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "tilt"; + /* Do not use "dev" as a version. If you do, Tilt will consider itself + running in development environment and try to serve assets from the + source tree, which is not there once build completes. */ + version = "0.18.10"; + + src = fetchFromGitHub { + owner = "tilt-dev"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-SvvvHGR3UPyV61MaoFB68SaZKUT3ItYOPT1a7AddxlY="; + }; + vendorSha256 = null; + + subPackages = [ "cmd/tilt" ]; + + buildFlagsArray = [ "-ldflags=-X main.version=${version}" ]; + + meta = with lib; { + description = "Local development tool to manage your developer instance when your team deploys to Kubernetes in production"; + homepage = "https://tilt.dev/"; + license = licenses.asl20; + maintainers = with maintainers; [ anton-dessiatov ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix b/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix new file mode 100644 index 000000000000..65826683d5f0 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix @@ -0,0 +1,45 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "velero"; + version = "1.5.4"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "vmware-tanzu"; + repo = "velero"; + sha256 = "sha256-YHBqIM3NV2L13w9WCzldUWmdBMec7ZndzYgGHblS8Dg="; + }; + + buildFlagsArray = '' + -ldflags= + -s -w + -X github.com/vmware-tanzu/velero/pkg/buildinfo.Version=${version} + -X github.com/vmware-tanzu/velero/pkg/buildinfo.GitSHA=456eb19668f8da603756353d9179b59b5a7bfa04 + -X github.com/vmware-tanzu/velero/pkg/buildinfo.GitTreeState=clean + ''; + + vendorSha256 = "sha256-m/zShJeclZ1k8Fr9faK2x1Mpwbwun674iMPJhMw/9Mc="; + + excludedPackages = [ "issue-template-gen" ]; + + doCheck = false; + + nativeBuildInputs = [ installShellFiles ]; + postInstall = '' + $out/bin/velero completion bash > velero.bash + $out/bin/velero completion zsh > velero.zsh + installShellCompletion velero.{bash,zsh} + ''; + + meta = with lib; { + description = + "A utility for managing disaster recovery, specifically for your Kubernetes cluster resources and persistent volumes"; + homepage = "https://velero.io/"; + changelog = + "https://github.com/vmware-tanzu/velero/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = [ maintainers.mbode maintainers.bryanasdev000 ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/cluster/waypoint/default.nix b/nixpkgs/pkgs/applications/networking/cluster/waypoint/default.nix new file mode 100644 index 000000000000..7675dc0de880 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/waypoint/default.nix @@ -0,0 +1,60 @@ +{ lib, buildGoModule, fetchFromGitHub, go-bindata }: + +buildGoModule rec { + pname = "waypoint"; + version = "0.2.4"; + + src = fetchFromGitHub { + owner = "hashicorp"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-6sV2e/m0qVSRWgdvVZ9VxEL/J57nTcTClxHF5X8/8PQ="; + }; + + deleteVendor = true; + vendorSha256 = "sha256-NPE3YHulqllWDGrxQgPmy/KKE7xFPOUorLQNIU8cP50="; + + nativeBuildInputs = [ go-bindata ]; + + # GIT_{COMMIT,DIRTY} filled in blank to prevent trying to run git and ending up blank anyway + buildPhase = '' + runHook preBuild + make bin GIT_DESCRIBE="v${version}" GIT_COMMIT="" GIT_DIRTY="" + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + install -D waypoint $out/bin/waypoint + runHook postInstall + ''; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + # `version` tries to write to ~/.config/waypoint + export HOME="$TMPDIR" + + $out/bin/waypoint --help + $out/bin/waypoint version # | grep "Waypoint v${version}" + runHook postInstallCheck + ''; + + # Binary is static + dontPatchELF = true; + dontPatchShebangs = true; + + meta = with lib; { + homepage = "https://waypointproject.io"; + changelog = "https://github.com/hashicorp/waypoint/blob/v${version}/CHANGELOG.md"; + description = "A tool to build, deploy, and release any application on any platform"; + longDescription = '' + Waypoint allows developers to define their application build, deploy, and + release lifecycle as code, reducing the time to deliver deployments + through a consistent and repeatable workflow. + ''; + license = licenses.mpl20; + maintainers = with maintainers; [ winpat jk ]; + platforms = platforms.linux; + }; +} |