Skip to content

Commit

Permalink
minivmac: init at 2024.06.08 (NixOS#343034)
Browse files Browse the repository at this point in the history
  • Loading branch information
flokli authored Oct 9, 2024
2 parents 236815e + d88ea29 commit 4fa56ac
Showing 1 changed file with 53 additions and 0 deletions.
53 changes: 53 additions & 0 deletions pkgs/by-name/mi/minivmac/package.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
stdenv,
lib,
fetchFromGitHub,
buildPackages,
alsa-lib,
xorg,
}:

stdenv.mkDerivation rec {
pname = "minivmac-erichelgeson";
version = "2024.06.08";

src = fetchFromGitHub {
owner = "erichelgeson";
repo = "minivmac";
rev = version;
hash = "sha256-iiEE0ioXh3keKUPfAB+YcE1iggGLpxT9N8LSVFDhttE=";
};

buildInputs = [ xorg.libX11 ];

makeFlags = [ "PREFIX=${placeholder "out"}" ];

configurePhase = ''
${lib.getExe' buildPackages.stdenv.cc "cc"} setup/tool.c -o setup_t
./setup_t -t lx64 > setup.sh
# Patch hardcoded references in setup.sh to cross-aware counterparts
substituteInPlace setup.sh --replace 'gcc ' '${stdenv.cc.targetPrefix}cc '
substituteInPlace setup.sh --replace 'strip --strip-unneeded' '${stdenv.cc.targetPrefix}strip --strip-unneeded'
sh < ./setup.sh
'';

installPhase = ''
install -Dm755 -t $out/bin ./minivmac
'';

# ensure libasound can be dlopen()'ed
postFixup = ''
patchelf --add-rpath "${lib.getLib alsa-lib}/lib" $out/bin/minivmac
'';

meta = with lib; {
description = "miniature early Macintosh emulator (fork from erichelgeson)";
homepage = "https://github.com/erichelgeson/minivmac";
license = licenses.gpl2;
maintainers = [ maintainers.flokli ];
platforms = platforms.linux;
sourceProvenance = [ sourceTypes.fromSource ];
};
}

0 comments on commit 4fa56ac

Please sign in to comment.