diff options
author | OPNA2608 <christoph.neidahl@gmail.com> | 2023-08-11 14:02:05 +0200 |
---|---|---|
committer | OPNA2608 <christoph.neidahl@gmail.com> | 2023-08-11 14:02:05 +0200 |
commit | d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2 (patch) | |
tree | f0382aa12a55d10dc03e10be0a7767cf0e4f5445 /pkgs/applications/emulators/nuked-md | |
parent | bb9707ef2ea4a5b749b362d5cf81ada3ded2c53f (diff) | |
download | nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.tar nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.tar.gz nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.tar.bz2 nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.tar.lz nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.tar.xz nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.tar.zst nixpkgs-d0eee4a5a72fc2a1c2a4fa3589e06a5a554da6b2.zip |
nuked-md: init at 1.2
Diffstat (limited to 'pkgs/applications/emulators/nuked-md')
-rw-r--r-- | pkgs/applications/emulators/nuked-md/default.nix | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/pkgs/applications/emulators/nuked-md/default.nix b/pkgs/applications/emulators/nuked-md/default.nix new file mode 100644 index 00000000000..883d62b8983 --- /dev/null +++ b/pkgs/applications/emulators/nuked-md/default.nix @@ -0,0 +1,72 @@ +{ stdenv +, lib +, fetchFromGitHub +, gitUpdater +, cmake +, SDL2 +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "nuked-md"; + version = "1.2"; + + src = fetchFromGitHub { + owner = "nukeykt"; + repo = "Nuked-MD"; + rev = "v${finalAttrs.version}"; + hash = "sha256-Pe+TSu9FBUhxtACq+6jMbrUxiwKLOJgQbEcmUrcrjMs="; + }; + + # Interesting detail about our SDL2 packaging: + # Because we build it with the configure script instead of CMake, we ship sdl2-config.cmake instead of SDL2Config.cmake + # The former doesn't set SDL2_FOUND while the latter does (like CMake config scripts should), which causes this issue: + # + # CMake Error at CMakeLists.txt:5 (find_package): + # Found package configuration file: + # + # <SDL2.dev>/lib/cmake/SDL2/sdl2-config.cmake + # + # but it set SDL2_FOUND to FALSE so package "SDL2" is considered to be NOT + # FOUND. + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace 'SDL2 REQUIRED' 'SDL2' + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + ]; + + buildInputs = [ + SDL2 + ]; + + installPhase = '' + runHook preInstall + + install -Dm755 Nuked-MD $out/bin/Nuked-MD + + runHook postInstall + ''; + + passthru = { + updateScript = gitUpdater { + rev-prefix = "v"; + }; + }; + + meta = with lib; { + description = "Cycle accurate Mega Drive emulator"; + longDescription = '' + Cycle accurate Mega Drive core. The goal of this project is to emulate Sega Mega Drive chipset as accurately as + possible using decapped chips photos. + ''; + homepage = "https://github.com/nukeykt/Nuked-MD"; + license = licenses.gpl2Plus; + mainProgram = "Nuked-MD"; + maintainers = with maintainers; [ OPNA2608 ]; + platforms = platforms.all; + }; +}) |