Add spotify+spicetify

This commit is contained in:
ItsDrike 2024-06-10 21:58:06 +02:00
parent 21cf34330e
commit 1fc8542b60
Signed by: ItsDrike
GPG key ID: FA2745890B7048C0
8 changed files with 120 additions and 1 deletions

View file

@ -88,6 +88,24 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"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"
}
},
"gitignore": { "gitignore": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -240,7 +258,8 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"impermanence": "impermanence", "impermanence": "impermanence",
"lanzaboote": "lanzaboote", "lanzaboote": "lanzaboote",
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs",
"spicetify": "spicetify"
} }
}, },
"rust-overlay": { "rust-overlay": {
@ -268,6 +287,27 @@
"type": "github" "type": "github"
} }
}, },
"spicetify": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1704167711,
"narHash": "sha256-kFDq+kf/Di/P8bq5sUP8pVwRkrSVrABksBjMPmLic3s=",
"owner": "the-argus",
"repo": "spicetify-nix",
"rev": "1325416f951d6a82cfddb1289864ad782e2b87c4",
"type": "github"
},
"original": {
"owner": "the-argus",
"repo": "spicetify-nix",
"type": "github"
}
},
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
@ -282,6 +322,21 @@
"repo": "default", "repo": "default",
"type": "github" "type": "github"
} }
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -17,6 +17,11 @@
url = "github:nix-community/lanzaboote/v0.3.0"; url = "github:nix-community/lanzaboote/v0.3.0";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
spicetify = {
url = "github:the-argus/spicetify-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = {self, nixpkgs, ...} @ inputs: let outputs = {self, nixpkgs, ...} @ inputs: let

View file

@ -0,0 +1,5 @@
_: {
imports = [
./spotify
];
}

View file

@ -0,0 +1,45 @@
{
lib,
osConfig,
inputs,
pkgs,
...
}: let
inherit (lib) mkIf;
cfg = osConfig.myOptions.home-manager.programs.spotify;
spicePkgs = inputs.spicetify.packages.${pkgs.system}.default;
in {
imports = [inputs.spicetify.homeManagerModule];
config = mkIf cfg.enable {
programs.spicetify = {
enable = true;
injectCss = true;
replaceColors = true;
overwriteAssets = true;
sidebarConfig = true;
enabledCustomApps = with spicePkgs.apps; [
lyrics-plus
new-releases
];
theme = spicePkgs.themes.catppuccin;
colorScheme = "mocha";
enabledExtensions = with spicePkgs.extensions; [
fullAppDisplay
shuffle # shuffle+ (special characters are sanitized out of ext names)
hidePodcasts
playlistIcons
lastfm
historyShortcut
bookmark
fullAlbumDate
groupSession
popupLyrics
# TODO: genre, see: https://github.com/the-argus/spicetify-nix/issues/50
];
};
};
}

View file

@ -2,5 +2,6 @@ _: {
imports = [ imports = [
./wms ./wms
./launchers ./launchers
./apps
]; ];
} }

View file

@ -12,6 +12,7 @@ in
{ {
vboxnix = lib.nixosSystem { vboxnix = lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { inherit lib inputs self; };
modules = [ modules = [
./vbox_nix ./vbox_nix
inputs.home-manager.nixosModules.home-manager inputs.home-manager.nixosModules.home-manager
@ -22,6 +23,7 @@ in
herugrim = lib.nixosSystem { herugrim = lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { inherit lib inputs self; };
modules = [ modules = [
./herugrim ./herugrim
inputs.home-manager.nixosModules.home-manager inputs.home-manager.nixosModules.home-manager

View file

@ -93,6 +93,10 @@
"eDP-1, 1920x1080@60, 0x0, 1" "eDP-1, 1920x1080@60, 0x0, 1"
]; ];
}; };
programs = {
spotify.enable = true;
};
}; };
}; };
} }

View file

@ -11,5 +11,7 @@ in
description = "Enable Walker launcher."; description = "Enable Walker launcher.";
}; };
}; };
spotify.enable = mkEnableOption "Spotify";
}; };
} }