Skip to content

Lemon wiki

Build from source

Most people should use a build from the download page. If you’d rather build Lemon Studio yourself, each section below goes from a fresh machine to Lemon Studio installed with its icon.

A build from source never updates itself and never goes online. To update it, run git pull and build it again.

  • Rust, stable toolchain 1.89 or newer, installed through rustup.
  • A copy of the code:
Terminal window
git clone https://github.com/ItsAlphaNeon/Lemon-Studio.git
cd Lemon-Studio

You need Windows 10 or 11, x64.

Prerequisites

  • The Microsoft C++ build tools. Rustup offers them when it installs, or you can install the Visual Studio Build Tools with the “Desktop development with C++” workload. They include the Windows SDK, which puts the icon in the program. Without the SDK the build still works, but has no icon.
  • LLVM:
Terminal window
winget install LLVM.LLVM

If libclang.dll isn’t in LLVM’s default folder, set LIBCLANG_PATH to the folder that holds it.

Build and run

Terminal window
cargo run -p os-app --release

Install lemonstudio.exe into %USERPROFILE%\.cargo\bin and give it a Start menu entry, which you can then pin to the taskbar:

Terminal window
cargo install --path crates/os-app
$link = (New-Object -ComObject WScript.Shell).CreateShortcut("$env:APPDATA\Microsoft\Windows\Start Menu\Programs\Lemon Studio.lnk")
$link.TargetPath = "$env:USERPROFILE\.cargo\bin\lemonstudio.exe"
$link.Save()

You need x64, on X11 or a Wayland desktop.

Prerequisites: a C++ compiler, libclang, the ALSA and JACK development files, the Wayland development files and pkg-config.

Terminal window
# Debian / Ubuntu
sudo apt install g++ libclang-dev libasound2-dev libjack-jackd2-dev libwayland-dev pkg-config
# Arch (pipewire-jack or jack2)
sudo pacman -S gcc clang alsa-lib pipewire-jack wayland pkgconf
# Fedora
sudo dnf install gcc-c++ clang-devel alsa-lib-devel pipewire-jack-audio-connection-kit-devel wayland-devel pkgconf-pkg-config

For the “save changes?” prompt you also need zenity or KDE’s kdialog. A stock KDE desktop has the latter.

Build and run

Terminal window
cargo run -p os-app --release

Install lemonstudio into ~/.cargo/bin, which must be on your PATH, with its icon and an entry in the application menu:

Terminal window
cargo install --path crates/os-app
install -Dm644 crates/os-app/assets/lemonstudio.png ~/.local/share/icons/hicolor/256x256/apps/lemonstudio.png
install -Dm644 crates/os-app/assets/lemonstudio.desktop ~/.local/share/applications/lemonstudio.desktop

You need macOS 11 or newer.

Prerequisites: the Xcode Command Line Tools, which bring the compiler and libclang. Xcode itself isn’t needed.

Terminal window
xcode-select --install

Build and run

Terminal window
cargo run -p os-app --release

Install Lemon Studio as Lemon Studio.app in ~/Applications, with its icon, so it opens from Launchpad, Spotlight or the Dock:

Terminal window
cargo run -p bundle-app -- --install

Without --install, the app is only written to target/bundled/.

Lemon Studio has its own plugins built in and needs no plugin files. cargo run -p os-app --release also builds them as VST3 and CLAP plugins, and installs the ones that changed where other DAWs find them. The first run builds all of them, which takes a few minutes more. Later runs rebuild only what changed.

System Where they go
Windows %LOCALAPPDATA%\Programs\Common\VST3 and %LOCALAPPDATA%\Programs\Common\CLAP
Linux ~/.vst3 and ~/.clap
macOS ~/Library/Audio/Plug-Ins/VST3 and ~/Library/Audio/Plug-Ins/CLAP, signed ad hoc so that Apple silicon loads them

To build and install them without starting Lemon Studio, run:

Terminal window
cargo run -p bundle-plugins -- --install

A Lemon Studio you’ve installed doesn’t build anything itself. After pulling changes, run either of these two commands once to bring the plugins up to date.

Pass the project’s path after --:

Terminal window
cargo run -p os-app --release -- path/to/project.lemon