Skip to content

vauchi/linux-gtk

Repository files navigation

Mirror: This repo is a read-only mirror of gitlab.com/vauchi/linux-gtk. Please open issues and merge requests there.

Pipeline REUSE

Note

You're early — and that's the point. Vauchi is pre-alpha and under heavy development: not yet ready for production, and APIs may change without notice. If you're here now, you can help shape it — try it, break it, and tell us what's missing.

Vauchi Linux GTK

Native Linux desktop app for Vauchi — living contact cards, exchanged in person.

Built with GTK4-rs (Rust). Uses vauchi-core as a direct Rust dependency (no FFI overhead).

Prerequisites

  • GTK4 development libraries (libgtk-4-dev)
  • libadwaita development libraries (libadwaita-1-dev)
  • Rust 1.78+ (see rust-toolchain.toml)

Build

cargo build
cargo test

Architecture

This app implements the core-driven UI contract:

  • ScreenRenderer renders ScreenModel from core (direct Rust types)
  • 14 component renderers map to core's Component enum variants using GTK4 widgets
  • ActionHandler maps user input to UserAction enum
  • Platform chrome: HeaderBar, GNotification, libadwaita styling

All business logic lives in vauchi-core (Rust). This repo is a pure rendering layer.

Packaging

  • Flatpak (Flathub)
  • AppImage
  • .deb

License

GPL-3.0-or-later

About

Vauchi — Native Linux desktop app (GTK4) (mirror of gitlab.com/vauchi)

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors