nlogout
is a customizable logout GUI application for Linux systems, written in Nim. It provides a configurable interface for logging out, shutting down, rebooting, and other system actions.
- Customizable buttons for various system actions (logout, reboot, shutdown, etc.)
- Configurable appearance (colors, fonts, icon themes)
- Support for rounded corners on buttons
- Keyboard shortcuts for quick actions
- Custom icon themes
- Support for custom lock screen applications
- Ability to terminate specified programs before logout
- Simply copy nlogout to /usr/bin or any other preferred directory, copy config.toml and the themes folder to ~/.config/nlogout
- Bind a shortcut to nlogout
mkdir -p "$HOME/.config/nlogout"
cp ./bin/nlogout "$HOME/.config/nlogout/nlogout"
cp config.toml "$HOME/.config/nlogout/config.toml"
cp -r ./themes "$HOME/.config/nlogout/themes"
-
Nim compiler
-
nimble package manager (nimble)
sudo pacman -S nim
-
nim modules NiGUI and parseToml
nimble install nigui nimble install parsetoml
-
Clone the repository:
git clone https://github.com/DrunkenAlcoholic/nlogout.git cd nlogout
-
Build the binrary
nim compile --define:release --opt:size --app:gui --outdir="./bin" src/nlogout.nim
-
Optionally Run the build script:
./build.sh
This script will:
- Install Nim (if using Arch Linux)
- Install required Nim modules (parsetoml, nigui)
- Compile nlogout
Note: You will need to manually copy themes, config.toml to ~/.config/nlogout, Also copy nlogout to /usr/bin or your preffered directory
nlogout uses a TOML configuration file located at ~/.config/nlogout/config.toml
. You can customize various aspects of the application, including:
- Window properties
- Font settings
- Button appearance and behavior
- Icon themes
- Custom lock screen application
- Programs to terminate before logout
For a detailed explanation of configuration options, see the Configuration Guide.
Run nlogout by executing:
~/.config/nlogout/nlogout
You can bind this command to a keyboard shortcut in your window manager or desktop environment for quick access.
The rebuild.sh
script is provided for easy building and installation of nlogout. Here's what it does:
- Terminates any running instance of nlogout
- Installs Nim compiler (for Arch Linux users)
- Installs required Nim modules
- Compiles nlogout with optimizations
- Copies the default configuration and themes if they don't exist
You can use this script to quickly rebuild and update your nlogout installation.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.