Coder Social home page Coder Social logo

greetd's Introduction

greetd

greetd is a minimal and flexible login manager daemon that makes no assumptions about what you want to launch.

Use gtkgreet to launch sway if you want a fully graphical session, or use agreety to launch a shell if you want a drop-in replacement for agetty(8) and login(1).

If you can run it from your shell in a TTY, greetd can start it. If it can be taught to speak a simple JSON-based IPC protocol, then it can be a greeter.

See the wiki for FAQ, guides for common configurations, and troubleshooting information.

List of known greetd greeters

  • agreety - The simple, text-based greeter living in this repo is a simple example.
  • gtkgreet - The flagship graphical, GTK based greeter (xdg-shell or wlr-layer-shell, to be used with something like sway)
  • qtgreet - Qt-based greeter (using wlr-layer-shell, to be used with something like sway)
  • dlm - Dumb Login Manager (using fbdev)
  • ddlm - Deathowl's dummy login manager (using fbdev)
  • wlgreet - Wayland greeter (using wlr-layer-shell, to be used with something like sway)
  • tuigreet - Console UI greeter (using tui-rs)
  • ReGreet - Clean and customizable GTK4 based greeter (to be used with something like sway)
  • marine_greetdm - A cli greeter, by rustyline and without gui. It can configure enviroment variables for special desktops.
  • greetd-qmlgreet - Qt6 qml greetd (using ext-session-shell, to be used with something like river and sway)

Patches expanding the list welcome.

Installation

The below will install greetd, agreety and the default configuration. This looks just like agetty(8) and login(1). See the manpages and the wiki for information on how to do more interesting things.

From packages

Arch Linux

greetd and a few greeters are available in AUR for Arch Linux.

Gentoo

emerge gui-libs/greetd

Manually from source

# Compile greetd and agreety.
cargo build --release

# Put things into place
sudo cp target/release/{greetd,agreety} /usr/local/bin/
sudo cp greetd.service /etc/systemd/system/greetd.service
mkdir /etc/greetd
cp config.toml /etc/greetd/config.toml

# Create the greeter user
sudo useradd -M -G video greeter
sudo chmod -R go+r /etc/greetd/

# Look in the configuration file `/etc/greetd/config.toml` and edit as appropriate.
# When done, enable and start greetd
systemctl enable --now greetd

How do I write my own greeter?

All you need is an application that can speak the greetd IPC protocol, which is documented in greetd-ipc(7). See gtkgreet or agreety for inspiration.

How to discuss

Go to #kennylevinsen @ irc.libera.chat to discuss, or use ~kennylevinsen/[email protected].

greetd's People

Contributors

kennylevinsen avatar alebastr avatar whynothugo avatar apognu avatar decodetalkers avatar appelgriebsch avatar a-wai avatar eli-schwartz avatar lechner avatar rharish101 avatar kchibisov avatar mcepl avatar robertgzr avatar cinerea0 avatar muradm avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.