NAME
App::ScreensaverUtils - CLI utilities related to screensaver
VERSION
This document describes version 0.010 of App::ScreensaverUtils (from
Perl distribution App-ScreensaverUtils), released on 2020-11-22.
DESCRIPTION
This distribution contains the following CLI utilities related to
screensaver:
* activate-screensaver
* deactivate-screensaver
* detect-screensaver
* disable-screensaver
* enable-screensaver
* get-screensaver-info
* get-screensaver-timeout
* noss
* pause-screensaver
* prevent-screensaver-activated
* prevent-screensaver-activated-until-interrupted
* prevent-screensaver-activated-while
* screensaver-is-active
* screensaver-is-enabled
* set-screensaver-timeout
FUNCTIONS
get_screensaver_info
Usage:
get_screensaver_info(%args) -> [status, msg, payload, meta]
Get screensaver information (detected screensaver, is_active,
is_enabled, timeout).
This function is not exported.
Arguments ('*' denotes required arguments):
* screensaver => *str*
Explicitly set screensaver program to use.
The default, when left undef, is to detect what screensaver is
running,
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_screensaver_activated_until_interrupted
Usage:
prevent_screensaver_activated_until_interrupted() -> [status, msg, payload, meta]
Prevent screensaver activated until interrupted.
Uses Proc::Govern to run "sleep infinity", with the option
`no-screensaver' to instruct Proc::Govern to regularly simulate user
activity, thus preventing the screensaver from ever activating. To stop
preventing screensaver from activating, press Ctrl-C.
Available in CLI with two shorter aliases: pause-screensaver and noss.
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_screensaver_activated_while
Usage:
prevent_screensaver_activated_while(%args) -> [status, msg, payload, meta]
Prevent screensaver activated while running a command.
Uses Proc::Govern to run a command, with the option `no-screensaver' to
instruct Proc::Govern to regularly simulate user activity, thus
preventing the screensaver from ever activating while running the
command. For more options when running command, e.g. timeout, load
control, autorestart, use the module or its CLI govproc directly.
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-ScreensaverUtils>.
SOURCE
Source repository is at
<https://github.com/perlancar/perl-App-ScreensaverUtils>.
BUGS
Please report any bugs or feature requests on the bugtracker website
<https://rt.cpan.org/Public/Dist/Display.html?Name=App-ScreensaverUtils>
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, 2018, 2017 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.