diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/programs/heroic/default.nix | 4 | ||||
| -rw-r--r-- | modules/programs/heroic/nexus-mods.nix | 36 | ||||
| -rw-r--r-- | modules/scripts/fzf-launcher.sh | 1 |
3 files changed, 41 insertions, 0 deletions
diff --git a/modules/programs/heroic/default.nix b/modules/programs/heroic/default.nix index d0bd0d1..5b2a07a 100644 --- a/modules/programs/heroic/default.nix +++ b/modules/programs/heroic/default.nix @@ -7,6 +7,10 @@ # Heroic Games Launcher - An elegant UI for Epic, GOG, and Amazon Games using UMU under the hood { + imports = [ + ./nexus-mods.nix + ]; + options.programs.heroic = { enable = lib.mkEnableOption "Enables Heroic Games Launcher."; package = lib.mkOption { diff --git a/modules/programs/heroic/nexus-mods.nix b/modules/programs/heroic/nexus-mods.nix new file mode 100644 index 0000000..8adc7bf --- /dev/null +++ b/modules/programs/heroic/nexus-mods.nix @@ -0,0 +1,36 @@ +{ + config, + pkgs, + lib, + ... +}: + +# Nexus Mods - for Modding Games +{ + options.programs.heroic.nexus-mods = { + enable = lib.mkEnableOption "Enables NexusMods."; + package = lib.mkOption { + type = lib.types.package; + default = pkgs.nexusmods-app-unfree; + description = "Package for NexusMods app, used to mod games."; + }; + }; + + config = lib.mkIf config.programs.heroic.enable { + home.packages = [ config.programs.heroic.nexus-mods.package ]; + + xdg.mimeApps = { + enable = true; + defaultApplications = { + "x-scheme-handler/nxm" = [ "nexusmods-app.desktop" ]; + }; + }; + + nixpkgs.config = { + allowUnfree = true; + permittedInsecurePackages = [ + "nexusmods-app-unfree-0.21.1" + ]; + }; + }; +} diff --git a/modules/scripts/fzf-launcher.sh b/modules/scripts/fzf-launcher.sh index a1ab292..43c1108 100644 --- a/modules/scripts/fzf-launcher.sh +++ b/modules/scripts/fzf-launcher.sh @@ -9,6 +9,7 @@ entries="" for dir in "${DIRS[@]}"; do [[ -d "$dir" ]] || continue + setopt nullglob for f in "$dir"/*.desktop; do [[ -f "$f" ]] || continue |
