diff --git a/flake.lock b/flake.lock index b9490b9..aa8c37d 100644 --- a/flake.lock +++ b/flake.lock @@ -1064,6 +1064,19 @@ "type": "github" } }, + "nixpkgs_9": { + "locked": { + "lastModified": 1775710090, + "narHash": "sha256-WGjBfvXv/mcg5yBg+AtK1Q3FHyXfjAAeJROmg7DLYfM=", + "rev": "4c1018dae018162ec878d42fec712642d214fdfa", + "type": "tarball", + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre977467.4c1018dae018/nixexprs.tar.xz" + }, + "original": { + "type": "tarball", + "url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz" + } + }, "nixvim": { "inputs": { "flake-parts": "flake-parts_4", @@ -1211,6 +1224,7 @@ "nixvim": "nixvim", "powerlevel10k": "powerlevel10k", "snowfall-lib": "snowfall-lib", + "spicetify-nix": "spicetify-nix", "zsh-syntax-highlighting": "zsh-syntax-highlighting" } }, @@ -1257,6 +1271,25 @@ "type": "github" } }, + "spicetify-nix": { + "inputs": { + "nixpkgs": "nixpkgs_9", + "systems": "systems_6" + }, + "locked": { + "lastModified": 1776126760, + "narHash": "sha256-Y/RrT7WdJe9B81ZSSRuSXktVyV5koWfcQIRHDqIIof4=", + "owner": "Gerg-L", + "repo": "spicetify-nix", + "rev": "8b00357d910c5281181c21fc3a0d071ceec80c06", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "spicetify-nix", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1681028828, @@ -1332,6 +1365,21 @@ "type": "github" } }, + "systems_6": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "treefmt-nix": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index be3cf28..fd223db 100644 --- a/flake.nix +++ b/flake.nix @@ -31,6 +31,8 @@ devenv.url = "github:cachix/devenv"; devenv.inputs.nixpkgs.follows = "nixpkgs"; + spicetify-nix.url = "github:Gerg-L/spicetify-nix"; + zsh-syntax-highlighting.url = "github:zsh-users/zsh-syntax-highlighting/master"; zsh-syntax-highlighting.flake = false; @@ -58,7 +60,10 @@ catppuccin.nixosModules.catppuccin ]; - homes.modules = with inputs; [ catppuccin.homeModules.catppuccin ]; + homes.modules = with inputs; [ + catppuccin.homeModules.catppuccin + spicetify-nix.homeManagerModules.spicetify + ]; outputs-builder = channels: { devShells.default = inputs.devenv.lib.mkShell { diff --git a/homes/x86_64-linux/alejandro@carbon/default.nix b/homes/x86_64-linux/alejandro@carbon/default.nix index f5ed070..7729c52 100644 --- a/homes/x86_64-linux/alejandro@carbon/default.nix +++ b/homes/x86_64-linux/alejandro@carbon/default.nix @@ -27,6 +27,8 @@ in aa.services.hypridle.suspendInhibitWhenPluggedIn = true; aa.windowManagers.sway.enable = lib.mkForce false; + aa.spicetify.enable = true; + wayland.windowManager.hyprland.settings.bindl = [ ", switch:off:Lid Switch, exec, ${clamshell_script}/bin/clamshell open" ", switch:on:Lid Switch, exec, ${clamshell_script}/bin/clamshell close" diff --git a/homes/x86_64-linux/alejandro@framework/default.nix b/homes/x86_64-linux/alejandro@framework/default.nix index 4c2f0d2..62b59a2 100644 --- a/homes/x86_64-linux/alejandro@framework/default.nix +++ b/homes/x86_64-linux/alejandro@framework/default.nix @@ -32,6 +32,8 @@ in ", switch:on:Lid Switch, exec, ${clamshell_script}/bin/clamshell close" ]; + aa.programs.spicetify.enable = true; + catppuccin.zathura.enable = true; programs.zathura.enable = true; } diff --git a/modules/home/programs/spicetify/default.nix b/modules/home/programs/spicetify/default.nix new file mode 100644 index 0000000..410bcbc --- /dev/null +++ b/modules/home/programs/spicetify/default.nix @@ -0,0 +1,29 @@ +{ + config, + lib, + namespace, + inputs, + pkgs, + ... +}: +let + cfg = config.${namespace}.programs.spicetify; + spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system}; +in +{ + options.${namespace}.programs.spicetify = { + enable = lib.mkEnableOption "spicetify"; + }; + + config = lib.mkIf cfg.enable { + programs.spicetify = { + enable = true; + colorScheme = "mocha"; + theme = spicePkgs.themes.catppuccin; + enabledExtensions = with spicePkgs.extensions; [ + keyboardShortcut + shuffle + ]; + }; + }; +}