Vitaliy Alexeyev

04 / 07 · Rust · smithay · syngui

synshell

A Wayland desktop environment for computers and phones, laid out like KDE Plasma: a compositor, a separate shell and System Settings, plus 31 applications — all drawn with syngui and configured in one file, applied live.

Licence
GPL-3.0 / commercial
Platform
Linux · Wayland · x86_64 and aarch64
Packages
synshell-bin, synshell-git (AUR)
Status
0.2.0, first public release
synshell in the Nord theme: a floating top panel, the dock, the file manager, Resource Monitor and the terminal
synshell in the Nord theme: a floating top panel, the dock, the file manager, Resource Monitor and the terminal
shells: desktop, phone, game mode
3
applications, each with its own README
31
interface languages
14
built-in themes, Nord by default
14
01

What it is

synshell is a desktop environment for Wayland, written in Rust, for computers and phones. 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 framework, syngui.

The same compositor runs a phone shell with an on-screen keyboard on Android phones and a console-style game mode (Super+G). Almost everything lives in one file, ~/.config/synshell/config.toml, and changes apply live; System Settings edits it in place and keeps your comments.

02

Key features

  • Compositor synwm on smithay: DRM/KMS with several GPUs, hotplug and DPMS; workspaces, floating / tile / columns / grid / monocle layouts, snapping, window overview, Alt+Tab, window rules, Xwayland, a JSON IPC socket and synwm msg. If the shell crashes, the compositor restarts it and your windows stay.
  • Panel layouts set up with the mouse: a top panel with a dock, a classic taskbar (the default) or a vertical panel — any number of panels on any edge. An adaptive panel as in Plasma 6, and a panel that becomes the title bar of a maximized window with a global menu for Qt/KDE and GTK 3.
  • A dock in the spirit of macOS and Latte Dock: icons grow under the cursor, launch bounce, 3D tilt and a 3D shelf with reflections, groups, folders, autohide and intellihide.
  • Phone: the synmobile-shell phone shell, an on-screen keyboard and phone apps — Phone, Messages, Camera, NFC, Compass, Sports and health, IR remote.
  • Game mode: a fullscreen launcher with the Steam library, covers, gamepad navigation and an in-game quick menu; Wine components for all prefixes and Android apps in a LineageOS container (syndroid).
  • 31 applications: System Settings, file manager (archives as folders, network locations, phones), terminal, software center (Arch repositories and AUR), Resource Monitor, theme editor, Notes (canvases, kanban, Gantt, mind maps, handwriting), passwords, virtual machines (syn-vm: QEMU/KVM, CLI and MCP server), video and music players, voice recorder, Maps, an assistant on local neural networks and more.
  • 14 built-in themes (Nord by default), each exported to GTK, Qt/KDE and GIMP so other apps match; your own themes in MSS. Interface in 14 languages.
  • Computer ↔ phone over USB and Wi-Fi (synlink): screen and remote input, files, notifications, a shared clipboard, synced passwords.
  • Own lock screen (PAM), screen-sharing and screenshot portal over PipeWire for browsers and OBS, and the synshot screenshot tool.
03

Applications

Desktop

Work

Media

Phone

Compatibility

Health and games

Developer tools

04

Install

yay -S synshell-bin          # the desktop and all applications
yay -S synshell-core-bin     # the minimum: compositor, shell, settings, files, terminal
yay -S syn-vm-bin            # or any single application

Arch Linux, x86_64 and aarch64: every package comes as -bin (prebuilt) and -git (built from the repository). Then pick “synshell” in your display manager, or enable the bundled login screen: systemctl enable synlogin.service. The phone shell is synshell-mobile; neural networks are synaptix and synshell-ai.

Full instructions in the README →

05

Requirements and limitations

  • Linux with Wayland; X11 applications run through Xwayland. Packages for Arch Linux (AUR); archives for other systems are attached to the release.
  • Tested on one machine: my daily session on a hybrid laptop (Intel iGPU + NVIDIA RTX 5090 Laptop GPU). Multiple GPUs, monitor hotplug and other distributions are handled in the code but untested.
  • The phone build (aarch64) runs on a Xiaomi 12T Pro; other phones have not been tried.
  • Early: one developer, first commit in September 2026 — expect rough edges and config keys that still move.
06

Screenshots

Measured, not promised

How it is tested

synshell is my own daily session on the laptop and on the phone, so what is described here is what I run every day. The whole interface — shells, dock, settings, all 31 applications — is drawn with syngui.

Every number here is measured on my own hardware. github.com/VitaminDB/synshell