> ## Documentation Index
> Fetch the complete documentation index at: https://miniti.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# linux

> native desktop app with pipewire system audio, a command line, and packages for omarchy, arch, debian, and any distribution

miniti for linux is a native desktop app. it uses the same backend, insights, and meeting data model as the mac app, and follows it feature for feature wherever linux allows.

## requirements

* x86\_64. prebuilt releases are built on ubuntu 22.04 (glibc 2.35), so they run on ubuntu 22.04+, debian 12+, fedora, arch, and other rolling distributions
* pipewire with the pulse shim (`pipewire-pulse`) for system audio. without it miniti transcribes the microphone only
* runtime libraries (arch names): `webkit2gtk-4.1 gtk3 libsoup3 librsvg libayatana-appindicator alsa-lib pipewire pipewire-pulse libpulse libsecret libnotify`. the tarball's own readme lists the debian names
* optional on wayland: `gtk-layer-shell` lets the floating recording surface pin itself to the corner on compositors that support it (hyprland, sway, kde). without it, or on gnome, the compositor decides where the surface appears. the omarchy package depends on it
* no keyring is needed. account credentials live in owner-only files under `~/.local/share/miniti/` and are mirrored into gnome keyring or kwallet when one exists

## install

<Tabs>
  <Tab title="omarchy">
    miniti is packaged for the [omarchy package repository](https://github.com/omacom/omarchy-pkgs), which every omarchy machine has enabled. once the package is listed:

    ```bash theme={null}
    sudo pacman -S miniti-bin
    ```

    pacman keeps it updated with the rest of the system. on first launch miniti offers to add its bar widget (timer in the bar, a panel with the questions worth asking, start and stop); it replaces the tray icon. the widget is also on the omarchy marketplace as [miniti-omarchy](https://github.com/12ian34/miniti-omarchy).
  </Tab>

  <Tab title="arch linux">
    the same package builds anywhere with `makepkg`. nothing is compiled: it downloads the release tarball, verifies its checksum, and installs it through pacman in a few seconds.

    ```bash theme={null}
    git clone https://github.com/12ian34/miniti-linux.git
    cd miniti-linux/packaging/omarchy-pkgs/miniti-bin
    makepkg -si
    ```

    miniti is not on the aur.
  </Tab>

  <Tab title="debian / ubuntu">
    download `miniti_<version>_amd64.deb` from the [latest release](https://github.com/12ian34/miniti-linux/releases/latest), then:

    ```bash theme={null}
    sudo apt install ./miniti_*_amd64.deb
    ```
  </Tab>

  <Tab title="any distribution">
    download the tarball from the [latest release](https://github.com/12ian34/miniti-linux/releases/latest), then:

    ```bash theme={null}
    tar xzf miniti-*-x86_64-unknown-linux-gnu.tar.gz && cd miniti-*-x86_64-unknown-linux-gnu
    install -Dm755 miniti ~/.local/bin/miniti
    install -Dm644 miniti.desktop ~/.local/share/applications/miniti.desktop
    cp -r icons/hicolor/* ~/.local/share/icons/hicolor/
    miniti
    ```

    the tarball's readme lists the optional files (man page, completions, appstream metadata) and where to put them.
  </Tab>
</Tabs>

## first launch

choose how miniti should run:

* **managed** uses the miniti backend. your account is an anonymous recovery key created in the app, with no email or password. 500 free minutes every month; pro is a polar subscription. keep the key somewhere safe - it is the only way to restore your account on another computer. see [account and recovery key](/docs/reference/account-and-recovery-key)
* **byok** uses your own deepgram and openai api keys and never talks to the miniti backend. see [byok](/docs/pricing/byok)

## what is in the linux app

* **live transcription** - deepgram nova-3 in 11 languages, microphone plus system audio through pipewire, with remote callers and people in the room kept apart as separate speakers and echo of your own voice removed
* **live insights** - summary, questions, coaching, plus the sales (meddpicc), templates, and playbook specialist views, on the same cadence and prompts as macos
* **catch me up**, **investigate** (web and a local codebase folder), and automatic speaker naming
* **history** - search, pin, rename speakers, mark as you (or mark all mic speakers as you in one click), trim, delete, notes
* **corrections** (0.6.1) - select a misheard word in the transcript and choose correct: the fix applies to the rest of the meeting as it arrives, to earlier mentions if you want, and to future meetings through deepgram. corrections live in settings → language and never touch insights
* **join links** (0.6.1) - calendar prompts, the reminder notification, the upcoming list, and the prepare sheet offer "join and take notes" when the event has a meet, zoom, teams, or webex link; the live meeting keeps a "join call" button. starting a meeting on its own never opens a browser
* **export** - markdown, copy transcript, webhooks, and granola csv import
* **integrations** - google calendar, attio, and twenty. oauth completes in the browser and returns through a `miniti-*` url scheme
* **smart meetings** - quiet prompts, calendar handoff, and call detection based on pipewire clients. browsers are a weaker signal than native apps
* **one person, one speaker** (0.6.1) - a new mic voice needs real evidence before it counts, more so on an online call, so one person on a headset stays one speaker. on a 1:1 calendar call the other person is named from the invitation
* **desktop shell** - tray icon with a timer, floating recording surface that never takes focus, desktop notifications
* **plans** - pro via polar with license-key restore, byok, usage banner, and limit view
* **appearance** - compact, standard, or large interface scale
* **debug log** - view, copy, save, or clear from settings → privacy & support. seven days of logs with no transcript text or keys

## command line, bars, and keybinds

the app is also its own command line. `miniti status`, `miniti start`, `miniti stop`, `miniti toggle`, `miniti questions`, `miniti meetings`, `miniti export last`, `miniti decide primary`, and `miniti watch` talk to the running app; `--json` makes any of them machine-readable and `man miniti` has the rest. the same state is in `$XDG_RUNTIME_DIR/miniti/state.json`, on a control socket next to it, and on the session bus as `com.miniti.linux`.

```json theme={null}
"custom/miniti": { "exec": "miniti status --waybar", "return-type": "json", "interval": 1, "on-click": "miniti toggle" }
```

```
bind = SUPER, M, exec, miniti toggle
```

the desktop entry offers start, stop, and toggle actions from the app menu. **launch at login** (settings → general, or `miniti autostart on`) starts miniti hidden in the tray. while a meeting records the machine does not sleep or lock, and logging out saves the meeting first. everything is documented in the repository's [desktop-integration.md](https://github.com/12ian34/miniti-linux/blob/main/docs/desktop-integration.md).

## if the backend says it already knows this computer

the enrollment screen can say that the backend already knows this computer but its credentials are not on this machine (a wiped data directory does that). choose **restore with the recovery key** to keep your plan and minutes, or **start over as a new device** if the key is gone. from a terminal, `miniti reset-device --yes` does the same reset offline.

## not on linux

* silent in-app updates. updates come through your package manager or the releases page. the app checks the minimum supported version on launch but does not update itself
* ios companion, apple subscriptions

## known limits

* a system audio route change (bluetooth, output device) is recovered by restarting capture after about four seconds of silence, so a switch mid-sentence can lose a few seconds of remote audio
* a disconnected usb or bluetooth microphone surfaces as a stream error rather than recovering
* on wayland the floating surface is pinned and focus-free only through layer-shell (hyprland, sway, kde, with `gtk-layer-shell` installed). on gnome, or without the library, the compositor decides placement. x11 gets the full behaviour
* very long meetings (thousands of turns) render slower than on the mac

## source and license

the app is open source under the elastic license 2.0 at [github.com/12ian34/miniti-linux](https://github.com/12ian34/miniti-linux). managed mode works in any build, including builds from source, because there is no secret to compile in. the linux app has its own [changelog](https://github.com/12ian34/miniti-linux/blob/main/CHANGELOG.md) alongside the [changelog for every platform](https://miniti.app/changelog).

## see also

* [macos](/docs/platforms/macos)
* [ai insights](/docs/features/ai-insights)
* [templates](/docs/features/insight-templates)
* [account and recovery key](/docs/reference/account-and-recovery-key)
* [smart meetings](/docs/features/smart-meetings)
