
A graphical console greeter for greetd, written in Go with the Bubble Tea framework.

Quick Links
Installation
Quick Install
One-line installer that works on most Linux distributions:
curl -fsSL https://raw.githubusercontent.com/Nomadcxx/sysc-greet/master/install.sh | sudo bash
The installer automatically detects your package manager and works on Arch Linux, Debian/Ubuntu, Fedora, and openSUSE. It'll handle greeter backend selection, install dependencies, and set everything up for you.
Hyprland greeter support ends in ~3 months. New installs should choose niri (default) or cagebreak, its replacement.
Build from Source
If you want to build it yourself, just clone the repo and run the installer:
git clone https://github.com/Nomadcxx/sysc-greet
cd sysc-greet
go run ./cmd/installer/
The installer walks you through compositor selection and configuration.
Arch Linux (AUR)
Four AUR packages available depending on which greeter backend you're using:
# niri (default)
yay -S sysc-greet
# Cagebreak variant (the Hyprland replacement)
yay -S sysc-greet-cagebreak
# Sway variant
yay -S sysc-greet-sway
# Hyprland variant (deprecated, replaced by cagebreak)
yay -S sysc-greet-hyprland
The packages conflict with each other — install exactly one. sysc-greet-cagebreak pulls in cagebreak and socat from the AUR.
NixOS (Flake)
If you're on NixOS, add sysc-greet to your flake:
flake.nix:
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
sysc-greet = {
url = "github:Nomadcxx/sysc-greet";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, sysc-greet, ... }: {
nixosConfigurations.your-hostname = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
sysc-greet.nixosModules.default
];
};
};
}
configuration.nix:
{
services.sysc-greet = {
enable = true;
compositor = "niri"; # or "cagebreak", "sway", "hyprland" (deprecated)
};
# Optional: Set initial session for auto-login
services.sysc-greet.settings.initial_session = {
command = "Hyprland";
user = "your-username";
};
}
By default, the NixOS module does not install niri, cagebreak, hyprland, or sway.
Install your chosen backend yourself, or set niriPackage, cagebreakPackage, hyprlandPackage,
or swayPackage if you want the module to install and use a specific package.
If your compositor is managed elsewhere, set compositorCommand to the exact
command greetd should run.
Then rebuild:
sudo nixos-rebuild switch --flake .#your-hostname
Note: On NixOS, sysc-greet automatically uses the correct data directory
via build-time path injection. The Nix store path is injected at build time,
so no manual configuration or symlinks are needed (in theory)
Pre-built Packages (Debian/Ubuntu/Fedora)
Download pre-built packages from GitHub Releases:
Latest: v1.1.9
Debian/Ubuntu:
wget https://github.com/Nomadcxx/sysc-greet/releases/download/v1.1.9/sysc-greet_1.1.9_amd64.deb
sudo apt install ./sysc-greet_1.1.9_amd64.deb
Fedora:
wget https://github.com/Nomadcxx/sysc-greet/releases/download/v1.1.9/sysc-greet-1.1.9-1.x86_64.rpm
sudo dnf install ./sysc-greet-1.1.9-1.x86_64.rpm
See Installation Guide for details.
Documentation
For detailed docs, configuration guides, troubleshooting, and usage instructions, check out the full documentation site.
License
GPL-3.0