about summary refs log tree commit diff
path: root/pkgs/applications/virtualization/youki/default.nix
diff options
context:
space:
mode:
authorCandy Cloud <candyc1oud@outlook.com>2023-01-09 01:10:27 +0000
committerCandy Cloud <candyc1oud@outlook.com>2023-01-09 01:10:27 +0000
commit9245a1823677392444c52b8f9cdd83790342d692 (patch)
tree651085581bb313458e28f9618559c9235ef93b4e /pkgs/applications/virtualization/youki/default.nix
parentd87fcbe3cd948f8f1616723d2ed2e05f13ca13a5 (diff)
youki: init at 0.0.4
Diffstat (limited to 'pkgs/applications/virtualization/youki/default.nix')
-rw-r--r--pkgs/applications/virtualization/youki/default.nix48
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/applications/virtualization/youki/default.nix b/pkgs/applications/virtualization/youki/default.nix
new file mode 100644
index 0000000000000..54a88a334f8a3
--- /dev/null
+++ b/pkgs/applications/virtualization/youki/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, installShellFiles
+, dbus
+, libseccomp
+, systemd
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "youki";
+  version = "0.0.4";
+
+  src = fetchFromGitHub {
+    owner = "containers";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-XwapCfu6Me0xSe+qFz9BFRYpQvG+ztb6QyhGejYRPb4=";
+  };
+
+  nativeBuildInputs = [ pkg-config installShellFiles ];
+
+  buildInputs = [ dbus libseccomp systemd ];
+
+  postInstall = ''
+    installShellCompletion --cmd youki \
+      --bash <($out/bin/youki completion -s bash) \
+      --fish <($out/bin/youki completion -s fish) \
+      --zsh <($out/bin/youki completion -s zsh)
+  '';
+
+  cargoBuildFlags = [ "-p" "youki" ];
+  cargoTestFlags = [ "-p" "youki" ];
+
+  cargoSha256 = "sha256-PT1kVo4gQFH9sIprEoAioNvDL/soMHcA2utEiQJPS/0=";
+
+  doCheck = false; # test failed
+
+  meta = with lib; {
+    description = "A container runtime written in Rust";
+    homepage = "https://containers.github.io/youki/";
+    changelog = "https://github.com/containers/youki/releases/tag/v${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ candyc1oud ];
+    platforms = platforms.linux;
+  };
+}