diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4b9f6ea6f289..bb25b9c485b4 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -23194,6 +23194,12 @@ githubId = 178444; name = "Thomas Bereknyei"; }; + tombert = { + email = "thomas@gebert.app"; + github = "tombert"; + githubId = 2027925; + name = "Thomas Gebert"; + }; tomfitzhenry = { email = "tom@tom-fitzhenry.me.uk"; github = "tomfitzhenry"; diff --git a/pkgs/by-name/bi/bigpemu/package.nix b/pkgs/by-name/bi/bigpemu/package.nix new file mode 100644 index 000000000000..57fadfd0ffb5 --- /dev/null +++ b/pkgs/by-name/bi/bigpemu/package.nix @@ -0,0 +1,53 @@ +{ + lib, + stdenv, + fetchurl, + SDL2, + glui, + libGLU, + libGL, + buildFHSEnv, +}: +let + bigpemu-unwrapped = stdenv.mkDerivation rec { + pname = "BigPEmu"; + version = "1.17"; + src = fetchurl { + url = "https://www.richwhitehouse.com/jaguar/builds/BigPEmu_Linux64_v${ + builtins.replaceStrings [ "." ] [ "" ] version + }.tar.gz"; + hash = "sha256-R5f3LD5RcGwdwcZqXGaCSFDyHaJrQ1ghS3kqVvBd38A="; + }; + + installPhase = '' + mkdir -p $out/bin + tar -xvf $src -C $out/bin --strip-components=1 + ''; + + meta = { + description = "Atari Jaguar Emulator (BigPEmu) by Richard Whitehouse"; + homepage = "https://www.richwhitehouse.com/jaguar/index.php"; + license = lib.licenses.unfree; + maintainers = with lib.maintainers; [ + tombert + hughobrien + ]; + platforms = with lib.platforms; [ "x86_64-linux" ]; + }; + }; +in +buildFHSEnv { + name = "bigpemu"; + version = bigpemu-unwrapped.version; + targetPkgs = pkgs: [ + glui + libGL + libGLU + SDL2 + ]; + runScript = "${bigpemu-unwrapped}/bin/bigpemu"; + passthru = { + unwrapped = bigpemu-unwrapped; + updateScript = ./update.sh; + }; +} diff --git a/pkgs/by-name/bi/bigpemu/update.sh b/pkgs/by-name/bi/bigpemu/update.sh new file mode 100755 index 000000000000..35bc2506561e --- /dev/null +++ b/pkgs/by-name/bi/bigpemu/update.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl pup common-updater-scripts +set -eu -o pipefail +page="https://www.richwhitehouse.com/jaguar/index.php?content=download" +extractor='font:contains("Current Version") strong text{}' +lastest_version="$(curl "$page" | pup "$extractor")" +update-source-version \ + --ignore-same-version \ + bigpemu.unwrapped "$lastest_version"