diff --git a/pkgs/applications/virtualization/krunvm/default.nix b/pkgs/applications/virtualization/krunvm/default.nix new file mode 100644 index 000000000000..cd2ff0e706f4 --- /dev/null +++ b/pkgs/applications/virtualization/krunvm/default.nix @@ -0,0 +1,42 @@ +{ lib +, stdenv +, rustPlatform +, fetchFromGitHub +, asciidoctor +, libkrun +}: + +stdenv.mkDerivation rec { + pname = "krunvm"; + version = "0.2.1"; + + src = fetchFromGitHub { + owner = "containers"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-rR762L8P+7ebE0u4MVCJoXc5mmqXlDFfSas+lFBMVFQ="; + }; + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + hash = "sha256-3WiXm90XiQHpCbhlkigg/ZATQeDdUKTstN7hwcsKm4o="; + }; + + nativeBuildInputs = with rustPlatform;[ + cargoSetupHook + rust.cargo + rust.rustc + asciidoctor + ]; + + buildInputs = [ libkrun ]; + + makeFlags = [ "PREFIX=${placeholder "out"}" ]; + + meta = with lib; { + description = "A CLI-based utility for creating microVMs from OCI images"; + homepage = "https://github.com/containers/krunvm"; + license = licenses.asl20; + maintainers = with maintainers; [ nickcao ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3827869cbc39..d5571d97707f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7857,6 +7857,8 @@ with pkgs; krunner-pass = libsForQt5.callPackage ../tools/security/krunner-pass { }; + krunvm = callPackage ../applications/virtualization/krunvm { }; + kronometer = libsForQt5.callPackage ../tools/misc/kronometer { }; krop = callPackage ../applications/graphics/krop { };