about summary refs log tree commit diff
path: root/pkgs/by-name/em
diff options
context:
space:
mode:
authorIvar Larsson <ivar@larsson.me>2023-11-22 21:13:27 -0500
committerEmery Hemingway <ehmry@posteo.net>2023-11-26 16:28:46 +0200
commit2b891a2cb6b5689b0b36cd75cc7387497d933f1e (patch)
treeec1f3968a4509e57d887e5ab0d54188af5c190a7 /pkgs/by-name/em
parent2ff208e85b46c76330fbb7cb5a56553132a1245e (diff)
emulationstation-de: init at 2.2.1
Diffstat (limited to 'pkgs/by-name/em')
-rw-r--r--pkgs/by-name/em/emulationstation-de/001-add-nixpkgs-retroarch-cores.patch18
-rw-r--r--pkgs/by-name/em/emulationstation-de/package.nix59
2 files changed, 77 insertions, 0 deletions
diff --git a/pkgs/by-name/em/emulationstation-de/001-add-nixpkgs-retroarch-cores.patch b/pkgs/by-name/em/emulationstation-de/001-add-nixpkgs-retroarch-cores.patch
new file mode 100644
index 0000000000000..15938826ef80b
--- /dev/null
+++ b/pkgs/by-name/em/emulationstation-de/001-add-nixpkgs-retroarch-cores.patch
@@ -0,0 +1,18 @@
+--- a/resources/systems/unix/es_find_rules.xml	2023-11-22 15:18:15.912747163 -0500
++++ b/resources/systems/unix/es_find_rules.xml	2023-11-22 15:20:38.628250448 -0500
+@@ -45,6 +45,8 @@
+             <entry>/usr/local/lib/libretro</entry>
+             <!-- NetBSD repository -->
+             <entry>/usr/pkg/lib/libretro</entry>
++            <!-- NixOS / Nixpkgs -->
++            <entry>/run/current-system/sw/lib/retroarch/cores</entry>
+         </rule>
+     </core>
+     <emulator name="3DSEN-WINDOWS">
+@@ -1079,4 +1081,4 @@
+             <entry>~/bin/ZEsarUX/zesarux</entry>
+         </rule>
+     </emulator>
+-</ruleList>
+\ No newline at end of file
++</ruleList>
diff --git a/pkgs/by-name/em/emulationstation-de/package.nix b/pkgs/by-name/em/emulationstation-de/package.nix
new file mode 100644
index 0000000000000..1fca35aea1535
--- /dev/null
+++ b/pkgs/by-name/em/emulationstation-de/package.nix
@@ -0,0 +1,59 @@
+{
+  lib,
+  stdenv,
+  cmake,
+  fetchzip,
+  pkg-config,
+  alsa-lib,
+  curl,
+  ffmpeg,
+  freeimage,
+  freetype,
+  libgit2,
+  poppler,
+  pugixml,
+  SDL2
+}:
+
+stdenv.mkDerivation {
+  pname = "emulationstation-de";
+  version = "2.2.1";
+
+  src = fetchzip {
+    url = "https://gitlab.com/es-de/emulationstation-de/-/archive/v2.2.1/emulationstation-de-v2.2.1.tar.gz";
+    hash = "sha256:1kp9p3fndnx4mapgfvy742zwisyf0y5k57xkqkis0kxyibx0z8i6";
+  };
+
+  patches = [ ./001-add-nixpkgs-retroarch-cores.patch ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    alsa-lib
+    curl
+    ffmpeg
+    freeimage
+    freetype
+    libgit2
+    poppler
+    pugixml
+    SDL2
+  ];
+
+  installPhase = ''
+    install -D ../emulationstation $out/bin/emulationstation
+    cp -r ../resources/ $out/bin/resources/
+  '';
+
+  meta = {
+    description = "EmulationStation Desktop Edition is a frontend for browsing and launching games from your multi-platform game collection.";
+    homepage = "https://es-de.org";
+    maintainers = with lib.maintainers; [ ivarmedi ];
+    license = lib.licenses.mit;
+    platforms = lib.platforms.linux;
+    mainProgram = "emulationstation";
+  };
+}