A music player that connects to your cloud/distributed storage.
Contributed by @Netherquark
Hello there! I see you want to build Diffuse.
The process can seem quite complicated, especially if you aren't familiar with concepts like Nix, just like I wasn't when I started out. Don't worry, this guide is here to help you.
First off, determine your operating system (of choice). The setup process is considerably easier on *nix systems, but it is still theoretically possible on Windows.
Prerequisites for MacOS and Linux
- Curl
- NodeJS/npm
- Basic CLI operation knowledge
Linux guide [Tested on Ubuntu 20.10]
- Set up Git.
- Install Nix using
curl -L https://nixos.org/nix/install | sh - Reboot (recommended)
- Clone Diffuse with
git clone https://www.github.com/icidasset/diffuse - Navigate to the Diffuse folder using
cd diffuse - Execute
nix-shell - Execute
just install-depsafter the previous step finishes - Execute
just
MacOS guide
- Set up Git.
- Install Nix using
curl -L https://nixos.org/nix/install | sh - Reboot (optional)
- Clone Diffuse with
git clone https://www.github.com/icidasset/diffuse - Navigate to the Diffuse folder using
cd diffuse - Execute
nix-shell - Execute
just install-depsafter the previous step finishes - Execute
just
Prerequisites for Windows
- Git for Windows (https://gitforwindows.org/)
- Haskell Tool Stack (https://docs.haskellstack.org/en/stable/install_and_upgrade/)
- Basic CLI operation knowledge
just(https://github.com/casey/just#installation)- NodeJS (https://nodejs.org/en/download/)
- NPM (https://pnpm.js.org/installation)
- Elm (https://guide.elm-lang.org/install/elm.html)
Windows(native) guide(Untested)
- Install all the prerequisites and set them up.
- Clone Diffuse with
git clone https://www.github.com/icidasset/diffuse - Navigate to the Diffuse folder using
cd diffuse - Execute
nix-shell - Execute
just install-depsafter the previous step finishes - Execute
just
Note: Using WSL/2 with the Linux instructions might work.
In case you have any queries or issues, feel free to reach out to me @Netherquark or to Steven @icidasset.