48 lines
1.3 KiB
Nix
48 lines
1.3 KiB
Nix
{ user, home }:
|
|
{ lib, pkgs, ... }:
|
|
{
|
|
# FIXME: https://github.com/hrkfdn/ncspot/issues/1681#issuecomment-3186274719
|
|
nixpkgs.overlays = [
|
|
(final: prev: {
|
|
ncspot = prev.ncspot.overrideAttrs (oldAttrs: rec {
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "hrkfdn";
|
|
repo = "ncspot";
|
|
rev = "aac67d631f25bbc79f509d34aa85e6daff954830";
|
|
hash = "sha256-B6BA1ksfDEySZH6gzkU5khOzwXAmeHbMHsx3sXd9lbs=";
|
|
};
|
|
|
|
cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
|
|
inherit src;
|
|
hash = "sha256-HrQJiIzSvu/vR03UdnCcU6TGToBDKKDC6XscjvX3KPE=";
|
|
};
|
|
});
|
|
})
|
|
];
|
|
|
|
environment.persistence = {
|
|
"/persist/state"."${home}/.config/ncspot/userstate.cbor" = { };
|
|
"/persist/cache"."${home}/.cache/ncspot" = { };
|
|
};
|
|
|
|
home-manager.users.${user} = {
|
|
programs.ncspot.enable = true;
|
|
|
|
theme = {
|
|
template.".config/ncspot/config.toml".source = ./theme.toml;
|
|
|
|
reloadExtraConfig = "${
|
|
lib.meta.getExe (
|
|
pkgs.writeShellApplication {
|
|
name = "reload-ncspot";
|
|
runtimeInputs = with pkgs; [ netcat ];
|
|
text = ''
|
|
printf "reload\n" | nc -W 1 -U "''${XDG_RUNTIME_DIR:-/run/user/$UID}/ncspot/ncspot.sock"
|
|
'';
|
|
}
|
|
)
|
|
} &";
|
|
};
|
|
};
|
|
}
|