NAME

App::PowerManagementUtils - CLI utilities related to power management

VERSION

This document describes version 0.005 of App::PowerManagementUtils (from Perl distribution App-PowerManagementUtils), released on 2020-09-25.

DESCRIPTION

This distribution contains the following CLI utilities related to screensaver:

FUNCTIONS

prevent_sleep_until_interrupted

Usage:

prevent_sleep_until_interrupted() -> [status, msg, payload, meta]

Prevent sleep until interrupted.

Uses Proc::Govern to run sleep infinity, with the option `no-sleep' to instruct Proc::Govern to disable system from sleeping. To stop preventing sleep, you can press Ctrl-C.

Note that sleep prevention survives reboot, so if this script is terminated prematurely before it can unprevent sleep again, you'll need to invoke unprevent-sleep to restore normal sleep.

This function is not exported.

No arguments.

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

prevent_sleep_while

Usage:

prevent_sleep_while(%args) -> [status, msg, payload, meta]

Prevent sleep while running a command.

Uses Proc::Govern to run a command, with the option `no-sleep' to instruct Proc::Govern to disable system from sleeping while running the command. For more options when running command, e.g. timeout, load control, autorestart, screensaver control, use the module or its CLI govproc directly.

Note that sleep prevention survives reboot, so if this script is terminated prematurely before it can unprevent sleep again, you'll need to invoke unprevent-sleep to restore normal sleep.

This function is not exported.

Arguments ('*' denotes required arguments):

  • command* => array[str]

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

HOMEPAGE

Please visit the project's homepage at https://metacpan.org/release/App-PowerManagementUtils.

SOURCE

Source repository is at https://github.com/perlancar/perl-App-PowerManagementUtils.

BUGS

Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=App-PowerManagementUtils

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2020, 2019 by perlancar@cpan.org.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.