Merge master into staging-next

authored by github-actions[bot] and committed by GitHub 0f22335f 9b62c850

+866 -721
+5
maintainers/maintainer-list.nix
··· 14631 github = "pennae"; 14632 githubId = 82953136; 14633 }; 14634 periklis = { 14635 email = "theopompos@gmail.com"; 14636 github = "periklis";
··· 14631 github = "pennae"; 14632 githubId = 82953136; 14633 }; 14634 + peret = { 14635 + name = "Peter Retzlaff"; 14636 + github = "peret"; 14637 + githubId = 617977; 14638 + }; 14639 periklis = { 14640 email = "theopompos@gmail.com"; 14641 github = "periklis";
+8 -3
nixos/modules/services/games/archisteamfarm.nix
··· 20 mkBot = n: c: 21 format.generate "${n}.json" (c.settings // { 22 SteamLogin = if c.username == "" then n else c.username; 23 SteamPassword = c.passwordFile; 24 # sets the password format to file (https://github.com/JustArchiNET/ArchiSteamFarm/wiki/Security#file) 25 PasswordFormat = 4; 26 - Enabled = c.enabled; 27 }); 28 in 29 { ··· 127 default = ""; 128 }; 129 passwordFile = lib.mkOption { 130 - type = lib.types.path; 131 - description = lib.mdDoc "Path to a file containing the password. The file must be readable by the `archisteamfarm` user/group."; 132 }; 133 enabled = lib.mkOption { 134 type = lib.types.bool;
··· 20 mkBot = n: c: 21 format.generate "${n}.json" (c.settings // { 22 SteamLogin = if c.username == "" then n else c.username; 23 + Enabled = c.enabled; 24 + } // lib.optionalAttrs (c.passwordFile != null) { 25 SteamPassword = c.passwordFile; 26 # sets the password format to file (https://github.com/JustArchiNET/ArchiSteamFarm/wiki/Security#file) 27 PasswordFormat = 4; 28 }); 29 in 30 { ··· 128 default = ""; 129 }; 130 passwordFile = lib.mkOption { 131 + type = with lib.types; nullOr path; 132 + default = null; 133 + description = lib.mdDoc '' 134 + Path to a file containing the password. The file must be readable by the `archisteamfarm` user/group. 135 + Omit or set to null to provide the password a different way, such as through the web-ui. 136 + ''; 137 }; 138 enabled = lib.mkOption { 139 type = lib.types.bool;
+1
nixos/tests/all-tests.nix
··· 934 upnp.nftables = handleTest ./upnp.nix { useNftables = true; }; 935 uptermd = handleTest ./uptermd.nix {}; 936 uptime-kuma = handleTest ./uptime-kuma.nix {}; 937 usbguard = handleTest ./usbguard.nix {}; 938 user-activation-scripts = handleTest ./user-activation-scripts.nix {}; 939 user-expiry = runTest ./user-expiry.nix;
··· 934 upnp.nftables = handleTest ./upnp.nix { useNftables = true; }; 935 uptermd = handleTest ./uptermd.nix {}; 936 uptime-kuma = handleTest ./uptime-kuma.nix {}; 937 + urn-timer = handleTest ./urn-timer.nix {}; 938 usbguard = handleTest ./usbguard.nix {}; 939 user-activation-scripts = handleTest ./user-activation-scripts.nix {}; 940 user-expiry = runTest ./user-expiry.nix;
+26
nixos/tests/urn-timer.nix
···
··· 1 + import ./make-test-python.nix ({ pkgs, ... }: { 2 + name = "urn-timer"; 3 + meta = with pkgs.lib.maintainers; { 4 + maintainers = [ fgaz ]; 5 + }; 6 + 7 + nodes.machine = { config, pkgs, ... }: { 8 + imports = [ 9 + ./common/x11.nix 10 + ]; 11 + 12 + services.xserver.enable = true; 13 + environment.systemPackages = [ pkgs.urn-timer ]; 14 + }; 15 + 16 + enableOCR = true; 17 + 18 + testScript = 19 + '' 20 + machine.wait_for_x() 21 + machine.execute("urn-gtk ${pkgs.urn-timer.src}/splits_examples/sotn.json >&2 &") 22 + machine.wait_for_window("urn") 23 + machine.wait_for_text(r"(Mist|Bat|Reverse|Dracula)") 24 + machine.screenshot("screen") 25 + ''; 26 + })
+12 -12
pkgs/applications/editors/vscode/extensions/default.nix
··· 3850 mktplcRef = { 3851 name = "vscode-gradle"; 3852 publisher = "vscjava"; 3853 - version = "3.12.6"; 3854 - sha256 = "sha256-j4JyhNGsRlJmS8Wj38gLpC1gXVvdPx10cgzP8dXmmNo="; 3855 }; 3856 3857 meta = { ··· 3868 mktplcRef = { 3869 name = "vscode-java-debug"; 3870 publisher = "vscjava"; 3871 - version = "0.49.2023032407"; 3872 - sha256 = "sha256-ZxJ6BM3rt98HPSyL0hDiyCGIBS7YtF/OuzlTvw7Bp1w="; 3873 }; 3874 meta = { 3875 license = lib.licenses.mit; ··· 3880 mktplcRef = { 3881 name = "vscode-java-dependency"; 3882 publisher = "vscjava"; 3883 - version = "0.21.2023032400"; 3884 - sha256 = "sha256-lG04Yu8exMcMvupqasUrbZS4CkSggQeJKtkm9iyKL5U="; 3885 }; 3886 meta = { 3887 license = lib.licenses.mit; ··· 3892 mktplcRef = { 3893 name = "vscode-java-test"; 3894 publisher = "vscjava"; 3895 - version = "0.38.2023032402"; 3896 - sha256 = "sha256-4WKsw+iuONaGQRMNN2TGd3zIYonHgOzvNleVhCyYFes="; 3897 }; 3898 meta = { 3899 license = lib.licenses.mit; ··· 3904 mktplcRef = { 3905 name = "vscode-maven"; 3906 publisher = "vscjava"; 3907 - version = "0.41.2023032403"; 3908 - sha256 = "sha256-VeN4q6pEaLPQVYleLCDkDCv2Gr8QdHVPjpwSuo3mBuE="; 3909 }; 3910 meta = { 3911 license = lib.licenses.mit; ··· 3916 mktplcRef = { 3917 name = "vscode-spring-initializr"; 3918 publisher = "vscjava"; 3919 - version = "0.11.2023031603"; 3920 - sha256 = "sha256-MSyVLSjaiH+FaeGn/5Y+IWRJmNpAx3UPGpY4VmsiCD8="; 3921 }; 3922 meta = { 3923 license = lib.licenses.mit;
··· 3850 mktplcRef = { 3851 name = "vscode-gradle"; 3852 publisher = "vscjava"; 3853 + version = "3.13.2024011802"; 3854 + sha256 = "sha256-TCYGL2GZCb1UFvJEoACPHg+DxTmDu0E8lvyNiy95bRw="; 3855 }; 3856 3857 meta = { ··· 3868 mktplcRef = { 3869 name = "vscode-java-debug"; 3870 publisher = "vscjava"; 3871 + version = "0.55.2023121302"; 3872 + sha256 = "sha256-8kwV5LsAoad+16/PAVFqF5Nh6TbrLezuRS+buh/wFFo="; 3873 }; 3874 meta = { 3875 license = lib.licenses.mit; ··· 3880 mktplcRef = { 3881 name = "vscode-java-dependency"; 3882 publisher = "vscjava"; 3883 + version = "0.23.2024010506"; 3884 + sha256 = "sha256-kP5NTj1gGSNRiiT6cgBLsgUhBmBEULQGm7bqebRH+/w="; 3885 }; 3886 meta = { 3887 license = lib.licenses.mit; ··· 3892 mktplcRef = { 3893 name = "vscode-java-test"; 3894 publisher = "vscjava"; 3895 + version = "0.40.2024011806"; 3896 + sha256 = "sha256-ynl+94g34UdVFpl+q1XOFOLfNsz/HMOWeudL8VNG2bo="; 3897 }; 3898 meta = { 3899 license = lib.licenses.mit; ··· 3904 mktplcRef = { 3905 name = "vscode-maven"; 3906 publisher = "vscjava"; 3907 + version = "0.43.2024011905"; 3908 + sha256 = "sha256-75pttt0nCuZNP+1e9lmsAqLSDHdca3o+K1E5h0Y9u0I="; 3909 }; 3910 meta = { 3911 license = lib.licenses.mit; ··· 3916 mktplcRef = { 3917 name = "vscode-spring-initializr"; 3918 publisher = "vscjava"; 3919 + version = "0.11.2023070103"; 3920 + sha256 = "sha256-EwUwMCaaW9vhrW3wl0Q7T25Ysm0c35ZNOkJ+mnRXA8Y="; 3921 }; 3922 meta = { 3923 license = lib.licenses.mit;
-18
pkgs/applications/emulators/nestopia/build-fix.patch
··· 1 - diff -wbBur rdanbrook-nestopia-f1dde9b/Makefile rdanbrook-nestopia-f1dde9b.my/Makefile 2 - --- rdanbrook-nestopia-f1dde9b/Makefile 2013-01-20 20:10:25.000000000 +0400 3 - +++ rdanbrook-nestopia-f1dde9b.my/Makefile 2013-01-21 15:18:54.727577673 +0400 4 - @@ -197,11 +197,11 @@ 5 - install -m 0644 NstDatabase.xml $(DATADIR) 6 - install -m 0644 source/unix/icons/*.png $(DATADIR)/icons 7 - install -m 0644 source/unix/icons/*.svg $(DATADIR)/icons 8 - - install -m 0644 source/unix/icons/nestopia.svg $(PREFIX)/share/pixmaps 9 - - xdg-desktop-menu install --novendor $(DATADIR)/nestopia.desktop 10 - + install -m 0644 source/unix/icons/nestopia.svg $(PREFIX)/share/pixmaps/nestopia.svg 11 - + install -Dm0644 $(DATADIR)/nestopia.desktop $(PREFIX)/share/applications/nestopia.desktop 12 - 13 - uninstall: 14 - - xdg-desktop-menu uninstall $(DATADIR)/nestopia.desktop 15 - + rm $(PREFIX)/share/applications/nestopia.desktop 16 - rm $(PREFIX)/share/pixmaps/nestopia.svg 17 - rm $(BINDIR)/$(BIN) 18 - rm -rf $(DATADIR)
···
-73
pkgs/applications/emulators/nestopia/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, pkg-config, SDL2, alsa-lib, gtk3 2 - , makeWrapper, libGLU, libGL, libarchive, libao, unzip, xdg-utils 3 - , libepoxy, gdk-pixbuf, gnome, wrapGAppsHook 4 - }: 5 - 6 - stdenv.mkDerivation rec { 7 - version = "1.47"; 8 - pname = "nestopia"; 9 - 10 - src = fetchFromGitHub { 11 - owner = "rdanbrook"; 12 - repo = "nestopia"; 13 - rev = version; 14 - sha256 = "0frr0gvjh5mxzdhj0ii3sh671slgnzlm8naqlc4h87rx4p4sz2y2"; 15 - }; 16 - 17 - # nondeterministic failures when creating directories 18 - enableParallelBuilding = false; 19 - 20 - hardeningDisable = [ "format" ]; 21 - 22 - buildInputs = [ 23 - SDL2 24 - alsa-lib 25 - libepoxy 26 - gtk3 27 - gdk-pixbuf 28 - libGLU libGL 29 - libarchive 30 - libao 31 - xdg-utils 32 - gnome.adwaita-icon-theme 33 - ]; 34 - 35 - nativeBuildInputs = [ 36 - pkg-config 37 - makeWrapper 38 - wrapGAppsHook 39 - unzip 40 - ]; 41 - 42 - installPhase = '' 43 - mkdir -p $out/{bin,share/nestopia} 44 - make install PREFIX=$out 45 - ''; 46 - 47 - preFixup = '' 48 - for f in $out/bin/*; do 49 - wrapProgram $f \ 50 - --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share" 51 - done 52 - ''; 53 - 54 - patches = [ 55 - #(fetchpatch { 56 - # url = "https://github.com/rdanbrook/nestopia/commit/f4bc74ac4954328b25e961e7afb7337377084079.patch"; 57 - # name = "gcc6.patch"; 58 - # sha256 = "1jy0c85xsfk9hrv5a6v0kk48d94864qb62yyni9fp93kyl33y2p4"; 59 - #}) 60 - ./gcc6.patch 61 - ./build-fix.patch 62 - ]; 63 - 64 - meta = { 65 - homepage = "http://0ldsk00l.ca/nestopia/"; 66 - description = "NES emulator with a focus on accuracy"; 67 - license = lib.licenses.gpl2; 68 - platforms = lib.platforms.linux; 69 - maintainers = with lib.maintainers; [ MP2E ]; 70 - mainProgram = "nestopia"; 71 - }; 72 - } 73 -
···
-92
pkgs/applications/emulators/nestopia/gcc6.patch
··· 1 - From f4bc74ac4954328b25e961e7afb7337377084079 Mon Sep 17 00:00:00 2001 2 - From: David Seifert <soap@gentoo.org> 3 - Date: Sat, 31 Dec 2016 18:21:18 +0200 4 - Subject: [PATCH] Fix compiling in C++14 mode 5 - 6 - * Left shifting a negative signed is undefined behaviour 7 - * Fix incorrect printf() specifiers found with -Wformat 8 - --- 9 - source/core/NstCore.hpp | 4 ++-- 10 - source/unix/gtkui/gtkui.cpp | 2 +- 11 - source/unix/gtkui/gtkui.h | 1 - 12 - source/unix/gtkui/gtkui_cheats.cpp | 8 ++++---- 13 - source/unix/video.cpp | 2 +- 14 - 5 files changed, 8 insertions(+), 9 deletions(-) 15 - 16 - diff --git a/source/core/NstCore.hpp b/source/core/NstCore.hpp 17 - index 50e20f6..420cc4a 100644 18 - --- a/source/core/NstCore.hpp 19 - +++ b/source/core/NstCore.hpp 20 - @@ -279,14 +279,14 @@ namespace Nes 21 - template<typename T> 22 - inline long signed_shl(T v,uint c) 23 - { 24 - - enum {NATIVE = T(-7) << 1 == -14}; 25 - + enum {NATIVE = -(T(7) << 1) == -14}; 26 - return Helper::ShiftSigned<T,NATIVE>::Left( v, c ); 27 - } 28 - 29 - template<typename T> 30 - inline long signed_shr(T v,uint c) 31 - { 32 - - enum {NATIVE = T(-7) >> 1 == -4 || T(-7) >> 1 == -3}; 33 - + enum {NATIVE = -(T(7) >> 1) == -4 || -(T(7) >> 1) == -3}; 34 - return Helper::ShiftSigned<T,NATIVE>::Right( v, c ); 35 - } 36 - 37 - diff --git a/source/unix/gtkui/gtkui.cpp b/source/unix/gtkui/gtkui.cpp 38 - index 3cfeeab..d4a5e2d 100644 39 - --- a/source/unix/gtkui/gtkui.cpp 40 - +++ b/source/unix/gtkui/gtkui.cpp 41 - @@ -438,7 +438,7 @@ void gtkui_message(const char* message) { 42 - GTK_DIALOG_DESTROY_WITH_PARENT, 43 - GTK_MESSAGE_INFO, 44 - GTK_BUTTONS_OK, 45 - - message); 46 - + "%s", message); 47 - gtk_dialog_run(GTK_DIALOG(messagewindow)); 48 - gtk_widget_destroy(messagewindow); 49 - } 50 - diff --git a/source/unix/gtkui/gtkui_cheats.cpp b/source/unix/gtkui/gtkui_cheats.cpp 51 - index afc01b0..e7b691a 100644 52 - --- a/source/unix/gtkui/gtkui_cheats.cpp 53 - +++ b/source/unix/gtkui/gtkui_cheats.cpp 54 - @@ -373,7 +373,7 @@ void gtkui_cheats_fill_tree(char *filename) { 55 - else if (node.GetChild(L"address")) { // Raw 56 - char rawbuf[11]; 57 - snprintf(rawbuf, sizeof(rawbuf), 58 - - "%04x %02x %02x", 59 - + "%04lu %02lu %02lu", 60 - node.GetChild(L"address").GetUnsignedValue(), 61 - node.GetChild(L"value").GetUnsignedValue(), 62 - node.GetChild(L"compare").GetUnsignedValue()); 63 - @@ -545,13 +545,13 @@ gboolean gtkui_cheats_scan_list(GtkTreeModel *model, GtkTreePath *path, GtkTreeI 64 - int addr, value, compare; 65 - char buf[5]; 66 - 67 - - snprintf(buf, sizeof(buf), "%c%c%c%c\0", rawcode[0], rawcode[1], rawcode[2], rawcode[3]); 68 - + snprintf(buf, sizeof(buf), "%c%c%c%c", rawcode[0], rawcode[1], rawcode[2], rawcode[3]); 69 - sscanf(buf, "%x", &addr); 70 - 71 - - snprintf(buf, sizeof(buf), "%c%c\0", rawcode[5], rawcode[6]); 72 - + snprintf(buf, sizeof(buf), "%c%c", rawcode[5], rawcode[6]); 73 - sscanf(buf, "%x", &value); 74 - 75 - - snprintf(buf, sizeof(buf), "%c%c\0", rawcode[8], rawcode[9]); 76 - + snprintf(buf, sizeof(buf), "%c%c", rawcode[8], rawcode[9]); 77 - sscanf(buf, "%x", &compare); 78 - 79 - code.address = addr; 80 - diff --git a/source/unix/video.cpp b/source/unix/video.cpp 81 - index 3eff19d..c34bb22 100644 82 - --- a/source/unix/video.cpp 83 - +++ b/source/unix/video.cpp 84 - @@ -757,7 +757,7 @@ void video_screenshot(const char* filename) { 85 - if (filename == NULL) { 86 - // Set the filename 87 - char sshotpath[512]; 88 - - snprintf(sshotpath, sizeof(sshotpath), "%sscreenshots/%s-%d-%d.png", nstpaths.nstdir, nstpaths.gamename, time(NULL), rand() % 899 + 100); 89 - + snprintf(sshotpath, sizeof(sshotpath), "%sscreenshots/%s-%ld-%d.png", nstpaths.nstdir, nstpaths.gamename, time(NULL), rand() % 899 + 100); 90 - 91 - // Save the file 92 - lodepng_encode32_file(sshotpath, (const unsigned char*)pixels, rendersize.w, rendersize.h);
···
+72 -45
pkgs/applications/emulators/retroarch/cores.nix
··· 1 { lib 2 , stdenv 3 , alsa-lib 4 , boost 5 , bzip2 ··· 44 let 45 hashesFile = lib.importJSON ./hashes.json; 46 47 - getCoreSrc = core: 48 - fetchFromGitHub (builtins.getAttr core hashesFile); 49 50 mkLibretroCore = 51 { core 52 - , src ? (getCoreSrc core) 53 - , version ? "unstable-2023-09-24" 54 , ... 55 }@args: 56 import ./mkLibretroCore.nix ({ 57 - inherit lib stdenv core src version makeWrapper retroarch zlib; 58 } // args); 59 in 60 { ··· 72 73 beetle-gba = mkLibretroCore { 74 core = "mednafen-gba"; 75 - src = getCoreSrc "beetle-gba"; 76 makefile = "Makefile"; 77 meta = { 78 description = "Port of Mednafen's GameBoy Advance core to libretro"; ··· 82 83 beetle-lynx = mkLibretroCore { 84 core = "mednafen-lynx"; 85 - src = getCoreSrc "beetle-lynx"; 86 makefile = "Makefile"; 87 meta = { 88 description = "Port of Mednafen's Lynx core to libretro"; ··· 92 93 beetle-ngp = mkLibretroCore { 94 core = "mednafen-ngp"; 95 - src = getCoreSrc "beetle-ngp"; 96 makefile = "Makefile"; 97 meta = { 98 description = "Port of Mednafen's NeoGeo Pocket core to libretro"; ··· 102 103 beetle-pce = mkLibretroCore { 104 core = "mednafen-pce"; 105 - src = getCoreSrc "beetle-pce"; 106 makefile = "Makefile"; 107 meta = { 108 description = "Port of Mednafen's PC Engine core to libretro"; ··· 112 113 beetle-pce-fast = mkLibretroCore { 114 core = "mednafen-pce-fast"; 115 - src = getCoreSrc "beetle-pce-fast"; 116 makefile = "Makefile"; 117 meta = { 118 description = "Port of Mednafen's PC Engine fast core to libretro"; ··· 122 123 beetle-pcfx = mkLibretroCore { 124 core = "mednafen-pcfx"; 125 - src = getCoreSrc "beetle-pcfx"; 126 makefile = "Makefile"; 127 meta = { 128 description = "Port of Mednafen's PCFX core to libretro"; ··· 132 133 beetle-psx = mkLibretroCore { 134 core = "mednafen-psx"; 135 - src = getCoreSrc "beetle-psx"; 136 makefile = "Makefile"; 137 makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ]; 138 meta = { ··· 143 144 beetle-psx-hw = mkLibretroCore { 145 core = "mednafen-psx-hw"; 146 - src = getCoreSrc "beetle-psx"; 147 extraBuildInputs = [ libGL libGLU ]; 148 makefile = "Makefile"; 149 makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ]; ··· 155 156 beetle-saturn = mkLibretroCore { 157 core = "mednafen-saturn"; 158 - src = getCoreSrc "beetle-saturn"; 159 makefile = "Makefile"; 160 meta = { 161 description = "Port of Mednafen's Saturn core to libretro"; ··· 166 167 beetle-supafaust = mkLibretroCore { 168 core = "mednafen-supafaust"; 169 - src = getCoreSrc "beetle-supafaust"; 170 makefile = "Makefile"; 171 meta = { 172 description = "Port of Mednafen's experimental snes_faust core to libretro"; ··· 176 177 beetle-supergrafx = mkLibretroCore { 178 core = "mednafen-supergrafx"; 179 - src = getCoreSrc "beetle-supergrafx"; 180 makefile = "Makefile"; 181 meta = { 182 description = "Port of Mednafen's SuperGrafx core to libretro"; ··· 186 187 beetle-vb = mkLibretroCore { 188 core = "mednafen-vb"; 189 - src = getCoreSrc "beetle-vb"; 190 makefile = "Makefile"; 191 meta = { 192 description = "Port of Mednafen's VirtualBoy core to libretro"; ··· 196 197 beetle-wswan = mkLibretroCore { 198 core = "mednafen-wswan"; 199 - src = getCoreSrc "beetle-wswan"; 200 makefile = "Makefile"; 201 meta = { 202 description = "Port of Mednafen's WonderSwan core to libretro"; ··· 232 233 bsnes-hd = mkLibretroCore { 234 core = "bsnes-hd-beta"; 235 - src = getCoreSrc "bsnes-hd"; 236 makefile = "GNUmakefile"; 237 makeFlags = 238 let ··· 256 257 bsnes-mercury = mkLibretroCore { 258 core = "bsnes-mercury-accuracy"; 259 - src = getCoreSrc "bsnes-mercury"; 260 makefile = "Makefile"; 261 makeFlags = [ "PROFILE=accuracy" ]; 262 meta = { ··· 267 268 bsnes-mercury-balanced = mkLibretroCore { 269 core = "bsnes-mercury-balanced"; 270 - src = getCoreSrc "bsnes-mercury"; 271 makefile = "Makefile"; 272 makeFlags = [ "PROFILE=balanced" ]; 273 meta = { ··· 278 279 bsnes-mercury-performance = mkLibretroCore { 280 core = "bsnes-mercury-performance"; 281 - src = getCoreSrc "bsnes-mercury"; 282 makefile = "Makefile"; 283 makeFlags = [ "PROFILE=performance" ]; 284 meta = { ··· 287 }; 288 }; 289 290 - citra = mkLibretroCore { 291 core = "citra"; 292 extraBuildInputs = [ libGLU libGL boost ffmpeg nasm ]; 293 makefile = "Makefile"; 294 makeFlags = [ 295 "HAVE_FFMPEG_STATIC=0" 296 - # https://github.com/libretro/citra/blob/1a66174355b5ed948de48ef13c0ed508b6d6169f/Makefile#L90 297 "BUILD_DATE=01/01/1970_00:00" 298 ]; 299 meta = { 300 description = "Port of Citra to libretro"; 301 license = lib.licenses.gpl2Plus; ··· 377 378 eightyone = mkLibretroCore { 379 core = "81"; 380 - src = getCoreSrc "eightyone"; 381 meta = { 382 description = "Port of EightyOne to libretro"; 383 license = lib.licenses.gpl3Only; ··· 571 extraNativeBuildInputs = [ python3 ]; 572 extraBuildInputs = [ alsa-lib ]; 573 makefile = "Makefile"; 574 - enableParallelBuilding = false; 575 meta = { 576 description = "Port of MAME ~2015 to libretro, compatible with MAME 0.160 sets"; 577 # MAME license, non-commercial clause ··· 585 extraNativeBuildInputs = [ python3 ]; 586 extraBuildInputs = [ alsa-lib ]; 587 makeFlags = [ "PYTHON_EXECUTABLE=python3" ]; 588 - enableParallelBuilding = false; 589 meta = { 590 description = "Port of MAME ~2016 to libretro, compatible with MAME 0.174 sets"; 591 license = with lib.licenses; [ bsd3 gpl2Plus ]; ··· 652 653 mupen64plus = mkLibretroCore { 654 core = "mupen64plus-next"; 655 - src = getCoreSrc "mupen64plus"; 656 extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ]; 657 makefile = "Makefile"; 658 makeFlags = [ ··· 662 "LLE=1" 663 "WITH_DYNAREC=${stdenv.hostPlatform.parsed.cpu.name}" 664 ]; 665 - # This CXXFLAGS hack works around the GCC 13 error: 666 - # 'uint32_t' was not declared in this scope 667 - # It can be removed if the issue filed upstream is resolved: 668 - # https://github.com/libretro/mupen64plus-libretro-nx/issues/515 669 - env.CXXFLAGS = "-include cstdint"; 670 meta = { 671 description = "Libretro port of Mupen64 Plus, GL only"; 672 license = lib.licenses.gpl3Only; ··· 703 704 np2kai = mkLibretroCore rec { 705 core = "np2kai"; 706 - src = getCoreSrc core; 707 makeFlags = [ 708 # See https://github.com/AZO234/NP2kai/tags 709 "NP2KAI_VERSION=rev.22" 710 - "NP2KAI_HASH=${src.rev}" 711 ]; 712 preBuild = "cd sdl"; 713 meta = { ··· 773 xxd 774 ]; 775 makefile = "Makefile"; 776 - cmakeFlags = [ 777 - "-DLIBRETRO=ON" 778 - ]; 779 postPatch = '' 780 - # remove ccache 781 substituteInPlace CMakeLists.txt --replace "ccache" "" 782 ''; 783 - 784 # causes redefinition of _FORTIFY_SOURCE 785 hardeningDisable = [ "fortify3" ]; 786 - 787 - postBuild = "cd pcsx2"; 788 meta = { 789 description = "Port of PCSX2 to libretro"; 790 license = lib.licenses.gpl3Plus; ··· 818 makefile = "Makefile"; 819 cmakeFlags = [ "-DBUILD_PLAY=OFF" "-DBUILD_LIBRETRO_CORE=ON" ]; 820 postBuild = "cd Source/ui_libretro"; 821 meta = { 822 description = "Port of Play! to libretro"; 823 license = lib.licenses.bsd2; ··· 894 core = "same_cdi"; 895 extraNativeBuildInputs = [ python3 ]; 896 extraBuildInputs = [ alsa-lib libGLU libGL portaudio xorg.libX11 ]; 897 meta = { 898 description = "SAME_CDI is a libretro core to play CD-i games"; 899 license = with lib.licenses; [ bsd3 gpl2Plus ]; ··· 913 914 smsplus-gx = mkLibretroCore { 915 core = "smsplus"; 916 - src = getCoreSrc "smsplus-gx"; 917 meta = { 918 description = "SMS Plus GX libretro port"; 919 license = lib.licenses.gpl2Plus; ··· 953 954 snes9x2005-plus = mkLibretroCore { 955 core = "snes9x2005-plus"; 956 - src = getCoreSrc "snes9x2005"; 957 makefile = "Makefile"; 958 makeFlags = [ "USE_BLARGG_APU=1" ]; 959 meta = { ··· 1055 1056 vba-m = mkLibretroCore { 1057 core = "vbam"; 1058 - src = getCoreSrc "vba-m"; 1059 makefile = "Makefile"; 1060 preBuild = "cd src/libretro"; 1061 meta = {
··· 1 { lib 2 , stdenv 3 + , gcc12Stdenv 4 , alsa-lib 5 , boost 6 , bzip2 ··· 45 let 46 hashesFile = lib.importJSON ./hashes.json; 47 48 + getCore = repo: (lib.getAttr repo hashesFile); 49 + 50 + getCoreSrc = repo: 51 + (lib.pipe repo [ 52 + getCore 53 + (x: builtins.removeAttrs x [ "date" ]) 54 + fetchFromGitHub 55 + ]); 56 + 57 + getCoreDate = repo: (getCore repo).date or "unstable-1970-01-01"; 58 59 mkLibretroCore = 60 + # Sometimes core name != repo name, so you may need to set them differently 61 + # when necessary: 62 + # - core: used by the resulting core library name, e.g.: 63 + # `${core}_libretro.so`. Needs to match their respectful core info file 64 + # (see https://github.com/libretro/libretro-core-info/) 65 + # - repo: the repository name on GitHub 66 + # See `update_cores.py` for instruction on how to add a new core. 67 { core 68 + , repo ? core 69 + , src ? (getCoreSrc repo) 70 + , version ? (getCoreDate repo) 71 , ... 72 }@args: 73 import ./mkLibretroCore.nix ({ 74 + inherit lib stdenv core repo src version makeWrapper retroarch zlib; 75 } // args); 76 in 77 { ··· 89 90 beetle-gba = mkLibretroCore { 91 core = "mednafen-gba"; 92 + repo = "beetle-gba"; 93 makefile = "Makefile"; 94 meta = { 95 description = "Port of Mednafen's GameBoy Advance core to libretro"; ··· 99 100 beetle-lynx = mkLibretroCore { 101 core = "mednafen-lynx"; 102 + repo = "beetle-lynx"; 103 makefile = "Makefile"; 104 meta = { 105 description = "Port of Mednafen's Lynx core to libretro"; ··· 109 110 beetle-ngp = mkLibretroCore { 111 core = "mednafen-ngp"; 112 + repo = "beetle-ngp"; 113 makefile = "Makefile"; 114 meta = { 115 description = "Port of Mednafen's NeoGeo Pocket core to libretro"; ··· 119 120 beetle-pce = mkLibretroCore { 121 core = "mednafen-pce"; 122 + repo = "beetle-pce"; 123 makefile = "Makefile"; 124 meta = { 125 description = "Port of Mednafen's PC Engine core to libretro"; ··· 129 130 beetle-pce-fast = mkLibretroCore { 131 core = "mednafen-pce-fast"; 132 + repo = "beetle-pce-fast"; 133 makefile = "Makefile"; 134 meta = { 135 description = "Port of Mednafen's PC Engine fast core to libretro"; ··· 139 140 beetle-pcfx = mkLibretroCore { 141 core = "mednafen-pcfx"; 142 + repo = "beetle-pcfx"; 143 makefile = "Makefile"; 144 meta = { 145 description = "Port of Mednafen's PCFX core to libretro"; ··· 149 150 beetle-psx = mkLibretroCore { 151 core = "mednafen-psx"; 152 + repo = "beetle-psx"; 153 makefile = "Makefile"; 154 makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ]; 155 meta = { ··· 160 161 beetle-psx-hw = mkLibretroCore { 162 core = "mednafen-psx-hw"; 163 + repo = "beetle-psx"; 164 extraBuildInputs = [ libGL libGLU ]; 165 makefile = "Makefile"; 166 makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ]; ··· 172 173 beetle-saturn = mkLibretroCore { 174 core = "mednafen-saturn"; 175 + repo = "beetle-saturn"; 176 makefile = "Makefile"; 177 meta = { 178 description = "Port of Mednafen's Saturn core to libretro"; ··· 183 184 beetle-supafaust = mkLibretroCore { 185 core = "mednafen-supafaust"; 186 + repo = "beetle-supafaust"; 187 makefile = "Makefile"; 188 meta = { 189 description = "Port of Mednafen's experimental snes_faust core to libretro"; ··· 193 194 beetle-supergrafx = mkLibretroCore { 195 core = "mednafen-supergrafx"; 196 + repo = "beetle-supergrafx"; 197 makefile = "Makefile"; 198 meta = { 199 description = "Port of Mednafen's SuperGrafx core to libretro"; ··· 203 204 beetle-vb = mkLibretroCore { 205 core = "mednafen-vb"; 206 + repo = "beetle-vb"; 207 makefile = "Makefile"; 208 meta = { 209 description = "Port of Mednafen's VirtualBoy core to libretro"; ··· 213 214 beetle-wswan = mkLibretroCore { 215 core = "mednafen-wswan"; 216 + repo = "beetle-wswan"; 217 makefile = "Makefile"; 218 meta = { 219 description = "Port of Mednafen's WonderSwan core to libretro"; ··· 249 250 bsnes-hd = mkLibretroCore { 251 core = "bsnes-hd-beta"; 252 + repo = "bsnes-hd"; 253 makefile = "GNUmakefile"; 254 makeFlags = 255 let ··· 273 274 bsnes-mercury = mkLibretroCore { 275 core = "bsnes-mercury-accuracy"; 276 + repo = "bsnes-mercury"; 277 makefile = "Makefile"; 278 makeFlags = [ "PROFILE=accuracy" ]; 279 meta = { ··· 284 285 bsnes-mercury-balanced = mkLibretroCore { 286 core = "bsnes-mercury-balanced"; 287 + repo = "bsnes-mercury"; 288 makefile = "Makefile"; 289 makeFlags = [ "PROFILE=balanced" ]; 290 meta = { ··· 295 296 bsnes-mercury-performance = mkLibretroCore { 297 core = "bsnes-mercury-performance"; 298 + repo = "bsnes-mercury"; 299 makefile = "Makefile"; 300 makeFlags = [ "PROFILE=performance" ]; 301 meta = { ··· 304 }; 305 }; 306 307 + citra = mkLibretroCore rec { 308 core = "citra"; 309 extraBuildInputs = [ libGLU libGL boost ffmpeg nasm ]; 310 makefile = "Makefile"; 311 makeFlags = [ 312 "HAVE_FFMPEG_STATIC=0" 313 + # https://github.com/libretro/citra/blob/1a66174355b5ed948de48ef13c0ed508b6d6169f/Makefile#L87-L90 314 + "GIT_REV=${(getCoreSrc core).rev}" 315 + "GIT_DESC=${lib.substring 0 8 (getCoreSrc core).rev}" 316 + "GIT_BRANCH=master" 317 "BUILD_DATE=01/01/1970_00:00" 318 ]; 319 + # FIXME: build fail with GCC13: 320 + # error: 'mic_device_name' has incomplete type 321 + stdenv = gcc12Stdenv; 322 meta = { 323 description = "Port of Citra to libretro"; 324 license = lib.licenses.gpl2Plus; ··· 400 401 eightyone = mkLibretroCore { 402 core = "81"; 403 + repo = "eightyone"; 404 meta = { 405 description = "Port of EightyOne to libretro"; 406 license = lib.licenses.gpl3Only; ··· 594 extraNativeBuildInputs = [ python3 ]; 595 extraBuildInputs = [ alsa-lib ]; 596 makefile = "Makefile"; 597 + # Build failures when this is set to a bigger number 598 + NIX_BUILD_CORES = 8; 599 meta = { 600 description = "Port of MAME ~2015 to libretro, compatible with MAME 0.160 sets"; 601 # MAME license, non-commercial clause ··· 609 extraNativeBuildInputs = [ python3 ]; 610 extraBuildInputs = [ alsa-lib ]; 611 makeFlags = [ "PYTHON_EXECUTABLE=python3" ]; 612 + # Build failures when this is set to a bigger number 613 + NIX_BUILD_CORES = 8; 614 + # Fix build errors in GCC13 615 + NIX_CFLAGS_COMPILE = "-Wno-error -fpermissive"; 616 meta = { 617 description = "Port of MAME ~2016 to libretro, compatible with MAME 0.174 sets"; 618 license = with lib.licenses; [ bsd3 gpl2Plus ]; ··· 679 680 mupen64plus = mkLibretroCore { 681 core = "mupen64plus-next"; 682 + repo = "mupen64plus"; 683 extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ]; 684 makefile = "Makefile"; 685 makeFlags = [ ··· 689 "LLE=1" 690 "WITH_DYNAREC=${stdenv.hostPlatform.parsed.cpu.name}" 691 ]; 692 meta = { 693 description = "Libretro port of Mupen64 Plus, GL only"; 694 license = lib.licenses.gpl3Only; ··· 725 726 np2kai = mkLibretroCore rec { 727 core = "np2kai"; 728 makeFlags = [ 729 # See https://github.com/AZO234/NP2kai/tags 730 "NP2KAI_VERSION=rev.22" 731 + "NP2KAI_HASH=${(getCoreSrc core).rev}" 732 ]; 733 preBuild = "cd sdl"; 734 meta = { ··· 794 xxd 795 ]; 796 makefile = "Makefile"; 797 + cmakeFlags = [ "-DLIBRETRO=ON" ]; 798 + # remove ccache 799 postPatch = '' 800 substituteInPlace CMakeLists.txt --replace "ccache" "" 801 ''; 802 + postBuild = "cd pcsx2"; 803 # causes redefinition of _FORTIFY_SOURCE 804 hardeningDisable = [ "fortify3" ]; 805 + # FIXME: multiple build errors with GCC13. 806 + # Unlikely to be fixed until we switch to libretro/pcsx2 that is a more 807 + # up-to-date port (but still WIP). 808 + stdenv = gcc12Stdenv; 809 meta = { 810 description = "Port of PCSX2 to libretro"; 811 license = lib.licenses.gpl3Plus; ··· 839 makefile = "Makefile"; 840 cmakeFlags = [ "-DBUILD_PLAY=OFF" "-DBUILD_LIBRETRO_CORE=ON" ]; 841 postBuild = "cd Source/ui_libretro"; 842 + # FIXME: workaround the following GCC 13 error: 843 + # error: 'printf' was not declared in this scop 844 + CXXFLAGS = "-include cstdio"; 845 meta = { 846 description = "Port of Play! to libretro"; 847 license = lib.licenses.bsd2; ··· 918 core = "same_cdi"; 919 extraNativeBuildInputs = [ python3 ]; 920 extraBuildInputs = [ alsa-lib libGLU libGL portaudio xorg.libX11 ]; 921 + # FIXME: build fail with GCC13: 922 + # error: 'uint8_t' in namespace 'std' does not name a type; did you mean 'wint_t'? 923 + stdenv = gcc12Stdenv; 924 meta = { 925 description = "SAME_CDI is a libretro core to play CD-i games"; 926 license = with lib.licenses; [ bsd3 gpl2Plus ]; ··· 940 941 smsplus-gx = mkLibretroCore { 942 core = "smsplus"; 943 + repo = "smsplus-gx"; 944 meta = { 945 description = "SMS Plus GX libretro port"; 946 license = lib.licenses.gpl2Plus; ··· 980 981 snes9x2005-plus = mkLibretroCore { 982 core = "snes9x2005-plus"; 983 + repo = "snes9x2005"; 984 makefile = "Makefile"; 985 makeFlags = [ "USE_BLARGG_APU=1" ]; 986 meta = { ··· 1082 1083 vba-m = mkLibretroCore { 1084 core = "vbam"; 1085 + repo = "vba-m"; 1086 makefile = "Makefile"; 1087 preBuild = "cd src/libretro"; 1088 meta = {
+9 -3
pkgs/applications/emulators/retroarch/default.nix
··· 12 , flac 13 , freetype 14 , gamemode 15 , libdrm 16 , libGL 17 , libGLU ··· 46 in 47 stdenv.mkDerivation rec { 48 pname = "retroarch-bare"; 49 - version = "1.16.0.3"; 50 51 src = fetchFromGitHub { 52 owner = "libretro"; 53 repo = "RetroArch"; 54 - hash = "sha256-BT+LzRDoQF03aNT2Kg7YaSWhK74CvOOiHUeHDtFpe9s="; 55 rev = "v${version}"; 56 }; 57 ··· 122 rm $out/share/man/man6/retroarch-cg2glsl.6* 123 ''; 124 125 - passthru.tests = nixosTests.retroarch; 126 127 meta = with lib; { 128 homepage = "https://libretro.com";
··· 12 , flac 13 , freetype 14 , gamemode 15 + , gitUpdater 16 , libdrm 17 , libGL 18 , libGLU ··· 47 in 48 stdenv.mkDerivation rec { 49 pname = "retroarch-bare"; 50 + version = "1.17.0"; 51 52 src = fetchFromGitHub { 53 owner = "libretro"; 54 repo = "RetroArch"; 55 + hash = "sha256-8Y8ZYZFNK7zk0bQRiWwoQbu6q3r25bN3EvLOA3kIxdU="; 56 rev = "v${version}"; 57 }; 58 ··· 123 rm $out/share/man/man6/retroarch-cg2glsl.6* 124 ''; 125 126 + passthru = { 127 + tests = nixosTests.retroarch; 128 + updateScript = gitUpdater { 129 + rev-prefix = "v"; 130 + }; 131 + }; 132 133 meta = with lib; { 134 homepage = "https://libretro.com";
+229 -141
pkgs/applications/emulators/retroarch/hashes.json
··· 3 "owner": "libretro", 4 "repo": "libretro-2048", 5 "rev": "331c1de588ed8f8c370dcbc488e5434a3c09f0f2", 6 - "hash": "sha256-gPrAmoBnfuTnW6t699pqS43vE6t0ca3jZcqTNRaJipA=" 7 }, 8 "atari800": { 9 "owner": "libretro", 10 "repo": "libretro-atari800", 11 - "rev": "20d59afb3f19065749549732f20845c3be82e68c", 12 - "hash": "sha256-5cxBubhw60Jmp1p5TQ/L6RLaLANctG0TdpzGnpCadIM=" 13 }, 14 "beetle-gba": { 15 "owner": "libretro", 16 "repo": "beetle-gba-libretro", 17 "rev": "38182572571a48cb58057cde64b915237c4e2d58", 18 - "hash": "sha256-4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=" 19 }, 20 "beetle-lynx": { 21 "owner": "libretro", 22 "repo": "beetle-lynx-libretro", 23 - "rev": "fab3ac02d5622eb53a707bd392cc037282e9d8b4", 24 - "hash": "sha256-+MKH8LmqDqznDIca/Q129zIXYI23V7s38sCD6rKiZlk=" 25 }, 26 "beetle-ngp": { 27 "owner": "libretro", 28 "repo": "beetle-ngp-libretro", 29 - "rev": "65460e3a9ad529f6901caf669abbda11f437ab55", 30 - "hash": "sha256-+xfD1ZMKtbv5Lp12+5RM7Vl3eEF38kykKW8wj/2EN5w=" 31 }, 32 "beetle-pce": { 33 "owner": "libretro", 34 "repo": "beetle-pce-libretro", 35 - "rev": "541463bd937dad175aec09c2a0c8d6a52d175386", 36 - "hash": "sha256-wWS9reb6aN71Q7OlGst+32T8XX1yMCSOHUKHkXht3hg=" 37 }, 38 "beetle-pce-fast": { 39 "owner": "libretro", 40 "repo": "beetle-pce-fast-libretro", 41 - "rev": "f2ff19e56fb33361793f9fdaf44c1ea28bce1da3", 42 - "hash": "sha256-w7weSz8HR4YNPiBPqa81s3/8b9oFijr6DxNeQ/+I9OE=" 43 }, 44 "beetle-pcfx": { 45 "owner": "libretro", 46 "repo": "beetle-pcfx-libretro", 47 "rev": "47c355b6a515aef6dc57f57df1535570108a0e21", 48 - "hash": "sha256-ylFo/wmLQpQGYSrv9PF2DBmr/8rklmHF9R+3y8v93Rs=" 49 }, 50 "beetle-psx": { 51 "owner": "libretro", 52 "repo": "beetle-psx-libretro", 53 - "rev": "f256cc3dc3ec2f6017f7088f056996f8f155db64", 54 - "hash": "sha256-McMV5p1qEvqkeTjqOaD+xHNRQly+CNen9YUJxqLpJzk=" 55 }, 56 "beetle-saturn": { 57 "owner": "libretro", 58 "repo": "beetle-saturn-libretro", 59 "rev": "cd395e9e3ee407608450ebc565e871b24e7ffed6", 60 - "hash": "sha256-EIZRv1EydfLWFoBb8TzvAY3kkL9Qr2OrwrljOnnM92A=" 61 }, 62 "beetle-supafaust": { 63 "owner": "libretro", 64 "repo": "supafaust", 65 "rev": "6b639c98372d1c9bac885c55d772c812d2a9d525", 66 - "hash": "sha256-EVXwjrxooZm1JqG4HswUe8zwN81Rm7SPB5Fr4WfpTnc=" 67 }, 68 "beetle-supergrafx": { 69 "owner": "libretro", 70 "repo": "beetle-supergrafx-libretro", 71 - "rev": "56261ccd56f576a42a2d22190c09eb326a4331da", 72 - "hash": "sha256-aoEq4o9uZIAsjQQsN+tJNhOuFA9SNb7RKIUwqUGPhJQ=" 73 }, 74 "beetle-vb": { 75 "owner": "libretro", 76 "repo": "beetle-vb-libretro", 77 - "rev": "732a8f701e671bf032165730fdf8bd96fb5ca7bb", 78 - "hash": "sha256-M19+ZidqqDdohuAVPxGVFQDQqoMl2QYM+K1WToqeOWM=" 79 }, 80 "beetle-wswan": { 81 "owner": "libretro", 82 "repo": "beetle-wswan-libretro", 83 - "rev": "a0ddcd3f084f5b4eb06acb6e03b8c4707a2f6123", 84 - "hash": "sha256-FJfznSo/3YKecVSU9mZW6yzd4/8vf2qrX4xhWjptd+A=" 85 }, 86 "blastem": { 87 "owner": "libretro", 88 "repo": "blastem", 89 "rev": "277e4a62668597d4f59cadda1cbafb844f981d45", 90 - "hash": "sha256-EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs=" 91 }, 92 "bluemsx": { 93 "owner": "libretro", 94 "repo": "bluemsx-libretro", 95 - "rev": "e21bf74bddb79ad1bbe20b4d964e7515269c669b", 96 - "hash": "sha256-U58zJd7txOyd9jymVmogQMIH5Av2kjO5MOn49T2FmqQ=" 97 }, 98 "bsnes": { 99 "owner": "libretro", 100 "repo": "bsnes-libretro", 101 - "rev": "3fe4f9049f99ac71d038b3cb684ebfc8e6cef15a", 102 - "hash": "sha256-fUcJQGkLGTgxEGwWVoZ4Hys9kOKAft7CDTTdQ8j4+Do=" 103 }, 104 "bsnes-hd": { 105 "owner": "DerKoun", 106 "repo": "bsnes-hd", 107 "rev": "f46b6d6368ea93943a30b5d4e79e8ed51c2da5e8", 108 - "hash": "sha256-Y3FhGtcz7BzwUSBy1SGMuylJdZti/JB8qQnabIkG/dI=" 109 }, 110 "bsnes-mercury": { 111 "owner": "libretro", 112 "repo": "bsnes-mercury", 113 - "rev": "fb9a41fe9bc230a07c4506cad3cbf21d3fa635b4", 114 - "hash": "sha256-gBOxKSv3j229IVdtffqFV/zSSacEs8UsBERnQgdFw4Y=" 115 }, 116 "citra": { 117 "owner": "libretro", 118 "repo": "citra", 119 - "rev": "d7e1612c17b1acb5d5eb68bb046820db49aeea5e", 120 "hash": "sha256-u2XwAudFgI7j/k6Bq5fk874aI6KpZawlBoIs2+M+eZY=", 121 - "fetchSubmodules": true 122 }, 123 "desmume": { 124 "owner": "libretro", 125 "repo": "desmume", 126 - "rev": "cf0fcc6ea4a85b7491bdf9adc7bf09748b4be7da", 127 - "hash": "sha256-ne4Tu8U/WSB4vlwBQMK7Ss3UEpDxsOFltpMk2hIx23M=" 128 }, 129 "desmume2015": { 130 "owner": "libretro", 131 "repo": "desmume2015", 132 "rev": "af397ff3d1f208c27f3922cc8f2b8e08884ba893", 133 - "hash": "sha256-kEb+og4g7rJvCinBZKcb42geZO6W8ynGsTG9yqYgI+U=" 134 }, 135 "dolphin": { 136 "owner": "libretro", 137 "repo": "dolphin", 138 "rev": "2f4b0f7902257d40a054f60b2c670d6e314f2a04", 139 - "hash": "sha256-9WYWbLehExYbPmGJpguhVFXqFJ9aR6VxzFVChd4QOEg=" 140 }, 141 "dosbox": { 142 "owner": "libretro", 143 "repo": "dosbox-libretro", 144 "rev": "b7b24262c282c0caef2368c87323ff8c381b3102", 145 - "hash": "sha256-PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I=" 146 }, 147 "dosbox-pure": { 148 "owner": "schellingb", 149 "repo": "dosbox-pure", 150 - "rev": "e8396b8564ed88d87702ee40b935dec6384c0e5a", 151 - "hash": "sha256-rD7b1uX/Wsu2ik06IiHKbUHT05IllCoBcPMN9OJ0+X4=" 152 }, 153 "eightyone": { 154 "owner": "libretro", 155 "repo": "81-libretro", 156 - "rev": "6d1b4d26aa9870133616fcfb5a763ca138ae25d1", 157 - "hash": "sha256-KCtJvYWcS3DjAZfyP4sG496X9fOHji/ZwpjiZD0OFDY=" 158 }, 159 "fbalpha2012": { 160 "owner": "libretro", 161 "repo": "fbalpha2012", 162 - "rev": "7f8860543a81ba79c0e1ce1aa219af44568c628a", 163 - "hash": "sha256-r1lH+CR+nVRCPkVo0XwLi35/ven/FEkNhWUTA6cUVxc=" 164 }, 165 "fbneo": { 166 "owner": "libretro", 167 "repo": "fbneo", 168 - "rev": "9e22c4c7ac42d5f1e5ffacdecb26acae60c663eb", 169 - "hash": "sha256-obzPz5lPqcQzLbB7cFGI50W1rFnF8tqZkpocETSAH0Q=" 170 }, 171 "fceumm": { 172 "owner": "libretro", 173 "repo": "libretro-fceumm", 174 - "rev": "7fad08e5522e5396a1196055fc106be9b5d5de77", 175 - "hash": "sha256-XHutsAc2PD8INP2u8WTmr2+rxuklXjBruH/mNl5Ro34=" 176 }, 177 "flycast": { 178 "owner": "flyinghead", 179 "repo": "flycast", 180 - "rev": "39a212140a159e7e7a183a40a201863c0560a945", 181 - "hash": "sha256-lvagJRedkh9m48yHo7ErsIyW9W2QXs6wnEjSgtrHE74=", 182 - "fetchSubmodules": true 183 }, 184 "fmsx": { 185 "owner": "libretro", 186 "repo": "fmsx-libretro", 187 "rev": "1806eed4376fbe2fad82fa19271ea298cfbb7795", 188 - "hash": "sha256-nX0H/+iEq7eBN4tm1+dT6/3BYLCpoyiE/L6waDPmUZI=" 189 }, 190 "freeintv": { 191 "owner": "libretro", 192 "repo": "freeintv", 193 "rev": "85bf25a39a34bbc39fe36677175d87c2b597dbe7", 194 - "hash": "sha256-4cU/YRZZb7EWNBJX8M91Lb+bCCIlks6xX2Cf6Iq/g9g=" 195 }, 196 "fuse": { 197 "owner": "libretro", 198 "repo": "fuse-libretro", 199 "rev": "847dbbd6f787823ac9a5dfacdd68ab181063374e", 200 - "hash": "sha256-jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM=" 201 }, 202 "gambatte": { 203 "owner": "libretro", 204 "repo": "gambatte-libretro", 205 - "rev": "64561b7e1b21dfa42eecb94963c1c495ba332466", 206 - "hash": "sha256-BRh357MGHlglGSs48LhhRNTTyAUD9O0QmGeqLnyYap0=" 207 }, 208 "genesis-plus-gx": { 209 "owner": "libretro", 210 "repo": "Genesis-Plus-GX", 211 - "rev": "141257e1e2104c4e4a49dc771d9f3c06e00292ec", 212 - "hash": "sha256-voNDwfwBIzuq9peNJ2CtF6UBnaJCDpiWmqPgtrPZplU=" 213 }, 214 "gpsp": { 215 "owner": "libretro", 216 "repo": "gpsp", 217 - "rev": "c0d8ffaa384f724e1a0743e18cb042c29dd48f7f", 218 - "hash": "sha256-KKO0bBV+5+8UcSspZHfinntp/mxukcf6/P4kIi6doUs=" 219 }, 220 "gw": { 221 "owner": "libretro", 222 "repo": "gw-libretro", 223 "rev": "0ecff52b11c327af52b22ea94b268c90472b6732", 224 - "hash": "sha256-N/nZoo+duk7XhRtNdV1paWzxYUhv8nLUcnnOs2gbZuQ=" 225 }, 226 "handy": { 227 "owner": "libretro", 228 "repo": "libretro-handy", 229 - "rev": "0559d3397f689ea453b986311aeac8dbd33afb0b", 230 - "hash": "sha256-Nsp0jiOLWjTGJRURkwx8mj7bBG8nM5fRqE93Lo9n4ac=" 231 }, 232 "hatari": { 233 "owner": "libretro", 234 "repo": "hatari", 235 - "rev": "d0903a9447323e647ed9756238ba1550cac92940", 236 - "hash": "sha256-kSdK7rkORgTkMg8kL56pNb+wU+m2413shEt7UQ9SCjM=" 237 }, 238 "mame": { 239 "owner": "libretro", 240 "repo": "mame", 241 - "rev": "3d612fb19eb95c0ae322c3cab343857b14a65a9c", 242 - "hash": "sha256-ibd8HEKQJo7hrhzqYDu6LzMmIFncXCafod9VXBx9OU0=" 243 }, 244 "mame2000": { 245 "owner": "libretro", 246 "repo": "mame2000-libretro", 247 - "rev": "720b8ad4cbd76abd57b9aeced9ba541dc8476f7f", 248 - "hash": "sha256-3HnDsZQRjp7PqUdYTAEGsroP1paoTAcTBb1fd7/LBJA=" 249 }, 250 "mame2003": { 251 "owner": "libretro", 252 "repo": "mame2003-libretro", 253 - "rev": "105ca02fb85e92b9dd5d6ee43f7152d1199eb149", 254 - "hash": "sha256-zYv3OIgapglsyjWs69IhSJGVQ7CkviKJjKnVom5f9/c=" 255 }, 256 "mame2003-plus": { 257 "owner": "libretro", 258 "repo": "mame2003-plus-libretro", 259 - "rev": "a1ff7485de011926ab21309ad1766f9cad3af58e", 260 - "hash": "sha256-Amp+Fcl2dWS1qDMaa/QL0X5loXRYmnByUjUzliQmLvY=" 261 }, 262 "mame2010": { 263 "owner": "libretro", 264 "repo": "mame2010-libretro", 265 "rev": "5f524dd5fca63ec1dcf5cca63885286109937587", 266 - "hash": "sha256-OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M=" 267 }, 268 "mame2015": { 269 "owner": "libretro", 270 "repo": "mame2015-libretro", 271 - "rev": "2599c8aeaf84f62fe16ea00daa460a19298c121c", 272 - "hash": "sha256-TURTX0XrvqwqKG3O3aCttDAdicBdge5F1thVvYgEHaw=" 273 }, 274 "mame2016": { 275 "owner": "libretro", 276 "repo": "mame2016-libretro", 277 "rev": "01058613a0109424c4e7211e49ed83ac950d3993", 278 - "hash": "sha256-IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak=" 279 }, 280 "melonds": { 281 "owner": "libretro", 282 "repo": "melonds", 283 "rev": "c6488c88cb4c7583dbcd61609e0eef441572fae8", 284 - "hash": "sha256-kU0xPM6WBqK6UpMNMotHc3jRFTodahPJRrfbcjdCJTI=" 285 }, 286 "mesen": { 287 "owner": "libretro", 288 "repo": "mesen", 289 - "rev": "d25d60fc190f3f7603a1113ef1e11d9da65b7583", 290 - "hash": "sha256-C/05mkPHJ8Bsj+uZOqY6rhMc0qx33kSxAT5SNDUPRUU=" 291 }, 292 "mesen-s": { 293 "owner": "libretro", 294 "repo": "mesen-s", 295 "rev": "32a7adfb4edb029324253cb3632dfc6599ad1aa8", 296 - "hash": "sha256-/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo=" 297 }, 298 "meteor": { 299 "owner": "libretro", 300 "repo": "meteor-libretro", 301 "rev": "e533d300d0561564451bde55a2b73119c768453c", 302 - "hash": "sha256-zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=" 303 }, 304 "mgba": { 305 "owner": "libretro", 306 "repo": "mgba", 307 "rev": "314bf7b676f5b820f396209eb0c7d6fbe8103486", 308 - "hash": "sha256-Rk+glDgSa1J1IIe5NrJElX9zr59+LQynfDXuHWyZcEM=" 309 }, 310 "mrboom": { 311 "owner": "Javanaise", 312 "repo": "mrboom-libretro", 313 "rev": "c4ec620424fe79f0d6db719d73628f23ae285ada", 314 "hash": "sha256-twocTyayV79a4757Yfoz/P3wnQPgiwsbrBbLmT4EZKQ=", 315 - "fetchSubmodules": true 316 }, 317 "mupen64plus": { 318 "owner": "libretro", 319 "repo": "mupen64plus-libretro-nx", 320 - "rev": "26fd1edd640ff3db49dd5ebb7e54f0de6600fc45", 321 - "hash": "sha256-JueRR2PheAz8sPG8OIpjp1Xih6z2Xp8f7WD+2MuBPo4=" 322 }, 323 "neocd": { 324 "owner": "libretro", 325 "repo": "neocd_libretro", 326 - "rev": "2070f5258c9d3feee15962f9db8c8ef20072ece8", 327 - "hash": "sha256-X+lS1zW5oTzp7wwurM5xjVqIBwEOCIdj/NX/+33K2qg=" 328 }, 329 "nestopia": { 330 "owner": "libretro", 331 "repo": "nestopia", 332 - "rev": "3dcbec4682e079312d6943e1357487645ec608c7", 333 - "hash": "sha256-+jWedFwuFwZzdYEyKR77AhEBoW6ecY7HAIYEKt9PRg8=" 334 }, 335 "np2kai": { 336 "owner": "AZO234", 337 "repo": "NP2kai", 338 - "rev": "6089943a80a45b6c18d765765f7f31d7a5c0d9c6", 339 - "hash": "sha256-tdF0Qb+smWAVoPmI0dd5s51cnYxMmqM36rQNMiEjU9A=", 340 - "fetchSubmodules": true 341 }, 342 "nxengine": { 343 "owner": "libretro", 344 "repo": "nxengine-libretro", 345 "rev": "1f371e51c7a19049e00f4364cbe9c68ca08b303a", 346 - "hash": "sha256-4XBNTzgN8pLyrK9KsVxTRR1I8CQaZCnVR4gMryYpWW0=" 347 }, 348 "o2em": { 349 "owner": "libretro", 350 "repo": "libretro-o2em", 351 - "rev": "a2a12472fde910b6089ac3ca6de805bd58a9c999", 352 - "hash": "sha256-0cZYw3rrnaR+PfwReRXadLV8RVLblYqlZxJue6OZncg=" 353 }, 354 "opera": { 355 "owner": "libretro", 356 "repo": "opera-libretro", 357 - "rev": "100ae1e7decefe1f17d98cfcb9f2af4ff8452691", 358 - "hash": "sha256-GOabGs5JP4hg4y5xEATZMEWuqQxFxdc6ZMnO4oLC2yk=" 359 }, 360 "parallel-n64": { 361 "owner": "libretro", 362 "repo": "parallel-n64", 363 - "rev": "49eadb4da85f7e3bd59b60f61e8fd5dbfb9f07d5", 364 - "hash": "sha256-S8gsPOgxdq0SwoYFua4ouT7XjT45d/mwCYmI3VVahdI=" 365 }, 366 "pcsx2": { 367 "owner": "libretro", 368 "repo": "lrps2", 369 "rev": "f3c8743d6a42fe429f703b476fecfdb5655a98a9", 370 - "hash": "sha256-0piCNWX7QbZ58KyTlWp4h1qLxXpi1z6ML8sBHMTvCY4=" 371 }, 372 "pcsx_rearmed": { 373 "owner": "libretro", 374 "repo": "pcsx_rearmed", 375 - "rev": "ead6fd751369f6fe50cb5092ab5530fbf1d66b67", 376 - "hash": "sha256-JzvcM8T/xMP7MDn/58TDNrHN8bjU63/PBtj7JJYYiVo=" 377 }, 378 "picodrive": { 379 "owner": "libretro", 380 "repo": "picodrive", 381 - "rev": "570319349588288f64c676123244acdb0be33881", 382 - "hash": "sha256-KG5A5NBWi5jKpJOSdSQxjn+wm2F198AINKIU+figoqs=", 383 - "fetchSubmodules": true 384 }, 385 "play": { 386 "owner": "jpd002", 387 "repo": "Play-", 388 - "rev": "f50566ffdf6a2f1d0cedfb900f1ee24b9c80fd8e", 389 - "hash": "sha256-G45UMzNh5I7beO8sBtwc80HPioB907UEPtfB1NSS4OY=", 390 - "fetchSubmodules": true 391 }, 392 "ppsspp": { 393 "owner": "hrydgard", 394 "repo": "ppsspp", 395 - "rev": "638192b0245e73a602c5f0d60e80dc7b78ff0793", 396 - "hash": "sha256-Ls9k563j8yEasu6dBs2cmWR+9twBKTolqTLkr3Nt7Uk=", 397 - "fetchSubmodules": true 398 }, 399 "prboom": { 400 "owner": "libretro", 401 "repo": "libretro-prboom", 402 "rev": "6ec854969fd9dec33bb2cab350f05675d1158969", 403 - "hash": "sha256-y0qZwYNwcO4ofWDZ7UXN9ZVMPFxjCnLDDZKBMdZLxEY=" 404 }, 405 "prosystem": { 406 "owner": "libretro", 407 "repo": "prosystem-libretro", 408 "rev": "4202ac5bdb2ce1a21f84efc0e26d75bb5aa7e248", 409 - "hash": "sha256-BR0DTWcB5g0rEoNSxBx+OxBmLELjdR2fgsmdPU7cK68=" 410 }, 411 "puae": { 412 "owner": "libretro", 413 "repo": "libretro-uae", 414 - "rev": "7bdd798ef14dccafe283588cbf8eb303832a1858", 415 - "hash": "sha256-ML3hRYujyh7WPm9Sx6RzQAxaTqlhneVLDi6qcNJ+hi8=" 416 }, 417 "quicknes": { 418 "owner": "libretro", 419 "repo": "QuickNES_Core", 420 - "rev": "058d66516ed3f1260b69e5b71cd454eb7e9234a3", 421 - "hash": "sha256-eWnbx4NsxanvSls8lguKBijYZ4+uF97d9es9Yn+3PKs=" 422 }, 423 "same_cdi": { 424 "owner": "libretro", 425 "repo": "same_cdi", 426 "rev": "54cf493c2dee4c46666059c452f8aaaa0bd7c8e0", 427 - "hash": "sha256-/+4coMzj/o82Q04Z65DQiPaykK6N56W6PRQLtyJOd8E=" 428 }, 429 "sameboy": { 430 "owner": "libretro", 431 "repo": "sameboy", 432 "rev": "09138330990da32362246c7034cf4de2ea0a2a2b", 433 - "hash": "sha256-hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4=" 434 }, 435 "scummvm": { 436 "owner": "libretro-mirrors", 437 "repo": "scummvm", 438 "rev": "2fb2e4c551c9c1510c56f6e890ee0300b7b3fca3", 439 - "hash": "sha256-wrlFqu+ONbYH4xMFDByOgySobGrkhVc7kYWI4JzA4ew=" 440 }, 441 "smsplus-gx": { 442 "owner": "libretro", 443 "repo": "smsplus-gx", 444 - "rev": "60af17ddb2231ba98f4ed1203e2a2f58d08ea088", 445 - "hash": "sha256-2SZR9BOTYLmtjEF4Bdl49H2pFNEIaU68VqlA7ll5TqU=" 446 }, 447 "snes9x": { 448 "owner": "snes9xgit", 449 "repo": "snes9x", 450 - "rev": "0e03a36847c2ab14d84963b0263e653aa4087ff4", 451 - "hash": "sha256-wRkBT80HBE1JXqNSvm0LhhUSjHe1DP3uMy3fKW71uZA=" 452 }, 453 "snes9x2002": { 454 "owner": "libretro", 455 "repo": "snes9x2002", 456 "rev": "540baad622d9833bba7e0696193cb06f5f02f564", 457 - "hash": "sha256-WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs=" 458 }, 459 "snes9x2005": { 460 "owner": "libretro", 461 "repo": "snes9x2005", 462 "rev": "fd45b0e055bce6cff3acde77414558784e93e7d0", 463 - "hash": "sha256-zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI=" 464 }, 465 "snes9x2010": { 466 "owner": "libretro", 467 "repo": "snes9x2010", 468 "rev": "d8b10c4cd7606ed58f9c562864c986bc960faaaf", 469 - "hash": "sha256-7FmteYrAYr+pGNXGg9CBC4NFlijGRf7GdtJfiNjmonU=" 470 }, 471 "stella": { 472 "owner": "stella-emu", 473 "repo": "stella", 474 - "rev": "85f23044437a5da35d68f96045d363d0e339f872", 475 - "hash": "sha256-b/3cq+CdQ6MLFzzF/cFTbL0XCSqZFc0Rj9e+bNiN3WY=" 476 }, 477 "stella2014": { 478 "owner": "libretro", 479 "repo": "stella2014-libretro", 480 "rev": "8ab051edd4816f33a5631d230d54059eeed52c5f", 481 - "hash": "sha256-wqssB8WXXF2Lu9heII8nWLLOvI38cIfHSMA7OOd6jx0=" 482 }, 483 "swanstation": { 484 "owner": "libretro", 485 "repo": "swanstation", 486 - "rev": "376744746a6880b5eec7ac48b5c006c9ae8c6770", 487 - "hash": "sha256-5mKNypA0x/FkDZvWhuEr/J5WP7saR7cKo0DQ2DZ36ZE=" 488 }, 489 "tgbdual": { 490 "owner": "libretro", 491 "repo": "tgbdual-libretro", 492 "rev": "a6f3018e6a23030afc1873845ee54d4b2d8ec9d3", 493 - "hash": "sha256-MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs=" 494 }, 495 "thepowdertoy": { 496 "owner": "libretro", 497 "repo": "ThePowderToy", 498 "rev": "f644498193c4c8be689d8a1d2a70e37e4eff4243", 499 - "hash": "sha256-aPUqrrrH2Ia56A3Kx6ClMcZO9nbHGJIcEQ6nFyIMamo=" 500 }, 501 "tic80": { 502 "owner": "libretro", 503 "repo": "tic-80", 504 "rev": "bd6ce86174fc7c9d7d3a86263acf3a7de1b62c11", 505 "hash": "sha256-RFp8sTSRwD+cgW3EYk3nBeY+zVKgZVQI5mjtfe2a64Q=", 506 - "fetchSubmodules": true 507 }, 508 "vba-m": { 509 "owner": "libretro", 510 "repo": "vbam-libretro", 511 "rev": "a2378f05f600a5a9cf450c60a87976b80d6a895a", 512 - "hash": "sha256-vWm28cSEGex5h7JkJjzNPqEGtQWHK0dpK2gVDlQ3NbM=" 513 }, 514 "vba-next": { 515 "owner": "libretro", 516 "repo": "vba-next", 517 "rev": "ee92625d2f1666496be4f5662508a2430e846b00", 518 - "hash": "sha256-r3FKBD4GUUkobMJ33VceseyTyqxm/Wsa5Er6XcfGL2Q=" 519 }, 520 "vecx": { 521 "owner": "libretro", 522 "repo": "libretro-vecx", 523 "rev": "a401c268e425dc8ae6a301e7fdb9a9e96f39b8ea", 524 - "hash": "sha256-24/bcQ5mgLl7zKvpnnSYr5SoLG02al6dP27KoOtnua4=" 525 }, 526 "virtualjaguar": { 527 "owner": "libretro", 528 "repo": "virtualjaguar-libretro", 529 "rev": "8126e5c504ac7217a638f38e4cd9190822c8abdd", 530 - "hash": "sha256-U/qdKApE0OU3jc6ekfgEZ7VCaIqCc2h+Y+IHe7PIRY0=" 531 }, 532 "yabause": { 533 "owner": "libretro", 534 "repo": "yabause", 535 "rev": "4c96b96f7fbe07223627c469ff33376b2a634748", 536 - "hash": "sha256-7hEpGh2EcrlUoRiUNntaMZEQtStglYAY1MeCub5p8f8=" 537 } 538 }
··· 3 "owner": "libretro", 4 "repo": "libretro-2048", 5 "rev": "331c1de588ed8f8c370dcbc488e5434a3c09f0f2", 6 + "hash": "sha256-gPrAmoBnfuTnW6t699pqS43vE6t0ca3jZcqTNRaJipA=", 7 + "date": "unstable-2023-02-20" 8 }, 9 "atari800": { 10 "owner": "libretro", 11 "repo": "libretro-atari800", 12 + "rev": "410d7bf0c215f3444793a9cec51c129e7b67c400", 13 + "hash": "sha256-mUhAraZrmElB6rxQziQG6I2sCdkiX5wYBJhkZgpMSa0=", 14 + "date": "unstable-2023-11-14" 15 }, 16 "beetle-gba": { 17 "owner": "libretro", 18 "repo": "beetle-gba-libretro", 19 "rev": "38182572571a48cb58057cde64b915237c4e2d58", 20 + "hash": "sha256-4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=", 21 + "date": "unstable-2021-09-18" 22 }, 23 "beetle-lynx": { 24 "owner": "libretro", 25 "repo": "beetle-lynx-libretro", 26 + "rev": "48909ddd1aba4de034d9c1da70c460b1724daa3b", 27 + "hash": "sha256-aAS9N54kA2st1+3BodiXDR4sbUDSvoFHpa28D9sohx4=", 28 + "date": "unstable-2023-11-01" 29 }, 30 "beetle-ngp": { 31 "owner": "libretro", 32 "repo": "beetle-ngp-libretro", 33 + "rev": "673c3d924ff33d71c6a342b170eff5359244df1f", 34 + "hash": "sha256-V3zcbEwqay3eXwXzXZkmHj3+rx9KY4r0WkzAYFZXlgY=", 35 + "date": "unstable-2023-11-01" 36 }, 37 "beetle-pce": { 38 "owner": "libretro", 39 "repo": "beetle-pce-libretro", 40 + "rev": "e8870b170ad4135bf5738c7206d7a27488d388ab", 41 + "hash": "sha256-c+LsfuX/3HxJTaIlZeGkGif+D1c7OpIhRUVbWuT8Kc0=", 42 + "date": "unstable-2024-02-02" 43 }, 44 "beetle-pce-fast": { 45 "owner": "libretro", 46 "repo": "beetle-pce-fast-libretro", 47 + "rev": "cfb9362fd0de38141d40266725829f25f574162a", 48 + "hash": "sha256-D/qAFFKe0mI/W4RnLwcB5lpwI+AlPjTfyo0SH6IZZkU=", 49 + "date": "unstable-2024-02-02" 50 }, 51 "beetle-pcfx": { 52 "owner": "libretro", 53 "repo": "beetle-pcfx-libretro", 54 "rev": "47c355b6a515aef6dc57f57df1535570108a0e21", 55 + "hash": "sha256-ylFo/wmLQpQGYSrv9PF2DBmr/8rklmHF9R+3y8v93Rs=", 56 + "date": "unstable-2023-05-28" 57 }, 58 "beetle-psx": { 59 "owner": "libretro", 60 "repo": "beetle-psx-libretro", 61 + "rev": "fb579de80d7b9ca09940602c14e657f6317dd046", 62 + "hash": "sha256-NRnznhvmgOQdNuEYyi0HIeVPzPz7ILEQ3vsYTZY8AbE=", 63 + "date": "unstable-2024-02-02" 64 }, 65 "beetle-saturn": { 66 "owner": "libretro", 67 "repo": "beetle-saturn-libretro", 68 "rev": "cd395e9e3ee407608450ebc565e871b24e7ffed6", 69 + "hash": "sha256-EIZRv1EydfLWFoBb8TzvAY3kkL9Qr2OrwrljOnnM92A=", 70 + "date": "unstable-2023-05-28" 71 }, 72 "beetle-supafaust": { 73 "owner": "libretro", 74 "repo": "supafaust", 75 "rev": "6b639c98372d1c9bac885c55d772c812d2a9d525", 76 + "hash": "sha256-EVXwjrxooZm1JqG4HswUe8zwN81Rm7SPB5Fr4WfpTnc=", 77 + "date": "unstable-2023-06-19" 78 }, 79 "beetle-supergrafx": { 80 "owner": "libretro", 81 "repo": "beetle-supergrafx-libretro", 82 + "rev": "d24d383f88ff892e9f8dce7c1f3ce491f2f7731a", 83 + "hash": "sha256-Cbol57jpDpkMnfKCULw6DgJwcnfTNexZ1hSw817z+E8=", 84 + "date": "unstable-2024-02-02" 85 }, 86 "beetle-vb": { 87 "owner": "libretro", 88 "repo": "beetle-vb-libretro", 89 + "rev": "9d1bd03f21dac7897f65269e1095496331efce8b", 90 + "hash": "sha256-CT6CfRe8TOgXuJoUA0TKl71m10XeocUCTUjh88eCenU=", 91 + "date": "unstable-2023-11-01" 92 }, 93 "beetle-wswan": { 94 "owner": "libretro", 95 "repo": "beetle-wswan-libretro", 96 + "rev": "32bf70a3032a138baa969c22445f4b7821632c30", 97 + "hash": "sha256-dDph7LNlvzVMVTzkUfGErMEb/tALpCADgTjnzjUHYJU=", 98 + "date": "unstable-2023-11-01" 99 }, 100 "blastem": { 101 "owner": "libretro", 102 "repo": "blastem", 103 "rev": "277e4a62668597d4f59cadda1cbafb844f981d45", 104 + "hash": "sha256-EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs=", 105 + "date": "unstable-2022-07-26" 106 }, 107 "bluemsx": { 108 "owner": "libretro", 109 "repo": "bluemsx-libretro", 110 + "rev": "e8a4280bcbd149d1e020adcd9469ad9d8bd67412", 111 + "hash": "sha256-uh4lMOCN1WXKVJybFkkGxIRWAlde74yPH5eaB1/1qsk=", 112 + "date": "unstable-2023-11-10" 113 }, 114 "bsnes": { 115 "owner": "libretro", 116 "repo": "bsnes-libretro", 117 + "rev": "dda5b43ed6a552310528509af59bed26af2527f5", 118 + "hash": "sha256-7AXHq6ASQ+42yef/jQ74kZtpW9SUuXpmWZbtO84/COg=", 119 + "date": "unstable-2024-02-02" 120 }, 121 "bsnes-hd": { 122 "owner": "DerKoun", 123 "repo": "bsnes-hd", 124 "rev": "f46b6d6368ea93943a30b5d4e79e8ed51c2da5e8", 125 + "hash": "sha256-Y3FhGtcz7BzwUSBy1SGMuylJdZti/JB8qQnabIkG/dI=", 126 + "date": "unstable-2023-04-26" 127 }, 128 "bsnes-mercury": { 129 "owner": "libretro", 130 "repo": "bsnes-mercury", 131 + "rev": "60c204ca17941704110885a815a65c740572326f", 132 + "hash": "sha256-eJ0lac1I7E4YdsVVrIuXx31UL9w3OR6QTVHq5YBgnJU=", 133 + "date": "unstable-2023-11-01" 134 }, 135 "citra": { 136 "owner": "libretro", 137 "repo": "citra", 138 + "rev": "2d67658e85de4767c0eefeb2829d710401c5c802", 139 "hash": "sha256-u2XwAudFgI7j/k6Bq5fk874aI6KpZawlBoIs2+M+eZY=", 140 + "fetchSubmodules": true, 141 + "date": "unstable-2024-01-24" 142 }, 143 "desmume": { 144 "owner": "libretro", 145 "repo": "desmume", 146 + "rev": "b518fec54b79f2f71a7536715efcdcd7f60638a8", 147 + "hash": "sha256-X6ZL+XdsrdPoOU5zqNsUraMrlPU/HmKWUolrWjFcbDQ=", 148 + "date": "unstable-2024-01-11" 149 }, 150 "desmume2015": { 151 "owner": "libretro", 152 "repo": "desmume2015", 153 "rev": "af397ff3d1f208c27f3922cc8f2b8e08884ba893", 154 + "hash": "sha256-kEb+og4g7rJvCinBZKcb42geZO6W8ynGsTG9yqYgI+U=", 155 + "date": "unstable-2022-04-05" 156 }, 157 "dolphin": { 158 "owner": "libretro", 159 "repo": "dolphin", 160 "rev": "2f4b0f7902257d40a054f60b2c670d6e314f2a04", 161 + "hash": "sha256-9WYWbLehExYbPmGJpguhVFXqFJ9aR6VxzFVChd4QOEg=", 162 + "date": "unstable-2022-12-17" 163 }, 164 "dosbox": { 165 "owner": "libretro", 166 "repo": "dosbox-libretro", 167 "rev": "b7b24262c282c0caef2368c87323ff8c381b3102", 168 + "hash": "sha256-PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I=", 169 + "date": "unstable-2022-07-18" 170 }, 171 "dosbox-pure": { 172 "owner": "schellingb", 173 "repo": "dosbox-pure", 174 + "rev": "87bf6365158325b76ff238c1ad8daf16a859bbe8", 175 + "hash": "sha256-IU5AnOEuwZm/bJ9NuxhTQ8Tb5ngmjysLj/om/6P730s=", 176 + "date": "unstable-2023-12-29" 177 }, 178 "eightyone": { 179 "owner": "libretro", 180 "repo": "81-libretro", 181 + "rev": "525d5c18f1ff3fc54c37e083a475225d9179d59d", 182 + "hash": "sha256-H0w9hcAUVOGr0PtNLVdFQScxd3ildZZ68w+TL7vG4jk=", 183 + "date": "unstable-2023-11-01" 184 }, 185 "fbalpha2012": { 186 "owner": "libretro", 187 "repo": "fbalpha2012", 188 + "rev": "b7ac554c53561d41640372f23dab15cd6fc4f0c4", 189 + "hash": "sha256-BaeMLej2MLc4uipqTD2z2sHUeOsc50Q1c+PEiPD1cks=", 190 + "date": "unstable-2023-11-01" 191 }, 192 "fbneo": { 193 "owner": "libretro", 194 "repo": "fbneo", 195 + "rev": "e8cd9f81bc974f7427d9cff9ffc1d2f3a8d15f1f", 196 + "hash": "sha256-XR/pLOvQ8L2dLguC1I2C7z8FoBid6oFSudnQNY3ub7c=", 197 + "date": "unstable-2024-01-30" 198 }, 199 "fceumm": { 200 "owner": "libretro", 201 "repo": "libretro-fceumm", 202 + "rev": "63643ba02c8eaea15dbe167ef907f3da7a3e6fd7", 203 + "hash": "sha256-xy8hzZ7nt2hHjRJmsty/w/cPzEtdlSkmNAsog3+h5YU=", 204 + "date": "unstable-2024-01-25" 205 }, 206 "flycast": { 207 "owner": "flyinghead", 208 "repo": "flycast", 209 + "rev": "c146a92f83ae2cba8df8970e21efc54301b9ade1", 210 + "hash": "sha256-+ZED9pLfPr4uNNMNTmsrQWUgbKLW3DnPBdniwQ1fr9U=", 211 + "fetchSubmodules": true, 212 + "date": "unstable-2024-02-03" 213 }, 214 "fmsx": { 215 "owner": "libretro", 216 "repo": "fmsx-libretro", 217 "rev": "1806eed4376fbe2fad82fa19271ea298cfbb7795", 218 + "hash": "sha256-nX0H/+iEq7eBN4tm1+dT6/3BYLCpoyiE/L6waDPmUZI=", 219 + "date": "unstable-2023-04-17" 220 }, 221 "freeintv": { 222 "owner": "libretro", 223 "repo": "freeintv", 224 "rev": "85bf25a39a34bbc39fe36677175d87c2b597dbe7", 225 + "hash": "sha256-4cU/YRZZb7EWNBJX8M91Lb+bCCIlks6xX2Cf6Iq/g9g=", 226 + "date": "unstable-2023-04-17" 227 }, 228 "fuse": { 229 "owner": "libretro", 230 "repo": "fuse-libretro", 231 "rev": "847dbbd6f787823ac9a5dfacdd68ab181063374e", 232 + "hash": "sha256-jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM=", 233 + "date": "unstable-2023-06-23" 234 }, 235 "gambatte": { 236 "owner": "libretro", 237 "repo": "gambatte-libretro", 238 + "rev": "c9a07107f121498a158762116d47d7068a247d3c", 239 + "hash": "sha256-U4FR794/hB3tHsdbtnC7qL0qr1oi1ZF4PYFTu+sVMVI=", 240 + "date": "unstable-2024-02-02" 241 }, 242 "genesis-plus-gx": { 243 "owner": "libretro", 244 "repo": "Genesis-Plus-GX", 245 + "rev": "59cdc560e21eeddfa4d5a5c935413cdaa9d660f3", 246 + "hash": "sha256-FB0znNFG6T67V63jm7WprhGRw9rHNJgH4SZ/BtgAyFg=", 247 + "date": "unstable-2024-02-02" 248 }, 249 "gpsp": { 250 "owner": "libretro", 251 "repo": "gpsp", 252 + "rev": "9fc117ef5c719047818513c7e394c24371cb1dbd", 253 + "hash": "sha256-6dPuj+uzqSYA2+Jm+G3u0HEeBFW2i+KmWd3PYbSxBu8=", 254 + "date": "unstable-2024-01-15" 255 }, 256 "gw": { 257 "owner": "libretro", 258 "repo": "gw-libretro", 259 "rev": "0ecff52b11c327af52b22ea94b268c90472b6732", 260 + "hash": "sha256-N/nZoo+duk7XhRtNdV1paWzxYUhv8nLUcnnOs2gbZuQ=", 261 + "date": "unstable-2023-05-28" 262 }, 263 "handy": { 264 "owner": "libretro", 265 "repo": "libretro-handy", 266 + "rev": "65d6b865544cd441ef2bd18cde7bd834c23d0e48", 267 + "hash": "sha256-F4WyiZBNTh8hjuCooZXQkzov0vcHNni6d5mbAMgzAiA=", 268 + "date": "unstable-2024-01-01" 269 }, 270 "hatari": { 271 "owner": "libretro", 272 "repo": "hatari", 273 + "rev": "a4c9eb0bb79e47a2870c12b04566c1f8d25e4bf3", 274 + "hash": "sha256-mHz2nB9Vr/PVifd6w+kz7ZCH+N8igmcS8InvevZoSpE=", 275 + "date": "unstable-2023-09-29" 276 }, 277 "mame": { 278 "owner": "libretro", 279 "repo": "mame", 280 + "rev": "68520cf9defd1c2762bca7f266f13ad593b7b3f3", 281 + "hash": "sha256-moYxyoa6QUCvxVPTr4NpRiEC+7bPETohVSYu4EYegFA=", 282 + "date": "unstable-2024-01-03" 283 }, 284 "mame2000": { 285 "owner": "libretro", 286 "repo": "mame2000-libretro", 287 + "rev": "1472da3a39ab14fff8325b1f51a1dfdb8eabb5c8", 288 + "hash": "sha256-Nd5OqkoMJZ8TzEZGqDT0YX6lHK/H3I5EqJ841PteLi8=", 289 + "date": "unstable-2023-10-31" 290 }, 291 "mame2003": { 292 "owner": "libretro", 293 "repo": "mame2003-libretro", 294 + "rev": "be247427a8a68f8401ce40c830e2d8767d000f84", 295 + "hash": "sha256-ZQ0DWok6EmVEDOhcN7LsK5T4XXHpH9Cyd22KP/UjMok=", 296 + "date": "unstable-2023-11-22" 297 }, 298 "mame2003-plus": { 299 "owner": "libretro", 300 "repo": "mame2003-plus-libretro", 301 + "rev": "53c6083a2044c3529a436b51c5206cd9a896d12c", 302 + "hash": "sha256-k4jl3cN18HQya3F4DXHN/Hoq7UXKVmJg5Lgp08n6M/M=", 303 + "date": "unstable-2024-02-03" 304 }, 305 "mame2010": { 306 "owner": "libretro", 307 "repo": "mame2010-libretro", 308 "rev": "5f524dd5fca63ec1dcf5cca63885286109937587", 309 + "hash": "sha256-OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M=", 310 + "date": "unstable-2022-06-14" 311 }, 312 "mame2015": { 313 "owner": "libretro", 314 "repo": "mame2015-libretro", 315 + "rev": "316cd06349f2b34b4719f04f7c0d07569a74c764", 316 + "hash": "sha256-CBN04Jf26SIk8mKWlui5spQGokBvgFUCvFiC8NoBGw0=", 317 + "date": "unstable-2023-11-01" 318 }, 319 "mame2016": { 320 "owner": "libretro", 321 "repo": "mame2016-libretro", 322 "rev": "01058613a0109424c4e7211e49ed83ac950d3993", 323 + "hash": "sha256-IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak=", 324 + "date": "unstable-2022-04-06" 325 }, 326 "melonds": { 327 "owner": "libretro", 328 "repo": "melonds", 329 "rev": "c6488c88cb4c7583dbcd61609e0eef441572fae8", 330 + "hash": "sha256-kU0xPM6WBqK6UpMNMotHc3jRFTodahPJRrfbcjdCJTI=", 331 + "date": "unstable-2023-04-13" 332 }, 333 "mesen": { 334 "owner": "libretro", 335 "repo": "mesen", 336 + "rev": "d6f2f1797694f87e698c737b068f621889e96fa9", 337 + "hash": "sha256-iLX9UvrjYjGjyaLD4sC10gntWUvgZrwiUqTS7S7YDdc=", 338 + "date": "unstable-2024-01-30" 339 }, 340 "mesen-s": { 341 "owner": "libretro", 342 "repo": "mesen-s", 343 "rev": "32a7adfb4edb029324253cb3632dfc6599ad1aa8", 344 + "hash": "sha256-/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo=", 345 + "date": "unstable-2022-07-25" 346 }, 347 "meteor": { 348 "owner": "libretro", 349 "repo": "meteor-libretro", 350 "rev": "e533d300d0561564451bde55a2b73119c768453c", 351 + "hash": "sha256-zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=", 352 + "date": "unstable-2020-12-28" 353 }, 354 "mgba": { 355 "owner": "libretro", 356 "repo": "mgba", 357 "rev": "314bf7b676f5b820f396209eb0c7d6fbe8103486", 358 + "hash": "sha256-Rk+glDgSa1J1IIe5NrJElX9zr59+LQynfDXuHWyZcEM=", 359 + "date": "unstable-2023-05-28" 360 }, 361 "mrboom": { 362 "owner": "Javanaise", 363 "repo": "mrboom-libretro", 364 "rev": "c4ec620424fe79f0d6db719d73628f23ae285ada", 365 "hash": "sha256-twocTyayV79a4757Yfoz/P3wnQPgiwsbrBbLmT4EZKQ=", 366 + "fetchSubmodules": true, 367 + "date": "unstable-2024-01-23" 368 }, 369 "mupen64plus": { 370 "owner": "libretro", 371 "repo": "mupen64plus-libretro-nx", 372 + "rev": "0e1dc5abacf91f1640206d32d18735e82071681e", 373 + "hash": "sha256-gt9oVJunDCdhHbaqL9xaGlztxdT1D2UvYETqCXogIwU=", 374 + "date": "unstable-2024-01-30" 375 }, 376 "neocd": { 377 "owner": "libretro", 378 "repo": "neocd_libretro", 379 + "rev": "71ebe5044639b825e5bd1bd590fef3e918133b80", 380 + "hash": "sha256-YVxt3bJ54DD91VHkeQyYdo/BEq//lnBKd9Y42Vby3qc=", 381 + "date": "unstable-2024-02-01" 382 }, 383 "nestopia": { 384 "owner": "libretro", 385 "repo": "nestopia", 386 + "rev": "8050c38e5a1db6927b03510651809e8ef932b888", 387 + "hash": "sha256-Vlz69ZpXwawdE+bfjlKNrQNmFHhB53FOKhfMgq4viE0=", 388 + "date": "unstable-2024-02-03" 389 }, 390 "np2kai": { 391 "owner": "AZO234", 392 "repo": "NP2kai", 393 + "rev": "c2ca4046860264cb307e768f529f180caee5e224", 394 + "hash": "sha256-RizN+NpVp0paXvdt7OudX9/5GJms1YvJ+NVe9iV3nnw=", 395 + "fetchSubmodules": true, 396 + "date": "unstable-2024-01-10" 397 }, 398 "nxengine": { 399 "owner": "libretro", 400 "repo": "nxengine-libretro", 401 "rev": "1f371e51c7a19049e00f4364cbe9c68ca08b303a", 402 + "hash": "sha256-4XBNTzgN8pLyrK9KsVxTRR1I8CQaZCnVR4gMryYpWW0=", 403 + "date": "unstable-2023-02-21" 404 }, 405 "o2em": { 406 "owner": "libretro", 407 "repo": "libretro-o2em", 408 + "rev": "44fe5f306033242f7d74144105e19a7d4939477e", 409 + "hash": "sha256-zg8wplVTKRzqa47mmWlqribg+JU4Nap4Ar/iR7y87xs=", 410 + "date": "unstable-2023-10-19" 411 }, 412 "opera": { 413 "owner": "libretro", 414 "repo": "opera-libretro", 415 + "rev": "35e16483be900ea8aa20e87d2710b677437f73ce", 416 + "hash": "sha256-ZNHSxI8l0KGJ6uAvOsEhNpB0IkBxtb9Imj3tA/LiOto=", 417 + "date": "unstable-2024-01-13" 418 }, 419 "parallel-n64": { 420 "owner": "libretro", 421 "repo": "parallel-n64", 422 + "rev": "1b57f9199b1f8a4510f7f89f14afa9cabf9b3bdd", 423 + "hash": "sha256-L20RGav0FJfydOICCNhAMGxIuIvPABDtCs5tWzrh768=", 424 + "date": "unstable-2024-01-15" 425 }, 426 "pcsx2": { 427 "owner": "libretro", 428 "repo": "lrps2", 429 "rev": "f3c8743d6a42fe429f703b476fecfdb5655a98a9", 430 + "hash": "sha256-0piCNWX7QbZ58KyTlWp4h1qLxXpi1z6ML8sBHMTvCY4=", 431 + "date": "unstable-2023-01-30" 432 }, 433 "pcsx_rearmed": { 434 "owner": "libretro", 435 "repo": "pcsx_rearmed", 436 + "rev": "06cdf83a3a30bfb8cafee768dbe83bbaef6c8ddd", 437 + "hash": "sha256-E/+dAcJwfaUMjYJUjfAcn98SIh61BiS5YpcZg99lg+Q=", 438 + "date": "unstable-2024-02-04" 439 }, 440 "picodrive": { 441 "owner": "libretro", 442 "repo": "picodrive", 443 + "rev": "d907d65692a45e126d0c7d6685cc8792b52bc577", 444 + "hash": "sha256-CJJcWVueg3dbBT4r6W1y8Qj7iRwH7PupvFp+CKEII7o=", 445 + "fetchSubmodules": true, 446 + "date": "unstable-2024-01-23" 447 }, 448 "play": { 449 "owner": "jpd002", 450 "repo": "Play-", 451 + "rev": "c0da95cf596834620169173dc12b3f32ca092404", 452 + "hash": "sha256-q6ApOsyNS5to+KBYgz+CZJOfNAcII6Eyv0MhcB4Q1bU=", 453 + "fetchSubmodules": true, 454 + "date": "unstable-2024-01-26" 455 }, 456 "ppsspp": { 457 "owner": "hrydgard", 458 "repo": "ppsspp", 459 + "rev": "d479b74ed9c3e321bc3735da29bc125a2ac3b9b2", 460 + "hash": "sha256-I84zJqEE1X/eo/ukeGA2iZe3lWKvilk+RNGUzl2wZXY=", 461 + "fetchSubmodules": true, 462 + "date": "unstable-2024-02-04" 463 }, 464 "prboom": { 465 "owner": "libretro", 466 "repo": "libretro-prboom", 467 "rev": "6ec854969fd9dec33bb2cab350f05675d1158969", 468 + "hash": "sha256-y0qZwYNwcO4ofWDZ7UXN9ZVMPFxjCnLDDZKBMdZLxEY=", 469 + "date": "unstable-2023-05-28" 470 }, 471 "prosystem": { 472 "owner": "libretro", 473 "repo": "prosystem-libretro", 474 "rev": "4202ac5bdb2ce1a21f84efc0e26d75bb5aa7e248", 475 + "hash": "sha256-BR0DTWcB5g0rEoNSxBx+OxBmLELjdR2fgsmdPU7cK68=", 476 + "date": "unstable-2023-08-17" 477 }, 478 "puae": { 479 "owner": "libretro", 480 "repo": "libretro-uae", 481 + "rev": "2cad13f98aa4df272decf2ab99d95aa582cd4cfb", 482 + "hash": "sha256-8iGsQJcImL7hUK14X+u2BSq4W9BkosiLImCmzf63o4Q=", 483 + "date": "unstable-2024-02-03" 484 }, 485 "quicknes": { 486 "owner": "libretro", 487 "repo": "QuickNES_Core", 488 + "rev": "cd73f021be7dd5b1a21b71155a320364c02de4ac", 489 + "hash": "sha256-fmTAK32ASA8M5nxUUUilm/yMNkmqSAG/gauB7fy1Kbc=", 490 + "date": "unstable-2024-02-01" 491 }, 492 "same_cdi": { 493 "owner": "libretro", 494 "repo": "same_cdi", 495 "rev": "54cf493c2dee4c46666059c452f8aaaa0bd7c8e0", 496 + "hash": "sha256-/+4coMzj/o82Q04Z65DQiPaykK6N56W6PRQLtyJOd8E=", 497 + "date": "unstable-2023-02-28" 498 }, 499 "sameboy": { 500 "owner": "libretro", 501 "repo": "sameboy", 502 "rev": "09138330990da32362246c7034cf4de2ea0a2a2b", 503 + "hash": "sha256-hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4=", 504 + "date": "unstable-2022-08-19" 505 }, 506 "scummvm": { 507 "owner": "libretro-mirrors", 508 "repo": "scummvm", 509 "rev": "2fb2e4c551c9c1510c56f6e890ee0300b7b3fca3", 510 + "hash": "sha256-wrlFqu+ONbYH4xMFDByOgySobGrkhVc7kYWI4JzA4ew=", 511 + "date": "unstable-2022-04-06" 512 }, 513 "smsplus-gx": { 514 "owner": "libretro", 515 "repo": "smsplus-gx", 516 + "rev": "96fa9bc65aa27a5ab2779f9f2ff0439fec7cf513", 517 + "hash": "sha256-tlxlI0+5QFgu2IRB4Cpz9XItbhprLNlq1YdCFGXGyIE=", 518 + "date": "unstable-2023-10-31" 519 }, 520 "snes9x": { 521 "owner": "snes9xgit", 522 "repo": "snes9x", 523 + "rev": "e76abdc4ef8f961ea0f8e87c160cf59cc6d44e42", 524 + "hash": "sha256-JERfp69UB/PC2iIjbepOKpPdmZJbrzWbXhaLMJfOaXY=", 525 + "date": "unstable-2024-01-28" 526 }, 527 "snes9x2002": { 528 "owner": "libretro", 529 "repo": "snes9x2002", 530 "rev": "540baad622d9833bba7e0696193cb06f5f02f564", 531 + "hash": "sha256-WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs=", 532 + "date": "unstable-2022-08-06" 533 }, 534 "snes9x2005": { 535 "owner": "libretro", 536 "repo": "snes9x2005", 537 "rev": "fd45b0e055bce6cff3acde77414558784e93e7d0", 538 + "hash": "sha256-zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI=", 539 + "date": "unstable-2022-07-25" 540 }, 541 "snes9x2010": { 542 "owner": "libretro", 543 "repo": "snes9x2010", 544 "rev": "d8b10c4cd7606ed58f9c562864c986bc960faaaf", 545 + "hash": "sha256-7FmteYrAYr+pGNXGg9CBC4NFlijGRf7GdtJfiNjmonU=", 546 + "date": "unstable-2023-02-20" 547 }, 548 "stella": { 549 "owner": "stella-emu", 550 "repo": "stella", 551 + "rev": "4557099e5d7a0c0b02424ea85d2a4b093911e048", 552 + "hash": "sha256-wyJExpIIScgLTALgvqW5f/QgIsMC19JU8Meh3mV4d2c=", 553 + "date": "unstable-2024-02-02" 554 }, 555 "stella2014": { 556 "owner": "libretro", 557 "repo": "stella2014-libretro", 558 "rev": "8ab051edd4816f33a5631d230d54059eeed52c5f", 559 + "hash": "sha256-wqssB8WXXF2Lu9heII8nWLLOvI38cIfHSMA7OOd6jx0=", 560 + "date": "unstable-2023-02-20" 561 }, 562 "swanstation": { 563 "owner": "libretro", 564 "repo": "swanstation", 565 + "rev": "77aeeea58a45cccae7a8be37645f8f5a27ff101b", 566 + "hash": "sha256-z+9Y9hoQ832caip5U+siQXh9GFxLMnX0HcmLa93B/lc=", 567 + "date": "unstable-2024-01-26" 568 }, 569 "tgbdual": { 570 "owner": "libretro", 571 "repo": "tgbdual-libretro", 572 "rev": "a6f3018e6a23030afc1873845ee54d4b2d8ec9d3", 573 + "hash": "sha256-MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs=", 574 + "date": "unstable-2022-08-06" 575 }, 576 "thepowdertoy": { 577 "owner": "libretro", 578 "repo": "ThePowderToy", 579 "rev": "f644498193c4c8be689d8a1d2a70e37e4eff4243", 580 + "hash": "sha256-aPUqrrrH2Ia56A3Kx6ClMcZO9nbHGJIcEQ6nFyIMamo=", 581 + "date": "unstable-2023-01-17" 582 }, 583 "tic80": { 584 "owner": "libretro", 585 "repo": "tic-80", 586 "rev": "bd6ce86174fc7c9d7d3a86263acf3a7de1b62c11", 587 "hash": "sha256-RFp8sTSRwD+cgW3EYk3nBeY+zVKgZVQI5mjtfe2a64Q=", 588 + "fetchSubmodules": true, 589 + "date": "unstable-2022-06-11" 590 }, 591 "vba-m": { 592 "owner": "libretro", 593 "repo": "vbam-libretro", 594 "rev": "a2378f05f600a5a9cf450c60a87976b80d6a895a", 595 + "hash": "sha256-vWm28cSEGex5h7JkJjzNPqEGtQWHK0dpK2gVDlQ3NbM=", 596 + "date": "unstable-2023-08-18" 597 }, 598 "vba-next": { 599 "owner": "libretro", 600 "repo": "vba-next", 601 "rev": "ee92625d2f1666496be4f5662508a2430e846b00", 602 + "hash": "sha256-r3FKBD4GUUkobMJ33VceseyTyqxm/Wsa5Er6XcfGL2Q=", 603 + "date": "unstable-2023-06-03" 604 }, 605 "vecx": { 606 "owner": "libretro", 607 "repo": "libretro-vecx", 608 "rev": "a401c268e425dc8ae6a301e7fdb9a9e96f39b8ea", 609 + "hash": "sha256-24/bcQ5mgLl7zKvpnnSYr5SoLG02al6dP27KoOtnua4=", 610 + "date": "unstable-2023-06-01" 611 }, 612 "virtualjaguar": { 613 "owner": "libretro", 614 "repo": "virtualjaguar-libretro", 615 "rev": "8126e5c504ac7217a638f38e4cd9190822c8abdd", 616 + "hash": "sha256-U/qdKApE0OU3jc6ekfgEZ7VCaIqCc2h+Y+IHe7PIRY0=", 617 + "date": "unstable-2023-06-01" 618 }, 619 "yabause": { 620 "owner": "libretro", 621 "repo": "yabause", 622 "rev": "4c96b96f7fbe07223627c469ff33376b2a634748", 623 + "hash": "sha256-7hEpGh2EcrlUoRiUNntaMZEQtStglYAY1MeCub5p8f8=", 624 + "date": "unstable-2023-01-03" 625 } 626 }
+8 -3
pkgs/applications/emulators/retroarch/libretro-core-info.nix
··· 1 { lib 2 , stdenvNoCC 3 , fetchFromGitHub 4 }: 5 6 stdenvNoCC.mkDerivation rec { 7 pname = "libretro-core-info"; 8 - version = "unstable-2023-07-31"; 9 10 src = fetchFromGitHub { 11 owner = "libretro"; 12 repo = "libretro-core-info"; 13 - hash = "sha256-VdFsrLiJ+Wu1OKvwX9fMI96CxTareOTK8x6OfksBuYs="; 14 - rev = "dacae85b406131feb12395a415fdf57fc4745201"; 15 }; 16 17 makeFlags = [ ··· 22 ]; 23 24 dontBuild = true; 25 26 meta = with lib; { 27 description = "Libretro's core info files";
··· 1 { lib 2 , stdenvNoCC 3 , fetchFromGitHub 4 + , gitUpdater 5 }: 6 7 stdenvNoCC.mkDerivation rec { 8 pname = "libretro-core-info"; 9 + version = "1.17.0"; 10 11 src = fetchFromGitHub { 12 owner = "libretro"; 13 repo = "libretro-core-info"; 14 + rev = "v${version}"; 15 + hash = "sha256-iJteyqD7hUtBxj+Y2nQZXDJVM4k+TDIKLaLP3IFDOGo="; 16 }; 17 18 makeFlags = [ ··· 23 ]; 24 25 dontBuild = true; 26 + 27 + passthru.updateScript = gitUpdater { 28 + rev-prefix = "v"; 29 + }; 30 31 meta = with lib; { 32 description = "Libretro's core info files";
+5 -1
pkgs/applications/emulators/retroarch/mkLibretroCore.nix
··· 1 { lib 2 , stdenv 3 , core 4 , makeWrapper 5 , retroarch 6 , zlib ··· 70 71 enableParallelBuilding = true; 72 73 - passthru = { inherit core libretroCore; }; 74 75 meta = with lib; { 76 inherit mainProgram;
··· 1 { lib 2 , stdenv 3 , core 4 + , repo 5 , makeWrapper 6 , retroarch 7 , zlib ··· 71 72 enableParallelBuilding = true; 73 74 + passthru = { 75 + inherit core libretroCore; 76 + updateScript = [ ./update_cores.py repo ]; 77 + }; 78 79 meta = with lib; { 80 inherit mainProgram;
+7 -4
pkgs/applications/emulators/retroarch/retroarch-assets.nix
··· 1 { lib 2 , stdenvNoCC 3 , fetchFromGitHub 4 }: 5 6 - stdenvNoCC.mkDerivation rec { 7 pname = "retroarch-assets"; 8 - version = "unstable-2023-09-11"; 9 10 src = fetchFromGitHub { 11 owner = "libretro"; 12 repo = "retroarch-assets"; 13 - rev = "7b735ef18bcc6508b1c9a626eb237779ff787179"; 14 - hash = "sha256-S9wWag9fNpCTMKY8yQaF7jFuX1P5XLy/Z4vjtVDK7lg="; 15 }; 16 17 makeFlags = [ ··· 22 ]; 23 24 dontBuild = true; 25 26 meta = with lib; { 27 description = "Assets needed for RetroArch";
··· 1 { lib 2 , stdenvNoCC 3 , fetchFromGitHub 4 + , unstableGitUpdater 5 }: 6 7 + stdenvNoCC.mkDerivation { 8 pname = "retroarch-assets"; 9 + version = "unstable-2024-01-02"; 10 11 src = fetchFromGitHub { 12 owner = "libretro"; 13 repo = "retroarch-assets"; 14 + rev = "923b711dc6772a168d83dc8915e9260730fcf3a1"; 15 + hash = "sha256-Hwgga2hCJEdf/j2mU+hLGAsWdYcfuzjCycxSF37I4qk="; 16 }; 17 18 makeFlags = [ ··· 23 ]; 24 25 dontBuild = true; 26 + 27 + passthru.updateScript = unstableGitUpdater { }; 28 29 meta = with lib; { 30 description = "Assets needed for RetroArch";
+8 -3
pkgs/applications/emulators/retroarch/retroarch-joypad-autoconfig.nix
··· 1 { lib 2 , stdenvNoCC 3 , fetchFromGitHub 4 }: 5 6 stdenvNoCC.mkDerivation rec { 7 pname = "retroarch-joypad-autoconfig"; 8 - version = "unstable-2023-08-01"; 9 10 src = fetchFromGitHub { 11 owner = "libretro"; 12 repo = "retroarch-joypad-autoconfig"; 13 - rev = "5666e46bb89caf4e9af358fdb97a2b384cb62f36"; 14 - hash = "sha256-5Po0v0E/dc+nVHnHlJRZzv66B/DKYarwqTkS9+/ktC4="; 15 }; 16 17 makeFlags = [ 18 "PREFIX=$(out)" 19 ]; 20 21 meta = with lib; { 22 description = "Joypad autoconfig files";
··· 1 { lib 2 , stdenvNoCC 3 , fetchFromGitHub 4 + , gitUpdater 5 }: 6 7 stdenvNoCC.mkDerivation rec { 8 pname = "retroarch-joypad-autoconfig"; 9 + version = "1.17.0"; 10 11 src = fetchFromGitHub { 12 owner = "libretro"; 13 repo = "retroarch-joypad-autoconfig"; 14 + rev = "v${version}"; 15 + hash = "sha256-rmbZxXxHwIPb/zVBQiWTRPLVS+DXTrsw8d6t9nTg/ng="; 16 }; 17 18 makeFlags = [ 19 "PREFIX=$(out)" 20 ]; 21 + 22 + passthru.updateScript = gitUpdater { 23 + rev-prefix = "v"; 24 + }; 25 26 meta = with lib; { 27 description = "Joypad autoconfig files";
+44 -4
pkgs/applications/emulators/retroarch/update_cores.py
··· 1 #!/usr/bin/env nix-shell 2 - #!nix-shell -I nixpkgs=../../../../ -i python3 -p "python3.withPackages (ps: with ps; [ nix-prefetch-github ])" -p "git" 3 4 import json 5 import os 6 import subprocess 7 import sys 8 - from pathlib import Path 9 from concurrent.futures import ThreadPoolExecutor 10 11 SCRIPT_PATH = Path(__file__).absolute().parent 12 HASHES_PATH = SCRIPT_PATH / "hashes.json" 13 GET_REPO_THREADS = int(os.environ.get("GET_REPO_THREADS", 8)) 14 CORES = { 15 "2048": {"repo": "libretro-2048"}, 16 "atari800": {"repo": "libretro-atari800"}, ··· 73 "opera": {"repo": "opera-libretro"}, 74 "parallel-n64": {"repo": "parallel-n64"}, 75 # libretro/lrps2 is a hard-fork of pcsx2 with simplified code to target 76 - # only libretro, while libretro/pcsx2 is supposedly closer to upstream. 77 - # TODO: switch to libretro/pcsx2 since this is more up-to-date 78 "pcsx2": {"repo": "lrps2"}, 79 "pcsx_rearmed": {"repo": "pcsx_rearmed"}, 80 "picodrive": {"repo": "picodrive", "fetch_submodules": True}, ··· 115 print(*msg, file=sys.stderr) 116 117 118 def get_repo_hash_fetchFromGitHub( 119 repo, 120 owner="libretro", ··· 146 text=True, 147 ) 148 j = json.loads(result.stdout) 149 # Remove False values 150 return {k: v for k, v in j.items() if v} 151
··· 1 #!/usr/bin/env nix-shell 2 + #!nix-shell -I nixpkgs=./ -i python3 -p "python3.withPackages (ps: with ps; [ requests ])" -p git -p nix-prefetch-github 3 4 import json 5 import os 6 import subprocess 7 import sys 8 from concurrent.futures import ThreadPoolExecutor 9 + from pathlib import Path 10 + 11 + import requests 12 13 SCRIPT_PATH = Path(__file__).absolute().parent 14 HASHES_PATH = SCRIPT_PATH / "hashes.json" 15 GET_REPO_THREADS = int(os.environ.get("GET_REPO_THREADS", 8)) 16 + # To add a new core, add it to the dictionary below. You need to set at least 17 + # `repo`, that is the repository name if the owner of the repository is 18 + # `libretro` itself, otherwise also set `owner`. 19 + # You may set `deep_clone`, `fetch_submodules` or `leave_dot_git` options to 20 + # `True` and they're similar to `fetchgit` options. Also if for some reason you 21 + # need to pin a specific revision, set `rev` to a commit. 22 + # To generate the hash file for your new core, you can run `update_cores.py 23 + # <core>`. The script needs to be run from the root of your `nixpkgs` clone. 24 + # Do not forget to add your core to `cores.nix` file with the proper overrides 25 + # so the core can be build. 26 CORES = { 27 "2048": {"repo": "libretro-2048"}, 28 "atari800": {"repo": "libretro-atari800"}, ··· 85 "opera": {"repo": "opera-libretro"}, 86 "parallel-n64": {"repo": "parallel-n64"}, 87 # libretro/lrps2 is a hard-fork of pcsx2 with simplified code to target 88 + # only libretro, while libretro/pcsx2 is supposedly closer to upstream but 89 + # it is a WIP. 90 + # TODO: switch to libretro/pcsx2 when upstream switches to it. 91 "pcsx2": {"repo": "lrps2"}, 92 "pcsx_rearmed": {"repo": "pcsx_rearmed"}, 93 "picodrive": {"repo": "picodrive", "fetch_submodules": True}, ··· 128 print(*msg, file=sys.stderr) 129 130 131 + def get_rev_date_fetchFromGitHub(repo, owner, rev): 132 + # https://docs.github.com/en/rest/commits/commits?apiVersion=2022-11-28#get-a-commit 133 + url = f"https://api.github.com/repos/{owner}/{repo}/commits/{rev}" 134 + headers = { 135 + "Accept": "application/vnd.github+json", 136 + "X-GitHub-Api-Version": "2022-11-28", 137 + } 138 + if token := os.environ.get("GITHUB_TOKEN"): 139 + headers["Authorization"] = f"Bearer {token}" 140 + r = requests.get(url, headers=headers) 141 + 142 + try: 143 + j = r.json() 144 + except requests.exceptions.JSONDecodeError: 145 + return None 146 + 147 + date = j.get("commit", {}).get("committer", {}).get("date") 148 + if date: 149 + # Date format returned by API: 2023-01-30T06:29:13Z 150 + return f"unstable-{date[:10]}" 151 + else: 152 + return None 153 + 154 + 155 def get_repo_hash_fetchFromGitHub( 156 repo, 157 owner="libretro", ··· 183 text=True, 184 ) 185 j = json.loads(result.stdout) 186 + date = get_rev_date_fetchFromGitHub(repo, owner, j["rev"]) 187 + if date: 188 + j["date"] = date 189 # Remove False values 190 return {k: v for k, v in j.items() if v} 191
-1
pkgs/applications/emulators/retroarch/wrapper.nix
··· 1 { lib 2 - , stdenv 3 , makeWrapper 4 , retroarch 5 , symlinkJoin
··· 1 { lib 2 , makeWrapper 3 , retroarch 4 , symlinkJoin
+2 -2
pkgs/applications/emulators/vbam/default.nix
··· 18 19 stdenv.mkDerivation rec { 20 pname = "visualboyadvance-m"; 21 - version = "2.1.8"; 22 src = fetchFromGitHub { 23 owner = "visualboyadvance-m"; 24 repo = "visualboyadvance-m"; 25 rev = "v${version}"; 26 - sha256 = "sha256-r/LF9mYwKPwkIidMAb4k4B6Q2UYjW0TucKI5LJ2gjl0="; 27 }; 28 29 nativeBuildInputs = [ cmake pkg-config ];
··· 18 19 stdenv.mkDerivation rec { 20 pname = "visualboyadvance-m"; 21 + version = "2.1.9"; 22 src = fetchFromGitHub { 23 owner = "visualboyadvance-m"; 24 repo = "visualboyadvance-m"; 25 rev = "v${version}"; 26 + sha256 = "sha256-t5/CM5KXDG0OCByu7mUyuC5NkYmB3BFmEHHgnMY05nE="; 27 }; 28 29 nativeBuildInputs = [ cmake pkg-config ];
+1
pkgs/applications/networking/remote/rustdesk/default.nix
··· 78 comment = meta.description; 79 genericName = "Remote Desktop"; 80 categories = [ "Network" ]; 81 }) 82 ]; 83
··· 78 comment = meta.description; 79 genericName = "Remote Desktop"; 80 categories = [ "Network" ]; 81 + mimeTypes = [ "x-scheme-handler/rustdesk" ]; 82 }) 83 ]; 84
+2 -2
pkgs/applications/terminal-emulators/contour/default.nix
··· 30 31 stdenv.mkDerivation (final: { 32 pname = "contour"; 33 - version = "0.4.1.6292"; 34 35 src = fetchFromGitHub { 36 owner = "contour-terminal"; 37 repo = "contour"; 38 rev = "v${final.version}"; 39 - hash = "sha256-t1rZixjpwg2JDBESmymNwUlpQd1VLaECxvpPP94jvH0="; 40 }; 41 42 patches = [ ./dont-fix-app-bundle.diff ];
··· 30 31 stdenv.mkDerivation (final: { 32 pname = "contour"; 33 + version = "0.4.2.6429"; 34 35 src = fetchFromGitHub { 36 owner = "contour-terminal"; 37 repo = "contour"; 38 rev = "v${final.version}"; 39 + hash = "sha256-MUgGNglPojFFlGlwrF8ivu18jAnjjfs9pMqu0jLAsYg="; 40 }; 41 42 patches = [ ./dont-fix-app-bundle.diff ];
-40
pkgs/applications/video/mov-cli/default.nix
··· 1 - { lib 2 - , python3 3 - , fetchFromGitHub 4 - , mpv 5 - }: 6 - 7 - python3.pkgs.buildPythonPackage rec { 8 - pname = "mov-cli"; 9 - version = "1.5.4"; 10 - format = "pyproject"; 11 - 12 - src = fetchFromGitHub { 13 - owner = "mov-cli"; 14 - repo = "mov-cli"; 15 - rev = version; 16 - sha256 = "sha256-WhoP4FcoO9+O9rfpC3oDQkVIpVOqxfdLRygHgf1O01g="; 17 - }; 18 - makeWrapperArgs = [ 19 - "--prefix" "PATH" ":" "${lib.getBin mpv}/bin" 20 - ]; 21 - 22 - propagatedBuildInputs = with python3.pkgs; [ 23 - poetry-core 24 - krfzf-py 25 - pycrypto 26 - setuptools 27 - httpx 28 - click 29 - beautifulsoup4 30 - colorama 31 - ]; 32 - 33 - meta = with lib; { 34 - homepage = "https://github.com/mov-cli/mov-cli"; 35 - description = "A cli tool to browse and watch movies"; 36 - license = licenses.gpl3Only; 37 - maintainers = with maintainers; [ baitinq ]; 38 - mainProgram = "mov-cli"; 39 - }; 40 - }
···
+50
pkgs/by-name/ba/banana-cursor/package.nix
···
··· 1 + { fetchFromGitHub 2 + , lib 3 + , stdenvNoCC 4 + 5 + , # build deps 6 + clickgen 7 + , python3Packages 8 + }: 9 + 10 + stdenvNoCC.mkDerivation (finalAttrs: { 11 + pname = "banana-cursor"; 12 + version = "1.0.0"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "ful1e5"; 16 + repo = "banana-cursor"; 17 + rev = "v${finalAttrs.version}"; 18 + sha256 = "sha256-PI7381xf/GctQTnfcE0W3M3z2kqbX4VexMf17C61hT8="; 19 + }; 20 + 21 + nativeBuildInputs = [ 22 + clickgen 23 + python3Packages.attrs 24 + ]; 25 + 26 + buildPhase = '' 27 + runHook preBuild 28 + 29 + ctgen build.toml -p x11 -o $out 30 + 31 + runHook postBuild 32 + ''; 33 + 34 + installPhase = '' 35 + runHook preInstall 36 + 37 + mkdir -p $out/share/icons 38 + mv $out/Banana $out/share/icons 39 + 40 + runHook postInstall 41 + ''; 42 + 43 + meta = with lib; { 44 + description = "The Banana Cursor"; 45 + homepage = "https://github.com/ful1e5/banana-cursor"; 46 + license = licenses.gpl3Plus; 47 + maintainers = with maintainers; [ getpsyched yrd ]; 48 + platforms = platforms.linux; 49 + }; 50 + })
+60
pkgs/by-name/fa/farge/package.nix
···
··· 1 + { lib 2 + , stdenvNoCC 3 + , fetchFromGitHub 4 + , makeBinaryWrapper 5 + , bc 6 + , libnotify 7 + , feh 8 + , grim 9 + , imagemagick 10 + , slurp 11 + , wl-clipboard 12 + , xcolor 13 + 14 + , waylandSupport ? true 15 + , x11Support ? true 16 + }: 17 + 18 + stdenvNoCC.mkDerivation (finalAttrs: { 19 + pname = "farge"; 20 + version = "1.0.9"; 21 + 22 + src = fetchFromGitHub { 23 + owner = "sdushantha"; 24 + repo = "farge"; 25 + rev = "2ff6669e2350644d4f0b1bd84526efe5eae3c302"; 26 + hash = "sha256-vCMuFMGcI4D4EzbSsXeNGKNS6nBFkfTcAmSzb9UMArc="; 27 + }; 28 + 29 + nativeBuildInputs = [ makeBinaryWrapper ]; 30 + 31 + # Ensure the following programs are found within $PATH 32 + wrapperPath = lib.makeBinPath ([ 33 + bc 34 + feh 35 + libnotify # notify-send 36 + # Needed to fix font rendering issue in imagemagick 37 + (imagemagick.override { ghostscriptSupport = true; }) 38 + ] ++ lib.optionals waylandSupport [ 39 + grim 40 + slurp 41 + wl-clipboard 42 + ] ++ lib.optional x11Support xcolor); 43 + 44 + installPhase = '' 45 + runHook preInstall 46 + install -Dm755 farge $out/bin/farge 47 + wrapProgram $out/bin/farge \ 48 + --prefix PATH : "${finalAttrs.wrapperPath}" 49 + runHook postInstall 50 + ''; 51 + 52 + meta = with lib; { 53 + description = "View the color value of a specific pixel on your screen"; 54 + homepage = "https://github.com/sdushantha/farge"; 55 + license = licenses.mit; 56 + platforms = platforms.unix; 57 + maintainers = with maintainers; [ jtbx justinlime ]; 58 + mainProgram = "farge"; 59 + }; 60 + })
+64
pkgs/by-name/mo/mov-cli/package.nix
···
··· 1 + { lib 2 + , fetchFromGitHub 3 + , ffmpeg 4 + , fzf 5 + , mpv 6 + , python3 7 + }: 8 + 9 + let 10 + pname = "mov-cli"; 11 + version = "1.5.7"; 12 + in 13 + python3.pkgs.buildPythonPackage { 14 + inherit pname version; 15 + pyproject = true; 16 + 17 + src = fetchFromGitHub { 18 + owner = "mov-cli"; 19 + repo = "mov-cli"; 20 + rev = version; 21 + hash = "sha256-OJhZtrSB5rjPY80GkTSU82hkcBgFYpW7Rc24BlBH7CE="; 22 + }; 23 + 24 + propagatedBuildInputs = with python3.pkgs; [ 25 + beautifulsoup4 26 + click 27 + colorama 28 + httpx 29 + krfzf-py 30 + lxml 31 + poetry-core 32 + pycrypto 33 + setuptools 34 + six 35 + tldextract 36 + ]; 37 + 38 + nativeBuildInputs = [ 39 + python3.pkgs.pythonRelaxDepsHook 40 + ]; 41 + 42 + pythonRelaxDeps = [ 43 + "httpx" 44 + "tldextract" 45 + ]; 46 + 47 + makeWrapperArgs = let 48 + binPath = lib.makeBinPath [ 49 + ffmpeg 50 + fzf 51 + mpv 52 + ]; 53 + in [ 54 + "--prefix PATH : ${binPath}" 55 + ]; 56 + 57 + meta = with lib; { 58 + homepage = "https://github.com/mov-cli/mov-cli"; 59 + description = "A cli tool to browse and watch movies"; 60 + license = with lib.licenses; [ gpl3Only ]; 61 + mainProgram = "mov-cli"; 62 + maintainers = with lib.maintainers; [ baitinq ]; 63 + }; 64 + }
+78
pkgs/by-name/ne/nestopia-ue/package.nix
···
··· 1 + { lib 2 + , SDL2 3 + , alsa-lib 4 + , autoconf-archive 5 + , autoreconfHook 6 + , fetchFromGitHub 7 + , fltk 8 + , libGL 9 + , libGLU 10 + , libao 11 + , libarchive 12 + , libepoxy 13 + , makeWrapper 14 + , pkg-config 15 + , stdenv 16 + , unzip 17 + , wrapGAppsHook 18 + , xdg-utils 19 + }: 20 + 21 + stdenv.mkDerivation (finalAttrs: { 22 + pname = "nestopia"; 23 + version = "1.52.0"; 24 + 25 + src = fetchFromGitHub { 26 + owner = "0ldsk00l"; 27 + repo = "nestopia"; 28 + rev = finalAttrs.version; 29 + hash = "sha256-kd5hZ88fCLL8ysGMj7HsrSA7eCI5SL2xxiRXJiZqBZ8="; 30 + }; 31 + 32 + buildInputs = [ 33 + SDL2 34 + alsa-lib 35 + fltk 36 + libepoxy 37 + 38 + libGLU 39 + libGL 40 + libarchive 41 + libao 42 + xdg-utils 43 + ]; 44 + 45 + nativeBuildInputs = [ 46 + SDL2 47 + autoconf-archive 48 + autoreconfHook 49 + fltk 50 + pkg-config 51 + makeWrapper 52 + wrapGAppsHook 53 + unzip 54 + ]; 55 + 56 + strictDeps = true; 57 + 58 + preInstall = '' 59 + mkdir -p $out/{bin,share/nestopia} 60 + ''; 61 + 62 + preFixup = '' 63 + for f in $out/bin/*; do 64 + wrapProgram $f \ 65 + --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share" 66 + done 67 + ''; 68 + 69 + meta = { 70 + homepage = "http://0ldsk00l.ca/nestopia/"; 71 + description = "Cross-platform Nestopia emulator core with a GUI"; 72 + changelog = "https://raw.githubusercontent.com/0ldsk00l/nestopia/${finalAttrs.src.rev}/ChangeLog"; 73 + license = lib.licenses.gpl2Plus; 74 + mainProgram = "nestopia"; 75 + maintainers = with lib.maintainers; [ AndersonTorres ]; 76 + platforms = lib.platforms.linux; 77 + }; 78 + })
+30
pkgs/by-name/pa/parallel-disk-usage/package.nix
···
··· 1 + { 2 + lib, 3 + fetchFromGitHub, 4 + rustPlatform, 5 + stdenv, 6 + }: 7 + rustPlatform.buildRustPackage rec { 8 + pname = "parallel-disk-usage"; 9 + version = "0.9.0"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "KSXGitHub"; 13 + repo = pname; 14 + rev = version; 15 + hash = "sha256-kOMbVKwnGh47zZkWAWkctfTIE5F8oeSnAgJEU/OdsQc="; 16 + }; 17 + 18 + cargoHash = "sha256-Jk9sNvApq4t/FoEzfjlDT2Td5sr38Jbdo6RoaOVQJK8="; 19 + 20 + meta = with lib; { 21 + description = "Highly parallelized, blazing fast directory tree analyzer"; 22 + homepage = "https://github.com/KSXGitHub/parallel-disk-usage"; 23 + license = licenses.asl20; 24 + maintainers = [maintainers.peret]; 25 + mainProgram = "pdu"; 26 + # broken due to unit test failure 27 + # https://github.com/KSXGitHub/parallel-disk-usage/issues/251 28 + broken = stdenv.isLinux && stdenv.isAarch64; 29 + }; 30 + }
+58
pkgs/by-name/te/tecla/package.nix
···
··· 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + }: 5 + 6 + stdenv.mkDerivation (finalAttrs: { 7 + pname = "tecla"; 8 + version = "1.6.3"; 9 + 10 + src = fetchurl { 11 + url = "https://www.astro.caltech.edu/~mcs/tecla/libtecla-${finalAttrs.version}.tar.gz"; 12 + hash = "sha256-8nV8xVBAhZ/Pj1mgt7JuAYSiK+zkTtlWikU0pHjB7ho="; 13 + }; 14 + 15 + outputs = [ "out" "man" ]; 16 + 17 + postPatch = '' 18 + substituteInPlace install-sh \ 19 + --replace "stripprog=" "stripprog=\$STRIP # " 20 + ''; 21 + 22 + env = lib.optionalAttrs stdenv.cc.isClang { 23 + NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; 24 + }; 25 + 26 + meta = { 27 + homepage = "https://www.astro.caltech.edu/~mcs/tecla/"; 28 + description = "Command-line editing library"; 29 + longDescription = '' 30 + The tecla library provides UNIX and LINUX programs with interactive 31 + command line editing facilities, similar to those of the UNIX tcsh 32 + shell. In addition to simple command-line editing, it supports recall of 33 + previously entered command lines, TAB completion of file names or other 34 + tokens, and in-line wild-card expansion of filenames. The internal 35 + functions which perform file-name completion and wild-card expansion are 36 + also available externally for optional use by programs. 37 + 38 + In addition, the library includes a path-searching module. This allows an 39 + application to provide completion and lookup of files located in UNIX 40 + style paths. Although not built into the line editor by default, it can 41 + easily be called from custom tab-completion callback functions. This was 42 + originally conceived for completing the names of executables and 43 + providing a way to look up their locations in the user's PATH environment 44 + variable, but it can easily be asked to look up and complete other types 45 + of files in any list of directories. 46 + 47 + Note that special care has been taken to allow the use of this library in 48 + threaded programs. The option to enable this is discussed in the 49 + Makefile, and specific discussions of thread safety are presented in the 50 + included man pages. 51 + ''; 52 + changelog = "https://sites.astro.caltech.edu/~mcs/tecla/release.html"; 53 + license = with lib.licenses; [ mit ]; 54 + mainProgram = "enhance"; 55 + maintainers = with lib.maintainers; [ AndersonTorres ]; 56 + platforms = lib.platforms.unix; 57 + }; 58 + })
+13 -3
pkgs/by-name/up/uplosi/package.nix
··· 1 { lib 2 , fetchFromGitHub 3 , buildGoModule 4 }: 5 buildGoModule rec { 6 pname = "uplosi"; 7 - version = "0.1.2"; 8 9 src = fetchFromGitHub { 10 owner = "edgelesssys"; 11 repo = pname; 12 rev = "v${version}"; 13 - hash = "sha256-9hOeKnjH6r3CPQSe6fQ6PXlVPEJ9NiyXvp5N1krG2XA="; 14 }; 15 16 - vendorHash = "sha256-RsjUPLe8omoN+XGyNhHDxzNfZR7VVTkh/f/On1oCRqM="; 17 18 CGO_ENABLED = "0"; 19 ldflags = [ "-s" "-w" "-X main.version=${version}" ]; 20 flags = [ "-trimpath" ]; 21 22 meta = with lib; { 23 description = "Upload OS images to cloud provider";
··· 1 { lib 2 , fetchFromGitHub 3 , buildGoModule 4 + , installShellFiles 5 }: 6 buildGoModule rec { 7 pname = "uplosi"; 8 + version = "0.1.3"; 9 10 src = fetchFromGitHub { 11 owner = "edgelesssys"; 12 repo = pname; 13 rev = "v${version}"; 14 + hash = "sha256-RqjaI/1Sx36JfpvnLblt8hPfgSral3Gvp8M6BshKVwo="; 15 }; 16 17 + vendorHash = "sha256-eZ0/piSxMUC1ZM7qBhFW40l9p8ZPMIj1HyrS2Dy4wJQ="; 18 19 CGO_ENABLED = "0"; 20 ldflags = [ "-s" "-w" "-X main.version=${version}" ]; 21 flags = [ "-trimpath" ]; 22 + 23 + nativeBuildInputs = [ installShellFiles ]; 24 + 25 + postInstall = '' 26 + installShellCompletion --cmd uplosi \ 27 + --bash <($out/bin/uplosi completion bash) \ 28 + --fish <($out/bin/uplosi completion fish) \ 29 + --zsh <($out/bin/uplosi completion zsh) 30 + ''; 31 32 meta = with lib; { 33 description = "Upload OS images to cloud provider";
-31
pkgs/data/icons/banana-cursor/default.nix
··· 1 - { 2 - lib, 3 - stdenvNoCC, 4 - fetchFromGitHub, 5 - }: 6 - stdenvNoCC.mkDerivation rec { 7 - pname = "banana-cursor"; 8 - version = "1.0.0"; 9 - 10 - src = fetchFromGitHub { 11 - owner = "ful1e5"; 12 - repo = "banana-cursor"; 13 - rev = "v${version}"; 14 - sha256 = "sha256-PI7381xf/GctQTnfcE0W3M3z2kqbX4VexMf17C61hT8="; 15 - }; 16 - 17 - dontBuild = true; 18 - 19 - installPhase = '' 20 - mkdir -p $out/share/icons 21 - mv themes/Banana $out/share/icons 22 - ''; 23 - 24 - meta = with lib; { 25 - homepage = "https://github.com/ful1e5/banana-cursor"; 26 - description = "The banana cursor theme"; 27 - license = licenses.gpl3; 28 - platforms = platforms.linux; 29 - maintainers = with maintainers; [ yrd ]; 30 - }; 31 - }
···
+15 -15
pkgs/development/compilers/zulu/17.nix
··· 8 # Note that the latest build may differ by platform 9 dists = { 10 x86_64-linux = { 11 - zuluVersion = "17.44.53"; 12 - jdkVersion = "17.0.8.1"; 13 hash = 14 - if enableJavaFX then "sha256-R6VJcSjpKFfsO3l32+8s+wlcuAVoXcSsW5Dg2M/hjpI=" 15 - else "sha256-uUgvIwShpophTfrN3PKVaacvD6wy5sdPg9wbmhV7g0A="; 16 }; 17 18 aarch64-linux = { 19 - zuluVersion = "17.44.53"; 20 - jdkVersion = "17.0.8.1"; 21 hash = 22 if enableJavaFX then throw "JavaFX is not available for aarch64-linux" 23 - else "sha256-ZTHO9h5BbVp7aRVVyM8r3/aJIBuKAB/0WrZ0AGK0QxM="; 24 }; 25 26 x86_64-darwin = { 27 - zuluVersion = "17.44.53"; 28 - jdkVersion = "17.0.8.1"; 29 hash = 30 - if enableJavaFX then "sha256-9U0XYZRA+LZTQ7eHrT5SWhgcxv43ajC9n9Tj3qPPLWA=" 31 - else "sha256-ZART6K/o/+D7Tc60U1+1DbnCg8ZGZe67C6aLGeZfSx8="; 32 }; 33 34 aarch64-darwin = { 35 - zuluVersion = "17.44.53"; 36 - jdkVersion = "17.0.8.1"; 37 hash = 38 - if enableJavaFX then "sha256-udYW3nOADclWqVcVtS9dgjSY0w6xf2nsBpLzPmQCYlI=" 39 - else "sha256-MUsEVo7Arps2ugPJy9Qq3J4SZfdGeJI7GSl9ZuuE3Mo="; 40 }; 41 }; 42 } // builtins.removeAttrs args [ "callPackage" ])
··· 8 # Note that the latest build may differ by platform 9 dists = { 10 x86_64-linux = { 11 + zuluVersion = "17.48.15"; 12 + jdkVersion = "17.0.10"; 13 hash = 14 + if enableJavaFX then "sha256-YvuD/n84+DARPm+38TxIUB727SIhASFo+WX9+PtJqyw=" 15 + else "sha256-VyhNob2G1Tq/WCKT0g0Y//f+JD2hWgj6QU9idfvUj+I="; 16 }; 17 18 aarch64-linux = { 19 + zuluVersion = "17.48.15"; 20 + jdkVersion = "17.0.10"; 21 hash = 22 if enableJavaFX then throw "JavaFX is not available for aarch64-linux" 23 + else "sha256-9OZl8ruaLvjdpg42fC3IM5mC/9lmshCppNfUuz/Sf8E="; 24 }; 25 26 x86_64-darwin = { 27 + zuluVersion = "17.48.15"; 28 + jdkVersion = "17.0.10"; 29 hash = 30 + if enableJavaFX then "sha256-VOIcFtjQiYsA4AiP1TCa0Q76Ew5FdeJCICwsYGU+Dnw=" 31 + else "sha256-huSKGvOnrEUAiE2MJbdHWtF2saeLGaQkZllXzDo8o+g="; 32 }; 33 34 aarch64-darwin = { 35 + zuluVersion = "17.48.15"; 36 + jdkVersion = "17.0.10"; 37 hash = 38 + if enableJavaFX then "sha256-fxBDhHMeL5IP4eRw9ykXrRRh7Nl9DnvDB1YLaQwFHLg=" 39 + else "sha256-kuEiHSkb4WFtPB3m0A968LPZw7Wl0sKquhbzDF8vQS8="; 40 }; 41 }; 42 } // builtins.removeAttrs args [ "callPackage" ])
-28
pkgs/development/libraries/tecla/default.nix
··· 1 - { lib, stdenv, fetchurl }: 2 - 3 - stdenv.mkDerivation rec { 4 - pname = "tecla"; 5 - version = "1.6.3"; 6 - 7 - src = fetchurl { 8 - url = "https://www.astro.caltech.edu/~mcs/tecla/libtecla-${version}.tar.gz"; 9 - sha256 = "06pfq5wa8d25i9bdjkp4xhms5101dsrbg82riz7rz1a0a32pqxgj"; 10 - }; 11 - 12 - postPatch = '' 13 - substituteInPlace install-sh \ 14 - --replace "stripprog=" "stripprog=\$STRIP # " 15 - ''; 16 - 17 - env = lib.optionalAttrs stdenv.cc.isClang { 18 - NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; 19 - }; 20 - 21 - meta = { 22 - description = "Command-line editing library"; 23 - homepage = "https://www.astro.caltech.edu/~mcs/tecla/"; 24 - license = "as-is"; 25 - mainProgram = "enhance"; 26 - platforms = lib.platforms.unix; 27 - }; 28 - }
···
+2 -2
pkgs/development/python-modules/scikit-hep-testdata/default.nix
··· 11 12 buildPythonPackage rec { 13 pname = "scikit-hep-testdata"; 14 - version = "0.4.37"; 15 format = "pyproject"; 16 17 disabled = pythonOlder "3.6"; ··· 20 owner = "scikit-hep"; 21 repo = pname; 22 rev = "refs/tags/v${version}"; 23 - hash = "sha256-/zg6B1vBDaHXRSMo+Wy+CuQaBXP7v1hX2X2cK/7Djlk="; 24 }; 25 26 nativeBuildInputs = [
··· 11 12 buildPythonPackage rec { 13 pname = "scikit-hep-testdata"; 14 + version = "0.4.38"; 15 format = "pyproject"; 16 17 disabled = pythonOlder "3.6"; ··· 20 owner = "scikit-hep"; 21 repo = pname; 22 rev = "refs/tags/v${version}"; 23 + hash = "sha256-/+1eENbpng/X1g108cEGiTZlIkdcqqnm9wyN9ECH5D4="; 24 }; 25 26 nativeBuildInputs = [
+25 -108
pkgs/games/shipwright/default.nix
··· 5 , lib 6 , fetchFromGitHub 7 , fetchurl 8 , makeDesktopItem 9 , python3 10 , libX11 ··· 21 , libpulseaudio 22 , libpng 23 , imagemagick 24 - , requireFile 25 - 26 - , oot ? rec { 27 - enable = true; 28 - variant = "debug"; 29 - 30 - rom = requireFile { 31 - name = "oot-${variant}.z64"; 32 - message = '' 33 - This nix expression requires that oot-${variant}.z64 is already part of the store. 34 - To get this file you can dump your Ocarina of Time's cartridge to a file, 35 - and add it to the nix store with nix-store --add-fixed sha1 <FILE>, or override the package: 36 - shipwright.override { oot = { enable = true; variant = "debug"; rom = path/to/oot-debug-mq.z64; } } 37 - 38 - The supported variants are: 39 - - debug: Ocarina of Time Debug PAL GC (not Master Quest) 40 - - pal-gc: Ocarina of Time PAL GameCube (may lead to crashes and instability) 41 - 42 - This is optional if you have imported an Ocarina of Time Master Quest ROM. 43 - If so, please set oot.enable to false and ootMq.enable to true. 44 - If both are enabled, Ship of Harkinian will be built with both ROMs. 45 - ''; 46 - 47 - # From upstream: https://github.com/HarbourMasters/Shipwright/blob/e46c60a7a1396374e23f7a1f7122ddf9efcadff7/README.md#1-check-your-sha1 48 - sha1 = { 49 - debug = "cee6bc3c2a634b41728f2af8da54d9bf8cc14099"; 50 - pal-gc = "0227d7c0074f2d0ac935631990da8ec5914597b4"; 51 - }.${variant} or (throw "Unsupported romVariant ${variant}. Valid options are 'debug' and 'pal-gc'."); 52 - }; 53 - } 54 - 55 - , ootMq ? rec { 56 - enable = false; 57 - variant = "debug-mq"; 58 - 59 - rom = requireFile { 60 - name = "oot-${variant}.z64"; 61 - message = '' 62 - This nix expression requires that oot-${variant}.z64 is already part of the store. 63 - To get this file you can dump your Ocarina of Time Master Quest's cartridge to a file, 64 - and add it to the nix store with nix-store --add-fixed sha1 <FILE>, or override the package: 65 - shipwright.override { ootMq = { enable = true; variant = "debug-mq"; rom = path/to/oot-debug-mq.z64; } } 66 - 67 - The supported variants are: 68 - - debug-mq: Ocarina of Time Debug PAL GC MQ (Dungeons will be Master Quest) 69 - - debug-mq-alt: Alternate ROM, not produced by decompilation. 70 - 71 - This is optional if you have imported an Ocarina of Time ROM. 72 - If so, please set oot.enable to true and ootMq.enable to false. 73 - If both are enabled, Ship of Harkinian will be built with both ROMs. 74 - ''; 75 - 76 - # From upstream: https://github.com/HarbourMasters/Shipwright/blob/e46c60a7a1396374e23f7a1f7122ddf9efcadff7/README.md#1-check-your-sha1 77 - sha1 = { 78 - debug-mq = "079b855b943d6ad8bd1eb026c0ed169ecbdac7da"; 79 - debug-mq-alt = "50bebedad9e0f10746a52b07239e47fa6c284d03"; 80 - }.${variant} or (throw "Unsupported mqRomVariant ${variant}. Valid options are 'debug-mq' and 'debug-mq-alt'."); 81 - }; 82 - } 83 }: 84 85 - let 86 - checkAttrs = attrs: 87 - let 88 - validAttrs = [ "enable" "rom" "variant" ]; 89 - in 90 - lib.all (name: lib.elem name validAttrs) (lib.attrNames attrs); 91 - in 92 - assert (lib.assertMsg (checkAttrs oot) "oot must have the attributes 'enable' and 'rom', and none other"); 93 - assert (lib.assertMsg (checkAttrs ootMq) "ootMq must have the attributes 'enable' and 'rom', and none other"); 94 - assert (lib.assertMsg (oot.enable || ootMq.enable) "At least one of 'oot.enable' and 'ootMq.enable' must be true"); 95 - 96 - stdenv.mkDerivation rec { 97 pname = "shipwright"; 98 - version = "7.1.1"; 99 100 src = fetchFromGitHub { 101 owner = "harbourmasters"; 102 repo = "shipwright"; 103 - rev = version; 104 - hash = "sha256-zgxJj65wKsQWvVxeCspyHG9YqoYqZxd6GrYptOA8Byk="; 105 fetchSubmodules = true; 106 }; 107 ··· 109 # https://github.com/HarbourMasters/Shipwright/blob/e46c60a7a1396374e23f7a1f7122ddf9efcadff7/soh/CMakeLists.txt#L736 110 gamecontrollerdb = fetchurl { 111 name = "gamecontrollerdb.txt"; 112 - url = "https://raw.githubusercontent.com/gabomdq/SDL_GameControllerDB/c5b4df0e1061175cb11e3ebbf8045178339864a5/gamecontrollerdb.txt"; 113 - hash = "sha256-2VFCsaalXoe+JYWCH6IbgjnLXNKxe0UqSyJNGZMn5Ko="; 114 }; 115 116 nativeBuildInputs = [ ··· 120 lsb-release 121 python3 122 imagemagick 123 ]; 124 125 buildInputs = [ ··· 135 SDL2_net 136 libpulseaudio 137 libpng 138 ]; 139 140 cmakeFlags = [ 141 "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/lib" 142 ]; 143 144 dontAddPrefix = true; ··· 147 hardeningDisable = [ "format" ]; 148 149 postBuild = '' 150 - cp ${gamecontrollerdb} ${gamecontrollerdb.name} 151 - 152 pushd ../OTRExporter 153 - ${lib.optionalString oot.enable "python3 ./extract_assets.py -z ../build/ZAPD/ZAPD.out ${oot.rom}"} 154 - ${lib.optionalString ootMq.enable "python3 ./extract_assets.py -z ../build/ZAPD/ZAPD.out ${ootMq.rom}"} 155 popd 156 ''; 157 ··· 162 163 postInstall = '' 164 mkdir -p $out/bin 165 - 166 - # Copy the extracted assets, required to be in the same directory as the executable 167 - ${lib.optionalString oot.enable "cp ../OTRExporter/oot.otr $out/lib"} 168 - ${lib.optionalString ootMq.enable "cp ../OTRExporter/oot-mq.otr $out/lib"} 169 - 170 ln -s $out/lib/soh.elf $out/bin/soh 171 ''; 172 173 desktopItems = [ ··· 175 name = "soh"; 176 icon = "soh"; 177 exec = "soh"; 178 genericName = "Ship of Harkinian"; 179 desktopName = "soh"; 180 categories = [ "Game" ]; 181 }) 182 ]; 183 184 - meta = with lib; { 185 homepage = "https://github.com/HarbourMasters/Shipwright"; 186 description = "A PC port of Ocarina of Time with modern controls, widescreen, high-resolution, and more"; 187 - longDescription = '' 188 - An PC port of Ocarina of Time with modern controls, widescreen, high-resolution and more, based off of decompilation. 189 - Note that you must supply an OoT rom yourself to use this package because propietary assets are extracted from it. 190 - 191 - You can change the game variant like this: 192 - shipwright.override { oot.enable = false; ootMq.enable = true } 193 - 194 - The default ROM variants for Oot and OotMq are debug and debug-mq respectively. 195 - If you have a pal-gc rom, you should override like this: 196 - shipwright.override { oot = { enable = true; variant = "pal-gc"; rom = path/to/oot-pal-gc.z64; } } 197 - 198 - The supported Oot variants are: 199 - - debug: Ocarina of Time Debug PAL GC (not Master Quest) 200 - - pal-gc: Ocarina of Time PAL GameCube (may lead to crashes and instability) 201 - 202 - The supported OotMq variants are: 203 - - debug-mq: Ocarina of Time Debug PAL GC MQ (Dungeons will be Master Quest) 204 - - debug-mq-alt: Alternate ROM, not produced by decompilation. 205 - ''; 206 mainProgram = "soh"; 207 platforms = [ "x86_64-linux" ]; 208 - maintainers = with maintainers; [ ivar j0lol ]; 209 - license = with licenses; [ 210 # OTRExporter, OTRGui, ZAPDTR, libultraship 211 mit 212 # Ship of Harkinian itself 213 unfree 214 ]; 215 }; 216 - }
··· 5 , lib 6 , fetchFromGitHub 7 , fetchurl 8 + , copyDesktopItems 9 , makeDesktopItem 10 , python3 11 , libX11 ··· 22 , libpulseaudio 23 , libpng 24 , imagemagick 25 + , gnome 26 + , makeWrapper 27 }: 28 29 + stdenv.mkDerivation (finalAttrs: { 30 pname = "shipwright"; 31 + version = "8.0.4"; 32 33 src = fetchFromGitHub { 34 owner = "harbourmasters"; 35 repo = "shipwright"; 36 + rev = finalAttrs.version; 37 + hash = "sha256-OoDToHCVNzccbKdsmek1kqCsW2HmVzA2vy3BtVW1DuM="; 38 fetchSubmodules = true; 39 }; 40 ··· 42 # https://github.com/HarbourMasters/Shipwright/blob/e46c60a7a1396374e23f7a1f7122ddf9efcadff7/soh/CMakeLists.txt#L736 43 gamecontrollerdb = fetchurl { 44 name = "gamecontrollerdb.txt"; 45 + url = "https://raw.githubusercontent.com/gabomdq/SDL_GameControllerDB/81d89fd1e2bd5878e57dfa629abeed3a8feea438/gamecontrollerdb.txt"; 46 + hash = "sha256-m1XzDc2dS0hkBTEGABgW4J/jjIw1TXtvHHtsvui6Bcc="; 47 }; 48 49 nativeBuildInputs = [ ··· 53 lsb-release 54 python3 55 imagemagick 56 + copyDesktopItems 57 + makeWrapper 58 ]; 59 60 buildInputs = [ ··· 70 SDL2_net 71 libpulseaudio 72 libpng 73 + gnome.zenity 74 ]; 75 76 cmakeFlags = [ 77 "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/lib" 78 + (lib.cmakeBool "NON_PORTABLE" true) 79 ]; 80 81 dontAddPrefix = true; ··· 84 hardeningDisable = [ "format" ]; 85 86 postBuild = '' 87 + cp ${finalAttrs.gamecontrollerdb} ${finalAttrs.gamecontrollerdb.name} 88 pushd ../OTRExporter 89 + python3 ./extract_assets.py -z ../build/ZAPD/ZAPD.out --norom --xml-root ../soh/assets/xml --custom-assets-path ../soh/assets/custom --custom-otr-file soh.otr --port-ver ${finalAttrs.version} 90 popd 91 ''; 92 ··· 97 98 postInstall = '' 99 mkdir -p $out/bin 100 ln -s $out/lib/soh.elf $out/bin/soh 101 + install -Dm644 ../soh/macosx/sohIcon.png $out/share/pixmaps/soh.png 102 + ''; 103 + 104 + fixupPhase = '' 105 + wrapProgram $out/lib/soh.elf --prefix PATH ":" ${lib.makeBinPath [ gnome.zenity ]} 106 ''; 107 108 desktopItems = [ ··· 110 name = "soh"; 111 icon = "soh"; 112 exec = "soh"; 113 + comment = finalAttrs.meta.description; 114 genericName = "Ship of Harkinian"; 115 desktopName = "soh"; 116 categories = [ "Game" ]; 117 }) 118 ]; 119 120 + meta = { 121 homepage = "https://github.com/HarbourMasters/Shipwright"; 122 description = "A PC port of Ocarina of Time with modern controls, widescreen, high-resolution, and more"; 123 mainProgram = "soh"; 124 platforms = [ "x86_64-linux" ]; 125 + maintainers = with lib.maintainers; [ ivar j0lol ]; 126 + license = with lib.licenses; [ 127 # OTRExporter, OTRGui, ZAPDTR, libultraship 128 mit 129 # Ship of Harkinian itself 130 unfree 131 ]; 132 }; 133 + })
+4 -4
pkgs/servers/moonraker/default.nix
··· 18 jinja2 19 dbus-next 20 apprise 21 ] 22 - ++ (lib.optionals useGpiod [ libgpiod ]) 23 ); 24 in stdenvNoCC.mkDerivation rec { 25 pname = "moonraker"; 26 - version = "unstable-2023-12-16"; 27 28 src = fetchFromGitHub { 29 owner = "Arksine"; 30 repo = "moonraker"; 31 - rev = "42357891a3716cd332ef60b28af09f8732dbf67a"; 32 - sha256 = "sha256-5w336GaHUkbmhAPvhOO3kNW5q7qTFVw3p0Q+Rv+YdYM="; 33 }; 34 35 nativeBuildInputs = [ makeWrapper ];
··· 18 jinja2 19 dbus-next 20 apprise 21 + python-periphery 22 ] 23 ); 24 in stdenvNoCC.mkDerivation rec { 25 pname = "moonraker"; 26 + version = "unstable-2023-12-27"; 27 28 src = fetchFromGitHub { 29 owner = "Arksine"; 30 repo = "moonraker"; 31 + rev = "c226e9c1e44d65ff6ea400b81e3cedba7f637976"; 32 + sha256 = "sha256-wdf4uab8pJEWaX6PFN9Y9pykmylmxJ4Oo5pwSQcyjCc="; 33 }; 34 35 nativeBuildInputs = [ makeWrapper ];
+3 -3
pkgs/servers/web-apps/peering-manager/default.nix
··· 9 10 python3.pkgs.buildPythonApplication rec { 11 pname = "peering-manager"; 12 - version = "1.8.2"; 13 14 src = fetchFromGitHub { 15 owner = pname; 16 repo = pname; 17 - rev = "v${version}"; 18 - sha256 = "sha256-He1AXfNsjVHYt2cBDjObz6sRcPbtsMotAsw+hvMrWyA="; 19 }; 20 21 format = "other";
··· 9 10 python3.pkgs.buildPythonApplication rec { 11 pname = "peering-manager"; 12 + version = "1.8.3"; 13 14 src = fetchFromGitHub { 15 owner = pname; 16 repo = pname; 17 + rev = "refs/tags/v${version}"; 18 + sha256 = "sha256-UV1zSX9C9y5faOBUQ7bfj2DT6ffhMW28MIT7SaYjMgw="; 19 }; 20 21 format = "other";
+3 -3
pkgs/tools/backup/restic/default.nix
··· 3 4 buildGoModule rec { 5 pname = "restic"; 6 - version = "0.16.3"; 7 8 src = fetchFromGitHub { 9 owner = "restic"; 10 repo = "restic"; 11 rev = "v${version}"; 12 - hash = "sha256-nPOCncqdnwhmWrT11evBD4r5hpRb3DTdRej4zh4Q8lg="; 13 }; 14 15 patches = [ ··· 17 ./0001-Skip-testing-restore-with-permission-failure.patch 18 ]; 19 20 - vendorHash = "sha256-stz76S2dwVlBuGW9R7+Uqs51Xsq7L/4pgTqUZnu7YCQ="; 21 22 subPackages = [ "cmd/restic" ]; 23
··· 3 4 buildGoModule rec { 5 pname = "restic"; 6 + version = "0.16.4"; 7 8 src = fetchFromGitHub { 9 owner = "restic"; 10 repo = "restic"; 11 rev = "v${version}"; 12 + hash = "sha256-TSUhrtSgGIPM/cUzA6WDtCpqCyjtnM5BZDhK6udR0Ek="; 13 }; 14 15 patches = [ ··· 17 ./0001-Skip-testing-restore-with-permission-failure.patch 18 ]; 19 20 + vendorHash = "sha256-E+Erf8AdlMBdep1g2SpI8JKIdJuKqmyWEUmh8Rs5R/o="; 21 22 subPackages = [ "cmd/restic" ]; 23
-57
pkgs/tools/misc/farge/default.nix
··· 1 - { lib 2 - , stdenv 3 - , fetchFromGitHub 4 - , makeBinaryWrapper 5 - , bc 6 - , libnotify 7 - , feh 8 - , grim 9 - , imagemagick 10 - , slurp 11 - , wl-clipboard 12 - , xcolor 13 - , waylandSupport ? true 14 - , x11Support ? true 15 - }: 16 - 17 - stdenv.mkDerivation (finalAttrs: { 18 - pname = "farge"; 19 - version = "1.0.9"; 20 - 21 - src = fetchFromGitHub { 22 - owner = "sdushantha"; 23 - repo = "farge"; 24 - rev = "2ff6669e2350644d4f0b1bd84526efe5eae3c302"; 25 - hash = "sha256-vCMuFMGcI4D4EzbSsXeNGKNS6nBFkfTcAmSzb9UMArc="; 26 - }; 27 - 28 - nativeBuildInputs = [ makeBinaryWrapper ]; 29 - 30 - # Ensure the following programs are found within $PATH 31 - wrapperPath = lib.makeBinPath ([ 32 - bc 33 - feh 34 - #Needed to fix convert: unable to read font `(null)' @ error/annotate.c/RenderFreetype issue 35 - (imagemagick.override { ghostscriptSupport = true;}) 36 - libnotify #Needed for the notify-send function call from the script 37 - ] ++ lib.optionals waylandSupport [ grim slurp wl-clipboard ] 38 - ++ lib.optionals x11Support [ xcolor ]); 39 - 40 - installPhase = '' 41 - runHook preInstall 42 - mkdir -p $out/bin 43 - install -m755 farge $out/bin 44 - wrapProgram $out/bin/farge \ 45 - --prefix PATH : "${finalAttrs.wrapperPath}" 46 - runHook postInstall 47 - ''; 48 - 49 - meta = with lib; { 50 - description = "A tool that shows the color value of a given pixel on your screen"; 51 - homepage = "https://github.com/sdushantha/farge"; 52 - license = licenses.mit; 53 - platforms = platforms.all; 54 - maintainers = with maintainers; [ jtbx justinlime ]; 55 - mainProgram = "farge"; 56 - }; 57 - })
···
+3
pkgs/tools/misc/urn-timer/default.nix
··· 7 , wrapGAppsHook 8 , gtk3 9 , jansson 10 }: 11 12 stdenv.mkDerivation { ··· 37 passthru.updateScript = unstableGitUpdater { 38 url = "https://github.com/paoloose/urn.git"; 39 }; 40 41 meta = with lib; { 42 homepage = "https://github.com/paoloose/urn";
··· 7 , wrapGAppsHook 8 , gtk3 9 , jansson 10 + , nixosTests 11 }: 12 13 stdenv.mkDerivation { ··· 38 passthru.updateScript = unstableGitUpdater { 39 url = "https://github.com/paoloose/urn.git"; 40 }; 41 + 42 + passthru.tests.nixosTest = nixosTests.urn-timer; 43 44 meta = with lib; { 45 homepage = "https://github.com/paoloose/urn";
+4 -4
pkgs/tools/networking/pritunl-client/default.nix
··· 16 , openvpn 17 , electron 18 }: let 19 - version = "1.3.3584.5"; 20 src = fetchFromGitHub { 21 owner = "pritunl"; 22 repo = "pritunl-client-electron"; 23 rev = version; 24 - sha256 = "sha256-wWpP2u+oQSESjkRvAn5by7efvssYtKBYg2E+FZ/+tg0="; 25 }; 26 27 cli = buildGoModule { ··· 29 inherit version src; 30 31 modRoot = "cli"; 32 - vendorHash = "sha256-miwGLWpoaavg/xcw/0pNBYCdovBnvjP5kdaaGPcRuWk="; 33 34 postInstall = '' 35 mv $out/bin/cli $out/bin/pritunl-client ··· 41 inherit version src; 42 43 modRoot = "service"; 44 - vendorHash = "sha256-9Fv8m3eWlxv4WWDSdI0VMavgy+0OSIVZ98dkDBwm4Gc="; 45 46 nativeBuildInputs = [ makeWrapper ]; 47
··· 16 , openvpn 17 , electron 18 }: let 19 + version = "1.3.3785.81"; 20 src = fetchFromGitHub { 21 owner = "pritunl"; 22 repo = "pritunl-client-electron"; 23 rev = version; 24 + sha256 = "sha256-0tlWX9vHiFHewiisI8lwsQdHyEhntu+x415hfbymhIo="; 25 }; 26 27 cli = buildGoModule { ··· 29 inherit version src; 30 31 modRoot = "cli"; 32 + vendorHash = "sha256-1sAJbEZHagG6hnZBkb6EbQpSdNmTyTWfKpbektXSWYU="; 33 34 postInstall = '' 35 mv $out/bin/cli $out/bin/pritunl-client ··· 41 inherit version src; 42 43 modRoot = "service"; 44 + vendorHash = "sha256-QvuEQX1+sJOGB1AJNhnM3pVPxGmizDu8EN1yRspXjhU="; 45 46 nativeBuildInputs = [ makeWrapper ]; 47
+3 -3
pkgs/tools/package-management/nix-doc/default.nix
··· 2 3 rustPlatform.buildRustPackage rec { 4 pname = "nix-doc"; 5 - version = "0.6.4"; 6 7 src = fetchFromGitHub { 8 rev = "v${version}"; 9 owner = "lf-"; 10 repo = "nix-doc"; 11 - sha256 = "sha256-yL0oG0NiQ7OdGQ/kZxQbSbNphKapu5HBFNP5E2fVe+Y="; 12 }; 13 14 doCheck = true; ··· 29 RUSTFLAGS = "-Z relro-level=partial"; 30 }; 31 32 - cargoSha256 = "sha256-4bzLZt45ZLTZyZPZ4Nkvz7mNe4oqOIoaZUbCbNWBKG0="; 33 34 meta = with lib; { 35 description = "An interactive Nix documentation tool";
··· 2 3 rustPlatform.buildRustPackage rec { 4 pname = "nix-doc"; 5 + version = "0.6.5"; 6 7 src = fetchFromGitHub { 8 rev = "v${version}"; 9 owner = "lf-"; 10 repo = "nix-doc"; 11 + sha256 = "sha256-9cuNzq+CBA2jz0LkZb7lh/WISIlKklfovGBAbSo1Mgk="; 12 }; 13 14 doCheck = true; ··· 29 RUSTFLAGS = "-Z relro-level=partial"; 30 }; 31 32 + cargoSha256 = "sha256-CHagzXTG9AfrFd3WmHanQ+YddMgmVxSuB8vK98A1Mlw="; 33 34 meta = with lib; { 35 description = "An interactive Nix documentation tool";
+11 -2
pkgs/tools/virtualization/mkosi/default.nix
··· 45 in 46 buildPythonApplication rec { 47 pname = "mkosi"; 48 - version = "20.1"; 49 format = "pyproject"; 50 51 outputs = [ "out" "man" ]; ··· 54 owner = "systemd"; 55 repo = "mkosi"; 56 rev = "v${version}"; 57 - hash = "sha256-gkn5d9ybfrV/QYKSUyzyHAouU++NCEBDT22zFMrEZt8="; 58 }; 59 60 # Fix ctypes finding library 61 # https://github.com/NixOS/nixpkgs/issues/7307
··· 45 in 46 buildPythonApplication rec { 47 pname = "mkosi"; 48 + version = "20.2"; 49 format = "pyproject"; 50 51 outputs = [ "out" "man" ]; ··· 54 owner = "systemd"; 55 repo = "mkosi"; 56 rev = "v${version}"; 57 + hash = "sha256-+mvepzoswDVIHzj+rEnlr0ouphGv5unpaNX3U8x517Y="; 58 }; 59 + 60 + patches = [ 61 + # sandbox: Deal correctly with unmerged-usr. 62 + # Remove on next release after v20.2. 63 + (fetchpatch { 64 + url = "https://github.com/systemd/mkosi/commit/5a708efdb432dee9c6e5a9a4754752359cac8944.patch"; 65 + hash = "sha256-dXkY8Hha6y9CoZC1WdtZuI/YJsOQ1fOt4o4RsPkGWYQ="; 66 + }) 67 + ]; 68 69 # Fix ctypes finding library 70 # https://github.com/NixOS/nixpkgs/issues/7307
+1 -1
pkgs/top-level/aliases.nix
··· 705 ### N ### 706 707 ncdu_2 = ncdu; # Added 2022-07-22 708 - 709 net_snmp = throw "'net_snmp' has been renamed to/replaced by 'net-snmp'"; # Converted to throw 2023-09-10 710 netbox_3_3 = throw "netbox 3.3 series has been removed as it was EOL"; # Added 2023-09-02 711 netbox_3_5 = throw "netbox 3.5 series has been removed as it was EOL"; # Added 2024-01-22
··· 705 ### N ### 706 707 ncdu_2 = ncdu; # Added 2022-07-22 708 + nestopia = throw "nestopia was forked; use nestopia-ue instead"; # Added 2024-01-24 709 net_snmp = throw "'net_snmp' has been renamed to/replaced by 'net-snmp'"; # Converted to throw 2023-09-10 710 netbox_3_3 = throw "netbox 3.3 series has been removed as it was EOL"; # Added 2023-09-02 711 netbox_3_5 = throw "netbox 3.5 series has been removed as it was EOL"; # Added 2024-01-22
-10
pkgs/top-level/all-packages.nix
··· 258 259 ariang = callPackage ../servers/ariang { }; 260 261 - mov-cli = callPackage ../applications/video/mov-cli { }; 262 - 263 ani-cli = callPackage ../applications/video/ani-cli { }; 264 265 dra-cla = callPackage ../applications/video/dra-cla { }; ··· 2767 mgba = libsForQt5.callPackage ../applications/emulators/mgba { }; 2768 2769 mupen64plus = callPackage ../applications/emulators/mupen64plus { }; 2770 - 2771 - nestopia = callPackage ../applications/emulators/nestopia { }; 2772 2773 np2kai = callPackage ../applications/emulators/np2kai { }; 2774 ··· 8243 faraday-agent-dispatcher = callPackage ../tools/security/faraday-agent-dispatcher { }; 8244 8245 faraday-cli = callPackage ../tools/security/faraday-cli { }; 8246 - 8247 - farge = callPackage ../tools/misc/farge { }; 8248 8249 fastlane = callPackage ../tools/admin/fastlane { }; 8250 ··· 25212 25213 tdlib = callPackage ../development/libraries/tdlib { }; 25214 25215 - tecla = callPackage ../development/libraries/tecla { }; 25216 - 25217 tectonic = callPackage ../tools/typesetting/tectonic/wrapper.nix { }; 25218 25219 tectonic-unwrapped = callPackage ../tools/typesetting/tectonic { ··· 28978 baekmuk-ttf = callPackage ../data/fonts/baekmuk-ttf { }; 28979 28980 bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; 28981 - 28982 - banana-cursor = callPackage ../data/icons/banana-cursor { }; 28983 28984 barlow = callPackage ../data/fonts/barlow { }; 28985
··· 258 259 ariang = callPackage ../servers/ariang { }; 260 261 ani-cli = callPackage ../applications/video/ani-cli { }; 262 263 dra-cla = callPackage ../applications/video/dra-cla { }; ··· 2765 mgba = libsForQt5.callPackage ../applications/emulators/mgba { }; 2766 2767 mupen64plus = callPackage ../applications/emulators/mupen64plus { }; 2768 2769 np2kai = callPackage ../applications/emulators/np2kai { }; 2770 ··· 8239 faraday-agent-dispatcher = callPackage ../tools/security/faraday-agent-dispatcher { }; 8240 8241 faraday-cli = callPackage ../tools/security/faraday-cli { }; 8242 8243 fastlane = callPackage ../tools/admin/fastlane { }; 8244 ··· 25206 25207 tdlib = callPackage ../development/libraries/tdlib { }; 25208 25209 tectonic = callPackage ../tools/typesetting/tectonic/wrapper.nix { }; 25210 25211 tectonic-unwrapped = callPackage ../tools/typesetting/tectonic { ··· 28970 baekmuk-ttf = callPackage ../data/fonts/baekmuk-ttf { }; 28971 28972 bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; 28973 28974 barlow = callPackage ../data/fonts/barlow { }; 28975