Compare commits
2 Commits
615909867e
...
f0398f4d9c
| Author | SHA1 | Date | |
|---|---|---|---|
|
f0398f4d9c
|
|||
|
a1842b22db
|
53
flake.lock
generated
53
flake.lock
generated
@@ -347,6 +347,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1768564909,
|
||||
"narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e4bae1bd10c9c57b2cf517953ab70060a828ee6f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1768380750,
|
||||
"narHash": "sha256-V5drPOmaGA7bszxKxyViYEZyT2h6RYa/Ll+3aJL4Grs=",
|
||||
@@ -414,6 +430,7 @@
|
||||
"nixpkgs": "nixpkgs",
|
||||
"pumo-system-info": "pumo-system-info",
|
||||
"sops-nix": "sops-nix",
|
||||
"spicetify": "spicetify",
|
||||
"srvos": "srvos",
|
||||
"zen-browser": "zen-browser"
|
||||
}
|
||||
@@ -459,9 +476,28 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"spicetify": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768656845,
|
||||
"narHash": "sha256-xNlXMyn7yc3Z/NOsz4NchO7gWFwsoCvtJ26pys4s2/M=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "8bd7e49d5ac62756bee6e4b02221fb96bfc3c99a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"srvos": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768523683,
|
||||
@@ -492,6 +528,21 @@
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
spicetify.url = "github:Gerg-L/spicetify-nix";
|
||||
|
||||
srvos.url = "github:nix-community/srvos";
|
||||
|
||||
zen-browser = {
|
||||
@@ -91,6 +93,7 @@
|
||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||
defaultUserModules = [
|
||||
inputs.sops-nix.homeManagerModules.sops
|
||||
inputs.spicetify.homeManagerModules.default
|
||||
];
|
||||
withUserModules = modules: nixpkgs.lib.lists.flatten (defaultUserModules ++ [modules]);
|
||||
in {
|
||||
|
||||
@@ -15,6 +15,7 @@ in {
|
||||
./obs.nix
|
||||
./qt.nix
|
||||
./rofi
|
||||
./spotify.nix
|
||||
./swaync.nix
|
||||
./waybar.nix
|
||||
./wlr-which-key.nix
|
||||
@@ -30,6 +31,8 @@ in {
|
||||
obs.enable = mkDefault cfg.fullDesktop;
|
||||
qt.enable = mkDefault cfg.fullDesktop;
|
||||
rofi.enable = mkDefault cfg.fullDesktop;
|
||||
spotify.enable = mkDefault cfg.fullDesktop;
|
||||
spotify.spicetify.enable = mkDefault cfg.fullDesktop;
|
||||
wlr-which-key.enable = mkDefault cfg.fullDesktop;
|
||||
};
|
||||
}
|
||||
|
||||
25
users/modules/desktop/spotify.nix
Normal file
25
users/modules/desktop/spotify.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.home.desktop.spotify;
|
||||
system = pkgs.stdenv.hostPlatform.system;
|
||||
spicePkgs = inputs.spicetify.legacyPackages.${system};
|
||||
in {
|
||||
options.home.desktop.spotify = {
|
||||
enable = mkEnableOption "Enable Spotify";
|
||||
spicetify.enable = mkEnableOption "Enable Spicetify";
|
||||
};
|
||||
config.programs = mkIf cfg.enable {
|
||||
spotify-player.enable = cfg.enable;
|
||||
spicetify = mkIf cfg.spicetify.enable {
|
||||
inherit (cfg.spicetify) enable;
|
||||
theme = spicePkgs.themes.sleek;
|
||||
colorScheme = "Nord";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -19,30 +19,58 @@ in {
|
||||
inherit (cfg) enable;
|
||||
enableTransience = true;
|
||||
settings = mkIf cfg.jjIntegration {
|
||||
custom.jj = {
|
||||
description = "The current jj status";
|
||||
detect_folders = [".jj"];
|
||||
symbol = "🥋 ";
|
||||
command = ''
|
||||
jj log --revisions @ --no-graph --ignore-working-copy --color always --limit 1 --template '
|
||||
separate(" ",
|
||||
change_id.shortest(4),
|
||||
bookmarks,
|
||||
"|",
|
||||
concat(
|
||||
if(conflict, "💥"),
|
||||
if(divergent, "🚧"),
|
||||
if(hidden, "👻"),
|
||||
if(immutable, "🔒"),
|
||||
),
|
||||
raw_escape_sequence("\x1b[1;32m") ++ if(empty, "(empty)"),
|
||||
raw_escape_sequence("\x1b[1;32m") ++ coalesce(
|
||||
truncate_end(29, description.first_line(), "…"),
|
||||
"(no description set)",
|
||||
) ++ raw_escape_sequence("\x1b[0m"),
|
||||
)
|
||||
'
|
||||
'';
|
||||
# Disabling these so they can be enabled conditionally
|
||||
# See https://github.com/jj-vcs/jj/wiki/Starship
|
||||
git_status.disabled = true;
|
||||
git_commit.disabled = true;
|
||||
git_metrics.disabled = true;
|
||||
git_branch.disabled = true;
|
||||
custom = let
|
||||
when = "! jj --ignore-working-copy-root";
|
||||
description = "Only show if we’re not in a jj repository";
|
||||
style = "";
|
||||
in {
|
||||
git_status = {
|
||||
inherit when description style;
|
||||
command = "starship module git_status";
|
||||
};
|
||||
git_commit = {
|
||||
inherit when description style;
|
||||
command = "starship module git_commit";
|
||||
};
|
||||
git_metrics = {
|
||||
inherit when description style;
|
||||
command = "starship module git_metrics";
|
||||
};
|
||||
git_branch = {
|
||||
inherit when description style;
|
||||
command = "starship module git_branch";
|
||||
};
|
||||
jj = {
|
||||
description = "The current jj status";
|
||||
detect_folders = [".jj"];
|
||||
symbol = "🥋 ";
|
||||
command = ''
|
||||
jj log --revisions @ --no-graph --ignore-working-copy --color always --limit 1 --template '
|
||||
separate(" ",
|
||||
change_id.shortest(4),
|
||||
bookmarks,
|
||||
"|",
|
||||
concat(
|
||||
if(conflict, "💥"),
|
||||
if(divergent, "🚧"),
|
||||
if(hidden, "👻"),
|
||||
if(immutable, "🔒"),
|
||||
),
|
||||
raw_escape_sequence("\x1b[1;32m") ++ if(empty, "(empty)"),
|
||||
raw_escape_sequence("\x1b[1;32m") ++ coalesce(
|
||||
truncate_end(29, description.first_line(), "…"),
|
||||
"(no description set)",
|
||||
) ++ raw_escape_sequence("\x1b[0m"),
|
||||
)
|
||||
'
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -30,7 +30,6 @@ in {
|
||||
plexamp
|
||||
plex-desktop
|
||||
spicetify-cli
|
||||
spotify
|
||||
pavucontrol # Volume control
|
||||
|
||||
# Social
|
||||
|
||||
Reference in New Issue
Block a user