# Cinny desktop: a Tauri Matrix client with signed releases

> Cinny desktop is the desktop build of a Matrix client, written with Tauri so the shell is a Rust binary rather than a bundled browser, and the README treats release signing as a first-class part of the install story rather than an afterthought. The verification path is minisign, with the public key printed in the README.

**cinnyapp/cinny-desktop** — Yet another matrix client for desktop

- Repository: https://github.com/cinnyapp/cinny-desktop
- Stars: 869 · Forks: 128
- Language: Rust
- License: AGPL-3.0
- Published: 2026-10-20 · Updated: 2026-10-20 · Language: en
- Canonical page: https://hysenlabs.com/projects/cinnyapp-cinny-desktop

## A Matrix client built as a Tauri app

Cinny is a Matrix client focusing primarily on a simple, elegant and secure interface, and the desktop app is made with Tauri. That choice shapes the whole artefact. A Tauri application renders its interface with the system web view and keeps the backend in Rust, so the installed program is a native binary plus your operating system's rendering engine, rather than a Chromium copy shipped alongside the app. The repository shows the shape of that: an src-tauri directory holding the Rust side, a cinny directory for the front end, and a config.json at the root that the build copies into place. The package manifest lists the Tauri API and a set of plugins, which is a good index of what a Matrix client actually needs from the host: the clipboard, a file dialog, filesystem access, global shortcuts, HTTP, notifications, OS information, process control, a shell, and the updater.

## Three installers, three package formats

The download table gives one artefact per platform with a second route for each. On Windows there is an MSI, Cinny.msi, and a Scoop manifest, so a Windows user can install it with a package manager or download the installer. On macOS there is a universal dmg and a tar.gz containing Cinny.app, with the universal build covering both architectures. On Linux there is an AppImage and a Flatpak on Flathub. The macOS universal artefact is the one worth noting, since a single build that runs on Intel and Apple Silicon avoids the two-download dance most cross-platform tools impose. The package manifest sits at version 4.12.7, matching the latest release, and the release history is regular: v4.12.7 on 2026-09-15, v4.12.6 on 2026-08-01 and v4.12.5 on 2026-06-24.

## Signature verification is documented in the README

Releases are signed with an Ed25519 public key, and the README gives the decoded public key so you can check a download yourself. The tool is minisign, and the procedure is spelled out: download the release file and its signature, decode the signature file, then verify. The key given in the README is the string RWRflTUQD3RHFtn25QNANCmePR9+4LSK89kAKTMEEB4OKpOFpLMgc64z. Putting the key in the README rather than only on a key server is a deliberate choice, because the point of a pinned key is that it does not move, and it lets you compare it against the one your organisation has already recorded. A Matrix client is a good candidate for this kind of care, since it holds the credentials to your conversations.

## The local development setup is two npm installs

The development instructions start by telling you to set up Rust, Node and the build tools following the Tauri documentation, which is the honest starting point because Tauri needs a native toolchain on each platform. Then the clone is recursive, which matters for a project with a front end that carries its own dependencies.

```bash
git clone --recursive https://github.com/cinnyapp/cinny-desktop.git
cd cinny-desktop/cinny
npm ci
cd ..
npm ci
```

So there are two package installs, one in the cinny directory for the front end and one at the repository root for the Tauri application itself. The recursive clone flag is not incidental, since the .gitmodules file at the root shows the front end is tracked as a submodule, and a non-recursive clone leaves it empty. The build and the dev server are then a single npm script each.

```bash
npm run tauri build
```

```bash
npm run tauri dev
```

## A patched Tauri updater and a release script

The repository root contains a file named 0001-disable-tauri-updater.patch, which is a patch applied to the Tauri updater, plus a .node-version file and an .npmrc. The updater is disabled by patch because the project does its own updating: the manifest includes the updater plugin among the runtime dependencies, but the release process replaces the default mechanism. The scripts back that up, with a release script that runs a Node file in the scripts directory and a bump script that runs another, both of which exist to keep the version number consistent across the places it appears, which in a Tauri project means the package manifest, the Rust crate and the config file. The .npmrc at the root is also a sign of a project that pins its registry behaviour deliberately.

## Where Cinny desktop is the wrong choice

Four limits apply. This is only the desktop application, so a Matrix account that needs a phone client or a web client still needs another project, and the ecosystem of Matrix clients is fragmented enough that a desktop-only choice is a partial commitment. The front end is embedded as a submodule, so a fork or a patch to the interface means working across two repositories with their own tooling. The release path depends on your operating system's package formats, and a signed AppImage is still a file you have to trust the platform to run. And the AGPL-3.0-only licence is the significant constraint: a client you modify and distribute, or a modified client you host for others, carries copyleft obligations that the MIT-licensed alternatives do not.

## Conclusion

Use Cinny desktop if you want a Matrix client with a native feel on macOS, Windows or Linux and you care enough about supply chain to check a signature before installing. Do not pick it if you need the mobile clients, since this repository is only the desktop build, or if you want to run the server side of anything, since a client is not a homeserver. Verify first the release signature with minisign and the public key given in the README, that your platform's installer format matches what you are used to, with an MSI on Windows, a universal dmg on macOS and an AppImage or a Flatpak on Linux, and that the Node version your machine has satisfies the engines requirement of 16 or newer if you intend to build it yourself.

## FAQ

### What is Cinny desktop?

It is the desktop build of Cinny, a Matrix client focusing on a simple, elegant and secure interface, made with Tauri. Installers for macOS, Windows and Linux are published on the GitHub releases page.

### How do I verify a Cinny desktop release?

Releases are signed with an Ed25519 public key, and the decoded key is given in the README. Download minisign, decode the signature file, then run minisign -Vm against the release file with that key and the decoded signature.

### Which installers does Cinny desktop publish?

An MSI for Windows with a Scoop manifest, a universal dmg and app tarball for macOS, and an AppImage plus a Flatpak on Flathub for Linux. The macOS build is universal across Intel and Apple Silicon.

### How do I build Cinny desktop locally?

Set up Rust, Node and the build tools following the Tauri documentation, clone the repository recursively, run npm ci in the cinny directory and then at the repository root, and build with npm run tauri build. npm run tauri dev starts the development server.

### What licence is Cinny desktop released under?

The GNU Affero General Public License version 3, AGPL-3.0-only, with the package manifest recording the same value and the copyright held by the Cinny Project, Ajay Bura, for 2024 onwards. The latest release is v4.12.7 from 2026-09-15.

## Sources

- [cinnyapp/cinny-desktop on GitHub](https://github.com/cinnyapp/cinny-desktop)
- [Issues](https://github.com/cinnyapp/cinny-desktop/issues)
- [License: AGPL-3.0](https://github.com/cinnyapp/cinny-desktop/blob/main/LICENSE)
- [README](https://github.com/cinnyapp/cinny-desktop/blob/main/README.md)
- [Releases](https://github.com/cinnyapp/cinny-desktop/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/cinnyapp-cinny-desktop
