This section describes how to install the app (CLI and GUI) from source.
Note
This is the Linux guide. If you're on Windows (and don't want to use WSL) follow the Windows Installation.
Flatpak and Docker Images are available here
-
Get the code
git clone https://codeberg.org/ladaapp/lada.git cd lada -
Install system dependencies with your system package manager or compile/install from source
- Python >= 3.12, <= 3.13
- FFmpeg >= 4.4
Tip
Arch Linux: sudo pacman -Syu python ffmpeg
Ubuntu 25.04: sudo apt install python3.13 python3.13-venv ffmpeg
Ubuntu 24.04: sudo apt install python3.12 python3.12-venv ffmpeg
-
Create a virtual environment to install python dependencies
python3 -m venv .venv source .venv/bin/activate
Tip
Before continuing let's test if the PyTorch installation was successful by checking if your GPU is detected (Skip this step if you're running on CPU)
python -c "import torch ; print(torch.cuda.is_available())"If this prints True then you're good. It will display False if the GPU is not available to PyTorch. Check your GPU drivers and that you chose the correct PyTorch Installation method for your hardware.
-
Install python dependencies
python -m pip install -e '.' -
Apply patches
patch -u -p1 -d .venv/lib/python3.1[23]/site-packages < patches/increase_mms_time_limit.patch patch -u -p1 -d .venv/lib/python3.1[23]/site-packages < patches/remove_ultralytics_telemetry.patch patch -u -p1 -d .venv/lib/python3.1[23]/site-packages < patches/fix_loading_mmengine_weights_on_torch26_and_higher.diff
-
Download model weights
Download the models from the GitHub Releases page into the
model_weightsdirectory. The following commands do just thatwget 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_detection_model_v3.1_accurate.pt?download=true' -O model_weights/lada_mosaic_detection_model_v3.1_accurate.pt wget 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_detection_model_v3.1_fast.pt?download=true' -O model_weights/lada_mosaic_detection_model_v3.1_fast.pt wget 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_detection_model_v2.pt?download=true' -O model_weights/lada_mosaic_detection_model_v2.pt wget 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_restoration_model_generic_v1.2.pth?download=true' -O model_weights/lada_mosaic_restoration_model_generic_v1.2.pth
If you're interested in running DeepMosaics' restoration model you can also download their pretrained model
clean_youknow_video.pthwget 'https://drive.usercontent.google.com/download?id=1ulct4RhRxQp1v5xwEmUH7xz7AK42Oqlw&export=download&confirm=t' -O model_weights/3rd_party/clean_youknow_video.pth
Now you should be able to run the CLI by calling lada-cli.
Tip
Remember: To start Lada always make sure to:
cdinto the project root directory- Activate the virtual environment via
source .venv/bin/activate - Run
ladato start the CLI
-
Install everything mentioned in Install CLI
-
Install system dependencies with your system package manager or compile/install from source
- Gstreamer >= 1.14
- PyGObject
- GTK >= 4.0
- libadwaita >= 1.6 [there is a workaround mentioned below to make it work with older versions]
Tip
Arch Linux:
sudo pacman -Syu python-gobject gtk4 libadwaita gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-plugins-base-libs gst-plugins-bad-libs gst-plugin-gtk4Ubuntu 25.04:
sudo apt install gcc python3-dev pkg-config libgirepository-2.0-dev libcairo2-dev libadwaita-1-dev gir1.2-gstreamer-1.0
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-pulseaudio gstreamer1.0-alsa gstreamer1.0-tools gstreamer1.0-libav gstreamer1.0-gtk4Ubuntu 24.04:
sudo apt install gcc python3-dev pkg-config libgirepository-2.0-dev libcairo2-dev libadwaita-1-dev gir1.2-gstreamer-1.0
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-pulseaudio gstreamer1.0-alsa gstreamer1.0-tools gstreamer1.0-libav
#
####### Gstreamer #######
# The gstreamer plugin gtk4 is not available as a binary package in Ubuntu 24.04 so we have to build it ourselves:
# Get the source code
git clone https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
cd gst-plugins-rs
# Install dependencies necessary to build the plugin
sudo apt install rustup libssl-dev
rustup default stable
cargo install cargo-c
# Now we can build and install the plugin. Note that we're installing to the system directory, you might want to adjust this to another directory and set set the environment variable GST_PLUGIN_PATH accordingly
cargo cbuild -p gst-plugin-gtk4 --libdir /usr/lib/x86_64-linux-gnu
sudo -E cargo cinstall -p gst-plugin-gtk4 --libdir /usr/lib/x86_64-linux-gnu
# If the following command does not return an error the plugin is correctly installed
gst-inspect-1.0 gtk4paintablesink
#
####### libadwaita #######
# The version of libadwaita in Ubuntu 24.04 repositories is too old. Instead of building the new version the following patch will adjust the code so it's compatible with the version provided by Ubuntu 24.04:
patch -u -p1 -i patches/adw_spinner_to_gtk_spinner.patch
> ```- Install python dependencies
python -m pip install -e '.[gui]'
Tip
If you intend to hack on the GUI code install also the gui-dev group (--group gui-dev).
Now you should be able to run the GUI by calling lada.
Tip
Remember: To start Lada always make sure to:
cdinto the project root directory- Activate the virtual environment via
source .venv/bin/activate - Run
ladato start the GUI
If we have a translation file for your language you might want to use it instead of using the app in English.
- Install system dependencies
Tip
Arch Linux:
sudo pacman -Syu gettext Ubuntu:
sudo apt install gettext- Compile translations
bash translations/compile_po.sh
The app should now use the translations and be shown in your system language. If not then you may need to set the environment variable
LANG (or LANGAUGE) to your preferred language e.g. export LANGUAGE="zh_TW".