chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / mi / minivmac / package.nix
bloba143585f5280d1bbb5291f421821d24836952f9b
2   stdenv,
3   lib,
4   fetchFromGitHub,
5   buildPackages,
6   alsa-lib,
7   xorg,
8 }:
10 stdenv.mkDerivation rec {
11   pname = "minivmac-erichelgeson";
12   version = "2024.06.08";
14   src = fetchFromGitHub {
15     owner = "erichelgeson";
16     repo = "minivmac";
17     rev = version;
18     hash = "sha256-iiEE0ioXh3keKUPfAB+YcE1iggGLpxT9N8LSVFDhttE=";
19   };
21   buildInputs = [ xorg.libX11 ];
23   makeFlags = [ "PREFIX=${placeholder "out"}" ];
25   configurePhase = ''
26     ${lib.getExe' buildPackages.stdenv.cc "cc"} setup/tool.c -o setup_t
27     ./setup_t -t lx64 > setup.sh
29     # Patch hardcoded references in setup.sh to cross-aware counterparts
30     substituteInPlace setup.sh --replace 'gcc ' '${stdenv.cc.targetPrefix}cc '
31     substituteInPlace setup.sh --replace 'strip --strip-unneeded' '${stdenv.cc.targetPrefix}strip --strip-unneeded'
33     sh < ./setup.sh
34   '';
36   installPhase = ''
37     install -Dm755 -t $out/bin ./minivmac
38   '';
40   # ensure libasound can be dlopen()'ed
41   postFixup = ''
42     patchelf --add-rpath "${lib.getLib alsa-lib}/lib" $out/bin/minivmac
43   '';
45   meta = with lib; {
46     description = "miniature early Macintosh emulator (fork from erichelgeson)";
47     homepage = "https://github.com/erichelgeson/minivmac";
48     license = licenses.gpl2;
49     maintainers = [ maintainers.flokli ];
50     platforms = platforms.linux;
51     sourceProvenance = [ sourceTypes.fromSource ];
52   };