about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--maintainers/maintainer-list.nix5
-rw-r--r--pkgs/tools/virtualization/distrobuilder/default.nix36
-rw-r--r--pkgs/tools/virtualization/distrobuilder/deps.nix67
-rw-r--r--pkgs/top-level/all-packages.nix2
4 files changed, 110 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 0ff1d9efb571..b60d5643434c 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -2378,6 +2378,11 @@
     github = "meditans";
     name = "Carlo Nucera";
   };
+  megheaiulian  = {
+    email = "iulian.meghea@gmail.com";
+    github = "megheaiulian";
+    name = "Meghea Iulian";
+  };
   mehandes = {
     email = "niewskici@gmail.com";
     github = "mehandes";
diff --git a/pkgs/tools/virtualization/distrobuilder/default.nix b/pkgs/tools/virtualization/distrobuilder/default.nix
new file mode 100644
index 000000000000..55a8352fe77a
--- /dev/null
+++ b/pkgs/tools/virtualization/distrobuilder/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, lib, pkgconfig, buildGoPackage, fetchFromGitHub
+, makeWrapper, coreutils, gnupg, gnutar, squashfsTools}:
+
+buildGoPackage rec {
+  name = "distrobuilder-${version}";
+  version = "2018_04_28";
+  rev = "406fd5fe7dec4a969ec08bdf799c8ae483d37489";
+
+  goPackagePath = "github.com/lxc/distrobuilder";
+
+  src = fetchFromGitHub {
+    inherit rev;
+    owner = "lxc";
+    repo = "distrobuilder";
+    sha256 = "11bd600g36pf89vza9jl7fp7cjy5h67nfvhxlnwghb3z40pq9lnc";
+  };
+
+  goDeps = ./deps.nix;
+
+  postInstall = ''
+    wrapProgram $bin/bin/distrobuilder --prefix PATH ":" ${stdenv.lib.makeBinPath [
+      coreutils gnupg gnutar squashfsTools
+    ]}
+  '';
+
+  nativeBuildInputs = [ pkgconfig makeWrapper ];
+
+  meta = with stdenv.lib; {
+    description = "System container image builder for LXC and LXD";
+    homepage = "https://github.com/lxc/distrobuilder";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ megheaiulian ];
+    platforms = platforms.linux;
+  };
+}
+
diff --git a/pkgs/tools/virtualization/distrobuilder/deps.nix b/pkgs/tools/virtualization/distrobuilder/deps.nix
new file mode 100644
index 000000000000..56ff3c0cc12c
--- /dev/null
+++ b/pkgs/tools/virtualization/distrobuilder/deps.nix
@@ -0,0 +1,67 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+[
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "21ab95fa12b9bdd8fecf5fa3586aad941cc98785";
+      sha256 = "1ygg6cr84461d6k3nzbja0dxhcgf5zvry2w10f6i7291ghrcwhyy";
+    };
+  }
+  {
+    goPackagePath = "github.com/lxc/lxd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lxc/lxd";
+      rev = "a81aac803bc22dcb14982b80dce005444e2b22f1";
+      sha256 = "1pjwgh6551mjzkdzmvxx065sxxn8ixb3vdq2i6g1pyb56h5hnayi";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "816c9085562cd7ee03e7f8188a1cfd942858cded";
+      sha256 = "1ws5crb7c70wdicavl6qr4g03nn6m92zd6wwp9n2ygz5c8rmxh8k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev = "ef82de70bb3f60c65fb8eebacbb2d122ef517385";
+      sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "583c0c0531f06d5278b7d917446061adc344b5cd";
+      sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/flosch/pongo2.v3";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/flosch/pongo2.v3";
+      rev = "5e81b817a0c48c1c57cdf1a9056cf76bdee02ca9";
+      sha256 = "0fd7d79644zmcirsb1gvhmh0l5vb5nyxmkzkvqpmzzcg6yfczph8";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183";
+      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+    };
+  }
+]
+
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 01a60be87166..c04fb6bf6d70 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1133,6 +1133,8 @@ with pkgs;
 
   dislocker = callPackage ../tools/filesystems/dislocker { };
 
+  distrobuilder = callPackage ../tools/virtualization/distrobuilder { };
+
   ditaa = callPackage ../tools/graphics/ditaa { };
 
   dino = callPackage ../applications/networking/instant-messengers/dino { };