diff --git a/flake.lock b/flake.lock index 9e1b536..e2d0798 100755 --- a/flake.lock +++ b/flake.lock @@ -458,6 +458,7 @@ "pre-commit-hooks-nix": "pre-commit-hooks-nix", "rust-overlay": "rust-overlay", "sops-nix": "sops-nix", + "spicetify-nix": "spicetify-nix", "systems": "systems", "tokyonight": "tokyonight", "wlroots": "wlroots", @@ -510,6 +511,29 @@ "type": "github" } }, + "spicetify-nix": { + "inputs": { + "flake-utils": [ + "flake-utils" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1699469086, + "narHash": "sha256-FC350WZKaTh+b0c3THfrJW9WNu1Y0oC9Y9F5z32gIFk=", + "owner": "the-argus", + "repo": "spicetify-nix", + "rev": "f395fe14de6d934159d3aa5cc904bbb41f1ea053", + "type": "github" + }, + "original": { + "owner": "the-argus", + "repo": "spicetify-nix", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1689347949, diff --git a/flake.nix b/flake.nix index 0e2dcfe..fa61f1b 100755 --- a/flake.nix +++ b/flake.nix @@ -57,6 +57,11 @@ inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs-stable.follows = "nixpkgs-stable"; }; + spicetify-nix = { + url = "github:the-argus/spicetify-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.flake-utils.follows = "flake-utils"; + }; ### De-dupe crane = { @@ -154,6 +159,7 @@ lanzaboote, nix-darwin, sops-nix, + spicetify-nix, impermanence, tokyonight, metacubexd, @@ -192,6 +198,7 @@ ./users/guanranwang/home-manager/nixos/presets/desktop/gaming.nix ./users/guanranwang/home-manager/nixos/presets/desktop/torrenting.nix ]; + home-manager.extraSpecialArgs = {inherit spicetify-nix;}; # im consfused ### Options myFlake.nixos.boot.noLoaderMenu = true; diff --git a/users/guanranwang/home-manager/nixos/home.nix b/users/guanranwang/home-manager/nixos/home.nix index 0539a55..6a50cf6 100644 --- a/users/guanranwang/home-manager/nixos/home.nix +++ b/users/guanranwang/home-manager/nixos/home.nix @@ -9,7 +9,6 @@ gparted timeshift mpv - spicetify-cli ### matrix #fluffychat @@ -19,7 +18,6 @@ ### music easyeffects - spotify yesplaymusic amberol netease-cloud-music-gtk diff --git a/users/guanranwang/home-manager/nixos/presets/desktop.nix b/users/guanranwang/home-manager/nixos/presets/desktop.nix index 7b3abf0..e09a88a 100644 --- a/users/guanranwang/home-manager/nixos/presets/desktop.nix +++ b/users/guanranwang/home-manager/nixos/presets/desktop.nix @@ -19,6 +19,7 @@ ../dotfiles.nix ../fonts.nix ../i18n.nix + ../spicetify.nix ../theme.nix ]; } diff --git a/users/guanranwang/home-manager/nixos/spicetify.nix b/users/guanranwang/home-manager/nixos/spicetify.nix new file mode 100644 index 0000000..d2685e8 --- /dev/null +++ b/users/guanranwang/home-manager/nixos/spicetify.nix @@ -0,0 +1,26 @@ +{ + pkgs, + lib, + spicetify-nix, + ... +}: let + spicePkgs = spicetify-nix.packages.${pkgs.system}.default; +in { + # allow spotify to be installed if you don't have unfree enabled already + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) [ + "spotify" + ]; + + # import the flake's module for your system + imports = [spicetify-nix.homeManagerModule]; + + # configure spicetify :) + programs.spicetify = { + enable = true; + enabledExtensions = with spicePkgs.extensions; [ + adblock + keyboardShortcut + ]; + }; +}