Skip to content

ex1side/killswitch

Repository files navigation

Killswitch Session Manager

A highly configurable, dynamic Linux session switcher designed to work seamlessly with display managers with enabled autologin (like greeted) and dynamic menus. Instead of hardcoding session switches, Killswitch lets you define flexible session "profiles" in a unified Bash configuration file.

Features

  • Easily swap between Desktop (Niri/Hyprland), Gaming (Gamescope Steam), and Android (Waydroid) smoothly.
  • Dynamic Rofi menu built on-the-fly from your active configuration.
  • Configuration is standard Bash, giving you unlimited scripting potential inside your start and kill steps.
  • Integrates perfectly with standard Display Managers via a custom .desktop session wrapper.

Installation

Run the installation script to copy the core files into your /usr/local/bin and create the default user configurations:

sudo ./install.sh

Configuration

Your local configuration will be located at ~/.config/killswitch/config.sh. Here you can define any number of sessions using the naming convention session_<ID>_name, session_<ID>_start, and session_<ID>_kill.

Example:

session_waydroid_name="📱 Waydroid"
session_waydroid_start() {
    exec cage -- waydroid show-full-ui
}
session_waydroid_kill() {
    pkill -u $USER cage 2>/dev/null || true
}

Usage

  1. Log out or restart your Display Manager.
  2. Select the Killswitch session in your greeted config file.
  3. Bind killswitch-switcher to a hotkey in your window manager.

About

Session switcher for desktop, SteamOS mode, waydroid, etc.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages