diff options
author | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
---|---|---|
committer | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
commit | c4625b175f8200f643fd6e11010932ea44c78433 (patch) | |
tree | bce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops | |
parent | 49f735974dd103039ddc4cb576bb76555164a9e7 (diff) | |
parent | d661aa56a8843e991261510c1bb28fdc2f6975ae (diff) |
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie
git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7
git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops')
12 files changed, 363 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix new file mode 100644 index 000000000000..462c9e615a13 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix @@ -0,0 +1,37 @@ +{ pkgs +, buildPythonPackage +, fetchPypi +, python +, azure-mgmt-common +}: + +buildPythonPackage rec { + version = "0.20.1"; + pname = "azure-mgmt-compute"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "97298fc7f133f1d50a974ed6299151eda494a574b0f7fdf8192a388015c2215a"; + }; + + preConfigure = '' + # Patch to make this package work on requests >= 2.11.x + # CAN BE REMOVED ON NEXT PACKAGE UPDATE + sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/compute/computemanagement.py + ''; + + postInstall = '' + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py + ''; + + propagatedBuildInputs = [ azure-mgmt-common ]; + + meta = with pkgs.lib; { + description = "Microsoft Azure SDK for Python"; + homepage = "https://azure.microsoft.com/en-us/develop/python/"; + license = licenses.asl20; + maintainers = with maintainers; [ olcai ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix new file mode 100644 index 000000000000..fd47f8895fd4 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix @@ -0,0 +1,37 @@ +{ pkgs +, buildPythonPackage +, fetchPypi +, azure-mgmt-common +, python +}: + +buildPythonPackage rec { + version = "0.20.1"; + pname = "azure-mgmt-network"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "10vj22h6nxpw0qpvib5x2g6qs5j8z31142icvh4qk8k40fcrs9hx"; + }; + + preConfigure = '' + # Patch to make this package work on requests >= 2.11.x + # CAN BE REMOVED ON NEXT PACKAGE UPDATE + sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/network/networkresourceprovider.py + ''; + + postInstall = '' + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py + ''; + + propagatedBuildInputs = [ azure-mgmt-common ]; + + meta = with pkgs.lib; { + description = "Microsoft Azure SDK for Python"; + homepage = "https://azure.microsoft.com/en-us/develop/python/"; + license = licenses.asl20; + maintainers = with maintainers; [ olcai ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix new file mode 100644 index 000000000000..aa037b48b4f5 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix @@ -0,0 +1,25 @@ +{ pkgs +, buildPythonPackage +, fetchPypi +, azure-nspkg +}: + +buildPythonPackage rec { + version = "1.0.0"; + pname = "azure-mgmt-nspkg"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "1rq92fj3kvnqkk18596dybw0kvhgscvc6cd8hp1dhy3wrkqnhwmq"; + }; + + propagatedBuildInputs = [ azure-nspkg ]; + + meta = with pkgs.lib; { + description = "Microsoft Azure SDK for Python"; + homepage = "https://azure.microsoft.com/en-us/develop/python/"; + license = licenses.asl20; + maintainers = with maintainers; [ olcai ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix new file mode 100644 index 000000000000..b60e3aee3402 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix @@ -0,0 +1,38 @@ +{ pkgs +, buildPythonPackage +, fetchPypi +, python +, azure-mgmt-common +}: + + +buildPythonPackage rec { + version = "0.20.1"; + pname = "azure-mgmt-resource"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "0slh9qfm5nfacrdm3lid0sr8kwqzgxvrwf27laf9v38kylkfqvml"; + }; + + preConfigure = '' + # Patch to make this package work on requests >= 2.11.x + # CAN BE REMOVED ON NEXT PACKAGE UPDATE + sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/resource/resourcemanagement.py + ''; + + postInstall = '' + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py + ''; + + propagatedBuildInputs = [ azure-mgmt-common ]; + + meta = with pkgs.lib; { + description = "Microsoft Azure SDK for Python"; + homepage = "https://azure.microsoft.com/en-us/develop/python/"; + license = licenses.asl20; + maintainers = with maintainers; [ olcai ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix new file mode 100644 index 000000000000..2e0523bb25cc --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix @@ -0,0 +1,37 @@ +{ pkgs +, buildPythonPackage +, fetchPypi +, python +, azure-mgmt-common +}: + +buildPythonPackage rec { + version = "0.20.0"; + pname = "azure-mgmt-storage"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "16iw7hqhq97vlzfwixarfnirc60l5mz951p57brpcwyylphl3yim"; + }; + + preConfigure = '' + # Patch to make this package work on requests >= 2.11.x + # CAN BE REMOVED ON NEXT PACKAGE UPDATE + sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/storage/storagemanagement.py + ''; + + postInstall = '' + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py + ''; + + propagatedBuildInputs = [ azure-mgmt-common ]; + + meta = with pkgs.lib; { + description = "Microsoft Azure SDK for Python"; + homepage = "https://azure.microsoft.com/en-us/develop/python/"; + license = licenses.asl20; + maintainers = with maintainers; [ olcai ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix new file mode 100644 index 000000000000..6693a7464d43 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix @@ -0,0 +1,35 @@ +{ pkgs +, buildPythonPackage +, fetchPypi +, python +, azure-common +, futures +, dateutil +, requests +, isPy3k +}: + +buildPythonPackage rec { + version = "0.20.3"; + pname = "azure-storage"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "06bmw6k2000kln5jwk5r9bgcalqbyvqirmdh9gq4s6nb4fv3c0jb"; + }; + + propagatedBuildInputs = [ azure-common dateutil requests ] + ++ pkgs.lib.optionals (!isPy3k) [ futures ]; + + postInstall = '' + echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py + ''; + + meta = with pkgs.lib; { + description = "Microsoft Azure SDK for Python"; + homepage = "https://azure.microsoft.com/en-us/develop/python/"; + license = licenses.asl20; + maintainers = with maintainers; [ olcai ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix new file mode 100644 index 000000000000..c761a3a47793 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix @@ -0,0 +1,9 @@ +{ callPackage, fetchurl }: + +callPackage ./generic.nix (rec { + version = "1.7"; + src = fetchurl { + url = "https://nixos.org/releases/nixops/nixops-${version}/nixops-${version}.tar.bz2"; + sha256 = "091c0b5bca57d4aa20be20e826ec161efe3aec9c788fbbcf3806a734a517f0f3"; + }; +}) diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix new file mode 100644 index 000000000000..7da38f83e7fe --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/mattn/go-sqlite3"; + fetch = { + type = "git"; + url = "https://github.com/mattn/go-sqlite3"; + rev = "b4142c444a8941d0d92b0b7103a24df9cd815e42"; + sha256 = "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla"; + }; + } + { + goPackagePath = "github.com/miekg/dns"; + fetch = { + type = "git"; + url = "https://github.com/miekg/dns"; + rev = "75229eecb7af00b2736e93b779a78429dcb19472"; + sha256 = "1vsjy07kkyx11iz4qsihhykac3ddq3ywdgv6bwrv407504f7x6wl"; + }; + } +] diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix new file mode 100644 index 000000000000..59d139d28847 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix @@ -0,0 +1,55 @@ +{ lib, python2Packages, libxslt, docbook_xsl_ns, openssh, cacert, nixopsAzurePackages ? [] +# version args +, src, version +, meta ? {} +}: + +python2Packages.buildPythonApplication { + name = "nixops-${version}"; + inherit version src; + + buildInputs = [ libxslt ]; + + pythonPath = with python2Packages; + [ prettytable + boto + boto3 + hetzner + libcloud + adal + # Go back to sqlite once Python 2.7.13 is released + pysqlite + datadog + digital-ocean + libvirt + typing + ] ++ nixopsAzurePackages; + + checkPhase = + # Ensure, that there are no (python) import errors + '' + SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt \ + HOME=$(pwd) \ + $out/bin/nixops --version + ''; + + postInstall = '' + make -C doc/manual install nixops.1 docbookxsl=${docbook_xsl_ns}/xml/xsl/docbook \ + docdir=$out/share/doc/nixops mandir=$out/share/man + + mkdir -p $out/share/nix/nixops + cp -av "nix/"* $out/share/nix/nixops + + # Add openssh to nixops' PATH. On some platforms, e.g. CentOS and RHEL + # the version of openssh is causing errors when have big networks (40+) + wrapProgram $out/bin/nixops --prefix PATH : "${openssh}/bin" + ''; + + meta = { + homepage = "https://github.com/NixOS/nixops"; + description = "NixOS cloud provisioning and deployment tool"; + maintainers = with lib.maintainers; [ aminechikhaoui eelco rob domenkozar ]; + platforms = lib.platforms.unix; + license = lib.licenses.lgpl3; + } // meta; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix new file mode 100644 index 000000000000..cf633a65ca53 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix @@ -0,0 +1,25 @@ +{ lib +, buildGoPackage +, fetchFromGitHub }: + +buildGoPackage rec { + pname = "nixops-dns"; + version = "1.0"; + + goDeps = ./deps.nix; + goPackagePath = "github.com/kamilchm/nixops-dns"; + + src = fetchFromGitHub { + owner = "kamilchm"; + repo = "nixops-dns"; + rev = "v${version}"; + sha256 = "1fyqwk2knrv40zpf71a56bjyaycr3p6fzrqq7gaan056ydy83cai"; + }; + + meta = with lib; { + homepage = "https://github.com/kamilchm/nixops-dns/"; + description = "DNS server for resolving NixOps machines"; + license = licenses.mit; + maintainers = with maintainers; [ kamilchm sorki ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix new file mode 100644 index 000000000000..dc0c733ca7b1 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix @@ -0,0 +1,32 @@ +{ callPackage, newScope, pkgs, fetchurl }: + +callPackage ./generic.nix (rec { + version = "1.6.1"; + src = fetchurl { + url = "https://nixos.org/releases/nixops/nixops-${version}/nixops-${version}.tar.bz2"; + sha256 = "0lfx5fhyg3z6725ydsk0ibg5qqzp5s0x9nbdww02k8s307axiah3"; + }; + nixopsAzurePackages = with python2Packages; [ + azure-storage + azure-mgmt-compute + azure-mgmt-network + azure-mgmt-resource + azure-mgmt-storage + ]; + # nixops is incompatible with the most recent versions of listed + # azure-mgmt-* packages, therefore we are pinning them to + # package-private versions, so that they don't get trampled by + # updates. + # see + # https://github.com/NixOS/nixops/issues/1065 + python2Packages = pkgs.python2Packages.override { + overrides = (self: super: let callPackage = newScope self; in { + azure-mgmt-compute = callPackage ./azure-mgmt-compute { }; + azure-mgmt-network = callPackage ./azure-mgmt-network { }; + azure-mgmt-nspkg = callPackage ./azure-mgmt-nspkg { }; + azure-mgmt-resource = callPackage ./azure-mgmt-resource { }; + azure-mgmt-storage = callPackage ./azure-mgmt-storage { }; + azure-storage = callPackage ./azure-storage { }; + }); + }; +}) diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix new file mode 100644 index 000000000000..94975807dea6 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix @@ -0,0 +1,13 @@ +{ callPackage, fetchurl }: + +# To upgrade pick the hydra job of the nixops revision that you want to upgrade +# to from: https://hydra.nixos.org/job/nixops/master/tarball +# Then copy the URL to the tarball. + +callPackage ./generic.nix (rec { + version = "1.7pre2764_932bf43"; + src = fetchurl { + url = "https://hydra.nixos.org/build/92372343/download/2/nixops-${version}.tar.bz2"; + sha256 = "f35bf81bf2805473ea54248d0ee92d163d00a1992f3f75d17e8cf430db1f9919"; + }; +}) |