diff --git a/flake.lock b/flake.lock index e7ba3d4..7b82db4 100644 --- a/flake.lock +++ b/flake.lock @@ -405,6 +405,24 @@ "type": "github" } }, + "flake-utils_5": { + "inputs": { + "systems": "systems_5" + }, + "locked": { + "lastModified": 1685518550, + "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "flakeCompat": { "flake": false, "locked": { @@ -830,6 +848,22 @@ } }, "nixpkgs_4": { + "locked": { + "lastModified": 1686020360, + "narHash": "sha256-Wee7lIlZ6DIZHHLiNxU5KdYZQl0iprENXa/czzI6Cj4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "4729ffac6fd12e26e5a8de002781ffc49b0e94b7", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1691853136, "narHash": "sha256-wTzDsRV4HN8A2Sl0SVQY0q8ILs90CD43Ha//7gNZE+E=", @@ -966,8 +1000,9 @@ "nixpkgs-wayland": "nixpkgs-wayland", "nixseparatedebuginfod": "nixseparatedebuginfod", "pre-commit-hooks": "pre-commit-hooks_2", + "spicetify-nix": "spicetify-nix", "stylix": "stylix", - "systems": "systems_5", + "systems": "systems_6", "templates": "templates", "wired-notify": "wired-notify" } @@ -997,12 +1032,31 @@ "type": "github" } }, + "spicetify-nix": { + "inputs": { + "flake-utils": "flake-utils_5", + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1693075322, + "narHash": "sha256-O/qmWiE23pzYMSKNhA74jfY1D5TyiJrHx35PYkRx9Gs=", + "owner": "the-argus", + "repo": "spicetify-nix", + "rev": "78495ade242ad155942c2e33e3930e4a05963f13", + "type": "github" + }, + "original": { + "owner": "the-argus", + "repo": "spicetify-nix", + "type": "github" + } + }, "stylix": { "inputs": { "base16": "base16", "flake-compat": "flake-compat_5", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1694375893, @@ -1093,6 +1147,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" + } + }, "templates": { "locked": { "lastModified": 1696855554, diff --git a/flake.nix b/flake.nix index ac6fe7b..a6c91eb 100644 --- a/flake.nix +++ b/flake.nix @@ -76,11 +76,14 @@ }; stylix.url = "github:danth/stylix"; + wired-notify = { url = "github:Toqozz/wired-notify"; inputs.nixpkgs.follows = "nixpkgs"; inputs.utils.follows = "flake-utils"; }; + + spicetify-nix.url = "github:the-argus/spicetify-nix"; }; outputs = { diff --git a/modules/config/home-manager.nix b/modules/config/home-manager.nix index f93742e..bcb6f76 100644 --- a/modules/config/home-manager.nix +++ b/modules/config/home-manager.nix @@ -1,18 +1,23 @@ { stateVersion, inputs, + pkgs, ... }: { home-manager = { useGlobalPkgs = true; useUserPackages = true; verbose = true; + extraSpecialArgs = { + spicePkgs = inputs.spicetify-nix.packages.${pkgs.system}.default; + }; sharedModules = [ { home.stateVersion = stateVersion; } inputs.nix-index-database.hmModules.nix-index inputs.wired-notify.homeManagerModules.default + inputs.spicetify-nix.homeManagerModule ]; }; # HM zsh needs this or else the startup order is fucked diff --git a/users/common/programs/spicetify.nix b/users/common/programs/spicetify.nix new file mode 100644 index 0000000..89a14c9 --- /dev/null +++ b/users/common/programs/spicetify.nix @@ -0,0 +1,19 @@ +{spicePkgs, ...}: { + programs.spicetify = { + enable = true; + theme = spicePkgs.themes.RetroBlur; + colorScheme = "Purple"; + + enabledExtensions = with spicePkgs.extensions; [ + fullAppDisplay + shuffle # shuffle+ (special characters are sanitized out of ext names) + hidePodcasts + popupLyrics + fullAlbumDate + skipStats + showQueueDuration + history + volumePercentage + ]; + }; +} diff --git a/users/patrick/default.nix b/users/patrick/default.nix index 3011752..3d13f01 100644 --- a/users/patrick/default.nix +++ b/users/patrick/default.nix @@ -58,6 +58,7 @@ lib.optionalAttrs (!minimal) { ../common/programs/firefox.nix ../common/programs/kitty.nix ../common/programs/thunderbird.nix + ../common/programs/spicetify.nix ] ++ { "desktopnix" = [ diff --git a/users/patrick/patrick.nix b/users/patrick/patrick.nix index 761f4b0..33b44bd 100644 --- a/users/patrick/patrick.nix +++ b/users/patrick/patrick.nix @@ -11,7 +11,6 @@ signal-desktop telegram-desktop chromium - spotify ]; }; }