diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/misc/johnny-reborn')
-rw-r--r-- | nixpkgs/pkgs/applications/misc/johnny-reborn/default.nix | 38 | ||||
-rw-r--r-- | nixpkgs/pkgs/applications/misc/johnny-reborn/with-data.nix | 61 |
2 files changed, 99 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/misc/johnny-reborn/default.nix b/nixpkgs/pkgs/applications/misc/johnny-reborn/default.nix new file mode 100644 index 000000000000..5a512b0466e7 --- /dev/null +++ b/nixpkgs/pkgs/applications/misc/johnny-reborn/default.nix @@ -0,0 +1,38 @@ +{ lib +, stdenv +, fetchFromGitHub +, SDL2 +}: + +stdenv.mkDerivation { + pname = "johnny-reborn-engine"; + version = "unstable-2020-12-06"; + + src = fetchFromGitHub { + owner = "jno6809"; + repo = "jc_reborn"; + rev = "524a5803e4fa65f840379c781f40ce39a927032e"; + hash = "sha256-YKAOCgdRnvNMzL6LJVXN0pLvjyJk4Zv/RCqGtDPFR90="; + }; + + makefile = "Makefile.linux"; + + buildInputs = [ SDL2 ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp jc_reborn $out/ + + runHook postInstall + ''; + + meta = { + description = "An open-source engine for the classic \"Johnny Castaway\" screensaver (engine only)"; + homepage = "https://github.com/jno6809/jc_reborn"; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ pedrohlc ]; + inherit (SDL2.meta) platforms; + }; +} diff --git a/nixpkgs/pkgs/applications/misc/johnny-reborn/with-data.nix b/nixpkgs/pkgs/applications/misc/johnny-reborn/with-data.nix new file mode 100644 index 000000000000..04300524665e --- /dev/null +++ b/nixpkgs/pkgs/applications/misc/johnny-reborn/with-data.nix @@ -0,0 +1,61 @@ +{ 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 + cp -t $out/ \ + ../scrantic-source/RESOURCE.* \ + JCOS/Resources/sound*.wav + + makeWrapper \ + ${johnny-reborn-engine}/jc_reborn \ + $out/jc_reborn \ + --chdir $out + + runHook postInstall + ''; + + meta = { + description = "An 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; + }; +} |