From be38dc44f38b7bc3ee7caa743564d5233339d569 Mon Sep 17 00:00:00 2001 From: Andrey Golovizin Date: Mon, 1 Mar 2021 21:26:27 +0100 Subject: [PATCH] catatonit: init at 0.1.5 Signed-off-by: Andrey Golovizin --- .../virtualization/catatonit/default.nix | 37 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 39 insertions(+) create mode 100644 pkgs/applications/virtualization/catatonit/default.nix diff --git a/pkgs/applications/virtualization/catatonit/default.nix b/pkgs/applications/virtualization/catatonit/default.nix new file mode 100644 index 00000000000..8ecc5f56fe6 --- /dev/null +++ b/pkgs/applications/virtualization/catatonit/default.nix @@ -0,0 +1,37 @@ +{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, glibc }: + +stdenv.mkDerivation rec { + pname = "catatonit"; + version = "0.1.5"; + + src = fetchFromGitHub { + owner = "openSUSE"; + repo = pname; + rev = "v${version}"; + sha256 = "ciJ1MI7jr5P2PgxIykQ+BiwNUO8lQHGt0+U8CNbc5bI="; + }; + + patches = [ + # Fix compilation with musl + (fetchpatch { + url = "https://github.com/openSUSE/catatonit/commit/75014b1c3099245b7d0f44f24d7f6dc4888a45fd.patch"; + sha256 = "sha256-9VMNUT1U90ocjvE7EXYfLxuodDwTXXHYg89qqa5Jq0g="; + }) + ]; + + nativeBuildInputs = [ autoreconfHook ]; + buildInputs = lib.optionals (!stdenv.hostPlatform.isMusl) [ glibc glibc.static ]; + + doInstallCheck = true; + installCheckPhase = '' + readelf -d $out/bin/catatonit | grep 'There is no dynamic section in this file.' + ''; + + meta = with lib; { + description = "A container init that is so simple it's effectively brain-dead"; + homepage = "https://github.com/openSUSE/catatonit"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ erosennin ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cd33fdf584f..fad5af8867c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -197,6 +197,8 @@ in inherit (python3Packages) sphinx; }; + catatonit = callPackage ../applications/virtualization/catatonit { }; + cen64 = callPackage ../misc/emulators/cen64 { }; cereal = callPackage ../development/libraries/cereal { };