Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Install

ChannelHow
Flatpak repositoryflatpak install --user lightmime io.github.pataar.lightmime after adding the remote, see below
Flatpak bundlelightmime-<arch>.flatpak from the latest release
Binarylightmime-<arch>-unknown-linux-gnu.tar.xz from the latest release, see below
crates.iocargo install --locked lightmime, see below
From sourcecargo install --path crates/lightmime, see below

Releases are built for x86_64 and aarch64.

Flatpak

lightmime has its own Flatpak repository, so it installs as a desktop app and flatpak update (or your software centre) brings each new release. The Freedesktop runtime it needs comes from Flathub:

flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak remote-add --user --if-not-exists lightmime https://lightmime.pataar.nl/flatpak/lightmime.flatpakrepo
flatpak install --user lightmime io.github.pataar.lightmime

flatpak run io.github.pataar.lightmime opens the window; with arguments it is the lightmime command, for example flatpak run io.github.pataar.lightmime areas. A shell alias saves typing:

alias lightmime='flatpak run io.github.pataar.lightmime'

The Flatpak keeps its config in ~/.var/app/io.github.pataar.lightmime/config/lightmime/. It may use the network (to reach the bridge and, if enabled, the MQTT broker), the display and the GPU. Screen capture needs no extra permission: the desktop’s screen-cast portal asks you which screen to share.

A single release can also be installed from its bundle, without the repository. It does not update itself:

flatpak install --user lightmime-x86_64.flatpak

Binary

Each release has a tarball with the lightmime binary, the licences and the files from contrib/. The binary links against your system’s libraries, so install these first:

DistributionPackages
Arch, CachyOS, Manjarogstreamer gst-plugins-base gst-plugin-pipewire openssl libxkbcommon-x11
Fedoragstreamer1 gstreamer1-plugins-base pipewire-gstreamer openssl libxkbcommon-x11
Debian, Ubuntulibgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-pipewire libssl3 libxkbcommon-x11-0
tar -xJf lightmime-x86_64-unknown-linux-gnu.tar.xz
install -Dm755 lightmime-x86_64-unknown-linux-gnu/lightmime ~/.local/bin/lightmime

Then add the launcher entry and icons.

From source

You need a recent stable Rust (the version is pinned in rust-toolchain.toml; rustup picks it up) and the development files of the libraries above:

DistributionPackages
Arch, CachyOS, Manjarobase-devel gstreamer gst-plugins-base gst-plugin-pipewire openssl libxkbcommon-x11 wayland
Fedoragcc pkgconf gstreamer1-devel gstreamer1-plugins-base-devel pipewire-gstreamer openssl-devel libxkbcommon-x11-devel wayland-devel fontconfig-devel
Debian, Ubuntubuild-essential pkg-config libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-pipewire libssl-dev libxkbcommon-x11-dev libwayland-dev libfontconfig-dev
cargo install --locked lightmime

or from a checkout:

git clone https://github.com/pataar/lightmime
cd lightmime
cargo install --locked --path crates/lightmime

For a machine that only runs headless (no window or tray), leave the GUI out:

cargo install --locked lightmime --no-default-features

Desktop integration

The Flatpak brings its own launcher entry and icons. For a binary or source install, add them yourself so the app shows up in the launcher and the window and tray get their icons:

install -Dm644 contrib/io.github.pataar.lightmime.desktop ~/.local/share/applications/io.github.pataar.lightmime.desktop
cp -r assets/icons/hicolor ~/.local/share/icons/

Uninstall

flatpak uninstall --user io.github.pataar.lightmime   # Flatpak; add --delete-data to remove its config
rm ~/.local/bin/lightmime                             # binary or source install

Your settings stay in ~/.config/lightmime/ (or the Flatpak’s directory above). The app key lightmime registered on the bridge stays there; it does no harm.