diff --git a/pkgs/applications/virtualization/youki/default.nix b/pkgs/applications/virtualization/youki/default.nix new file mode 100644 index 000000000000..54a88a334f8a --- /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; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0f9a2e89c5d1..f0360d1807be 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -33726,6 +33726,8 @@ with pkgs; youtube-music = callPackage ../applications/audio/youtube-music { }; + youki = callPackage ../applications/virtualization/youki { }; + yt-dlp = with python3Packages; toPythonApplication yt-dlp; yt-dlp-light = with python3Packages; toPythonApplication yt-dlp-light;