hhannine / superpaper

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

"Unable to set locale" popup at start #68

Closed tikajr closed 3 years ago

tikajr commented 3 years ago

Describe the bug When Superpaper starts, there is a popup error message saying "unable to set locale to US". I am in australia and have set all my language and locale settings to australian english wherever I can. Using linux mint 19.2 and cinammon

hhannine commented 3 years ago

Which version did you use?

If you're on 2.0.2 run superpaper with the debug flag -d and post the output?

hhannine commented 3 years ago

Also, do mention whether you used the appimage or the pypi installation?

hhannine commented 3 years ago

Do you still have this issue? I have no other reports since the latest release and I can't reproduce this myself either.

hhannine commented 3 years ago

If there's no reports or help debugging I can't fix this. Closing for now.

kinoegit commented 3 years ago

I do have this issue as well: Cannot set locale to language "English (U.S.)" locale 'en_US' cannot be set

version/installation: 2.0.2, pypi on KDE-Plasma, Arch Linux, locale: de_DE

general settings: logging=false use hotkeys=true next wallpaper hotkey=control+super+w pause wallpaper hotkey=control+super+shift+p show_help_at_start=false set_command= browse_default_dir= warn_large_img=true

superpaper -d: (cropped output: display and profile infos left out) /usr/lib/python3.8/site-packages /home/kinoe/.config/superpaper /home/kinoe/.config/superpaper/profiles None None None None None None True use_hotkeys: True hk_binding_next: ('control', 'super', 'w') hk_binding_pause: ('control', 'super', 'shift', 'p') get_display_data output: .... ... Error: could not register hotkey ('control', 'super', 'w'). Check that it is formatted properly and valid keys. <class 'system_hotkey.system_hotkey.SystemRegisterError'> Canvas size: [3840, 1080] file:///home/kinoe/.cache/superpaper/temp/macro-b.png DESKTOP_SESSION is: '/usr/share/xsessions/plasma' Removing images matching with: 'macro-a-crop

hhannine commented 3 years ago

Is there no locale related prints in the debug output?

kinoegit commented 3 years ago

No, nothing at all

hhannine commented 3 years ago

Is the pop up about the error made by superpaper or possibly the operating system?

kinoegit commented 3 years ago

Screenshot_20200930_070209 Seems to be app related

hhannine commented 3 years ago

Thanks. I'll have to try to get it for myself and do some research.

kinoegit commented 3 years ago

thank you

hhannine commented 3 years ago

Unfortunately I don't know how to reproduce this. @kinoegit would you be willing and able to clone the repo, making a modification to the locale part according to my suggestions and then installing it from the local repo? Some knowledge of git and pip will make this easier but it's not that complex thing to do. Would you help me try to fix this with trial and error?

The issue is that I don't know what locale can be set by default if English is not available. On Windows I had problems when I tried to use a generic language, which means that the behavior probably will have to be different on Windows and Linux, and hopefully not more granular than that.. There are some discussions about locale problems on wxpython with no good solutions as far as I can tell.

hhannine commented 3 years ago

I even straight up removed the English language in a VM and didn't get issues.. @kinoegit Do you have the English language installed / available at all?

kinoegit commented 3 years ago

Sure I will, please give me some more instructions. I do have american english installed, german is set as standard

hhannine commented 3 years ago

I wonder what could cause the failure then if its available..

  1. Choose a directory where you want the local copy of superpaper repo, open terminal there and run git clone https://github.com/hhannine/superpaper
  2. Go into the superpaper folder in the repo and open tray.py in a text editor: replace the line self.locale = wx.Locale(wx.LANGUAGE_ENGLISH_US) with self.locale = wx.Locale(wx.LANGUAGE_DEFAULT)
  3. Install Superpaper from the local repo by going to the root folder of the repo (where the README is), and running in terminal in that folder: python3 -m pip install . --user -U This will override the PyPI installation if you've installed it in userland. You might have to uninstall the original installation first if you used elevated privileges (sudo) during the original install.

Tell me how it goes? Can you get through each step? Does Superpaper run now with the modded installation?

kinoegit commented 3 years ago

Config and install went fine; error vanished but at the same time plasma-desktop, plasma-workspace and plasma-integration were updated 5.19.5 -> 5.20.0 an.d a new issue arose: no picture at one monitor even after reinstallation and reconfiguration. here the output of superpaper -d

/home/kinoe/.local/lib/python3.8/site-packages /home/kinoe/.config/superpaper /home/kinoe/.config/superpaper/profiles None None None None None None True use_hotkeys: True hk_binding_next: ('control', 'super', 'w') hk_binding_pause: ('control', 'super', 'shift', 'p') get_display_data output: NUM_DISPLAYS = 2, RES_ARR = [(1920, 1080), (1920, 1080)], OFF_ARR = [(0, 0), (1920, 0)] Display(resolution=(1920, 1080), digital_offset=(0, 0), phys_size_mm=(480, 270), detected_phys_size_mm=(480, 270), ppi=101.6, ppi_norm_resolution=None, ppi_norm_offset=None, ppi_norm_bezels=(0, 0), perspective_angles=(0, 0), name='HDMI1') Display(resolution=(1920, 1080), digital_offset=(1920, 0), phys_size_mm=(530, 300), detected_phys_size_mm=(530, 300), ppi=92.01509433962264, ppi_norm_resolution=None, ppi_norm_offset=None, ppi_norm_bezels=(0, 0), perspective_angles=(0, 0), name='DP1') config.sections: ['7609373442098865376'] DisplaySystem loaded: P.N.Offs: [(0, 57), (1920.0, 0)], bezel_mmṣ: [(0.0, 0.0), (0.0, 0.0)], user_diagonal_inches: [21.7, 24.0], use_perspective: True, def_perspective: None update_bezels: (0.0, 0.0) update_bezels: (0.0, 0.0) Updating diagonal_inches Updated PPI = 101.51645945079716 and phys_size_mm = (480.39500455230905, 270.2221900606738) based on diagonal size: 21.7 inches Display(resolution=(1920, 1080), digital_offset=(0, 0), phys_size_mm=(480.39500455230905, 270.2221900606738), detected_phys_size_mm=(480, 270), ppi=101.51645945079716, ppi_norm_resolution=(1920, 1080), ppi_norm_offset=(0, 57), ppi_norm_bezels=(0.0, 0.0), perspective_angles=(0, 0), name='HDMI1') Updated PPI = 91.7877987534291 and phys_size_mm = (531.3124474311252, 298.8632516800079) based on diagonal size: 24.0 inches Display(resolution=(1920, 1080), digital_offset=(1920, 0), phys_size_mm=(531.3124474311252, 298.8632516800079), detected_phys_size_mm=(530, 300), ppi=91.7877987534291, ppi_norm_resolution=(2120, 1192), ppi_norm_offset=(1920.0, 0), ppi_norm_bezels=(0.0, 0.0), perspective_angles=(0, 0), name='DP1') START Listing profiles for menu. hkBinding: ('alt', '2') perspective preset: default Listed profile: kinoe END Listing profiles for menu. read profile name from 'running_profile': kinoe hkBinding: ('alt', '2') perspective preset: default get_display_data output: NUM_DISPLAYS = 2, RES_ARR = [(1920, 1080), (1920, 1080)], OFF_ARR = [(0, 0), (1920, 0)] Display(resolution=(1920, 1080), digital_offset=(0, 0), phys_size_mm=(480, 270), detected_phys_size_mm=(480, 270), ppi=101.6, ppi_norm_resolution=None, ppi_norm_offset=None, ppi_norm_bezels=(0, 0), perspective_angles=(0, 0), name='HDMI1') Display(resolution=(1920, 1080), digital_offset=(1920, 0), phys_size_mm=(530, 300), detected_phys_size_mm=(530, 300), ppi=92.01509433962264, ppi_norm_resolution=None, ppi_norm_offset=None, ppi_norm_bezels=(0, 0), perspective_angles=(0, 0), name='DP1') config.sections: ['7609373442098865376'] DisplaySystem loaded: P.N.Offs: [(0, 57), (1920.0, 0)], bezel_mmṣ: [(0.0, 0.0), (0.0, 0.0)], user_diagonal_inches: [21.7, 24.0], use_perspective: True, def_perspective: None update_bezels: (0.0, 0.0) update_bezels: (0.0, 0.0) Updating diagonal_inches Updated PPI = 101.51645945079716 and phys_size_mm = (480.39500455230905, 270.2221900606738) based on diagonal size: 21.7 inches Display(resolution=(1920, 1080), digital_offset=(0, 0), phys_size_mm=(480.39500455230905, 270.2221900606738), detected_phys_size_mm=(480, 270), ppi=101.51645945079716, ppi_norm_resolution=(1920, 1080), ppi_norm_offset=(0, 57), ppi_norm_bezels=(0.0, 0.0), perspective_angles=(0, 0), name='HDMI1') Updated PPI = 91.7877987534291 and phys_size_mm = (531.3124474311252, 298.8632516800079) based on diagonal size: 24.0 inches Display(resolution=(1920, 1080), digital_offset=(1920, 0), phys_size_mm=(531.3124474311252, 298.8632516800079), detected_phys_size_mm=(530, 300), ppi=91.7877987534291, ppi_norm_resolution=(2120, 1192), ppi_norm_offset=(1920.0, 0), ppi_norm_bezels=(0.0, 0.0), perspective_angles=(0, 0), name='DP1') running profile job with profile: kinoe Running wallpaper slideshow. ['/home/kinoe/Wallpapers/Dualmonitor/Landschaften/hills-2.jpg'] get_ppi_norm_offsets: [(0, 57), (1920.0, 0)] get_ppi_norm_crops: [(0, 57, 1920, 1137), (1920, 0, 4044, 1194)] G_A_DSYS.use_perspective: True, prof.perspective: default hkBinding: ('alt', '2') perspective preset: default Listed profile: kinoe Registering binding: ('alt', '2') for profile: kinoe Canvas size: [3840, 1080] file:///home/kinoe/.cache/superpaper/temp/kinoe-a.png DESKTOP_SESSION is: '/usr/share/xsessions/plasma' Removing images matching with: 'kinoe-b-crop'

hhannine commented 3 years ago

Great, thanks! That seems to be an unrelated KDE specific problem so could you make a new issue for that? In the new issue description list out the displays you have and what image(s) were set properly as wallpaper and which were not? Also check the "home/kinoe/.cache/superpaper/temp/" folder to see if you have a full edited image the name of your profile and a crop for each of your displays?

kinoegit commented 3 years ago

here the content of superpaper cache with strangely edited pics. Some of the cropped pics are black, some got a black right side

hhannine commented 3 years ago

Some images are not black, did those work correctly as a wallpaper? Are the spanning settings the same between all three profiles?

kinoegit commented 3 years ago

No those pics didn't appear as wallpapers at all. i deleted 2 profiles and the cache content, left running_profile. this is the content of the fresh cache

kinoegit commented 3 years ago

No those pics didn't appear as wallpapers at all. i deleted 2 profiles and the cache content, left running_profile. this is the content of the fresh cache

hhannine commented 3 years ago

@kinoegit did you see the new issue and questions there?