Skip to content

A minimal, zero-config GNOME Shell extension to toggle Night Light mode directly from the panel. Supports GNOME 40 through 49+.

License

Notifications You must be signed in to change notification settings

egoistpizza/night-light-toggle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Night Light Toggle 🌙

GNOME Shell License Status

A minimal, zero-config GNOME Shell extension designed to efficiently toggle the system's Night Light mode directly from the top panel. This eliminates the need to navigate through the complex settings menus.


Night Light Toggle Demo

Note on GIF: Screen recording APIs typically capture the output before the compositor applies the color temperature filter. The GIF only demonstrates the icon switching and toggle functionality, not the actual screen tint change.


✨ Key Features

  • Optimal Performance: Uses GSettings directly, ensuring instant response with zero latency.
  • One-Click Toggle: Adds a symbolic icon to the panel for instant control.
  • Bi-directional Sync: The indicator icon updates automatically if the Night Light setting is changed via schedule or another application.
  • Broad Compatibility: Supports both Legacy and Modern GNOME Shell architectures.

📦 Compatibility & Branching Strategy

This project utilizes a multi-branch workflow to ensure stability across major GNOME architecture shifts (Legacy vs. ESM).

GNOME Shell Version Branch Architecture Supported Distributions
45 - 49+ main ESM (Modern Modules) Ubuntu 23.10+, Debian Testing/Sid, Fedora 40+
40 - 44 gnome-40-44 Legacy (Imports) Ubuntu 22.04 LTS, Debian 12 (Bookworm), Pop!_OS 22.04

Note: When installing from extensions.gnome.org, the system automatically delivers the correct version for your GNOME Shell.

🚀 Installation

Method 1: GNOME Extensions Website (Recommended)

Download from E.G.O.

Method 2: Manual Install (From Source)

  1. Clone the repository:

    git clone https://github.com/egoistpizza/night-light-toggle.git
    cd night-light-toggle
  2. Checkout the correct branch for your system:

    • For Ubuntu 22.04 LTS / GNOME 42:
      git checkout gnome-40-44
    • For Ubuntu 23.10+ / GNOME 45+:
      git checkout main
  3. Install & Enable:

    # 3a. Create the destination folder using the UUID
    mkdir -p ~/.local/share/gnome-shell/extensions/night-light-toggle@egoistpizza.github.com
    
    # 3b. Copy the files (Code, license, readme, assets)
    cp -r * ~/.local/share/gnome-shell/extensions/night-light-toggle@egoistpizza.github.com/
    
    # 3c. Reload GNOME Shell (Alt+F2 -> r, then Enter)
    # (Or log out and log back in)
    
    # 3d. Enable the extension
    gnome-extensions enable night-light-toggle@egoistpizza.github.com

🤝 Contributing

Contributions are welcome! Please follow the branching model:

  • Target Pull Requests to main for GNOME 45+ features/fixes.
  • Target Pull Requests to gnome-40-44 for legacy support/fixes on older LTS systems.

📜 License

This project is licensed under the GNU General Public License v3.0-only.

About

A minimal, zero-config GNOME Shell extension to toggle Night Light mode directly from the panel. Supports GNOME 40 through 49+.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published