About Vay#

Inspiration and the why#

I’ve been using Linux for a long time. In my earlier days, I switched between distributions quite frequently, trying different setups and figuring out what worked best for me. Over time, I realized something important: the distribution you choose doesn’t define what you can do with Linux. While some tasks might be easier on Arch Linux than on Debian or Fedora, all three give you the freedom to build a system that suits your needs.

My journey eventually led me away from traditional desktop environments like GNOME and KDE Plasma and toward tiling window managers and Wayland compositors. While preconfigured desktop environments are polished and convenient, I prefer a minimal setup where I understand what’s running, can change what I want, and don’t have to work around things I never asked for.

I spent a long time using Arch Linux with Hyprland, experimenting with my configuration and making the desktop my own. Later, I discovered Niri and its scrolling window-management approach, which opened up another way of thinking about how a desktop should work.

Eventually, I wanted something I could reproduce reliably across my machines without rebuilding my setup from scratch every time. I also wanted a system that was ready to use without sacrificing the simplicity and control I value in Linux.

That’s why I started Vay.

Vay is my personal, opinionated take on a minimal Linux desktop, built on Void Linux. It brings together the tools, configuration, and defaults I want in a fresh installation, packaged into a reproducible ISO with a simple installation process.

Vay is not intended to be everything for everyone. It’s a solid starting point for people who want a lightweight, functional desktop without having to assemble every component themselves.

Why Void Linux?#

Choosing Void Linux wasn’t just about finding another distribution. Its approach aligns closely with what I want Vay to be.

  • Runit: A straightforward init system with a service supervision model that’s easy to understand and manage. No unnecessary complexity between me and the system.
  • XBPS: Void’s native package manager is fast, capable, and designed to handle package installation, removal, and system updates efficiently.
  • Good documentation: Void provides documentation that makes it easier to understand the system, troubleshoot problems, and learn how its components fit together.
  • A minimal foundation: Void gives me the flexibility to build the desktop I want without starting from a large, preconfigured desktop environment.

Rather than reinventing the distribution underneath, Vay builds on what Void already does well and adds the desktop experience and tooling I want on top.

Designed, not bloated#

Minimalism doesn’t mean removing everything until the system is barely usable. It means making deliberate choices about what belongs in the default installation.

A desktop should have working audio, a useful status bar, sensible keyboard-driven controls, notifications, and the tools needed to get things done. Those things shouldn’t require hours of manual setup, nor should they come bundled with a pile of unrelated software.

Vay aims to strike that balance: a small footprint without sacrificing everyday usability.

With SwayFX, i3blocks, PipeWire, and a carefully selected set of supporting tools, Vay aims to provide a functional Wayland desktop while keeping resource usage low. Staying below 1 GB of memory usage at idle is a design goal, not a hardware-independent guarantee.

The default configuration is opinionated, but it’s still Linux. The configuration is yours to inspect, change, extend, or replace.

Core principles#

Minimal by design#

Every component should have a reason to be there. I prefer small, focused tools that work well together over large stacks of software that attempt to do everything.

Performance matters#

Fast startup, low memory usage, and responsive interaction are important design goals. Performance isn’t an afterthought; it influences the tools and defaults I choose.

Opinionated defaults, your system#

Vay makes decisions so you don’t have to configure every detail before getting started. Those decisions are starting points, not restrictions. You remain in control of your system.

The desktop stack#

Vay’s default desktop is built around a small set of carefully selected components.

ComponentToolPurpose
Base systemVoid LinuxMinimal, rolling-release foundation
Window manager / compositorSwayFXWayland desktop with visual effects
Status bari3blocksLightweight, customizable system status
Audio serverPipeWireAudio and multimedia routing
Audio session managerWirePlumberAudio policy and device management
Audio mixerWiremixTerminal-based audio control
Volume controlvay-volumeCustom shell-based volume controls
Volume OSDwobOn-screen volume feedback
Login managergreetd + tuigreetLightweight graphical-session login

This is the default stack, not a list of things you’re locked into. As Vay evolves, the desktop configuration may grow to support additional options while keeping the same underlying philosophy.

Built for my machines, shared with yours#

Vay started as a way to make my own Linux installations easier to reproduce and maintain. But if it solves a problem for me, there’s a good chance it can help someone else, too.

I want Vay to be transparent, understandable, and useful to people who enjoy taking ownership of their systems.

The longer-term goal is to make Vay something others can use, explore, and contribute to. Whether you want to install it as-is, learn from its configuration, or adapt it to your own workflow, you’re welcome to make it your own.

Vay is my setup, shared as a starting point for yours.