https://github.com/lmartinking/webscreensaver
Use any web page as your screensaver. Uses Python 3/GTK3/WebKit and works with XScreensaver or XFCE. Does NOT work with Gnome.
https://github.com/lmartinking/webscreensaver
python webkit xscreensaver
Last synced: 3 months ago
JSON representation
Use any web page as your screensaver. Uses Python 3/GTK3/WebKit and works with XScreensaver or XFCE. Does NOT work with Gnome.
- Host: GitHub
- URL: https://github.com/lmartinking/webscreensaver
- Owner: lmartinking
- License: gpl-2.0
- Created: 2012-04-28T15:16:25.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2024-05-23T07:27:16.000Z (almost 2 years ago)
- Last Synced: 2024-05-23T08:37:37.001Z (almost 2 years ago)
- Topics: python, webkit, xscreensaver
- Language: Python
- Homepage:
- Size: 76.2 KB
- Stars: 115
- Watchers: 15
- Forks: 29
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
webscreensaver
==============
A screen hack which uses WebKit and works with XScreensaver or XFCE.
**NOTE:** If you are using Wayland this is unlikely to work. Wayland does not support XScreensaver.
**GNOME Users:** There have been reports of this not working with Gnome.
Dependencies
------------
* Python 3
* xscreensaver or xfce4-screensaver
* GTK3
* WebKit2 gtk
On Debian/Ubuntu, try this command:
```
sudo apt install python3 python3-gi gir1.2-webkit2-4.1 gir1.2-gtk-3.0
```
Install (XScreensaver)
----------------------
Copy `webscreensaver` into `/usr/libexec/xscreensaver` (or `/usr/lib/screensaver` on some systems) and then edit `~/.xscreensaver`:
```
programs:
webscreensaver \n\
```
If you wish to set the url:
```
-url
```
Otherwise it will choose a random one.
You can persist cookies by specifying a cookie file:
```
-cookie-file
```
*NOTE:* All parameters should be all on the same line as `webscreensaver`
Install (XFCE)
--------------
1. Copy `webscreensaver` into `/usr/lib/xscreensaver`.
2. Copy `webscreensaver.desktop` into `/usr/share/applications/screensavers`.
Sites List
----------
The list of sites chosen can be customised via a configuration file (TOML).
The format of the file is series of sections (one per site) as follows:
```
[thisisasite]
url = "http://abcd.efg"
inject_css = "body { color: black }"
remove_tags = ["header", "hullo"]
remove_ids = ["hellohello", "heyhey"]
```
The `inject_css`, `remove_tags` and `remove_ids` keys are used to apply
customisations to the page after it has loaded. The value can be either
a single string or a list of strings.
* `inject_css` - the CSS string will be injected into the page.
* `remove_tags` - all tags matching the specified tag name will be removed.
* `remove_ids` - all tags with the specified IDs will be removed.
Cycling
-------
If you set your screensaver settings to "cycle", you should use
`-cycle` which will pick the next screensaver in the list each time
WebScreensaver is run. (Cycling is implemented in XScreensaver by stopping
the current screensaver program and starting another one -- even in the
case of a single screensaver being selected.)
3rd Party Packages
------------------
You can install webscreensaver easily using these packages (unsupported):
* Arch Linux (AUR) - `webscreensaver-git` - https://aur.archlinux.org/packages/webscreensaver-git