Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
65 lines
1.4 KiB
Nix
65 lines
1.4 KiB
Nix
{
|
|
lib,
|
|
stdenvNoCC,
|
|
fetchFromGitHub,
|
|
fetchzip,
|
|
johnny-reborn-engine,
|
|
makeWrapper,
|
|
}:
|
|
|
|
let
|
|
sounds = fetchFromGitHub {
|
|
owner = "nivs1978";
|
|
repo = "Johnny-Castaway-Open-Source";
|
|
rev = "be6afefd43a3334acc66fc9d777c162c8bfb9558";
|
|
hash = "sha256-rtZVCn4KbEBVwaSQ4HZhMoDEI5Q9IPj9SZywgAx0MPY=";
|
|
};
|
|
|
|
resources = fetchzip {
|
|
name = "scrantic-source";
|
|
url = "https://archive.org/download/johnny-castaway-screensaver/scrantic-run.zip";
|
|
hash = "sha256-Q9chCYReOQEmkTyIkYo+D+OXYUqxPNOOEEmiFh8yaw4=";
|
|
stripRoot = false;
|
|
};
|
|
in
|
|
|
|
stdenvNoCC.mkDerivation {
|
|
pname = "johnny-reborn";
|
|
inherit (johnny-reborn-engine) version;
|
|
|
|
srcs = [
|
|
sounds
|
|
resources
|
|
];
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
sourceRoot = sounds.name;
|
|
|
|
dontConfigure = true;
|
|
dontBuild = true;
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/share/jc_reborn/data
|
|
cp -t $out/share/jc_reborn/data/ \
|
|
../scrantic-source/RESOURCE.* \
|
|
JCOS/Resources/sound*.wav
|
|
|
|
makeWrapper \
|
|
${johnny-reborn-engine}/bin/jc_reborn \
|
|
$out/bin/jc_reborn \
|
|
--chdir $out/share/jc_reborn
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = {
|
|
description = "Open-source engine for the classic \"Johnny Castaway\" screensaver (ready to use, with resources)";
|
|
license = lib.licenses.unfree;
|
|
maintainers = with lib.maintainers; [ pedrohlc ];
|
|
inherit (johnny-reborn-engine.meta) homepage platforms mainProgram;
|
|
};
|
|
}
|