summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorRok Garbas <rok@garbas.si>2014-01-27 04:18:11 -0800
committerRok Garbas <rok@garbas.si>2014-01-27 04:18:11 -0800
commite6e2459f593cd843cbdaed7941665f857f5b368e (patch)
tree643f246f0503952705452c236e8a398dd5c10874 /pkgs/applications
parentab46db003ca5a05ec93f6686035180a2da96415e (diff)
parentcc33c351b880be5a208de1b84282076a11a965e9 (diff)
downloadnixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.tar
nixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.tar.gz
nixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.tar.bz2
nixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.tar.lz
nixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.tar.xz
nixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.tar.zst
nixpkgs-e6e2459f593cd843cbdaed7941665f857f5b368e.zip
Merge pull request #1581 from offlinehacker/pkgs/docker/add
Add docker
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/virtualization/docker/default.nix50
1 files changed, 50 insertions, 0 deletions
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
new file mode 100644
index 00000000000..b718d89c8c7
--- /dev/null
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, fetchurl, makeWrapper, go, lxc, sqlite, iproute, iptables, lvm2
+, bash}:
+
+stdenv.mkDerivation rec {
+  name = "docker-${version}";
+  version = "0.7.6";
+
+  src = fetchurl {
+    url = "https://github.com/dotcloud/docker/archive/v${version}.tar.gz";
+    sha256 = "0anlzba2vm1fs5nf0dl2svrgj3ddsbl5iyhsm8vfbi3f23vppkfv";
+  };
+
+  phases = ["unpackPhase" "preBuild" "buildPhase" "installPhase"];
+
+  buildInputs = [ makeWrapper go sqlite lxc iproute lvm2 iptables ];
+
+  preBuild = ''
+    patchShebangs ./hack
+  '';
+
+  buildPhase = ''
+    mkdir -p src/github.com/dotcloud
+    ln -sn "../../../" "src/github.com/dotcloud/docker"
+    export GOPATH="$(pwd):$(pwd)/vendor"
+    export DOCKER_GITCOMMIT="bc3b2ec0622f50879ae96f042056b6bd2e0b4fba"
+    export DOCKER_INITPATH="$out/libexec/docker/dockerinit"
+    ./hack/make.sh dynbinary
+  '';
+
+  installPhase = ''
+    install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/bin/docker
+    install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/libexec/docker/dockerinit
+    wrapProgram $out/bin/docker --prefix PATH : "${iproute}/sbin:${lvm2}:sbin:${lxc}/bin:${iptables}/sbin"
+
+    # systemd
+    install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service
+
+    # completion
+    install -Dm644 ./contrib/completion/bash/docker $out/share/bash-completion/completions/docker
+    install -Dm644 ./contrib/completion/zsh/_docker $out/share/zsh/site-functions/_docker
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.docker.io/;
+    description = "An open source project to pack, ship and run any application as a lightweight container";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ offline ];
+    platforms = platforms.linux;
+  };
+}