Skip to content

Releases

v0.2.0

Choose a tag to compare

@VitaminDB VitaminDB released this 07 Nov 10:39

synshell 0.2.0 — the first public release

synshell is a Wayland desktop environment for computers and phones, written in Rust. It is split
the way KDE Plasma is: the synwm compositor (built on smithay),
a separate shell process for panels, dock, launcher and notifications, and System Settings. Every
window and panel is drawn with my own GUI framework, syngui.
Almost everything lives in one file, ~/.config/synshell/config.toml, applied live. The interface
is translated into 14 languages.

What is in it

Desktop and compositor. Workspaces; floating, tile, columns, grid and monocle layouts; snapping,
window overview, Alt+Tab, window rules, Xwayland, a JSON IPC socket and synwm msg. A dock in the
spirit of macOS and Latte Dock, an adaptive panel, the panel as the title bar of a maximized window
with a global menu (Qt/KDE and GTK 3), 14 built-in themes exported to GTK, Qt/KDE and GIMP, a lock
screen (PAM), its own screen-sharing and screenshot portal over PipeWire, the synshot screenshot
tool. If the shell crashes, the compositor restarts it and your windows stay.

Phone. Arch Linux with synshell next to Android is installed with synport — video. The same compositor with a phone shell (synmobile-shell), an on-screen keyboard and
phone apps: Phone,
Messages,
Camera,
NFC,
Compass,
Steps and activity,
IR remote.

Applications. System Settings,
file manager (archives as folders, network locations, phones),
terminal,
software center (Arch repositories and AUR),
system monitor,
theme editor,
Notes (canvases, kanban, Gantt, mind maps, handwriting),
password manager,
virtual machines (QEMU/KVM, CLI and MCP server),
video player,
music player,
voice recorder,
maps,
cycle tracker,
QuitSmoke,
Syn Blocks.
The full list with screenshots is in the README.

Neural networks (synaptix). The synaptix package is the synaptixd service: language models,
speech, images and video for all apps, on an NVIDIA GPU, an Intel NPU or the CPU — one package for
every device. On top of it, the assistant
(synshell-ai) chats and talks with local models that can control the system, files, notes and the
web, and the video player gets neural filters.

Computer ↔ phone. synlink links synshell devices over USB and Wi-Fi (QUIC with pinned keys):
pairing, screen and remote input (synlink-view),
files over FUSE, notifications, a shared clipboard, ssh phone without knowing addresses, a CLI and
an MCP server for Claude Code. Passwords sync between linked devices.

Games, Wine, Android. Game mode (Super+G): a fullscreen console-style launcher with the Steam
library, covers, gamepad navigation and an in-game quick menu.
Wine components
installs the DLLs Wine lacks (MFC, Visual Basic runtimes, OpenAL) once for all prefixes.
syndroid runs Android
apps in a LineageOS container (Waydroid images) with its own runtime, each app in its own window.

Install

Arch Linux (AUR), x86_64 and aarch64 — every package as -bin (prebuilt from this release) and
-git (built from the repository):

yay -S synshell-bin          # the desktop and all applications, without neural networks
yay -S synshell-core-bin     # the minimum: compositor, shell, settings, file manager, terminal
yay -S syn-vm-bin            # or any single application by its package name

The phone shell is synshell-mobile; neural networks are synaptix and synshell-ai. Then pick
“synshell” in your display manager; on a system without one, enable the bundled login screen with
systemctl enable synlogin.service.

Archives attached to this release: .tar.zst per package for x86_64 and aarch64, with SHA256SUMS.

Mobile apps: APKs of QuitSmoke
(syn-quitsmoke) and Syn Blocks
(syn-blocks) for Android 11 and newer (arm64) — download on the phone and open to install; an
unsigned IPA of the cycle tracker
(syn-woman-cycle) for iPhone, to be signed with your own Apple ID.

Building from source: see Build and run.

Known limitations

  • Early. One developer; the first commit is from September 2026. Expect rough edges and config
    keys that still move.
  • Tested on one machine. synshell is my daily session on Arch Linux on a hybrid laptop (Intel
    Arrow Lake iGPU driving a 2560×1600 240 Hz panel at 1.4×, plus an NVIDIA RTX 5090 Laptop GPU).
    Multiple GPUs, monitor hotplug and other distributions are handled in the code but untested.
  • Phone build (aarch64) runs on a Xiaomi 12T Pro; other phones have not been tried.
  • The documentation in docs/ is in Russian; the README files are in English and Russian.

Licence: GPL-3.0 or commercial — see Licence.