blob: 8be6fa16034f33b6e461b180661edcb850ab8065 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
{ config, lib, pkgs, ... }:
let
cfg = config.humblebundle;
self = rec {
callPackage = pkgs.lib.callPackageWith (pkgs // self);
callPackage_i686 = pkgs.lib.callPackageWith (pkgs.pkgsi686Linux // self);
fetchHumbleBundle = callPackage ./fetch-humble-bundle {
inherit (config.humblebundle) email password;
};
bastion = callPackage ./bastion.nix {};
cavestoryplus = callPackage ./cavestoryplus.nix {};
fez = callPackage ./fez.nix {};
ftl = callPackage ./ftl.nix {};
guacamelee = callPackage_i686 ./guacamelee.nix {};
hammerwatch = callPackage ./hammerwatch.nix {};
jamestown = callPackage ./jamestown.nix {};
megabytepunch = callPackage ./megabytepunch.nix {};
rocketbirds = callPackage ./rocketbirds.nix {};
spaz = callPackage ./spaz.nix {};
swordsandsoldiers = callPackage ./swordsandsoldiers.nix {};
};
in with lib; {
options.humblebundle = {
email = mkOption {
type = types.nullOr types.str;
default = null;
description = ''
Email address for your HumbleBundle account.
'';
};
password = mkOption {
type = types.nullOr types.str;
default = null;
description = ''
Password for your HumbleBundle account.
'';
};
};
config.packages = {
humblebundle = mkIf (cfg.email != null && cfg.password != null) self;
};
}
|