Skip to content

jcppkkk/gnome-extensions-watchdog

Repository files navigation

GNOME Extensions Watchdog

This project provides a daemon to monitor login events from the lock screen to the desktop on GNOME. When a login event is detected, it reloads the user extensions using gsettings.

Prerequisites

  • Node.js and npm installed
  • pm2 installed globally

Installation

  1. Clone the repository:

    git clone https://github.com/jcppkkk/gnome-extensions-watchdog.git
    cd gnome-extensions-watchdog
  2. Install dependencies:

    npm install
  3. Install pm2 globally if you haven't already:

    npm install -g pm2

Usage

  1. Start the daemon using pm2:

    pm2 start watchdog.js --name gnome-extensions-watchdog --watch
  2. Set up pm2 to start on system boot:

    pm2 startup

    Follow the instructions provided by the command to enable the startup script.

  3. Save the current process list:

    pm2 save

How It Works

  • The script watchdog.js uses gdbus to monitor login events from the lock screen to the desktop.
  • When a login event is detected, it executes the following commands to reload the user extensions:
    gsettings set org.gnome.shell disable-user-extensions true
    gsettings set org.gnome.shell disable-user-extensions false

Configuration

You can customize the script as needed by editing watchdog.js.

Contributing

Feel free to submit issues or pull requests. Contributions are welcome!

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published