about summary refs log tree commit diff
path: root/pkgs/games/itch/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/itch/default.nix')
-rw-r--r--pkgs/games/itch/default.nix28
1 files changed, 28 insertions, 0 deletions
diff --git a/pkgs/games/itch/default.nix b/pkgs/games/itch/default.nix
new file mode 100644
index 00000000..34ffc6ed
--- /dev/null
+++ b/pkgs/games/itch/default.nix
@@ -0,0 +1,28 @@
+{ config, lib, pkgs, ... }:
+
+let
+  cfg = config.itch;
+
+  self = rec {
+    callPackage = pkgs.lib.callPackageWith (pkgs // self);
+    callPackage_i686 = pkgs.lib.callPackageWith (pkgs.pkgsi686Linux // self);
+
+    fetchItch = callPackage ./fetch-itch {
+      inherit (config.itch) apiKey;
+    };
+
+    invisigun-heroes = callPackage ./invisigun-heroes.nix {};
+  };
+in {
+  options.itch.apiKey = lib.mkOption {
+    type = lib.types.nullOr lib.types.str;
+    default = null;
+    description = ''
+      The API key of your <link xlink:href="https://itch.io/">itch.io</link>
+      account, can be retrieved by heading to <link
+      xlink:href="https://itch.io/user/settings/api-keys"/>.
+    '';
+  };
+
+  config.packages.itch = lib.mkIf (cfg.apiKey != null) self;
+}