diff options
Diffstat (limited to 'modules/users/media')
| -rw-r--r-- | modules/users/media/default.nix | 7 | ||||
| -rw-r--r-- | modules/users/media/nixcord/default.nix | 42 | ||||
| -rw-r--r-- | modules/users/media/spicetify/default.nix | 45 |
3 files changed, 94 insertions, 0 deletions
diff --git a/modules/users/media/default.nix b/modules/users/media/default.nix new file mode 100644 index 0000000..89daaba --- /dev/null +++ b/modules/users/media/default.nix @@ -0,0 +1,7 @@ +{ ... }: +{ + imports = [ + ./nixcord + ./spicetify + ]; +} diff --git a/modules/users/media/nixcord/default.nix b/modules/users/media/nixcord/default.nix new file mode 100644 index 0000000..329fa18 --- /dev/null +++ b/modules/users/media/nixcord/default.nix @@ -0,0 +1,42 @@ +{ + config, + lib, + inputs, + ... +}: +let + cfg = config.nx.media.nixcord; + inherit (lib) mkOption types mkIf; +in +{ + imports = [ inputs.nixcord.homeModules.nixcord ]; + options.nx.media.nixcord = { + enable = lib.mkOption { + description = "Enable nixcord and setup"; + type = types.bool; + default = false; + }; + frameless = mkOption { + description = "Make discord frameless"; + type = types.bool; + default = true; + }; + }; + config = mkIf cfg.enable { + programs.nixcord = { + enable = true; + config = { + themeLinks = [ + "https://refact0r.github.io/system24/theme/system24.theme.css" + ]; + frameless = cfg.frameless; + plugins = { + alwaysAnimate.enable = false; + imageLink.enable = true; + imageZoom.enable = true; + translate.enable = true; + }; + }; + }; + }; +} diff --git a/modules/users/media/spicetify/default.nix b/modules/users/media/spicetify/default.nix new file mode 100644 index 0000000..239f80f --- /dev/null +++ b/modules/users/media/spicetify/default.nix @@ -0,0 +1,45 @@ +{ + config, + lib, + pkgs, + inputs, + ... +}: + +let + spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.system}; + cfg = config.nx.media.spicetify; + inherit (lib) mkOption types mkIf; +in +{ + imports = [ inputs.spicetify-nix.homeManagerModules.spicetify ]; + + options.nx.media.spicetify = { + enable = mkOption { + description = "Command-line tool to customize the official Spotify client"; + type = types.bool; + default = false; + }; + }; + + config = mkIf cfg.enable { + nixpkgs.config.allowUnfree = true; + programs.spicetify = { + enable = true; + enabledSnippets = with spicePkgs.snippets; [ + pointer + sonicDancing + modernScrollbar + nyanCatProgressBar + declutterNowPlayingBar + ]; + + enabledExtensions = with spicePkgs.extensions; [ + keyboardShortcut + ]; + + theme = spicePkgs.themes.sleek; + colorScheme = "Coral"; + }; + }; +} |
