depot/third_party/nixpkgs/pkgs/applications/emulators/libretro
2024-12-13 20:54:23 +00:00
..
cores Merge commit 'fece082f6c165d89daf650c3b80a074079b8af50' into HEAD 2024-12-13 20:54:23 +00:00
default.nix Merge commit 'd287198d5ae23957317125ed3ecc5a3fc96db50e' into HEAD 2024-12-06 21:04:41 +00:00
mkLibretroCore.nix Merge commit 'd287198d5ae23957317125ed3ecc5a3fc96db50e' into HEAD 2024-12-06 21:04:41 +00:00
README.md Merge commit 'd287198d5ae23957317125ed3ecc5a3fc96db50e' into HEAD 2024-12-06 21:04:41 +00:00

Libretro

libretro cores and related packages.

Adding new cores

The basic steps to add a new core are:

  1. Add a new core using mkLibretroCore function (use one of the existing cores as an example)
  2. Add your new core to default.nix file
  3. Try to build your core with nix-build -A libretro.<core>

Using RetroArch with cores

To create a custom RetroArch derivation with the cores you want (instead of using retroarch-full that includes all cores), you can use .withCores like this:

{ pkgs, ... }:

let
  retroarchWithCores = (pkgs.retroarch.withCores (cores: with cores; [
    bsnes
    mgba
    quicknes
  ]));
in
{
  environment.systemPackages = [
    retroarchWithCores
  ];
}

For advanced customization, see wrapRetroArch wrapper.