75 lines
2.4 KiB
Nix
75 lines
2.4 KiB
Nix
{
|
|
description = "A flake for running pokemon fangames, often via wine";
|
|
|
|
inputs.erosanix.url = "github:emmanuelrosa/erosanix";
|
|
inputs.erosanix.inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
erosanix,
|
|
...
|
|
} @ inputs:
|
|
let
|
|
systems = nixpkgs.lib.systems.flakeExposed;
|
|
forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f rec {
|
|
inherit system;
|
|
inherit (nixpkgs.legacyPackages.${system}) pkgs lib;
|
|
});
|
|
in nixpkgs.lib.recursiveUpdate {
|
|
|
|
lib = forAllSystems ({ pkgs, system, ... }: pkgs.callPackage ./pkgs/fetchers.nix {
|
|
inherit (self.packages.${system}) badown mediafire-dl;
|
|
});
|
|
|
|
packages = forAllSystems ({ pkgs, ... }: {
|
|
badown = pkgs.callPackage ./pkgs/badown.nix {};
|
|
mediafire-dl = pkgs.python3Packages.callPackage ./pkgs/mediafire-dl.nix {};
|
|
});
|
|
|
|
}{
|
|
# mkWindowsApp resources:
|
|
# - https://github.com/emmanuelrosa/erosanix/tree/master/pkgs/mkwindowsapp
|
|
# - https://github.com/emmanuelrosa/sumatrapdf-nix/blob/master/sumatrapdf.nix
|
|
|
|
packages.x86_64-linux = with nixpkgs.legacyPackages.x86_64-linux; let
|
|
callPackage = newScope (
|
|
{ wine = wineWowPackages.full; wineArch = "win64"; }
|
|
// self.lib.x86_64-linux
|
|
// erosanix.lib.x86_64-linux
|
|
);
|
|
in rec {
|
|
|
|
pokemon-infinite-fusion = callPackage ./games/infinite-fusion.nix {
|
|
legacy-version = false;
|
|
};
|
|
|
|
pokemon-infinite-fusion-legacy = callPackage ./games/infinite-fusion.nix {
|
|
legacy-version = true;
|
|
wine = winePackages.full;
|
|
wineArch = "win32";
|
|
};
|
|
|
|
pokemon-project-untamed = callPackage ./games/project-untamed.nix { };
|
|
|
|
pokemon-infinity = callPackage ./games/infinity.nix { wine = winePackages.full; wineArch = "win32"; };
|
|
|
|
pokemon-uranium = callPackage ./games/uranium.nix { wine = winePackages.full; wineArch = "win32"; };
|
|
|
|
pokemon-clockwork = callPackage ./games/clockwork.nix { wine = winePackages.full; wineArch = "win32"; };
|
|
|
|
pokemon-xenoverse = callPackage ./games/xenoverse.nix { wine = winePackages.full; wineArch = "win32"; };
|
|
|
|
pokemon-anil = callPackage ./games/anil.nix { wine = winePackages.full; wineArch = "win32"; };
|
|
|
|
};
|
|
|
|
# a mkWindowsApp garbage-collect tool
|
|
apps.x86_64-linux.gc = {
|
|
type = "app";
|
|
program = "${erosanix.packages.x86_64-linux.mkwindowsapp-tools}/bin/mkwindows-tools-gc";
|
|
};
|
|
|
|
};
|
|
}
|