Originally forked from the-argus which forked from pietdevries94 deleted and re-made repo for discoverability as github does not like to show forks in the search
Modifies Spotify using spicetify-cli.
nix run github:Gerg-L/spicetify-nix#test
Add this flake as an input
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
or import
the base of this repo with a fetchTarball
passing pkgs
like import (builtins.fetchTarball { ... } ) {inherit pkgs;}
Then use one of the modules or spicetify-nix.lib.mkSpicetify
The wrapper takes two arguments pkgs
and then an attribute set of config options
let
spicetify = spicetify-nix.lib.mkSpicetify pkgs {
#config options
};
in {
...
then add it to environment.systemPackages
or users.users.<name>.packages
or anywhere you can add a package
Import {nixosModules,darwinModules,homeManagerModules}.spicetify
into your respective config
and use the programs.spicetify
options
programs.spicetify = {
enable = true;
#config options
and it'll install the wrapped spotify to environment.systemPackages
or home.packages
To not install by default use programs.spicetify.dontInstall = true;
Use: config.programs.spicetify.spicedSpotify
instead of pkgs.spotify
to reference the spiced Spotify package
let
# For Flakeless:
# spicePkgs = spicetify-nix.packages;
# With flakes:
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.system};
in
programs.spicetify = {
enable = true;
enabledExtensions = with spicePkgs.extensions; [
adblockify
hidePodcasts
shuffle # shuffle+ (special characters are sanitized out of extension names)
];
theme = spicePkgs.themes.catppuccin;
colorScheme = "mocha";
}
See the generated docs: https://gerg-l.github.io/spicetify-nix/options.html
Are found in THEMES.md, EXTENSIONS.md, and CUSTOMAPPS.md, respectively.