Now the output of “nix-env” should be: $ nix-env -qa -f . -A dwarf-fortress-packages afro-graphics-44.10 autoreiv-44.03 cla-44.xx-v25 dwarf-fortress-0.43.05 dwarf-fortress-0.44.05 dwarf-fortress-0.44.09 dwarf-fortress-0.44.10 dwarf-fortress-0.44.11 dwarf-fortress-0.44.12 dwarf-therapist-40.1.0 gemset-44.10a ironhand-44.10 jolly-bastion-44.10 legends-browser-1.17.1 mayday-44.10 obsidian-44.10 phoebus-44.10 rally-ho-44.10 soundsense-2016-1_196 spacefox-44.10a taffer-44.10a tergel-44.03 wanderlust-44.10
51 lines
1.5 KiB
Nix
51 lines
1.5 KiB
Nix
{ pkgs, stdenv, stdenvNoCC, gccStdenv, lib, recurseIntoAttrs }:
|
|
|
|
let
|
|
callPackage = pkgs.newScope self;
|
|
|
|
df-games = lib.listToAttrs (map (dfVersion: {
|
|
name = "dwarf-fortress_${lib.replaceStrings ["."] ["_"] dfVersion}";
|
|
value = callPackage ./wrapper {
|
|
inherit (self) themes;
|
|
dwarf-fortress = callPackage ./game.nix { inherit dfVersion; };
|
|
};
|
|
}) (lib.attrNames self.df-hashes));
|
|
|
|
self = rec {
|
|
df-hashes = builtins.fromJSON (builtins.readFile ./game.json);
|
|
dwarf-fortress = df-games.dwarf-fortress_0_44_11;
|
|
|
|
dfhack = callPackage ./dfhack {
|
|
inherit (pkgs.perlPackages) XMLLibXML XMLLibXSLT;
|
|
stdenv = gccStdenv;
|
|
};
|
|
|
|
soundSense = callPackage ./soundsense.nix { };
|
|
|
|
# unfuck is linux-only right now, we will just use it there
|
|
dwarf-fortress-unfuck = if stdenv.isLinux then callPackage ./unfuck.nix { }
|
|
else null;
|
|
|
|
dwarf-therapist = callPackage ./dwarf-therapist/wrapper.nix {
|
|
inherit (dwarf-fortress) dwarf-fortress;
|
|
dwarf-therapist = pkgs.qt5.callPackage ./dwarf-therapist {
|
|
texlive = pkgs.texlive.combine {
|
|
inherit (pkgs.texlive) scheme-basic float caption wrapfig adjmulticol sidecap preprint enumitem;
|
|
};
|
|
};
|
|
};
|
|
|
|
legends-browser = callPackage ./legends-browser {};
|
|
|
|
themes = recurseIntoAttrs (callPackage ./themes {
|
|
stdenv = stdenvNoCC;
|
|
});
|
|
|
|
# aliases
|
|
phoebus-theme = themes.phoebus;
|
|
cla-theme = themes.cla;
|
|
dwarf-fortress-original = dwarf-fortress.dwarf-fortress;
|
|
};
|
|
|
|
in self // df-games
|