2024-11-27 16:18:11 +01:00
|
|
|
# Screensaver
|
|
|
|
|
|
|
|
Or, rather, some full-screen animated visual fun.
|
|
|
|
|
|
|
|
## Build
|
|
|
|
|
|
|
|
`make`
|
|
|
|
|
|
|
|
after building and/or installing dependencies:
|
|
|
|
|
|
|
|
- [libscerror](https://git.bobpolis.com/bob/libscerror/)
|
|
|
|
- [libscgui](https://git.bobpolis.com/bob/libscgui/)
|
|
|
|
- [libscheaders](https://git.bobpolis.com/bob/libscheaders/)
|
|
|
|
- [libscnumerics](https://git.bobpolis.com/bob/libscnumerics/)
|
|
|
|
- [libscscreensaver](https://git.bobpolis.com/bob/libscscreensaver/)
|
|
|
|
- [libscstring](https://git.bobpolis.com/bob/libscstring/)
|
|
|
|
|
|
|
|
and, the development versions of the following libraries:
|
|
|
|
|
2024-11-27 17:03:06 +01:00
|
|
|
- nlohmann json
|
2024-11-27 16:18:11 +01:00
|
|
|
- Cairo
|
|
|
|
- SDL2
|
|
|
|
- SDL2_image
|
|
|
|
|
|
|
|
## Install
|
|
|
|
|
|
|
|
`sudo make install`
|
|
|
|
|
|
|
|
or, on OpenBSD:
|
|
|
|
|
|
|
|
`doas gmake install`
|
|
|
|
|
|
|
|
## Run
|
|
|
|
|
|
|
|
`screensaver`
|
|
|
|
|
2024-11-27 16:21:15 +01:00
|
|
|
: Run the Default module.
|
2024-11-27 16:18:11 +01:00
|
|
|
|
|
|
|
`screensaver -l`
|
|
|
|
|
2024-11-27 16:21:15 +01:00
|
|
|
: List available modules.
|
2024-11-27 16:18:11 +01:00
|
|
|
|
|
|
|
`screensaver FadingRects`
|
|
|
|
|
2024-11-27 16:21:15 +01:00
|
|
|
: Run the FadingRects module on the main screen.
|
2024-11-27 16:18:11 +01:00
|
|
|
|
|
|
|
`screensaver -w FadingRects`
|
|
|
|
|
2024-11-27 16:21:15 +01:00
|
|
|
: Run the FadingRects module in a window, so you can reposition it on any desired
|
2024-11-27 16:25:36 +01:00
|
|
|
screen, and resize it.
|
2024-11-27 16:18:11 +01:00
|
|
|
|
|
|
|
`screensaver -r`
|
|
|
|
|
2024-11-27 16:21:15 +01:00
|
|
|
: Run a randomly chosen module.
|
2024-11-27 16:18:11 +01:00
|
|
|
|
|
|
|
## Make your own module
|
|
|
|
|
|
|
|
`make new <modulename>`
|
|
|
|
|
|
|
|
Then, write bodies for the given member functions in your plugin's source file.
|
|
|
|
|
|
|
|
(I know, this is too short and cryptic. More documentation on using the
|
|
|
|
screensaver library and writing modules follows later.)
|