mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-25 15:13:46 +00:00
85 lines
1.8 KiB
Nix
85 lines
1.8 KiB
Nix
|
{ stdenv
|
||
|
, lib
|
||
|
, fetchFromGitHub
|
||
|
, jdk
|
||
|
/*
|
||
|
* jPSXdec needs to be built with no later than JDK8, but
|
||
|
* should be run with the latest to get HiDPI fixes, etc.
|
||
|
*/
|
||
|
, jre ? jdk
|
||
|
, ant
|
||
|
, unoconv
|
||
|
, makeWrapper
|
||
|
, makeDesktopItem
|
||
|
}:
|
||
|
let
|
||
|
pname = "jpsxdec";
|
||
|
version = "1.05";
|
||
|
|
||
|
description = "Cross-platform PlayStation 1 audio and video converter";
|
||
|
|
||
|
desktopItem = makeDesktopItem {
|
||
|
name = pname;
|
||
|
exec = pname;
|
||
|
icon = pname;
|
||
|
comment = description;
|
||
|
desktopName = "jPSXdec";
|
||
|
categories = "AudioVideo;Utility;";
|
||
|
};
|
||
|
in
|
||
|
stdenv.mkDerivation rec {
|
||
|
inherit pname version;
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "m35";
|
||
|
repo = pname;
|
||
|
rev = "v${version}";
|
||
|
sha256 = "0wnfvvcyldf699b08lzlc0gshl7rn09a6q4i7jmr41izlcdszdbz";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [ ant jdk unoconv makeWrapper ];
|
||
|
buildInputs = [ jre ];
|
||
|
|
||
|
patches = [
|
||
|
./0001-jpsxdec-hackfix-build-with-newer-JDKs.patch
|
||
|
];
|
||
|
|
||
|
buildPhase = ''
|
||
|
runHook preBuild
|
||
|
|
||
|
cd jpsxdec
|
||
|
mkdir -p _ant/release/doc/
|
||
|
unoconv -d document -f pdf -o _ant/release/doc/jPSXdec-manual.pdf doc/jPSXdec-manual.odt
|
||
|
|
||
|
ant release
|
||
|
|
||
|
runHook postBuild
|
||
|
'';
|
||
|
|
||
|
installPhase = ''
|
||
|
runHook preInstall
|
||
|
|
||
|
mkdir -p $out/{bin,share/pixmaps}
|
||
|
mv _ant/release $out/jpsxdec
|
||
|
|
||
|
makeWrapper ${jre}/bin/java $out/bin/jpsxdec \
|
||
|
--add-flags "-jar $out/jpsxdec/jpsxdec.jar"
|
||
|
|
||
|
cp ${src}/jpsxdec/src/jpsxdec/gui/icon48.png $out/share/pixmaps/${pname}.png
|
||
|
ln -s ${desktopItem}/share/applications $out/share
|
||
|
|
||
|
runHook postInstall
|
||
|
'';
|
||
|
|
||
|
meta = with lib; {
|
||
|
inherit description;
|
||
|
homepage = "https://jpsxdec.blogspot.com/";
|
||
|
platforms = platforms.all;
|
||
|
license = {
|
||
|
url = "https://raw.githubusercontent.com/m35/jpsxdec/readme/.github/LICENSE.md";
|
||
|
free = true;
|
||
|
};
|
||
|
maintainers = with maintainers; [ zane ];
|
||
|
};
|
||
|
}
|