2023-05-13 02:05:36 +00:00
# wf-shadow
2023-05-14 02:40:44 +00:00
2023-05-13 19:16:54 +00:00
`wf-shadow` is a script written in order to fill the void in instant-replay software for Wayland, specifically wlroots compositors. It uses wf-recorder and wofi in order to accomplish the task.
2023-05-13 02:05:36 +00:00
2023-05-14 02:40:44 +00:00
# Usage
2023-05-14 17:02:11 +00:00
WARNING: Do NOT use Ctrl+C on a `wf-shadow -s` session.
2023-05-14 02:40:44 +00:00
```
2023-05-14 04:03:34 +00:00
USAGE: wf-shadow OPTION [OPTIONS...]
2023-05-14 02:40:44 +00:00
OPTIONS:
2023-05-17 22:33:28 +00:00
-s, --start [OUTPUT] Start a wf-shadow instance with output number OUTPUT.
-r, --record [OUTPUT] Record the last few moments of video using a wofi menu.
-e, --end [OUTPUT] End wf-shadow instance with output number OUTPUT.
2023-05-14 02:40:44 +00:00
-a, --audio DEVICE Use DEVICE for audio recording. Passed to wf-recorder -a.
-V, --video DEVICE Use DEVICE for video encoding. Passed to wf-recorder -d.
2023-05-14 05:48:19 +00:00
-A, --acodec CODEC Use CODEC as the audio codec in ffmpeg encoding.
-c, --vcodec CODEC Use CODEC as the video codec in ffmpeg encoding.
-n, --no-audio Disable audio recording. Overrides audio options.
-N, --no-video Disable video recording. Overrides video options.
2023-05-14 14:49:18 +00:00
-y, --yes-audio Enable audio recording. Overrides -n.
-Y, --yes-video Enable video recording. Overrides -N.
2023-05-17 22:33:28 +00:00
-R, --raw-record OUTPUT FILE SECONDS Low level record. Passed directly to the \`record\` function.
2023-05-14 02:40:44 +00:00
-v, --verbose Verbose output.
-h, --help Show this menu.
2023-05-17 22:33:28 +00:00
--version Display version information.
2023-05-14 02:40:44 +00:00
For a more in-depth guide, see wf-shadow(1)
```
2023-05-13 02:05:36 +00:00
# Dependencies
2023-05-14 02:40:44 +00:00
2023-05-23 07:05:13 +00:00
`wf-shadow` depends on `wf-recorder` , `wofi` (optional), `wlr-randr` , and, obviously, `bash` .
2023-05-13 02:05:36 +00:00
2023-05-23 07:05:13 +00:00
`wf-shadow-tui` depends on `dialog` alongside all of these programs.
2023-05-14 02:40:44 +00:00
2023-05-13 23:23:11 +00:00
# Installation
2023-05-14 00:43:49 +00:00
2023-05-13 23:23:11 +00:00
## Package Manager
2023-05-14 02:40:44 +00:00
2023-05-15 18:26:35 +00:00
### Arch-based
2023-05-13 23:23:11 +00:00
2023-05-16 04:14:42 +00:00
To install `wf-shadow` on Arch-based distributions, download and install the `wf-shadow` package from the AUR.
If you would like the latest, maybe less stable version, install `wf-shadow-git` from the AUR.
Both packages were made by d4ksh.
2023-05-14 02:40:44 +00:00
2023-05-13 23:23:11 +00:00
## Manual Installation
2023-05-14 02:40:44 +00:00
2023-05-14 04:03:34 +00:00
Put this script somewhere in your $PATH and set the executable bit with `chmod +x` . To find which directories are in your $PATH, run `sed 's/:/\n/g' <<< "$PATH"` .
2023-05-14 00:43:49 +00:00
2023-05-14 02:40:44 +00:00
2023-05-14 00:43:49 +00:00
# Contributing
## Writing issues
2023-05-14 02:40:44 +00:00
2023-05-14 00:43:49 +00:00
Make sure to state as many details relating to wf-shadow as possible when making an issue. These include, but are not limited to: version, dependency versions, and verbose (-v) output.
2023-05-14 02:40:44 +00:00
2023-05-14 00:43:49 +00:00
### Common issues
#### "A wf-shadow instance is already running on display X" but no wf-shadow is running.
2023-05-14 02:40:44 +00:00
2023-05-14 05:50:05 +00:00
End the nonexistent session with `wf-shadow -e X` .
2023-05-14 00:43:49 +00:00
2023-05-14 02:40:44 +00:00
2023-05-14 00:43:49 +00:00
## Merge requests
2023-05-14 02:40:44 +00:00
2023-05-14 04:03:34 +00:00
Make sure to always keep the style of code used in wf-shadow when requesting a merge (we don't want inconsistent or unreadable code!)