Files
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00
..
2025-10-09 14:15:47 +02:00
2025-10-09 14:15:47 +02:00
2025-10-09 14:15:47 +02:00
2025-10-09 14:15:47 +02: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.