Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mention spicetify-nix flake in linux documentation / installation instructions #65

Open
the-argus opened this issue Dec 6, 2022 · 0 comments

Comments

@the-argus
Copy link

the-argus commented Dec 6, 2022

📝 Provide a description of the new feature

Add the following instructions to https://spicetify.app/docs/advanced-usage/installation/ below the "AUR" and "Homebrew or Linuxbrew" sections:

Home Manager

If your linux installation uses Systemd (Fedora, Ubuntu, and Manjaro all use
Systemd) then you can install the nix package manager and home-manager
in order to manage spicetify. First, to install nix for all users on your
system, run the following command and follow the interactive prompts:

sh <(curl -L https://nixos.org/nix/install) --daemon

More information on nix installation can be found at https://nixos.org/download.html
Then, restart your terminal/shell and run the following command to enter a
shell with home-manager and git installed. We'll be running the rest of these
commands from inside this new shell. Type exit to leave it, if you need.

nix-shell -p home-manager git

Next, run the following commands to make a new home manager configuration for
spicetify in your current directory.

mkdir ~/home-manager-config && cd ~/home-manager-config
nix flake init --template github:the-argus/spicetify-nix --extra-experimental-features nix-command --extra-experimental-features flakes
sed "0,/unknown_username/{s/unknown_username/$(whoami)/}" -i flake.nix
sed "0,/unknown_hostname/{s/unknown_hostname/$(hostname)/}" -i flake.nix
git init --initial-branch=main
git add .
home-manager switch --flake . --extra-experimental-features nix-command --extra-experimental-features flakes

The spotify that's in your path (or the new spotify that appeared in your app
launchers) should now be a spiced version of spotify, complete with dribbblish
and some custom apps and extensions. Run spotify & disown to launch it, or
edit the spicetify.nix file to customize it. If you have any problems, also
check out the README.md file.

➕ Additional Information

Benefits!

My biggest problem with spicetify is how finicky it is with in-place updates. The initial installation works, but everything breaks at any spicetify or spotify update. My nix flake (located here btw) fixes this problem because packages built in nix have no state. That is, they're built and installed fresh every time they update. Additionally, the package automates the tedious process which is currently necessary on linux of setting up the latest CSS map. Overall, I think the experience of using nix is way better than the spicetify cli.

possible issues

What I've written is definitely targeted at newish linux users, and may fail to get points across to intermediate users who may already have nix installed or are on NixOS but don't quite understand what the commands are meant to do. That's a small enough audience that I don't mind, though. They can figure it out, I think.

@kyrie25 kyrie25 transferred this issue from spicetify/cli Dec 6, 2022
@afonsojramos afonsojramos linked a pull request Apr 8, 2024 that will close this issue
@afonsojramos afonsojramos removed a link to a pull request Apr 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant