Skip to content

omerbustun/keep-active

Repository files navigation

keep-active

Crates.io Crates.io CI Release

Fork of keepawake-rs with the intention of adding the ability to keep status trackers (e.g. Skype, MS Teams etc.) active.

Keep your computer awake (and active!). Like caffeinate, systemd-inhibit/gnome-session-inhibit, or PowerToys Awake, but cross-platform and written in Rust.

Usage

Keep your computer awake and active

Usage: keep-active [OPTIONS] [COMMAND]...

Arguments:
  [COMMAND]...  Run the command and wait for it to exit, keeping the computer awake while it runs

Options:
  -d, --display              Keep display on
  -i, --idle                 Keep system from idle sleeping
  -s, --sleep                Keep system from sleeping (Functionality and conditions for this to work vary by OS)
  -a, --status_active        Keep status trackers active (e.g. Skype, MS Teams etc.)
      --completions <SHELL>  Generate shell completions [possible values: bash, elvish, fish, powershell, zsh]
  -w <PID>                   Wait for the process with the specified pid to exit. This option is ignored when used with the COMMAND argument
  -h, --help                 Print help information
  -V, --version              Print version information

See docs.rs/keep-active for library crate documentation and usage.

Installation

Cargo

cargo install keep-active -F bin

Binaries

Download from https://github.com/omerbustun/keep-active/releases/latest.

Completions

Use: keep-active --completions <SHELL> to generate a completion script, you will have to install it as appropriate for the specific shell you are using.

Notes

Preventing the computer from explicitly sleeping, and/or by closing the lid, is often restricted in various ways by the OS, e.g. Only on AC power, not in any PC running Windows with Modern Standby. Also note that Modern Standby ignores/terminates power requests on DC (Battery) power, PowerSetRequest - Remarks.

License

MIT License.