Lemonade - ArchWiki

Jump to content

# Lemonade

From ArchWiki

Lemonade helps users discover and run local AI apps by serving optimized LLMs, images, and speech right from their own GPUs and NPUs.

## Installation

Lemonade is available in the AUR:

- Install lemonade-serverAUR for the LLM server and router.
- Install lemonade-desktopAUR for an electron GUI application.

### Recommended dependencies

- Install xrt and xrt-plugin-amdxdna for AMD NPU support.
- Install fastflowlm for running LLMs on the NPU.

Note For kernels older than 7.0, you also need to install the amdxdna-dkmsAUR dkms driver in order for the NPU to be usable.

## Usage

### Systemd service

When Lemonade Server is installed, it includes a systemd service called `lemonade-server` that allows you to manage the server process using standard systemd commands.

    Common Commands

    # Start the service
    sudo systemctl start lemonade-server

    # Stop the service
    sudo systemctl stop lemonade-server

    # Restart the service
    sudo systemctl restart lemonade-server

    # Check service status
    sudo systemctl status lemonade-server

    # Enable automatic startup on boot
    sudo systemctl enable lemonade-server

    # Disable automatic startup on boot
    sudo systemctl disable lemonade-server

    # View recent logs (follow mode)
    sudo journalctl -u lemonade-server -f

Note Service Features:

- Automatic restart: The service automatically restarts if the server crashes
- User isolation: Runs under the unprivileged `lemonade` user for security
- Security hardening: Includes systemd security options like `ProtectSystem=full`, `ProtectHome=yes`, and `NoNewPrivileges=yes`

### CLI usage

To see the available models and download them:

    $ lemonade-server list
    $ lemonade-server pull Gemma-3-4b-it-GGUF

To see the backends available on your PC:

    $ lemonade-server recipes

To run and chat with Gemma 3:

    $ lemonade-server run Gemma-3-4b-it-GGUF

## Configuration

The Lemonade Server systemd service reads configuration in this order:

- `/etc/lemonade/lemonade.conf`
- `/etc/lemonade/conf.d/*.conf`

Use `/etc/lemonade/lemonade.conf` for base settings, add local overrides as numbered drop-ins under `/etc/lemonade/conf.d/`, and keep secrets like `LEMONADE_API_KEY` in `/etc/lemonade/conf.d/zz-secrets.conf`.

Edit the base configuration file:

    $ sudo nano /etc/lemonade/lemonade.conf

Create a drop-in override file:

    $ sudo nano /etc/lemonade/conf.d/50-local.conf

Secrets, like `LEMONADE_API_KEY`, are defined in `/etc/lemonade/conf.d/zz-secrets.conf`:

    $ sudo nano /etc/lemonade/conf.d/zz-secrets.conf

Using `/etc/lemonade/conf.d/` for local overrides keeps them separate from the package-provided base config and is the recommended path for persistent customization.

After making changes to the configuration files, restart the service for changes to take effect:

    $ sudo systemctl restart lemonade-server

### Graphical User Interface

The graphical user interface is both available in lemonade-serverAUR as a web-app, and in lemonade-desktopAUR as an electron desktop application.

This app provides a native desktop experience for managing models and chatting with LLMs running on `lemonade-router`. It connects to the server via HTTP API and offers a modern, resizable panel-based interface.

Note Key Features:

- Model management (list, pull, load/unload)
- Chat interface with markdown/code rendering and LaTeX support
- Real-time server log viewer
- Persistent layout and inference settings
- Custom frameless window with zoom controls

Category:

- AI Applications

Lemonade
Add topic