summaryrefslogtreecommitdiff
path: root/pkgs/by-name/sp/spicetify-cli/package.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/sp/spicetify-cli/package.nix')
-rw-r--r--pkgs/by-name/sp/spicetify-cli/package.nix61
1 files changed, 37 insertions, 24 deletions
diff --git a/pkgs/by-name/sp/spicetify-cli/package.nix b/pkgs/by-name/sp/spicetify-cli/package.nix
index 6e5f5b142145..4eda4621eceb 100644
--- a/pkgs/by-name/sp/spicetify-cli/package.nix
+++ b/pkgs/by-name/sp/spicetify-cli/package.nix
@@ -3,49 +3,62 @@
buildGoModule,
fetchFromGitHub,
testers,
+ replaceVars,
spicetify-cli,
}:
-
-buildGoModule rec {
+buildGoModule (finalAttrs: {
pname = "spicetify-cli";
- version = "2.39.5";
+ version = "2.39.7";
src = fetchFromGitHub {
owner = "spicetify";
repo = "cli";
- rev = "v${version}";
- hash = "sha256-vqif3oLDm9SUrkY+qEYHUEmHN+psoK6GNUB+kA6sQ4Q=";
+ tag = "v${finalAttrs.version}";
+ hash = "sha256-iqx+bwq99xNUt2NEc3ZFxPdfE+WJPhmJXJ26sPCm8sk=";
};
- vendorHash = "sha256-3U/qV81UXS/Xh3K6OnMUyRKeMSBQUHLP64EOQl6TfMY=";
+ vendorHash = "sha256-wSmKzof3nAyA+wI8kXQu/t5Fz4l22JyW50PCuOrWK1k=";
ldflags = [
"-s -w"
- "-X 'main.version=${version}'"
+ "-X 'main.version=${finalAttrs.version}'"
+ ];
+
+ patches = [
+ # Stops spicetify from attempting to fetch a newer css-map.json
+ (replaceVars ./version.patch {
+ inherit (finalAttrs) version;
+ })
];
- # used at runtime, but not installed by default
- postInstall = ''
- mv $out/bin/cli $out/bin/spicetify
- ln -s $out/bin/spicetify $out/bin/spicetify-cli
- cp -r ${src}/jsHelper $out/bin/jsHelper
- cp -r ${src}/CustomApps $out/bin/CustomApps
- cp -r ${src}/Extensions $out/bin/Extensions
- cp -r ${src}/Themes $out/bin/Themes
- '';
+ postInstall =
+ /*
+ jsHelper and css-map.json are required at runtime
+ and are looked for in the directory of the spicetify binary
+ so here we move spicetify to /share/spicetify
+ so that css-map.json and jsHelper don't pollute PATH
+ */
+ ''
+ mkdir -p $out/share/spicetify
+
+ cp -r $src/jsHelper $out/share/spicetify/jsHelper
+ cp $src/css-map.json $out/share/spicetify/css-map.json
+
+ mv $out/bin/cli $out/share/spicetify/spicetify
- doInstallCheck = true;
- installCheckPhase = ''
- $out/bin/spicetify --help > /dev/null
- '';
+ ln -s $out/share/spicetify/spicetify $out/bin/spicetify
+ '';
passthru.tests.version = testers.testVersion { package = spicetify-cli; };
- meta = with lib; {
+ meta = {
description = "Command-line tool to customize Spotify client";
homepage = "https://github.com/spicetify/cli";
- license = licenses.gpl3Plus;
- maintainers = [ maintainers.mdarocha ];
+ license = lib.licenses.gpl3Plus;
+ maintainers = with lib.maintainers; [
+ mdarocha
+ gerg-l
+ ];
mainProgram = "spicetify";
};
-}
+})