---
url: /glimpse/config/cli/glimpsectl.md
---
# glimpsectl

Read and drive the glimpse services.

```text
Usage: glimpsectl [OPTIONS] <COMMAND>

Commands:
  night-light    The night light
  idle           Idle inhibitors and manual holds
  weather        Current conditions and the forecast
  appearance     Desktop light/dark mode
  geolocation    Current location and solar phase
  notifications  The notification store
  clipboard      The panel's clipboard history
  config         Inspect the configuration stack
  applet         Inspect, control and develop applets
  dev            Panel development tools
  completions    Generate shell completions
  status         Show running glimpse components
  panel          Inspect and control the panel
  doctor         Check the configuration and every provider
  help           Print this message or the help of the given subcommand(s)

Options:
      --config-dir <DIR>     Directory stacked above the user configuration. [env: GLIMPSE_CONFIG_DIR=]
      --log-format <FORMAT>  Select the log output format (plain text or JSON). [default: plain] [possible values: plain, json]
      --log <LEVEL>          Set the logging filter (for example, info, debug, or trace). [env: RUST_LOG=] [default: info]
      --color <WHEN>         Controls when to use color [default: auto] [possible values: auto, always, never]
      --json                 Print the payload as JSON instead of a table
      --panel <APP_ID>       Panel D-Bus application ID [env: GLIMPSE_PANEL_APP_ID=] [default: me.aresa.GlimpsePanel]
  -h, --help                 Print help
  -V, --version              Print version
```

The options above work with every command and are not repeated below.

## `glimpsectl night-light`

The night light

```text
Usage: glimpsectl night-light [OPTIONS] <COMMAND>

Commands:
  status       Print the current schedule and temperature
  pause        Hold neutral daylight until the current night ends
  resume       Follow the schedule again
  schedule     Temporarily select a schedule
  temperature  Set or clear a temperature override
  help         Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl night-light status`

Print the current schedule and temperature

```text
Usage: glimpsectl night-light status [OPTIONS]

Options:
      --watch                Follow status changes
  -h, --help                 Print help
```

### `glimpsectl night-light pause`

Hold neutral daylight until the current night ends

```text
Usage: glimpsectl night-light pause [OPTIONS]

Options:
  -h, --help                 Print help
```

### `glimpsectl night-light resume`

Follow the schedule again

```text
Usage: glimpsectl night-light resume [OPTIONS]

Options:
  -h, --help                 Print help
```

### `glimpsectl night-light schedule`

Temporarily select a schedule

```text
Usage: glimpsectl night-light schedule [OPTIONS] <MODE>

Arguments:
  <MODE>  Schedule to run [possible values: off, automatic, schedule]

Options:
  -h, --help                 Print help
```

### `glimpsectl night-light temperature`

Set or clear a temperature override

```text
Usage: glimpsectl night-light temperature [OPTIONS] [KELVIN]

Arguments:
  [KELVIN]  Temperature in Kelvin

Options:
      --clear                Clear the temperature override
  -h, --help                 Print help
```

## `glimpsectl idle`

Idle inhibitors and manual holds

```text
Usage: glimpsectl idle [OPTIONS] <COMMAND>

Commands:
  status   Print every inhibitor and the health of each source
  inhibit  Hold off idle and suspend while this command runs
  release  Release a releasable inhibitor
  help     Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl idle status`

Print every inhibitor and the health of each source

```text
Usage: glimpsectl idle status [OPTIONS]

Options:
      --watch                Follow inhibitor changes
  -h, --help                 Print help
```

### `glimpsectl idle inhibit`

Hold off idle and suspend while this command runs. The hold's id is printed first; the hold ends on Ctrl-C, when `--for` lapses, or when the process exits for any reason.

```text
Usage: glimpsectl idle inhibit [OPTIONS] [-- <CMD>...]

Arguments:
  [CMD]...  Command to run while holding the inhibitor

Options:
      --for <DURATION>       End the hold after this long: 90, 90s, 15m or 2h
  -h, --help                 Print help (see more with '--help')
```

### `glimpsectl idle release`

Release a releasable inhibitor

```text
Usage: glimpsectl idle release [OPTIONS] <ID>

Arguments:
  <ID>  The inhibitor's id, as `status` prints it

Options:
  -h, --help                 Print help
```

## `glimpsectl weather`

Current conditions and the forecast

```text
Usage: glimpsectl weather [OPTIONS] <COMMAND>

Commands:
  status   Print every watched place and its current conditions
  refresh  Fetch now instead of waiting for the next poll
  help     Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl weather status`

Print every watched place and its current conditions

```text
Usage: glimpsectl weather status [OPTIONS]

Options:
  -h, --help                 Print help
```

### `glimpsectl weather refresh`

Fetch now instead of waiting for the next poll

```text
Usage: glimpsectl weather refresh [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl appearance`

Desktop light/dark mode

```text
Usage: glimpsectl appearance [OPTIONS] <COMMAND>

Commands:
  status  Print desktop mode status
  set     Temporarily select light or dark mode
  resume  Follow the configured mode policy
  help    Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl appearance status`

Print desktop mode status

```text
Usage: glimpsectl appearance status [OPTIONS]

Options:
      --watch                Follow status changes
  -h, --help                 Print help
```

### `glimpsectl appearance set`

Temporarily select light or dark mode

```text
Usage: glimpsectl appearance set [OPTIONS] <MODE>

Arguments:
  <MODE>  Desktop mode [possible values: light, dark]

Options:
  -h, --help                 Print help
```

### `glimpsectl appearance resume`

Follow the configured mode policy

```text
Usage: glimpsectl appearance resume [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl geolocation`

Current location and solar phase

```text
Usage: glimpsectl geolocation [OPTIONS] <COMMAND>

Commands:
  status  Print location and solar phase
  help    Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl geolocation status`

Print location and solar phase

```text
Usage: glimpsectl geolocation status [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl notifications`

The notification store

```text
Usage: glimpsectl notifications [OPTIONS] <COMMAND>

Commands:
  list      Print the notifications the store holds
  send      Send a notification
  remove    Remove a stored notification
  activate  Activate a notification's default action
  action    Invoke a notification action
  dismiss   Mark a notification read and drop its popup
  clear     Dismiss every notification, or every one from a single application
  dnd       Turn do not disturb on or off, or toggle it
  help      Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl notifications list`

Print the notifications the store holds

```text
Usage: glimpsectl notifications list [OPTIONS]

Options:
      --watch                Follow notification changes
  -h, --help                 Print help
```

### `glimpsectl notifications send`

Send a notification

```text
Usage: glimpsectl notifications send [OPTIONS] <SUMMARY>

Arguments:
  <SUMMARY>  Notification summary

Options:
      --body <BODY>          Notification body [default: ""]
      --app-name <APP_NAME>  Sending application name [default: glimpsectl]
      --icon <ICON>          Icon name or path [default: ""]
      --image <IMAGE>        Image path
      --urgency <URGENCY>    Notification urgency [default: normal] [possible values: low, normal, critical]
      --action <KEY=LABEL>   Add an action
      --replace <REPLACE>    Replace this notification ID [default: 0]
      --expire <EXPIRE>      Expiry in milliseconds; -1 uses the server default [default: -1]
  -h, --help                 Print help
```

### `glimpsectl notifications remove`

Remove a stored notification

```text
Usage: glimpsectl notifications remove [OPTIONS] <ID>

Arguments:
  <ID>  Notification ID

Options:
  -h, --help                 Print help
```

### `glimpsectl notifications activate`

Activate a notification's default action

```text
Usage: glimpsectl notifications activate [OPTIONS] <ID>

Arguments:
  <ID>  Notification ID

Options:
  -h, --help                 Print help
```

### `glimpsectl notifications action`

Invoke a notification action

```text
Usage: glimpsectl notifications action [OPTIONS] <ID> <KEY>

Arguments:
  <ID>   Notification ID
  <KEY>  Action key

Options:
  -h, --help                 Print help
```

### `glimpsectl notifications dismiss`

Mark a notification read and drop its popup

```text
Usage: glimpsectl notifications dismiss [OPTIONS] <ID>

Arguments:
  <ID>  The notification's id, as `list` prints it

Options:
  -h, --help                 Print help
```

### `glimpsectl notifications clear`

Dismiss every notification, or every one from a single application

```text
Usage: glimpsectl notifications clear [OPTIONS]

Options:
      --app <APP_ID>         Only this application's notifications
  -h, --help                 Print help
```

### `glimpsectl notifications dnd`

Turn do not disturb on or off, or toggle it. Use `on --until HH:MM` to turn it off again at a local time.

```text
Usage: glimpsectl notifications dnd [OPTIONS] <STATE>

Arguments:
  <STATE>  Whether to silence notifications [possible values: on, off, toggle]

Options:
      --until <HH:MM>        Turn it off again at this local time, today or tomorrow
  -h, --help                 Print help (see more with '--help')
```

## `glimpsectl clipboard`

The panel's clipboard history

```text
Usage: glimpsectl clipboard [OPTIONS] <COMMAND>

Commands:
  list    Print the history, newest first
  get     Write one entry's bytes to stdout, exactly as they were copied
  copy    Put one entry back on the clipboard
  pin     Keep one entry through eviction and clearing
  unpin   Let a pinned entry be evicted again
  remove  Remove one entry from the history
  clear   Remove every entry that is not pinned
  help    Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard list`

Print the history, newest first

```text
Usage: glimpsectl clipboard list [OPTIONS]

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard get`

Write one entry's bytes to stdout, exactly as they were copied

```text
Usage: glimpsectl clipboard get [OPTIONS] <ID>

Arguments:
  <ID>  The entry's id, as `list` prints it

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard copy`

Put one entry back on the clipboard

```text
Usage: glimpsectl clipboard copy [OPTIONS] <ID>

Arguments:
  <ID>  The entry's id, as `list` prints it

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard pin`

Keep one entry through eviction and clearing

```text
Usage: glimpsectl clipboard pin [OPTIONS] <ID>

Arguments:
  <ID>  The entry's id, as `list` prints it

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard unpin`

Let a pinned entry be evicted again

```text
Usage: glimpsectl clipboard unpin [OPTIONS] <ID>

Arguments:
  <ID>  The entry's id, as `list` prints it

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard remove`

Remove one entry from the history

```text
Usage: glimpsectl clipboard remove [OPTIONS] <ID>

Arguments:
  <ID>  The entry's id, as `list` prints it

Options:
  -h, --help                 Print help
```

### `glimpsectl clipboard clear`

Remove every entry that is not pinned

```text
Usage: glimpsectl clipboard clear [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl config`

Inspect the configuration stack

```text
Usage: glimpsectl config [OPTIONS] <COMMAND>

Commands:
  show      Print the merged configuration
  validate  Validate a file, or the layered stack, and report where a problem is
  path      Print the files the layered stack resolved to, in order
  help      Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl config show`

Print the merged configuration

```text
Usage: glimpsectl config show [OPTIONS]

Options:
  -h, --help                 Print help
```

### `glimpsectl config validate`

Validate a file, or the layered stack, and report where a problem is

```text
Usage: glimpsectl config validate [OPTIONS] [PATH]

Arguments:
  [PATH]  Validate this file instead of the stack

Options:
  -h, --help                 Print help
```

### `glimpsectl config path`

Print the files the layered stack resolved to, in order

```text
Usage: glimpsectl config path [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl applet`

Inspect, control and develop applets

```text
Usage: glimpsectl applet [OPTIONS] <COMMAND>

Commands:
  list       List live applets or the installed catalog
  inspect    Inspect a live applet or installed desktop entry
  click      Click an applet
  scroll     Scroll an applet
  open       Open an applet's popover
  close      Close an applet's popover
  toggle     Toggle an applet's popover
  restart    Restart the applet's systemd services
  new        Create an external applet
  run        Run an applet in the panel until Ctrl-C
  package    Build an applet package (.glimpse.zip)
  install    Install an external applet from a directory or a .glimpse.zip package
  uninstall  Remove an applet installed by glimpsectl
  help       Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl applet list`

List live applets or the installed catalog

```text
Usage: glimpsectl applet list [OPTIONS]

Options:
      --watch                Follow live applet changes
      --installed            List installed external applets
  -h, --help                 Print help
```

### `glimpsectl applet inspect`

Inspect a live applet or installed desktop entry

```text
Usage: glimpsectl applet inspect [OPTIONS] <NAME>

Arguments:
  <NAME>  Applet name, as list prints it

Options:
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [possible values: top, bottom, left, right]
      --installed            Inspect the installed desktop entry
  -h, --help                 Print help
```

### `glimpsectl applet click`

Click an applet

```text
Usage: glimpsectl applet click [OPTIONS] <NAME>

Arguments:
  <NAME>  Applet name, as list prints it

Options:
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [possible values: top, bottom, left, right]
      --button <BUTTON>      Mouse button: left, middle, right, or a number [default: left]
  -h, --help                 Print help
```

### `glimpsectl applet scroll`

Scroll an applet

```text
Usage: glimpsectl applet scroll [OPTIONS] <NAME> <DIRECTION>

Arguments:
  <NAME>       Applet name, as list prints it
  <DIRECTION>  Scroll direction [possible values: up, down, left, right]

Options:
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [possible values: top, bottom, left, right]
      --steps <STEPS>        Number of scroll notches [default: 1]
  -h, --help                 Print help
```

### `glimpsectl applet open`

Open an applet's popover

```text
Usage: glimpsectl applet open [OPTIONS] <NAME>

Arguments:
  <NAME>  Applet name, as list prints it

Options:
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [possible values: top, bottom, left, right]
  -h, --help                 Print help
```

### `glimpsectl applet close`

Close an applet's popover

```text
Usage: glimpsectl applet close [OPTIONS] <NAME>

Arguments:
  <NAME>  Applet name, as list prints it

Options:
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [possible values: top, bottom, left, right]
  -h, --help                 Print help
```

### `glimpsectl applet toggle`

Toggle an applet's popover

```text
Usage: glimpsectl applet toggle [OPTIONS] <NAME>

Arguments:
  <NAME>  Applet name, as list prints it

Options:
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [possible values: top, bottom, left, right]
  -h, --help                 Print help
```

### `glimpsectl applet restart`

Restart the applet's systemd services

```text
Usage: glimpsectl applet restart [OPTIONS] <ID>

Arguments:
  <ID>  Applet desktop-file ID

Options:
  -h, --help                 Print help
```

### `glimpsectl applet new`

Create an external applet

```text
Usage: glimpsectl applet new [OPTIONS]

Options:
      --id <ID>                    Applet desktop-file ID
      --language <LANGUAGE>        Applet language template [default: ts] [possible values: rs, ts, py, go]
      --name <NAME>                Applet display name
      --description <DESCRIPTION>  Applet description
      --icon <ICON>                Applet icon name
      --dir <DIR>                  Destination directory
      --yes                        Accept defaults without prompting
  -h, --help                       Print help
```

### `glimpsectl applet run`

Run an applet in the panel until Ctrl-C

```text
Usage: glimpsectl applet run [OPTIONS] [DIR|ID]

Arguments:
  [DIR|ID]  An applet directory holding one .desktop file, or an installed applet's desktop-file id [default: .]

Options:
      --dev                   Restart the applet when its files or config change
      --bar <bar>             Configured panel index [default: 0]
      --isolated              Start and own a fresh test panel
      --output <OUTPUT>       Output connector, or the first mapped output [default: ""]
      --zone <ZONE>           Panel zone [possible values: left, center, right]
      --env <KEY=VALUE>       Set an applet environment variable
      --applet-config <FILE>  TOML with the applet's options and environment
  -h, --help                  Print help
```

### `glimpsectl applet package`

Build an applet package (.glimpse.zip)

```text
Usage: glimpsectl applet package [OPTIONS] [DIR]

Arguments:
  [DIR]  Applet source directory [default: .]

Options:
      --install              Install the package after building it
      --out <PATH>           Write the package to this file or directory instead of ./<id>.glimpse.zip
  -h, --help                 Print help
```

### `glimpsectl applet install`

Install an external applet from a directory or a .glimpse.zip package

```text
Usage: glimpsectl applet install [OPTIONS] [DIR|PACKAGE]

Arguments:
  [DIR|PACKAGE]  Applet source directory or .glimpse.zip package [default: .]

Options:
  -h, --help                 Print help
```

### `glimpsectl applet uninstall`

Remove an applet installed by glimpsectl

```text
Usage: glimpsectl applet uninstall [OPTIONS] <ID>

Arguments:
  <ID>  Applet desktop-file ID

Options:
  -h, --help                 Print help
```

## `glimpsectl dev`

Panel development tools

```text
Usage: glimpsectl dev [OPTIONS] <COMMAND>

Commands:
  panel           Start an isolated panel in the foreground
  close-popovers  Close all popovers on the selected panel
  help            Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl dev panel`

Start an isolated panel in the foreground

```text
Usage: glimpsectl dev panel [OPTIONS]

Options:
      --app-id <APP_ID>      Fresh test-panel application ID
      --output <OUTPUT>      Output connector
      --edge <EDGE>          Panel edge [default: bottom] [possible values: top, bottom, left, right]
      --applets <APPLETS>    Applets to place on the test panel
  -h, --help                 Print help
```

### `glimpsectl dev close-popovers`

Close all popovers on the selected panel

```text
Usage: glimpsectl dev close-popovers [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl completions`

Generate shell completions

```text
Usage: glimpsectl completions [OPTIONS] <SHELL>

Arguments:
  <SHELL>  Shell to generate completions for [possible values: bash, elvish, fish, powershell, zsh]

Options:
  -h, --help                 Print help
```

## `glimpsectl status`

Show running glimpse components

```text
Usage: glimpsectl status [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl panel`

Inspect and control the panel

```text
Usage: glimpsectl panel [OPTIONS] <COMMAND>

Commands:
  list    List running panel instances
  reload  Reload the selected panel
  help    Print this message or the help of the given subcommand(s)

Options:
  -h, --help                 Print help
```

### `glimpsectl panel list`

List running panel instances

```text
Usage: glimpsectl panel list [OPTIONS]

Options:
      --watch                Follow running panel instances
  -h, --help                 Print help
```

### `glimpsectl panel reload`

Reload the selected panel

```text
Usage: glimpsectl panel reload [OPTIONS]

Options:
  -h, --help                 Print help
```

## `glimpsectl doctor`

Check the configuration and every provider

```text
Usage: glimpsectl doctor [OPTIONS]

Options:
  -h, --help                 Print help
```
