diff --git a/pkgs/by-name/se/seconlay/package.nix b/pkgs/by-name/se/seconlay/package.nix new file mode 100644 index 000000000000..472b30ca6970 --- /dev/null +++ b/pkgs/by-name/se/seconlay/package.nix @@ -0,0 +1,62 @@ +{ + lib, + rustPlatform, + fetchFromGitLab, + pkg-config, + protobuf, + openssl, + zlib, + nix-update-script, + cloud-utils, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "seconlay"; + version = "0-unstable-2026-03-30"; + + src = fetchFromGitLab { + group = "alasca.cloud"; + owner = "scl"; + repo = "scl-management"; + rev = "ba2bff59916fc3597ebec20c6d0405b888a79c44"; + hash = "sha256-tJxWdEK+BpVlBeR5z/MsQGgeOp9yt3o1wtSzjA+gHt4="; + }; + + cargoHash = "sha256-uVccOT0DCHet52Oer3mGzFd/zs9rp4IZCvl5o/JMJgQ="; + + nativeBuildInputs = [ + pkg-config + protobuf + ]; + + buildInputs = [ + openssl + zlib + ]; + + nativeCheckInputs = [ cloud-utils ]; + doCheck = true; + + passthru.updateScript = nix-update-script { + extraArgs = [ "--version=branch" ]; + }; + + meta = { + description = "Minimal IaaS system with strong tenant separation and small TCB"; + longDescription = '' + Seconlay (commonly abbreviated as SCL) is a minimal IaaS system built in Rust with strong tenant separation and small TCB. + It is intended for providing an easy-to-use API to manage a VM-based separation layer underlying to user-facing infrastructure such as tenant-specific Kubernetes clusters. + ''; + homepage = "https://alasca.cloud/projects/seconlay/"; + license = lib.licenses.eupl12; + maintainers = with lib.maintainers; [ + malik + messemar + ]; + mainProgram = "sclctl"; + platforms = [ + "x86_64-linux" + "aarch64-linux" + ]; + }; +})