ghostlexly / gpu-video-wallpaper

Use your GPU for rendering low CPU usage video animated wallpaper.
MIT License
165 stars 12 forks source link

Doesn't work on Gentoo Linux. #4

Closed SirObby closed 1 year ago

SirObby commented 2 years ago

Just opens a window (mpv) that plays the video, not as background. (dwm)

DARKBOW923 commented 2 years ago

It doesn't work in the command line, too, tested in gentoo linux with dist-kernel 5.15

EDIT: I can't uninstall it, too.

gjgress commented 2 years ago

I can't speak as to the install stuff. But this can be made to work on my setup (Arch Linux) with a very small change.

In the video-wallpaper.sh file, make the following changes:

Modify: "$scriptdir"/xwinwrap -g $item -fdt -ni -b -nf -un -o 1.0 -- mpv -wid WID --loop --no-audio "$VIDEO_PATH" & disown to include the flag -ov (I don't think the placement matters): "$scriptdir"/xwinwrap -g $item -fdt -ni -b -ov -nf -un -o 1.0 -- mpv -wid WID --loop --no-audio "$VIDEO_PATH" & disown

Using the flag -ovr also seems to work-- admittedly, I don't understand the difference between the two flags (the help file says one is for non-fullscreenmode and the other is for fullscreenmode but... I can't tell a difference on my machine). So if one flag gives you issues, try the other.

Devs-- I can't test this on Debian, but if this flag still works on Debian, this might be worth changing in the repo. Let me know what you think, I can make the pull request if you want.

NayamAmarshe commented 2 years ago

I can't speak as to the install stuff. But this can be made to work on my setup (Arch Linux) with a very small change.

In the video-wallpaper.sh file, make the following changes:

Modify: "$scriptdir"/xwinwrap -g $item -fdt -ni -b -nf -un -o 1.0 -- mpv -wid WID --loop --no-audio "$VIDEO_PATH" & disown to include the flag -ov (I don't think the placement matters): "$scriptdir"/xwinwrap -g $item -fdt -ni -b -ov -nf -un -o 1.0 -- mpv -wid WID --loop --no-audio "$VIDEO_PATH" & disown

Using the flag -ovr also seems to work-- admittedly, I don't understand the difference between the two flags (the help file says one is for non-fullscreenmode and the other is for fullscreenmode but... I can't tell a difference on my machine). So if one flag gives you issues, try the other.

Devs-- I can't test this on Debian, but if this flag still works on Debian, this might be worth changing in the repo. Let me know what you think, I can make the pull request if you want.

Please do not use this flag! This just broke everything on my ZorinOS installation. The wallpaper now appears as an overlay on other apps and the desktop remains the same. This might work for arch but will break the app on most other distros.

gjgress commented 2 years ago

Ok, looks like this won't be an easy fix across distros, sigh. Do you get the same behavior when running it with -ovr instead?

What display manager are you using?

gjgress commented 2 years ago

Nevermind. I know what the issue is. ZorinOS uses Gnome as the desktop environment, and it is a documented issue in the xwinwrap repo that -ov and -ovr do NOT work on Gnome.

I will test this on other DEs and see if it works. If its a gnome specific issue, I would suggest including the flag if the DE is not gnome.

SirObby commented 2 years ago

Does this work on window managerd like dwm?

DARKBOW923 commented 2 years ago

Does this work on window managerd like dwm?

I didn't tried it, but i could try in i3 (no gasps) or openbox if you want to.

SirObby commented 2 years ago

Sure go ahead.

DARKBOW923 commented 2 years ago

Sure go ahead.

Ok, right now i'm in work, in two hours i'll go home and i'll try the script in i3 and openbox, i'll edit this quote with the results.

gjgress commented 2 years ago

Does this work on window managerd like dwm?

I haven't tried it, but I can't imagine why it wouldn't work. The parts of xwinwrap that are finicky are the ones that interact with the DE. With i3 or dwm, there's no desktop interface to interfere with, so the additional flag shouldn't affect anything.

Of course, you can test this out manually quite quickly. First, run the following command in the terminal: xrandr | grep " connected\|\*" | pcregrep -o1 '([0-9]{1,}[x]{1,1}[0-9+]{1,}) \(' to figure out the identifier for your screen. Find your video file you want to test with, and run: xwinwrap -g 1920x1080+0+0 -fdt -ni -b -ov -nf -un -o 1.0 -- mpv -wid WID --loop --no-audio "/path/to/video.mp4" & disown But replace 1920x1080+0+0 with the output from the xrandr command.

That's really what the script is doing, so play around with the flags and see if you can find a combination that works. Then all you have to do is add those flags to the video-wallpaper.sh script in your ~/.local/bin folder, and it should work.