https://github.com/fairyglade/ly Skip to content Sign up * Product + Features + Mobile + Actions + Codespaces + Packages + Security + Code review + Issues + Integrations + GitHub Sponsors + Customer stories * Team * Enterprise * Explore + Explore GitHub + Learn and contribute + Topics + Collections + Trending + Learning Lab + Open source guides + Connect with others + The ReadME Project + Events + Community forum + GitHub Education + GitHub Stars program * Marketplace * Pricing + Plans + Compare plans + Contact Sales + Education [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} fairyglade / ly Public * Notifications * Fork 227 * Star 2.8k display manager with console UI License WTFPL license 2.8k stars 227 forks Star Notifications * Code * Issues 77 * Pull requests 8 * Actions * Projects 0 * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Security * Insights This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 3 branches 6 tags Code Latest commit @AnErrupTion AnErrupTion Add spectrwm ... 767120c May 18, 2022 Add spectrwm 767120c Git stats * 90 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time res Merge pull request #297 from gerardet46/catalan-translation May 13, 2022 src use uint16_t on put_cell iterations May 16, 2022 sub update submodules Dec 10, 2021 .gitignore remove the ctypes submodule Oct 7, 2021 .gitmodules remove the ctypes submodule Oct 7, 2021 license.md initial commit Jun 10, 2019 makefile remove git submodules helper Dec 10, 2021 readme.md Add spectrwm May 18, 2022 View code [ ] Ly - a TUI display manager Dependencies Support systemd? Cloning and Compiling Configuration Controls .xinitrc Tips PSX DOOM fire animation Additional Information readme.md Ly - a TUI display manager Ly screenshot Ly is a lightweight TUI (ncurses-like) display manager for Linux and BSD. Dependencies * a C99 compiler (tested with tcc and gcc) * a C standard library * GNU make * pam * xcb * xorg * xorg-xauth * mcookie * tput * shutdown On Debian-based distros running apt install build-essential libpam0g-dev libxcb-xkb-dev as root should install all the dependencies for you. Support The following desktop environments were tested with success * bspwm * budgie * cinnamon * deepin * dwm * enlightenment * gnome * i3 * kde * lxde * lxqt * mate * qtile * sway * xfce * pantheon * maxx * windowmaker * spectrwm Ly should work with any X desktop environment, and provides basic wayland support (sway works very well, for example). systemd? Unlike what you may have heard, Ly does not require systemd, and was even specifically designed not to depend on logind. You should be able to make it work easily with a better init, changing the source code won't be necessary :) Cloning and Compiling Clone the repository git clone --recurse-submodules https://github.com/nullgemm/ly.git Compile make Test in the configured tty (tty2 by default) or a terminal emulator (but desktop environments won't start) sudo make run Install Ly and the provided systemd service file sudo make install Enable the service sudo systemctl enable ly.service If you need to switch between ttys after Ly's start you also have to disable getty on Ly's tty to prevent "login" from spawning on top of it sudo systemctl disable getty@tty2.service Configuration You can find all the configuration in /etc/ly/config.ini. The file is commented, and includes the default values. Controls Use the up and down arrow keys to change the current field, and the left and right arrow keys to change the target desktop environment while on the desktop field (above the login field). .xinitrc If your .xinitrc doesn't work make sure it is executable and includes a shebang. This file is supposed to be a shell script! Quoting from xinit's man page: If no specific client program is given on the command line, xinit will look for a file in the user's home directory called .xinitrc to run as a shell script to start up client programs. On ArchLinux, the example .xinitrc (/etc/X11/xinit/xinitrc) starts like this: #!/bin/sh Tips The numlock and capslock state is printed in the top-right corner. Use the F1 and F2 keys to respectively shutdown and reboot. Take a look at your .xsession if X doesn't start, as it can interfere (this file is launched with X to configure the display properly). PSX DOOM fire animation To enable the famous PSX DOOM fire described by Fabien Sanglard, just uncomment animate = true in /etc/ly/config.ini. You may also disable the main box borders with hide_borders = true. Additional Information The name "Ly" is a tribute to the fairy from the game Rayman. Ly was tested by oxodao, who is some seriously awesome dude. About display manager with console UI Resources Readme License WTFPL license Stars 2.8k stars Watchers 34 watching Forks 227 forks Releases 3 v0.5.0 Latest Feb 3, 2020 + 2 releases Packages 0 No packages published Contributors 40 * @nullgemm * @stlaz * @AnErrupTion * @liweitianux * @roosemberth * @ericonr * @devenblake * @ivanhercaz * @djpohly * @kefoster951 * @themadprofessor + 29 contributors Languages * C 88.9% * Shell 6.9% * Makefile 4.2% * (c) 2022 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.