ランキングに戻る

A high performance X11 animated wallpaper setter

animatedwallpaperdesktoplinuxx11sdl2
スター成長
スター
1.5k
フォーク
47
週間成長
Issue
18
5001k
2020年7月2022年7月2024年7月2026年7月
README

PAPERVIEW

Paperview is a high performance animated desktop background setter for Linux and X11.

Video of the above screenshot: https://www.youtube.com/watch?v=6ZTiA885bWM

Build

make # NOTE: SDL2 is required

Single Monitor Use

./paperview FOLDER SPEED

A lower SPEED number will result in a faster frame rate. Only BMP files are supported.

Multi Monitor Use

Paperview supports any number of monitors with its dynamic parameter list:

./paperview FOLDER SPEED X Y W H FOLDER SPEED X Y W H # ... And so on

The values X, Y, W (width), H (height) are integers and represent a rectangle with pixel dimensions specifying where the wallpaper animation will be placed. For instance, with a 1366x768 monitor on the left and a 1920x1080 monitor on the right, the following command will animate the left monitor with a cat animation, and the right, a river animation:

./paperview \
    ~/scenes/cat   5    0   0 1366  768 \
    ~/scenes/river 5 1366   0 1928 1080

Running Background Daemon

Append an (&) to a paperview command to have it run as a background process. Eg:

./paperview FOLDER SPEED &

To stop this backgroud process, use killall:

killall paperview

Creating Custom Scenes

Creating a custom BMP scene folder from a GIF requires imagemagick. For example, to create a castle scene folder from a castle.gif:

mkdir castle
mv castle.gif castle
cd castle
convert -coalesce castle.gif out.bmp
rm castle.gif

Random Animated Wallpapers at Startup

Assuming a scenes folder containing a number of scene folders is present in the home folder, run the following snippet as a background process within .xinitrc before running startx, or simply execute it after X11 is running:

while true
do
    scene=$(ls -d ~/scenes/*/ | shuf -n 1)
    timeout 600 paperview $scene 5 # See Multi-Monitor Use above for multiple monitor support
done

Performance

Running on a Thinkpad X230 from 2012 at 1920x1080 and 60fps with an integrated Intel GPU:

intel_gpu_time ./paperview castle 5

user: 1.904135s, sys: 0.357277s, elapsed: 100.458648s, CPU: 2.3%, GPU: 11.7%

Known Issues

Picom, Compton (and possibly other compositors) seem to already write to the base root X11 window which may overwrite the render done by paperview.

Alternatives

Alternatively, if SDL2 is a problem, or if you are on Windows, two workarounds are currently available:

Pure X11 (without SDL2)

https://gist.github.com/AlecsFerra/ef1cc008990319f3b676eb2d8aa89903

Windows 10

https://github.com/TrAyZeN/sdl-wallpaper

関連リポジトリ
faressoft/terminalizer

🦄 Record your terminal and generate animated gif images or share a web player

JavaScriptnpmMIT Licenseterminalrecord
terminalizer.com
16.1k523
ptomasroos/react-native-scrollable-tab-view

Tabbed navigation that you can swipe between, each tab can have its own ScrollView and maintain its own scroll position between swipes. Pleasantly animated. Customizable tab bar

JavaScriptnpmreact-nativetabs
npmjs.com/package/react-native-scrollable-tab-view
6.9k2.2k
rsalmei/alive-progress

A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations!

PythonPyPIMIT Licenseprogressbar
6.3k235
ibelick/motion-primitives

UI kit to make beautiful, animated interfaces, faster. Customizable. Open Source.

TypeScriptnpmMIT Licenseanimatedanimation
motion-primitives.com
5.7k221
react-native-modal/react-native-modal

An enhanced, animated, customizable Modal for React Native.

TypeScriptnpmMIT Licensereact-nativereact
5.7k656
christianloopp/komorebi

A beautiful and customizable wallpapers manager for Linux

ValaGNU General Public License v3.0desktoplinux
3.7k257
flesler/jquery.scrollTo

Lightweight, cross-browser and highly customizable animated scrolling with jQuery

JavaScriptnpmMIT Licensejqueryscrollto
demos.flesler.com/jquery/scrollTo/
3.7k996
cheesecakeufo/komorebi

A beautiful and customizable wallpapers manager for Linux

ValaGNU General Public License v3.0desktoplinux
3.5k245
sparrowcode/AlertKit

Native alert from Apple Music & Feedback. Contains Done, Heart & Message and other presets.

SwiftMIT Licensealertpopup
sparrowcode.io/frameworks
2.6k152
margelo/react-native-graph

📈 Beautiful, high-performance Graphs and Charts for React Native built with Skia

TypeScriptnpmMIT Licenseanimatedanimation
margelo.com
2.6k136
gorhom/react-native-animated-tabbar

A 60FPS animated tab bar with a variety of cool animation presets 😎

TypeScriptnpmMIT Licenseanimatedtabbar
1.8k130
marcbruederlin/particles.js

A lightweight, dependency-free and responsive javascript plugin for particle backgrounds.

JavaScriptnpmMIT Licenseparticlesparticle-backgrounds
marcbruederlin.github.io/particles.js/
1.7k209