Linux
Automatic installation
There are user-made tools to install the Tidalcycles stack. Be sure to check out the following solutions:
- Ansible method: Ubuntu / debian / Mint (/ most debian-based distros)
- full featured solution including SuperCollider, Haskell, Tidal, SuperDirt, code editor, and package dependencies
- has customization options, including adding additional sample sources and bus channel settings
- for more information, see the Tidal Club thread
Manual installation
There are several required components for a complete Tidal Cycles system
- Git
- Haskell
- SuperCollider
- SuperDirt
- a Text Editor (eg Pulsar, VS Code, vim/neovim, emacs, and more)
Most modern distros will make all or most of these available for convenient install via their package managers.
The following instructions provide commands specific to different distro families. They are labelled as:
- debian - the debian family of distros includes debian, *buntu, Mint, pop!_OS and more
- arch - the Arch family of distros includes Arch Linux, Manjaro and more
- fedora - the fedora distro (tested), may also apply to other RPM based distros (eg RedHat, OpenSUSE, Rocky Linux etc)
- all - this command should be run by everyone, regardless of distro
Choose the command that matches the distro you are running.
Configure User
1. Add your user as a member of the audio
group
all
sudo usermod -a -G audio $USER
2. Logout and log back in for it to take effect. You can check it worked with
all
groups | grep audio
Package Preconfiguration
1. Install dependencies
debian
sudo apt update; sudo apt install git jackd2 qjackctl zlib1g-dev gcc g++ ghc cabal-install
arch
sudo pacman -Syu; sudo pacman -Sy git jack2 qjackctl
fedora
sudo dnf install git-core qjackctl gcc-c++ cabal-install
2. Remove conflicts
arch
sudo pacman -R lib32-mesa-demos mesa-demos
SuperCollider Installation
1. Install SuperCollider and SC3-Plugins
debian
sudo apt install supercollider sc3-{plugins,plugins-language,plugins-server}
arch
sudo pacman -Sy supercollider sc3-plugins
fedora
sudo dnf install supercollider
sc3-plugins for fedora is provided by a 3rd party repo (you may choose to leave it enabled)
sudo dnf copr enable ycollet/audinux; sudo dnf install supercollider-sc3-plugins; sudo dnf copr disable ycollet/audinux;
SuperDirt Installation
SuperDirt is a plugin or "Quark" for SuperCollider, and functions as the audio engine for TidalCycles as well as providing the default set of samples.
1. Get the version number of the latest SuperDirt release (you can also do this by checking the github page)
all
git ls-remote https://github.com/musikinformatik/SuperDirt.git | grep tags | tail -n1 | awk -F/ '{print $NF}'
2. Install SuperDirt, update the version number if required. Once complete press Ctrl+d
to exit sclang
all
2.a. Start the sclang
shell
sclang
2.b. Paste this line and press Enter (and wait, it returns immediately but processes in the background).
Quarks.checkForUpdates({Quarks.install("SuperDirt", "v1.7.3"); thisProcess.recompile()})
Tidal Installation
1. Install tidal
arch is the only distro to support Tidal installation via it's core package manager, other distros require using the haskell package/environment manager,
cabal (>=3.0.0.0)
arch
sudo pacman -Sy ghc ghc-libs haskell-{tidal,bifunctors,colour,hosc,mwc-random,network,primitive,random,vector,microspec}
all others
cabal update; cabal install tidal --lib
cabal
can be notoriously fickle. If for some reason it fails, you can safely reset the environment by renaming your ~/.ghc
and ~/.cabal
folders, and re-running the above commands.*
Choose a Text Editor
TidalCycles is supported by a wide variety of text editors, you will need one to get started:
- Pulsar (was Atom)
- VS Code
- vim/neovim
- emacs
... and more.
Start Tidal
You're almost there! Follow these instructions to get Tidal started