diff options
Diffstat (limited to 'pkgs/by-name/sp/spicetify-cli/package.nix')
| -rw-r--r-- | pkgs/by-name/sp/spicetify-cli/package.nix | 61 |
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"; }; -} +}) |
