a
]i @ sX d dl mZ ddlmZ d dlZd dlZd dlmZm Z ej
ZG dd dej
ZdS ) N )base)PopenPIPEc sb e Zd ZdZedd Zdd Zdd Zdd Z fd
dZ fdd
Z
ejf fdd Z
ZS )ScriptPlugina;
Executes an external script or binary when the profile is loaded or
unloaded. You can choose an arbitrary executable.
IMPORTANT: The `script` plug-in is provided mainly for compatibility
with earlier releases. Prefer other *TuneD* plug-ins if they cover
the required functionality.
*TuneD* calls the executable with one of the following arguments:
* `start` when loading the profile
* `stop` when unloading the profile
You need to correctly implement the `stop` action in your executable
and revert all settings that you changed during the `start`
action. Otherwise, the roll-back step after changing your *TuneD*
profile will not work.
Bash scripts can import the [filename]`/usr/lib/tuned/functions`
Bash library and use the functions defined there. Use these
functions only for functionality that is not natively provided
by *TuneD*. If a function name starts with an underscore, such as
`_wifi_set_power_level`, consider the function private and do not
use it in your scripts, because it might change in the future.
Specify the path to the executable using the `script` parameter in
the plug-in configuration.
.Running a Bash script from a profile
====
To run a Bash script named `script.sh` that is located in the profile
directory, use:
----
[script]
script=${i:PROFILE_DIR}/script.sh
----
====
c C s dd iS )Nscript )selfr r ?/usr/lib/python3.9/site-packages/tuned/plugins/plugin_script.py_get_config_options1 s z ScriptPlugin._get_config_optionsc C sF d|_ d|_|jd d ur