about summary refs log tree commit diff
path: root/pkgs/games/default.nix
Commit message (Collapse)AuthorAgeFilesLines
* games: Add a new gogUnpackHookaszlig2018-07-311-0/+1
| | | | | | | | | | | | | | | | | | This should make all the extra unpackCmd attributes for the GOG games superfluous and make the expression way less convoluted, especially the games based on Unity3D. Right now however, the gogUnpackHook is added to buildGame, which is used for all games, not only for the GOG ones. While it doesn't really hurt or affect non-GOG games, it's still part of the build closure so we might want to apply this to GOG only at some day. For that, we need to restructure our whole packaging layout, because we want to have a way to override buildGame only for a certain namespace but without introducing too much churn or duplicating things. Signed-off-by: aszlig <aszlig@nix.build> Cc: @layus
* pkgs: Fix passing through i686-linux package setaszlig2018-07-041-3/+4
| | | | | | | | | | | | | | | | | So far in the games namespace we have just used the callPackage_i686 function from <nixpkgs> instead of our augmented set. If we just use packages that are available in <nixpkgs> everything is fine, but as soon as we want to use one of our own packages for i686-linux we can't simply do that. One example is the override in the gog.albion derivation which just uses buildSandbox from the main pkgs attribute set. We now properly pass through the whole pkgsi686Linux set to the games namespace, so we can drop that hack for Albion. Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/games: Add a basic fetcher for GOGaszlig2018-02-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | We're in almost the same misery here as with HumbleBundle, because we can't get stable download URLs with manifests for games that have an "os" field of either "windows" or "osx". Unfortunately, this isn't the only hoop we're going to, because similar to the HumbleBundle fetcher, we need to solve a (re)captcha in order to login (and I've been annoyed by countless cars, street signs, roads, busses, store fronts, hills and mountains during development). I tried looking for a way to get an API key similar to what itch.io is doing, but the only mechanism in place is a temporary key which needs to be refreshed using the old key after a while, so it's unsuitable for our case. The code currently is very much _not_ DRY, because a lot of it is copied over and modified from fetchHumbleBundle, especially the captcha solving application. It's really a shame to see the same situation that we have for HumbleBundle in GOG, given that HB is getting less DRM-free games these days and GOG is DRM-free *only* (which is a very good thing). Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/games: Display error if config is omittedaszlig2017-11-211-2/+2
| | | | | | | This originally was in the nixgames repository but I accidentally omitted the attribute emitting the error message during refactoring. Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/games: Pass build-support to the top-levelaszlig2017-11-211-14/+16
| | | | | | | | We're going to add a test for our buildSandbox function, so we need to have the buildSandbox function available from outside the package scope and thus within the resulting attribute set. Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/games: Add build-support for pkgsi686Linuxaszlig2017-09-131-5/+10
| | | | | | | | So far we only had all the functions within build-support for builtins.currentSystem, but a few games we have within Vuizvui are still i686-linux. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* pkgs/build-game: Add runtimeDependencies attributeaszlig2017-09-131-0/+1
| | | | | | | This allows us to add libraries to the RPATH despite being required by the respective game. By default there is only PulseAudio at the moment. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* games/invisigun-heroes: Factor out into buildUnityaszlig2017-09-101-1/+6
| | | | | | | | | | | There are a lot of Unity games out there, so it's a good idea to have a generic builder just for Unity, which we then can apply to a lot more games. Right now this is a pretty basic abstraction which I've only tested with Invisigun Heroes. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* pkgs/games: Inline base-module.nixaszlig2017-09-101-1/+11
| | | | | | | This is such a short expression that really shouldn't belong in its own file, so that everything we want to know is there in default.nix. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* pkgs/games: Add Invisigun Heroesaszlig2017-08-251-1/+1
| | | | | | | | | | This introduces support for fetching games from itch.io, because the Humble Bundle version unfortunately only provides a Steam key and we obviously don't want that. I only played two levels, but so far it works as intended. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* pkgs: Hook in games into vuizvui package setaszlig2016-03-151-3/+4
| | | | | | | | | | New we can reference the games using pkgs.vuizvui.games.*, although game configuration currently still resorts to using ~/.config/nixgames.nix if there is no nixpkgs.config.vuizvui.games set. In this vein, this should also avoid Hydra to try to build those games, because those aren't publicly available for free. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Merge aszlig/nixgames into vuizvuiaszlig2016-02-081-0/+25
This is a subtree merge of the full nixgames repository including history. Right now it isn't linked to vuizvui at all but we're going to do that very soon. The reason why I'm merging both repositories together is that it's easier for me to manage updates and also facilitate contributions by people from the OpenLab. Another reason to merge it is that we can write more generic functions for building both, the games and the rest. Right now the licensing is still the Apache License version 2.0, but we're going to change it to the vuizvui license as well.