[GH-ISSUE #5182] [bug]: Hoppscotch refuses to load on UBlue Fedora #1976

Closed
opened 2026-03-16 22:42:55 +03:00 by kerem · 4 comments
Owner

Originally created by @jorge-trujillo on GitHub (Jun 22, 2025).
Original GitHub issue: https://github.com/hoppscotch/hoppscotch/issues/5182

Originally assigned to: @CuriousCorrelation on GitHub.

Is there an existing issue for this?

  • I have searched existing issues and this bug hasn't been reported yet

Platform

Desktop App

Browser

Chrome

Operating System

Linux

Bug Description

When starting the AppImage, Hoppscotch starts to load but then shows a blank screen. Looking at the logs:

2025-06-22T00:03:05.571950Z DEBUG main ThreadId(01) tauri_plugin_appload::bundle::verified: Extracting file from archive path=images/states/dark/upload_single_file.svg
2025-06-22T00:03:05.571968Z  INFO main ThreadId(01) tauri_plugin_appload::bundle::verified: Successfully created trusted bundle with 284 files, total size 71174492
2025-06-22T00:03:05.572007Z  INFO main ThreadId(01) tauri_plugin_appload::storage::manager: Storing bundle bundle_name="hoppscotch"
2025-06-22T00:03:05.572015Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Ensuring directory exists path="/home/jorge/.config/io.hoppscotch.desktop/bundles"
2025-06-22T00:03:05.572238Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Ensuring directory exists path="/home/jorge/.config/io.hoppscotch.desktop/temp"
2025-06-22T00:03:05.572253Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Ensuring sufficient space for the bundle bundle_name="hoppscotch" temp_path="/home/jorge/.config/io.hoppscotch.desktop/temp/hoppscotch.tmp"
2025-06-22T00:03:05.572256Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Checking available disk space required_space=21789131
2025-06-22T00:03:05.572735Z  WARN main ThreadId(01) tauri_plugin_appload::storage::manager: Insufficient disk space required_space=21789131 available_space=0
2025-06-22T00:03:05.574411Z ERROR main ThreadId(01) tauri_plugin_appload: Failed to initialize vendor. error=Storage error: Storage full: required 21789131 bytes, available 0 bytes
2025-06-22T00:03:05.574416Z DEBUG main ThreadId(01) tauri_plugin_appload: Initializing desktop-specific components.
2025-06-22T00:03:05.574422Z  INFO main ThreadId(01) tauri_plugin_appload: appload plugin setup complete.
2025-06-22T00:03:05.574433Z  INFO main ThreadId(01) tauri_plugin_relay: Setting up relay plugin
2025-06-22T00:03:05.574435Z DEBUG main ThreadId(01) tauri_plugin_relay: Initializing desktop-specific components
2025-06-22T00:03:05.574437Z DEBUG main ThreadId(01) tauri_plugin_relay::desktop: Initializing Relay for desktop platform
2025-06-22T00:03:05.574440Z DEBUG main ThreadId(01) tauri_plugin_relay: Desktop components initialized successfully
2025-06-22T00:03:05.574441Z  INFO main ThreadId(01) tauri_plugin_relay: relay plugin setup complete
2025-06-22T00:03:05.756338Z  INFO main ThreadId(01) hoppscotch_desktop_lib: Selected server port: 21520
2025-06-22T00:03:05.756347Z  INFO main ThreadId(01) hoppscotch_desktop_lib: Initializing server with pre-selected port port=21520
2025-06-22T00:03:05.756351Z  INFO main ThreadId(01) hoppscotch_desktop_lib::server: Beginning server initialization
2025-06-22T00:03:05.756397Z  INFO main ThreadId(01) hoppscotch_desktop_lib: Server initialization complete port=21520
2025-06-22T00:03:05.756404Z  INFO main ThreadId(01) hoppscotch_desktop_lib: Configuring deep link handler app_name=Hoppscotch
2025-06-22T00:03:05.756411Z  INFO                 main ThreadId(01) hoppscotch_desktop_lib: Starting Hoppscotch Desktop v25.5.3
2025-06-22T00:03:05.756412Z  INFO tokio-runtime-worker ThreadId(12) hoppscotch_desktop_lib::server: Starting HTTP server address=127.0.0.1:21520 port=21520
2025-06-22T00:03:05.756438Z  INFO tokio-runtime-worker ThreadId(12) hoppscotch_desktop_lib::server: Server bound successfully local_addr=127.0.0.1:21520
2025-06-22T00:03:05.756441Z  INFO tokio-runtime-worker ThreadId(12) hoppscotch_desktop_lib::server: Server starting
2025-06-22T00:03:06.464451Z DEBUG tokio-runtime-worker ThreadId(12) reqwest::connect: starting new connection: https://releases.hoppscotch.com/    
2025-06-22T00:03:06.518921Z DEBUG tokio-runtime-worker ThreadId(12) hyper_util::client::legacy::connect::http: connecting to 34.234.106.80:443
2025-06-22T00:03:06.556711Z DEBUG tokio-runtime-worker ThreadId(05) hyper_util::client::legacy::connect::http: connected to 34.234.106.80:443
2025-06-22T00:03:06.664112Z  INFO tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Loading bundle options=LoadOptions { bundle_name: "Hoppscotch", inline: false, window: WindowOptions { title: "Hoppscotch", width: 800.0, height: 600.0, resizable: true } } bundle=Hoppscotch window_label=Hoppscotch-curr
2025-06-22T00:03:06.664120Z DEBUG tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Generated app URL url=app://hoppscotch/
2025-06-22T00:03:06.664284Z  INFO tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Closing main window
2025-06-22T00:03:06.666575Z  INFO tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Bundle loaded successfully response=LoadResponse { success: true, window_label: "Hoppscotch-curr" }
2025-06-22T00:03:07.199813Z  INFO                 main ThreadId(01) tauri_plugin_appload: Incoming URI request
2025-06-22T00:03:07.199823Z DEBUG                 main ThreadId(01) tauri_plugin_appload: Handling app URI scheme request. url=app://hoppscotch/ thread_id=ThreadId(1)
2025-06-22T00:03:07.199828Z  INFO                 main ThreadId(01) tauri_plugin_appload: Got URI handler
2025-06-22T00:03:07.199833Z DEBUG                 main ThreadId(01) tauri_plugin_appload::uri::handler: Handling request host=hoppscotch path=
2025-06-22T00:03:07.199837Z DEBUG                 main ThreadId(01) tauri_plugin_appload::uri::handler: Fetching file content. host=hoppscotch path= resolved_path=index.html
2025-06-22T00:03:07.199843Z  INFO                 main ThreadId(01) tauri_plugin_appload::cache::manager: Retrieving file bundle_name=hoppscotch file_path=index.html cache_key=hoppscotch:index.html
2025-06-22T00:03:07.199851Z DEBUG                 main ThreadId(01) tauri_plugin_appload::cache::manager: Cache lookup attempt bundle_name=hoppscotch file_path=index.html cache_key=hoppscotch:index.html thread_id=ThreadId(1)
2025-06-22T00:03:07.199858Z  INFO                 main ThreadId(01) tauri_plugin_appload::cache::store: Retrieving file from cache. key="hoppscotch:index.html"
2025-06-22T00:03:07.199864Z DEBUG                 main ThreadId(01) tauri_plugin_appload::cache::store: Cache access attempt details key="hoppscotch:index.html" thread_id=ThreadId(1) hot_cache_len=0 disk_cache_len=0
2025-06-22T00:03:07.199874Z DEBUG                 main ThreadId(01) tauri_plugin_appload::cache::store: File not found in hot cache. Checking disk cache. key="hoppscotch:index.html"
2025-06-22T00:03:07.199878Z  WARN                 main ThreadId(01) tauri_plugin_appload::cache::store: File not found in cache. key="hoppscotch:index.html"
2025-06-22T00:03:07.199885Z ERROR                 main ThreadId(01) tauri_plugin_appload::uri::handler: Failed to retrieve file content error=Cache error: Cache entry not found: hoppscotch:index.html host=hoppscotch path=
GStreamer element appsink not found. Please install it.

After all the extractions, you can see that it seems to believe that there is zero disk space.

2025-06-22T00:03:05.574411Z ERROR main ThreadId(01) tauri_plugin_appload: Failed to initialize vendor. error=Storage error: Storage full: required 21789131 bytes, available 0 bytes

However, this is not correct:

$ df -kh
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme1n1p3  930G  181G  748G  20% /sysroot
composefs        29M   29M     0 100% /
devtmpfs        4.0M     0  4.0M   0% /dev
tmpfs            31G   83M   31G   1% /dev/shm
efivarfs        128K   59K   65K  48% /sys/firmware/efi/efivars
tmpfs            13G  2.5M   13G   1% /run
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-journald.service
tmpfs            31G   16M   31G   1% /tmp
/dev/nvme1n1p3  930G  181G  748G  20% /var
/dev/nvme1n1p2  974M  475M  432M  53% /boot
/dev/nvme1n1p3  930G  181G  748G  20% /var/home
/dev/nvme1n1p1  599M   13M  587M   3% /boot/efi
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-resolved.service
/dev/nvme0n1p1  932G  5.8M  930G   1% /run/media/system/Games
tmpfs           6.1G   60M  6.0G   1% /run/user/1000

I tried using the XDG_CONFIG_HOME variable to set it to XDG_CONFIG_HOME=/var/home/user/.config and this also resulted in the zero disk space error. At this point not sure if it is due to some other aspect of Bazzite being immutable.

Thanks in advance for your help!

Deployment Type

Self-hosted (on-prem deployment)

Version

Hoppscotch Desktop v25.5.3

Originally created by @jorge-trujillo on GitHub (Jun 22, 2025). Original GitHub issue: https://github.com/hoppscotch/hoppscotch/issues/5182 Originally assigned to: @CuriousCorrelation on GitHub. ### Is there an existing issue for this? - [x] I have searched existing issues and this bug hasn't been reported yet ### Platform Desktop App ### Browser Chrome ### Operating System Linux ### Bug Description When starting the AppImage, Hoppscotch starts to load but then shows a blank screen. Looking at the logs: ``` 2025-06-22T00:03:05.571950Z DEBUG main ThreadId(01) tauri_plugin_appload::bundle::verified: Extracting file from archive path=images/states/dark/upload_single_file.svg 2025-06-22T00:03:05.571968Z INFO main ThreadId(01) tauri_plugin_appload::bundle::verified: Successfully created trusted bundle with 284 files, total size 71174492 2025-06-22T00:03:05.572007Z INFO main ThreadId(01) tauri_plugin_appload::storage::manager: Storing bundle bundle_name="hoppscotch" 2025-06-22T00:03:05.572015Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Ensuring directory exists path="/home/jorge/.config/io.hoppscotch.desktop/bundles" 2025-06-22T00:03:05.572238Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Ensuring directory exists path="/home/jorge/.config/io.hoppscotch.desktop/temp" 2025-06-22T00:03:05.572253Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Ensuring sufficient space for the bundle bundle_name="hoppscotch" temp_path="/home/jorge/.config/io.hoppscotch.desktop/temp/hoppscotch.tmp" 2025-06-22T00:03:05.572256Z DEBUG main ThreadId(01) tauri_plugin_appload::storage::manager: Checking available disk space required_space=21789131 2025-06-22T00:03:05.572735Z WARN main ThreadId(01) tauri_plugin_appload::storage::manager: Insufficient disk space required_space=21789131 available_space=0 2025-06-22T00:03:05.574411Z ERROR main ThreadId(01) tauri_plugin_appload: Failed to initialize vendor. error=Storage error: Storage full: required 21789131 bytes, available 0 bytes 2025-06-22T00:03:05.574416Z DEBUG main ThreadId(01) tauri_plugin_appload: Initializing desktop-specific components. 2025-06-22T00:03:05.574422Z INFO main ThreadId(01) tauri_plugin_appload: appload plugin setup complete. 2025-06-22T00:03:05.574433Z INFO main ThreadId(01) tauri_plugin_relay: Setting up relay plugin 2025-06-22T00:03:05.574435Z DEBUG main ThreadId(01) tauri_plugin_relay: Initializing desktop-specific components 2025-06-22T00:03:05.574437Z DEBUG main ThreadId(01) tauri_plugin_relay::desktop: Initializing Relay for desktop platform 2025-06-22T00:03:05.574440Z DEBUG main ThreadId(01) tauri_plugin_relay: Desktop components initialized successfully 2025-06-22T00:03:05.574441Z INFO main ThreadId(01) tauri_plugin_relay: relay plugin setup complete 2025-06-22T00:03:05.756338Z INFO main ThreadId(01) hoppscotch_desktop_lib: Selected server port: 21520 2025-06-22T00:03:05.756347Z INFO main ThreadId(01) hoppscotch_desktop_lib: Initializing server with pre-selected port port=21520 2025-06-22T00:03:05.756351Z INFO main ThreadId(01) hoppscotch_desktop_lib::server: Beginning server initialization 2025-06-22T00:03:05.756397Z INFO main ThreadId(01) hoppscotch_desktop_lib: Server initialization complete port=21520 2025-06-22T00:03:05.756404Z INFO main ThreadId(01) hoppscotch_desktop_lib: Configuring deep link handler app_name=Hoppscotch 2025-06-22T00:03:05.756411Z INFO main ThreadId(01) hoppscotch_desktop_lib: Starting Hoppscotch Desktop v25.5.3 2025-06-22T00:03:05.756412Z INFO tokio-runtime-worker ThreadId(12) hoppscotch_desktop_lib::server: Starting HTTP server address=127.0.0.1:21520 port=21520 2025-06-22T00:03:05.756438Z INFO tokio-runtime-worker ThreadId(12) hoppscotch_desktop_lib::server: Server bound successfully local_addr=127.0.0.1:21520 2025-06-22T00:03:05.756441Z INFO tokio-runtime-worker ThreadId(12) hoppscotch_desktop_lib::server: Server starting 2025-06-22T00:03:06.464451Z DEBUG tokio-runtime-worker ThreadId(12) reqwest::connect: starting new connection: https://releases.hoppscotch.com/ 2025-06-22T00:03:06.518921Z DEBUG tokio-runtime-worker ThreadId(12) hyper_util::client::legacy::connect::http: connecting to 34.234.106.80:443 2025-06-22T00:03:06.556711Z DEBUG tokio-runtime-worker ThreadId(05) hyper_util::client::legacy::connect::http: connected to 34.234.106.80:443 2025-06-22T00:03:06.664112Z INFO tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Loading bundle options=LoadOptions { bundle_name: "Hoppscotch", inline: false, window: WindowOptions { title: "Hoppscotch", width: 800.0, height: 600.0, resizable: true } } bundle=Hoppscotch window_label=Hoppscotch-curr 2025-06-22T00:03:06.664120Z DEBUG tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Generated app URL url=app://hoppscotch/ 2025-06-22T00:03:06.664284Z INFO tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Closing main window 2025-06-22T00:03:06.666575Z INFO tokio-runtime-worker ThreadId(05) tauri_plugin_appload::commands: Bundle loaded successfully response=LoadResponse { success: true, window_label: "Hoppscotch-curr" } 2025-06-22T00:03:07.199813Z INFO main ThreadId(01) tauri_plugin_appload: Incoming URI request 2025-06-22T00:03:07.199823Z DEBUG main ThreadId(01) tauri_plugin_appload: Handling app URI scheme request. url=app://hoppscotch/ thread_id=ThreadId(1) 2025-06-22T00:03:07.199828Z INFO main ThreadId(01) tauri_plugin_appload: Got URI handler 2025-06-22T00:03:07.199833Z DEBUG main ThreadId(01) tauri_plugin_appload::uri::handler: Handling request host=hoppscotch path= 2025-06-22T00:03:07.199837Z DEBUG main ThreadId(01) tauri_plugin_appload::uri::handler: Fetching file content. host=hoppscotch path= resolved_path=index.html 2025-06-22T00:03:07.199843Z INFO main ThreadId(01) tauri_plugin_appload::cache::manager: Retrieving file bundle_name=hoppscotch file_path=index.html cache_key=hoppscotch:index.html 2025-06-22T00:03:07.199851Z DEBUG main ThreadId(01) tauri_plugin_appload::cache::manager: Cache lookup attempt bundle_name=hoppscotch file_path=index.html cache_key=hoppscotch:index.html thread_id=ThreadId(1) 2025-06-22T00:03:07.199858Z INFO main ThreadId(01) tauri_plugin_appload::cache::store: Retrieving file from cache. key="hoppscotch:index.html" 2025-06-22T00:03:07.199864Z DEBUG main ThreadId(01) tauri_plugin_appload::cache::store: Cache access attempt details key="hoppscotch:index.html" thread_id=ThreadId(1) hot_cache_len=0 disk_cache_len=0 2025-06-22T00:03:07.199874Z DEBUG main ThreadId(01) tauri_plugin_appload::cache::store: File not found in hot cache. Checking disk cache. key="hoppscotch:index.html" 2025-06-22T00:03:07.199878Z WARN main ThreadId(01) tauri_plugin_appload::cache::store: File not found in cache. key="hoppscotch:index.html" 2025-06-22T00:03:07.199885Z ERROR main ThreadId(01) tauri_plugin_appload::uri::handler: Failed to retrieve file content error=Cache error: Cache entry not found: hoppscotch:index.html host=hoppscotch path= GStreamer element appsink not found. Please install it. ``` After all the extractions, you can see that it seems to believe that there is zero disk space. ``` 2025-06-22T00:03:05.574411Z ERROR main ThreadId(01) tauri_plugin_appload: Failed to initialize vendor. error=Storage error: Storage full: required 21789131 bytes, available 0 bytes ``` However, this is not correct: ``` $ df -kh Filesystem Size Used Avail Use% Mounted on /dev/nvme1n1p3 930G 181G 748G 20% /sysroot composefs 29M 29M 0 100% / devtmpfs 4.0M 0 4.0M 0% /dev tmpfs 31G 83M 31G 1% /dev/shm efivarfs 128K 59K 65K 48% /sys/firmware/efi/efivars tmpfs 13G 2.5M 13G 1% /run tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service tmpfs 31G 16M 31G 1% /tmp /dev/nvme1n1p3 930G 181G 748G 20% /var /dev/nvme1n1p2 974M 475M 432M 53% /boot /dev/nvme1n1p3 930G 181G 748G 20% /var/home /dev/nvme1n1p1 599M 13M 587M 3% /boot/efi tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-resolved.service /dev/nvme0n1p1 932G 5.8M 930G 1% /run/media/system/Games tmpfs 6.1G 60M 6.0G 1% /run/user/1000 ``` I tried using the `XDG_CONFIG_HOME` variable to set it to `XDG_CONFIG_HOME=/var/home/user/.config` and this also resulted in the zero disk space error. At this point not sure if it is due to some other aspect of Bazzite being immutable. Thanks in advance for your help! ### Deployment Type Self-hosted (on-prem deployment) ### Version Hoppscotch Desktop v25.5.3
kerem 2026-03-16 22:42:55 +03:00
Author
Owner

@CuriousCorrelation commented on GitHub (Jun 25, 2025):

Hi @jorge-trujillo, thanks for a very well written detailed report!

I'm unsure at the moment if this issue is related to immutability. So far in my testing, it seems this only occurs on systems using overlay fs.

My working hypothesis is the disk matching logic might be selecting the wrong fs due to how it matches storage paths to mount points, it might be preferring overlay fs as an actual path over the underlying actual storage.

I'll investigate the storage path resolution and get back to you as soon as I find the culprit. Thanks for your patience!

<!-- gh-comment-id:3004420145 --> @CuriousCorrelation commented on GitHub (Jun 25, 2025): Hi @jorge-trujillo, thanks for a very well written detailed report! I'm unsure at the moment if this issue is related to immutability. So far in my testing, it seems this only occurs on systems using overlay fs. My working hypothesis is the disk matching logic might be selecting the wrong fs due to how it matches storage paths to mount points, it might be preferring overlay fs as an actual path over the underlying actual storage. I'll investigate the storage path resolution and get back to you as soon as I find the culprit. Thanks for your patience!
Author
Owner

@jorge-trujillo commented on GitHub (Jun 27, 2025):

Thank you for taking a look @CuriousCorrelation .

One workaround for those having the same issue is to run this in a toolbox:

  1. Download the app image as usual
  2. Create a toolbox and install dependencies:
toolbox create <name>
toolbox enter <name>
sudo dnf install fuse fuse-libs harfbuzz mesa-libgbm fribidi mesa-libGL mesa-libEGL wget curl mesa-libGLES
cd ~/path/to/appimage
./hoppscotch.appimage &

This works on my system, but your mileage may vary. You can also create a .desktop file to get integration with Gnome.

Would be nice to run it natively as well of course but at least this should help folks out there. Thanks again.

<!-- gh-comment-id:3014284788 --> @jorge-trujillo commented on GitHub (Jun 27, 2025): Thank you for taking a look @CuriousCorrelation . One workaround for those having the same issue is to run this in a toolbox: 1. Download the app image as usual 2. Create a toolbox and install dependencies: ```bash toolbox create <name> toolbox enter <name> sudo dnf install fuse fuse-libs harfbuzz mesa-libgbm fribidi mesa-libGL mesa-libEGL wget curl mesa-libGLES cd ~/path/to/appimage ./hoppscotch.appimage & ``` This works on my system, but your mileage may vary. You can also create a `.desktop` file to get integration with Gnome. Would be nice to run it natively as well of course but at least this should help folks out there. Thanks again.
Author
Owner

@CuriousCorrelation commented on GitHub (Jul 16, 2025):

Hi @jorge-trujillo, we just shipped v2025.6.1 which includes a potential fix for the issue you reported.

Could you please test the latest desktop app version on your system?

While my testing did show the fix works on NixOS + some configs similar to your system, I want to gather feedback to make sure the heuristic covers all edge cases.

Would really appreciate knowing if this resolves the issue on your setup, or if you encounter any remaining problems. Thanks again for the detailed bug report.

<!-- gh-comment-id:3077663836 --> @CuriousCorrelation commented on GitHub (Jul 16, 2025): Hi @jorge-trujillo, we just shipped v2025.6.1 which includes a _potential fix_ for the issue you reported. Could you please test the latest desktop app version on your system? While my testing did show the fix works on NixOS + some configs similar to your system, I want to gather feedback to make sure the heuristic covers all edge cases. Would really appreciate knowing if this resolves the issue on your setup, or if you encounter any remaining problems. Thanks again for the detailed bug report.
Author
Owner

@jorge-trujillo commented on GitHub (Aug 24, 2025):

Hey apologies it took so long to close the loop here. Just tested 2025.6.1 and it works just fine on UBlue Bazzite! Nice job guys, appreciate the fix and being able to run Hoppscotch natively.

<!-- gh-comment-id:3218317888 --> @jorge-trujillo commented on GitHub (Aug 24, 2025): Hey apologies it took so long to close the loop here. Just tested 2025.6.1 and it works just fine on UBlue Bazzite! Nice job guys, appreciate the fix and being able to run Hoppscotch natively.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hoppscotch#1976
No description provided.