hhannine / superpaper

A cross-platform multi monitor wallpaper manager.
MIT License
1.12k stars 46 forks source link

Feature request: Export images #84

Closed jafber closed 2 years ago

jafber commented 3 years ago

I use the AwesomeWM, which has built-in wallpaper management, so Superpaper does not work here. I believe an option to export the wallpaper of each screen as an individual image instead of trying to apply it automatically is an easy way of supporting every setup.

Thanks for your consideration, I'd love to see this added so that I can use your awesome program on my machine :)

hhannine commented 3 years ago

Thanks for the suggestion. It is possible to copy the images made by superpaper from the temp folder, though they're not cropped in to separate files on other platforms than KDE and xfce. I'm not sure if I'll implement any proper export.

Brief googling seemed to suggest that feh can be used to set the wallpaper on AwesomeWM. Have you tried the feh mode of superpaper if it works for you?

hhannine commented 3 years ago

Here's the doc on feh mode and custom commands that were implemented for cases like this : https://www.github.com/hhannine/superpaper/tree/master/docs%2Fcustom-command.md

jafber commented 3 years ago

Thanks! I didn't know you had a CLI. I'm a bit confused as to how I should use it though :\ Following the doc, I get an error:

$ python3 -m superpaper --setimages ~/dat/img/wall/gibli.jpg --inches 27 25 --bezels 9.5 7.0 --offsets 0 0 40 -100

/home/jan/.local/lib/python3.9/site-packages
/home/jan/.config/superpaper
/home/jan/.config/superpaper/profiles
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 954, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.9/threading.py", line 892, in run
    self._target(*self._args, **self._kwargs)
  File "/home/jan/.local/lib/python3.9/site-packages/superpaper/wallpaper_processing.py", line 1214, in span_single_image_advanced
    crop_tuples = G_ACTIVE_DISPLAYSYSTEM.get_ppi_norm_crops(manual_offsets)
AttributeError: 'NoneType' object has no attribute 'get_ppi_norm_crops'

Apart from that though, should I really just execute $ set_command=feh in the shelll to change the behavior of superpaper? I feel like I'm missing something here.

hhannine commented 3 years ago

The CLI is unfortunately out of date as of v2.0. Advanced spanning doesn't work at all I seem to recall. Simple span and multi image may work.

Sorry seems that the custom command doc is old as well. What I mean that you enter the custom command in the settings of the app like this: image This is in the specific case for feh that I've coded in. Otherwise the command needs to be runnable in a shell and written in a specific way for Superpaper to make the file name replacements.

jafber commented 3 years ago

Ah, okay. Unfortunately, when I press apply, nothing happens still. Executing $ feh --bg-scale /some/image.png in shell works though.

hhannine commented 2 years ago

I'm replacing this issue with the CLI problem specific issue: #112 .