summaryrefslogtreecommitdiffstats
path: root/modules/desktop/apps/games
diff options
context:
space:
mode:
Diffstat (limited to 'modules/desktop/apps/games')
-rw-r--r--modules/desktop/apps/games/lunati.nix24
-rw-r--r--modules/desktop/apps/games/lutris.nix23
-rw-r--r--modules/desktop/apps/games/openttd.nix28
-rw-r--r--modules/desktop/apps/games/prism.nix23
-rw-r--r--modules/desktop/apps/games/steam.nix5
-rw-r--r--modules/desktop/apps/games/vintagestory.nix31
6 files changed, 134 insertions, 0 deletions
diff --git a/modules/desktop/apps/games/lunati.nix b/modules/desktop/apps/games/lunati.nix
new file mode 100644
index 0000000..1c06b4f
--- /dev/null
+++ b/modules/desktop/apps/games/lunati.nix
@@ -0,0 +1,24 @@
+{
+ config,
+ options,
+ lib,
+ pkgs,
+ rootPath,
+ ...
+}: let
+ luantiConf = config.modules.desktop.apps.games.luanti;
+ configDir = config.nixosConfig.configDir;
+in {
+ options.modules.desktop.apps.games.luanti = {
+ enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ };
+ };
+
+ config = lib.mkIf (luantiConf.enable) {
+ home.packages = with pkgs; [
+ luanti
+ ];
+ };
+}
diff --git a/modules/desktop/apps/games/lutris.nix b/modules/desktop/apps/games/lutris.nix
new file mode 100644
index 0000000..c1c5d31
--- /dev/null
+++ b/modules/desktop/apps/games/lutris.nix
@@ -0,0 +1,23 @@
+{
+ config,
+ options,
+ lib,
+ pkgs,
+ ...
+}: let
+ lutrisConf = config.modules.desktop.apps.games.lutris;
+ configDir = config.nixosConfig.configDir;
+in {
+ options.modules.desktop.apps.games.lutris = {
+ enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ };
+ };
+
+ config = lib.mkIf (lutrisConf.enable) {
+ environment.systemPackages = [
+ pkgs.lutris
+ ];
+ };
+}
diff --git a/modules/desktop/apps/games/openttd.nix b/modules/desktop/apps/games/openttd.nix
new file mode 100644
index 0000000..f66ccc0
--- /dev/null
+++ b/modules/desktop/apps/games/openttd.nix
@@ -0,0 +1,28 @@
+{
+ config,
+ options,
+ lib,
+ pkgs,
+ rootPath,
+ ...
+}: let
+ openttdConf = config.modules.desktop.apps.games.openttd;
+ configDir = config.nixosConfig.configDir;
+in {
+ options.modules.desktop.apps.games.openttd = {
+ enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ };
+ };
+
+ config = lib.mkIf (openttdConf.enable) {
+ home.packages = with pkgs; [
+ openttd
+ ];
+
+ fonts.packages = with pkgs; [
+ openttd-ttf
+ ];
+ };
+}
diff --git a/modules/desktop/apps/games/prism.nix b/modules/desktop/apps/games/prism.nix
new file mode 100644
index 0000000..d3ceee7
--- /dev/null
+++ b/modules/desktop/apps/games/prism.nix
@@ -0,0 +1,23 @@
+{
+ config,
+ options,
+ lib,
+ pkgs,
+ ...
+}: let
+ prismConf = config.modules.desktop.apps.games.prism;
+ configDir = config.nixosConfig.configDir;
+in {
+ options.modules.desktop.apps.games.prism = {
+ enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ };
+ };
+
+ config = lib.mkIf (prismConf.enable) {
+ environment.systemPackages = [
+ pkgs.prismlauncher
+ ];
+ };
+}
diff --git a/modules/desktop/apps/games/steam.nix b/modules/desktop/apps/games/steam.nix
index 50b5c62..51396f1 100644
--- a/modules/desktop/apps/games/steam.nix
+++ b/modules/desktop/apps/games/steam.nix
@@ -29,6 +29,11 @@ in {
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
gamescopeSession.enable = true;
+ protontricks.enable = true;
};
+
+ environment.systemPackages = with pkgs; [
+ protonup-qt
+ ];
};
}
diff --git a/modules/desktop/apps/games/vintagestory.nix b/modules/desktop/apps/games/vintagestory.nix
new file mode 100644
index 0000000..a15935a
--- /dev/null
+++ b/modules/desktop/apps/games/vintagestory.nix
@@ -0,0 +1,31 @@
+{
+ config,
+ options,
+ lib,
+ pkgs,
+ rootPath,
+ ...
+}: let
+ vsConf = config.modules.desktop.apps.games.vintagestory;
+ configDir = config.nixosConfig.configDir;
+in {
+ options.modules.desktop.apps.games.vintagestory = {
+ enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ };
+ };
+
+ config = lib.mkIf (vsConf.enable) {
+ home.manager.xdg.mimeApps = {
+ defaultApplications = {
+ "x-scheme-handler/vintagestoryjoin" = [ "Vintagestory_url_connect.desktop" ];
+ "x-scheme-handler/vintagestorymodinstall" = [ "Vintagestory_url_mod.desktop" ];
+ };
+ };
+
+ home.packages = with pkgs; [
+ (callPackage (rootPath + /packages/vintagestory/default.nix) {})
+ ];
+ };
+}