Ulauncher / Ulauncher

Feature rich application Launcher for Linux
https://ulauncher.io
Other
3.63k stars 191 forks source link

Taskbar Icon Missing #1355

Closed ddouglas87 closed 6 months ago

ddouglas87 commented 6 months ago

Environment

Distro: Mint 22 (Ubuntu 24.04) DE: Cinnamon 6.0.4

Bug description

No taskbar icon. See picture:

ulaunch_no_icon

Ulauncher is the white one, the default icon when there is no icon.

Version: Ulauncher v6 - git clone Feb 19th, 2024 at 5 PM PST.

I updated to Ubuntu 24.04 (Mint 22) and Ulauncher v5 didn't seem to have support, so I grabbed v6 from a git clone. I tried make deb and then tried running the ulauncher .deb file but it gave the error:

./ulauncher_6.0.0~beta4_all.deb: line 1: syntax error near unexpected token `newline'
./ulauncher_6.0.0~beta4_all.deb: line 1: `!<arch>'

Instead inside of .profile I added the line (cd ~/Ulauncher/ ; make run)& which works fine. Ulauncher runs at startup this way and everything works well, except the taskbar icon.

Log output

bunny@happy:~/Ulauncher$ (make run)&
[1] 95718
bunny@happy:~/Ulauncher$ Preferences build SKIPPED - No changes since last build
Levenshtein is missing or outdated. Falling back to slower fuzzy-finding method.
2024-02-19 17:19:51,108 ℹ️  INFO Ulauncher version 6.0.0-beta4 main.main:50
2024-02-19 17:19:51,108 ℹ️  INFO Extension API version 3.0 main.main:51
2024-02-19 17:19:51,108 ℹ️  INFO GTK+ 3.24.40 main.main:52
2024-02-19 17:19:51,108 ℹ️  INFO PyGObject+ 3.46.0 main.main:53
2024-02-19 17:19:51,109 ℹ️  INFO Desktop: X-CINNAMON (X11) on Linux Mint 22 main.main:55
2024-02-19 17:19:51,109 ⚠️  WARNING 

╔═════════════════════════════════════════════════════════════════════════════╗
║                  YOU ARE RUNNING A PRE-RELEASE of ULAUNCHER.                ║
║ Please do not report extension API support warnings to extension developers ║
║ We are still in the process of developing and documenting these features    ║
╚═════════════════════════════════════════════════════════════════════════════╝

 main.main:57
2024-02-19 17:19:51,116 ℹ️  DEBUG Removing existing socket path /run/user/1000/ulauncher_control ExtensionSocketServer.start:44
2024-02-19 17:19:51,129 ⚠️  WARNING Extension Calculate Anything has not yet been updated to support API v3.0. Running in compatibility mode, which may not be fully functional. ExtensionManifest.check_compatibility:161
2024-02-19 17:19:51,135 ℹ️  DEBUG Launched com.github.tchar.ulauncher-albert-calculate-anything using Gio.Subprocess ExtensionRuntime.__init__:54
2024-02-19 17:19:51,167 ℹ️  DEBUG render 0 results UlauncherWindow.show_results:401
2024-02-19 17:19:51,189 ℹ️  DEBUG render 0 results UlauncherWindow.show_results:401
Levenshtein is missing or outdated. Falling back to slower fuzzy-finding method.
2024-02-19 17:19:51,285 ℹ️  DEBUG Send message with keys "{'type', 'ext_id'}" Client.send:79
2024-02-19 17:19:51,286 ℹ️  DEBUG Received data of 108 bytes framer._ingest_data:103
2024-02-19 17:19:51,286 ℹ️  DEBUG Received message with keys "{'type', 'ext_id'}" framer._ingest_data:121
2024-02-19 17:19:51,287 ℹ️  DEBUG Send event dict to "com.github.tchar.ulauncher-albert-calculate-anything" ExtensionSocketController._send_event:49
2024-02-19 17:19:51,288 ℹ️  INFO Extension "com.github.tchar.ulauncher-albert-calculate-anything" connected ExtensionSocketController.__init__:44
2024-02-19 17:19:51,286 ℹ️  DEBUG Sent 108 bytes framer._write_done:154
2024-02-19 17:19:51,288 ℹ️  DEBUG Sent 314 bytes framer._write_done:154
2024-02-19 17:19:51,288 ℹ️  DEBUG Received data of 314 bytes framer._ingest_data:103
2024-02-19 17:19:51,288 ℹ️  DEBUG Received message with keys "{'type', 'args'}" framer._ingest_data:121
2024-02-19 17:19:51,289 ℹ️  DEBUG Incoming event dict Client.on_message:54
2024-02-19 17:19:51,289 ℹ️  INFO calculate_anything.utils.misc: Set language misc.safe_operation:186
2024-02-19 17:19:51,289 ℹ️  INFO calculate_anything.utils.misc: Set default cities misc.safe_operation:186
2024-02-19 17:19:51,290 ℹ️  INFO calculate_anything.utils.misc: Set units conversion mode misc.safe_operation:186
2024-02-19 17:19:51,290 ℹ️  INFO calculate_anything.utils.misc: Set currency providers misc.safe_operation:186
2024-02-19 17:19:51,290 ℹ️  INFO calculate_anything.utils.misc: Set cache interval misc.safe_operation:186
2024-02-19 17:19:51,290 ℹ️  INFO calculate_anything.utils.misc: Set default currencies misc.safe_operation:186
2024-02-19 17:19:51,290 ℹ️  INFO calculate_anything.utils.misc: LanguagePreferences: lang = en_US misc.safe_operation:186
2024-02-19 17:19:51,291 ℹ️  INFO calculate_anything.utils.misc: TimePreferences: default_cities = [('new york city', 'US'), ('london', 'GB'), ('madrid', 'ES'), ('vancouver', 'CA'), ('athens', 'GR')] misc.safe_operation:186
2024-02-19 17:19:51,291 ℹ️  INFO calculate_anything.utils.loaders.sqlite: Loaded timezone database: /home/bunny/.cache/com.github.tchar.calculate-anything/timezones.sqlite3 sqlite._load:84
2024-02-19 17:19:51,350 ℹ️  INFO calculate_anything.utils.misc: UnitsPreferences: units_conversion_mode = ConversionMode.NORMAL misc.safe_operation:186
2024-02-19 17:19:51,350 ℹ️  INFO calculate_anything.utils.misc: CurrencyPreferences: add_provider = <calculate_anything.currency.providers.fixerio.FixerIOCurrencyProvider object at 0x732e3251f5d0> misc.safe_operation:186
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.currency.service: Removing provider FixerIOCurrencyProvider service.remove_provider:186
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.currency.service: Adding provider FixerIOCurrencyProvider service.add_provider:180
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.utils.misc: CurrencyPreferences: cache_update_frequency = 86400 misc.safe_operation:186
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.currency.service: Enabling cache with update frequency = 86400 service.enable_cache:154
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.currency.cache: Enabling cache every 86400s cache.enable:80
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.utils.misc: CurrencyPreferences: default_currencies = ['USD', 'EUR', 'GBP', 'CAD'] misc.safe_operation:186
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.currency.service: Updating default currencies = ['USD', 'EUR', 'GBP', 'CAD'] service.set_default_currencies:194
2024-02-19 17:19:51,351 ℹ️  INFO calculate_anything.currency.service: Currency Service is running service.start:240
2024-02-19 17:19:51,352 ℹ️  INFO calculate_anything.currency.service.UpdateThread(id=f4f079533e08): Starting thread service.run:97
2024-02-19 17:19:51,353 ℹ️  INFO calculate_anything.currency.service.UpdateThread(id=f4f079533e08): Sleeping for 5067s service.run:103

Communication guidelines

Ulauncher v6

friday commented 6 months ago

Thank you for helping us with testing :pray:

I will have to look into the deb issue for Ubuntu 24.04. We build the debs on Ubuntu 20.04 to ensure backward compatibility, so we haven't seen this yet. The latest alpha release is available at https://github.com/Ulauncher/Ulauncher/releases/tag/v6.0.0-beta4. Could you try to run that to see if it says the same thing?

The status icon uses the XDG icon specification to load the icon from the installed location, so it works when you run from source if you have also installed Ulauncher (v5 or v6). We can possibly override that when running from the source dir, but I'm also confused about how/if to handle light/dark themes in this era when Modern Gnome doesn't even have themes.

friday commented 6 months ago

There's also a more recent build for noble here https://launchpad.net/~agornostal/+archive/ubuntu/test2/+build/27763923 (this PPA is just for testing, so please don't add it).

ddouglas87 commented 6 months ago

The latest alpha release is available at https://github.com/Ulauncher/Ulauncher/releases/tag/v6.0.0-beta4. Could you try to run that to see if it says the same thing?

When I download the .deb and double click it:

image

bunny@happy:~/Downloads$ apt install python3-levenshtein
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package python3-levenshtein is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'python3-levenshtein' has no installation candidate

I guess ./ulauncher_6.0.0-beta4_all.deb doesn't work for installing .deb files? That's what I tried in the comment above. My bad. I tried this instead:

bunny@happy:~/Downloads$ sudo dpkg -i ulauncher_6.0.0~a100-0ubuntu1ppa1~noble_all.deb 
dpkg: warning: downgrading ulauncher from 6.0.0~beta4-0ubuntu1 to 6.0.0~a100-0ubuntu1ppa1~noble
(Reading database ... 530500 files and directories currently installed.)
Preparing to unpack ulauncher_6.0.0~a100-0ubuntu1ppa1~noble_all.deb ...
Unpacking ulauncher (6.0.0~a100-0ubuntu1ppa1~noble) over (6.0.0~beta4-0ubuntu1) ...
dpkg: dependency problems prevent configuration of ulauncher:
 ulauncher depends on python3-levenshtein; however:
  Package python3-levenshtein is not installed.

dpkg: error processing package ulauncher (--install):
dependency problems - leaving unconfigured
Processing triggers for gnome-menus (3.36.0-1.1ubuntu1) ...
Processing triggers for mate-menus (1.26.1-1) ...
Processing triggers for desktop-file-utils (0.26+mint4) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...
Processing triggers for gnome-icon-theme (3.12.0-5) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Errors were encountered while processing:
 ulauncher

Now the task bar logo appears and works when I run ulauncher from the command line. Yeah! :D

bunny@happy:~/Downloads$ ulauncher
Levenshtein is missing or outdated. Falling back to slower fuzzy-finding method.
2024-02-20 18:58:03,495 ⚠️  WARNING 

╔═════════════════════════════════════════════════════════════════════════════╗
║                  YOU ARE RUNNING A PRE-RELEASE of ULAUNCHER.                ║
║ Please do not report extension API support warnings to extension developers ║
║ We are still in the process of developing and documenting these features    ║
╚═════════════════════════════════════════════════════════════════════════════╝

 main.main:57

You can see here the dependency was removed: https://answers.launchpad.net/ubuntu/noble/amd64/python3-levenshtein

There's also a more recent build for noble here https://launchpad.net/~agornostal/+archive/ubuntu/test2/+build/27763923 (this PPA is just for testing, so please don't add it).

Both have the same dependency issue.

I'm also confused about how/if to handle light/dark themes in this era when Modern Gnome doesn't even have themes.

I have this problem with a lot of apps defaulting to light theme despite my desktop being set to a dark theme. Maybe my DE is messed up on my end not reporting it as dark. On Ulauncher I went into preferences and set color theme to dark. Works fine for me.


Thanks for dealing with my not so great bug reporting skills. The summary for this bug report is: Fails to install due to missing dependency, and taskbar icon is not working when ulauncher is ran without being installed.

friday commented 6 months ago

Thanks again. This was a great report. I got two concrete things out of it that we need to fix for Ubuntu 24.04 that I wasn't aware of and was reminded of one that I knew of but didn't have a concrete approach for (but I might have it now).

python3-levenshtein is technically optional in v6. I made it fallback on a native Python library that works very similar. So I guess I should make it optional in the package. Maybe that's enough for you to be able to install it as well

Fuzzy search is still around 10x faster if you have python3-levenshtein though, but I haven't actually been able to reproduce a case where it's noticeable in real use.

friday commented 6 months ago

I just pushed a commit that among other things checks that the icon is installed and falls back on the "find" icon otherwise.

Looks like this for me, but it will depend of your icon theme: Screenshot from 2024-02-21 23-22-01

Additionally you can change the tray icon to any standard icon name that your theme supports by manually editing the settings file, see #1356

ddouglas87 commented 6 months ago

Woo! The icon changed. Here's what it looks like for me without install:

image

If I do make deb ; sudo dpkg -i dist/ulauncher_6.0.0~beta4_all.deb ; ulauncher I get the old U icon:

image

I'm not sure what's going on there, but I like both icons.

Thanks for all the kind responses. You've made my day. ❤️

friday commented 6 months ago

Pushed another commit so now it should load the ulauncher icon without needing the package installed.

Should be able to deal with the python3-levenshtein dependency issue by the weekend I think.

ddouglas87 commented 6 months ago

Now I'm getting the U icon. Thanks again!