summary refs log tree commit diff
path: root/pkgs/os-specific/linux/lxc/default.nix
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2012-10-20 12:36:44 +0200
committerPeter Simons <simons@cryp.to>2012-10-20 12:36:44 +0200
commit094cbf9b4d716375ba6bcfa8cd0eda2807332ef8 (patch)
treea3b1c841731b8acee1973d9925ba43e2b03e9a1a /pkgs/os-specific/linux/lxc/default.nix
parent04d13e193e5ac75fd61da06ef6d8c53e7917dd17 (diff)
downloadnixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.tar
nixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.tar.gz
nixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.tar.bz2
nixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.tar.lz
nixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.tar.xz
nixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.tar.zst
nixpkgs-094cbf9b4d716375ba6bcfa8cd0eda2807332ef8.zip
Move lxc from "applications/virtualization" to "os-specific/linux".
Diffstat (limited to 'pkgs/os-specific/linux/lxc/default.nix')
-rw-r--r--pkgs/os-specific/linux/lxc/default.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
new file mode 100644
index 00000000000..be943f5df9e
--- /dev/null
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, libcap, perl, docbook2x, docbook_xml_dtd_45 }:
+
+stdenv.mkDerivation rec {
+  name = "lxc-0.8.0-rc2";
+
+  src = fetchurl {
+    url = "http://lxc.sf.net/download/lxc/${name}.tar.gz";
+    sha256 = "1f0ee0464507d26e494784e841b68c765ecd3abc5976012e226f69d1aa361bef";
+  };
+
+  buildInputs = [ libcap perl docbook2x ];
+
+  patches = [
+   ./dont-run-ldconfig.patch
+   ./fix-documentation-build.patch
+   ./fix-sgml-documentation.patch
+  ];
+
+  preConfigure = "export XML_CATALOG_FILES=${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml";
+
+  configureFlags = "--localstatedir=/var";
+
+  postInstall = ''
+    cd "$out/lib"
+    lib=liblxc.so.?.*
+    ln -s $lib $(echo $lib | sed -re 's/(liblxc[.]so[.].)[.].*/\1/')
+  '';
+
+  meta = {
+    homepage = "http://lxc.sourceforge.net";
+    description = "lightweight virtual system mechanism";
+    license = stdenv.lib.licenses.lgpl21Plus;
+
+    longDescription = ''
+      LXC is the userspace control package for Linux Containers, a
+      lightweight virtual system mechanism sometimes described as
+      "chroot on steroids". LXC builds up from chroot to implement
+      complete virtual systems, adding resource management and isolation
+      mechanisms to Linux’s existing process management infrastructure.
+    '';
+
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.simons ];
+  };
+}