diff options
author | Ricardo Ardissone <ricardo.ardissone@gmail.com> | 2016-05-19 17:41:38 -0300 |
---|---|---|
committer | Ricardo Ardissone <ricardo.ardissone@gmail.com> | 2016-05-26 15:54:24 -0300 |
commit | 38429f74b2b541647025a715b430ca0d26944965 (patch) | |
tree | 864fe6790426ff6e80eb67c446284d1707a845f7 /pkgs | |
parent | be5b596deb7f619fdc47dc2d39940bed8bf9a44d (diff) | |
download | nixlib-38429f74b2b541647025a715b430ca0d26944965.tar nixlib-38429f74b2b541647025a715b430ca0d26944965.tar.gz nixlib-38429f74b2b541647025a715b430ca0d26944965.tar.bz2 nixlib-38429f74b2b541647025a715b430ca0d26944965.tar.lz nixlib-38429f74b2b541647025a715b430ca0d26944965.tar.xz nixlib-38429f74b2b541647025a715b430ca0d26944965.tar.zst nixlib-38429f74b2b541647025a715b430ca0d26944965.zip |
pcsxr: init at 1.9.94
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/misc/emulators/pcsxr/default.nix | 87 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
2 files changed, 89 insertions, 0 deletions
diff --git a/pkgs/misc/emulators/pcsxr/default.nix b/pkgs/misc/emulators/pcsxr/default.nix new file mode 100644 index 000000000000..74b9932ed832 --- /dev/null +++ b/pkgs/misc/emulators/pcsxr/default.nix @@ -0,0 +1,87 @@ +{ stdenv, fetchurl, autoreconfHook, intltool, pkgconfig, gtk3, SDL2, xorg +, gsettings_desktop_schemas, makeWrapper, libcdio, nasm, ffmpeg, file +, fetchpatch }: + +stdenv.mkDerivation rec { + name = "pcsxr-${version}"; + version = "1.9.94"; + + # codeplex does not support direct downloading + src = fetchurl { + url = "mirror://debian/pool/main/p/pcsxr/pcsxr_${version}.orig.tar.xz"; + sha256 = "0q7nj0z687lmss7sgr93ij6my4dmhkm2nhjvlwx48dn2lxl6ndla"; + }; + + patches = [ + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/01_fix-i386-exec-stack.patch?h=debian/1.9.94-2"; + sha256 = "17497wjxd6b92bj458s2769d9bpp68ydbvmfs9gp51yhnq4zl81x"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/02_disable-ppc-auto-dynarec.patch?h=debian/1.9.94-2"; + sha256 = "0v8n79z034w6cqdrzhgd9fkdpri42mzvkdjm19x4asz94gg2i2kf"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/03_fix-plugin-dir.patch?h=debian/1.9.94-2"; + sha256 = "0vkl0mv6whqaz79kvvvlmlmjpynyq4lh352j3bbxcr0vjqffxvsy"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/04_update-homedir-symlinks.patch?h=debian/1.9.94-2"; + sha256 = "18r6n025ybr8fljfsaqm4ap31wp8838j73lrsffi49fkis60dp4j"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/05_format-security.patch?h=debian/1.9.94-2"; + sha256 = "03m4kfc9bk5669hf7ji1anild08diliapx634f9cigyxh72jcvni"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/06_warnings.patch?h=debian/1.9.94-2"; + sha256 = "0iz3g9ihnhisfgrzma9l74y4lhh57na9h41bmiam1millb796g71"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/07_non-linux-ip-addr.patch?h=debian/1.9.94-2"; + sha256 = "14vb9l0l4nzxcymhjjs4q57nmsncmby9qpdr7c19rly5wavm4k77"; + }) + ( fetchpatch { + url = "https://anonscm.debian.org/cgit/pkg-games/pcsxr.git/plain/debian/patches/08_reproducible.patch?h=debian/1.9.94-2"; + sha256 = "1cx9q59drsk9h6l31097lg4aanaj93ysdz5p88pg9c7wvxk1qz06"; + }) + ]; + + buildInputs = [ + autoreconfHook intltool pkgconfig gtk3 SDL2 xorg.libXv xorg.libXtst + makeWrapper libcdio nasm ffmpeg file + ]; + + dynarecTarget = + if stdenv.isx86_64 then "x86_64" + else if stdenv.isi686 then "x86" + else "no"; #debian patch 2 says ppc doesn't work + + configureFlags = [ + "--enable-opengl" + "--enable-ccdda" + "--enable-libcdio" + "--enable-dynarec=${dynarecTarget}" + ]; + + postInstall = '' + wrapProgram "$out/bin/pcsxr" \ + --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" + mkdir -p "$out/share/doc/${name}" + cp README \ + AUTHORS \ + doc/keys.txt \ + doc/tweaks.txt \ + ChangeLog.df \ + ChangeLog \ + "$out/share/doc/${name}" + ''; + + meta = with stdenv.lib; { + description = "Playstation 1 emulator"; + homepage = http://pcsxr.codeplex.com/; + maintainers = with maintainers; [ rardiol ]; + license = licenses.gpl2Plus; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 302c806413cf..df316679c761 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13686,6 +13686,8 @@ in pbrt = callPackage ../applications/graphics/pbrt { }; + pcsxr = callPackage ../misc/emulators/pcsxr { }; + pcsx2 = callPackage_i686 ../misc/emulators/pcsx2 { }; pencil = callPackage ../applications/graphics/pencil { }; |