mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-14 01:33:10 +00:00
571c71e6f7
We are migrating packages that meet below requirements: 1. using `callPackage` 2. called path is a directory 3. overriding set is empty (`{ }`) 4. not containing path expressions other than relative path (to makenixpkgs-vet happy) 5. not referenced by nix files outside of the directory, other than`pkgs/top-level/all-packages.nix` 6. not referencing nix files outside of the directory 7. not referencing `default.nix` (since it's changed to `package.nix`) 8. `outPath` doesn't change after migration The tool is here: https://github.com/Aleksanaa/by-name-migrate.
54 lines
1.7 KiB
Nix
54 lines
1.7 KiB
Nix
{ lib, stdenv, fetchFromGitHub, desktop-file-utils, libpng
|
|
, pkg-config, SDL, freetype, zlib }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "caprice32";
|
|
version = "4.6.0";
|
|
# NOTE: When bumping version beyond 4.6.0, you likely need to remove
|
|
# string.patch below. The fix of this patch has already been
|
|
# done upstream but is not yet part of a release
|
|
|
|
src = fetchFromGitHub {
|
|
repo = "caprice32";
|
|
rev = "v${version}";
|
|
owner = "ColinPitrat";
|
|
sha256 = "0hng5krwgc1h9bz1xlkp2hwnvas965nd7sb3z9mb2m6x9ghxlacz";
|
|
};
|
|
|
|
nativeBuildInputs = [ desktop-file-utils pkg-config ];
|
|
buildInputs = [ libpng SDL freetype zlib ];
|
|
|
|
patches = [ ./string.patch ];
|
|
|
|
makeFlags = [
|
|
"APP_PATH=${placeholder "out"}/share/caprice32"
|
|
"RELEASE=1"
|
|
"DESTDIR=${placeholder "out"}"
|
|
"prefix=/"
|
|
];
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/share/icons/
|
|
mv $out/share/caprice32/resources/freedesktop/caprice32.png $out/share/icons/
|
|
mv $out/share/caprice32/resources/freedesktop/emulators.png $out/share/icons/
|
|
|
|
desktop-file-install --dir $out/share/applications \
|
|
$out/share/caprice32/resources/freedesktop/caprice32.desktop
|
|
|
|
desktop-file-install --dir $out/share/desktop-directories \
|
|
$out/share/caprice32/resources/freedesktop/Emulators.directory
|
|
|
|
install -Dm644 $out/share/caprice32/resources/freedesktop/caprice32.menu -t $out/etc/xdg/menus/applications-merged/
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Complete emulation of CPC464, CPC664 and CPC6128";
|
|
homepage = "https://github.com/ColinPitrat/caprice32";
|
|
license = licenses.gpl2;
|
|
maintainers = [ ];
|
|
platforms = platforms.linux;
|
|
mainProgram = "cap32";
|
|
};
|
|
}
|