QuickGUI shows empty window for 13 seconds on load
Steps to reproduce:
-
Have Debian 11.9 installed with all updates
-
Install QuickEmu and QuickGUI from focal PPAs:
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com 824A27DD09DEDA33BF7835962EA8F35793D8809A 7DEE66F0FD28828F3F2E647FF196B5DB0E9C0606 cat <<EOF | sudo tee /etc/apt/sources.list.d/quickgui.list deb http://ppa.launchpad.net/flexiondotorg/quickemu/ubuntu focal main deb-src http://ppa.launchpad.net/flexiondotorg/quickemu/ubuntu focal main deb http://ppa.launchpad.net/yannick-mauray/quickgui/ubuntu focal main deb-src http://ppa.launchpad.net/yannick-mauray/quickgui/ubuntu focal main EOF sudo apt-get update sudo apt-get install qemu-system -t bullseye-backports sudo apt-get install quickemu quickgui -
Test both QuickGet and QuickEmu
mkdir ~/VMs cd ~/VMs quickget debian 12.5.0 netinst quickemu --vm debian-12.5.0-netinst.conf -
Try to run QuickGUI with
quickemu
Expected results:
- QuickGUI is started and operational
Actual results:
-
QuickGUI shows empty window
and the following output in the terminal:
$ quickgui ** (quickgui:102715): CRITICAL **: 13:29:19.309: Failed to read XDG desktop portal settings: GDBus.Error:org.freedesktop.portal.Error.NotFound: Requested setting not found
Additional info:
$ cat /etc/debian_version
11.9
$ apt-cache policy quickemu quickgui
quickemu:
Installed: 4.9.1-1~focal23344.2321
Candidate: 4.9.1-1~focal23344.2321
Version table:
*** 4.9.1-1~focal23344.2321 500
500 http://ppa.launchpad.net/flexiondotorg/quickemu/ubuntu focal/main amd64 Packages
500 http://ppa.launchpad.net/flexiondotorg/quickemu/ubuntu focal/main i386 Packages
100 /var/lib/dpkg/status
quickgui:
Installed: 1.2.8-1~focal1.0
Candidate: 1.2.8-1~focal1.0
Version table:
*** 1.2.8-1~focal1.0 500
500 http://ppa.launchpad.net/yannick-mauray/quickgui/ubuntu focal/main amd64 Packages
100 /var/lib/dpkg/status
$ dpkg -l | grep ^ii | egrep "quickemu|quickgui|desktop-portal"
ii quickemu 4.9.1-1~focal23344.2321 all Quickemu creates and runs optimised virtual machines.
ii quickgui 1.2.8-1~focal1.0 amd64 A Flutter frontend for quickget
ii xdg-desktop-portal 1.16.0-2~bpo11+1 amd64 desktop integration portal for Flatpak and Snap
ii xdg-desktop-portal-dev 1.8.1-1 all desktop integration portal - development files
ii xdg-desktop-portal-gtk 1.14.1-1~bpo11+1 amd64 GTK+/GNOME portal backend for xdg-desktop-portal
Really it is alive - see
QuickGui needs 13 seconds to start on modern 11th Intel core i5 with NVMe disk. This time lag was unexpected for me.
Please inform user about QuickEMU loading - put something like Downloading / Loading text or some icon ⏳ .
Seeing empty window with gray color (on integrated Intel graphics) or black color (on Nvidia graphics) is not comfortable for the end user.
I have faced the same issue, it took more than 30 seconds for me. Might be related to Flutter or Dart runtime. This was the output on the terminal
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: Invalid argument(s): null is not a String or Directory
#0 _Directory.current= (dart:io/directory_impl.dart:62)
#1 Directory.current= (dart:io/directory.dart:168)
#2 _DownloaderMenuState.build.<anonymous closure>.<anonymous closure> (package:quickgui/src/widgets/home_page/downloader_menu.dart:58)
#3 State.setState (package:flutter/src/widgets/framework.dart:1114)
#4 _DownloaderMenuState.initState.<anonymous closure> (package:quickgui/src/widgets/home_page/downloader_menu.dart:24)
<asynchronous suspension>
flutter: Failed to find definition for #a
flutter: #0 debugPrintStack (package:flutter/src/foundation/assertions.dart:1204)
flutter: #1 FlutterError.dumpErrorToConsole (package:flutter/src/foundation/assertions.dart:1023)
flutter: #2 reportMissingDef (package:flutter_svg/src/utilities/errors.dart:5)
flutter: #3 _Elements.linearGradient (package:flutter_svg/src/svg/parser_state.dart:395)
flutter: #4 SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:854)
flutter: <asynchronous suspension>
flutter: #5 SvgParser.parse (package:flutter_svg/parser.dart:27)
flutter: <asynchronous suspension>
flutter: #6 Svg.fromSvgString (package:flutter_svg/svg.dart:131)
flutter: <asynchronous suspension>
flutter: #7 Svg.svgPictureStringDecoder (package:flutter_svg/svg.dart:84)
flutter: <asynchronous suspension>
flutter: Another exception was thrown: Instance of 'DiagnosticsProperty<void>'
flutter: Another exception was thrown: Instance of 'DiagnosticsProperty<void>'
Mine was a Ryzen 5900X 12 Core, with RTX 3080 12GB, so pretty high end machine
In my case, when I disconnect my machine from the internet and open it up, the GUI shows up immediately.
In my case, when I disconnect my machine from the internet and open it up, the GUI shows up immediately.
That's because this entire issue is caused by quickget's list_csv fetching available releases and editions from the web sequentially. With how many distros quickget supports now, this causes the list_csv to take forever. If you disconnect from the internet while launching, you'll miss out on many distros that quickget supports. This is a serious issue with quickget and must be fixed, it renders anything which relies on the list_csv to be nearly useless. I even thought quickgui was broken when I tested it in a VM a few months ago, it took over 30 seconds to launch.
Reporting the same situation with the same error as @AldrinMathew in https://github.com/quickemu-project/quickgui/issues/123#issuecomment-1987152221_ here on an up-to-date Arch.
Fixed in https://github.com/quickemu-project/quickemu/commit/95b6d8cf4124f6724ba215da0a29d76569c79896
Just installed this and it took 5 minutes to load the GUI from a blank screen on an i9-13900. I reinstalled it so many times thinking it was broken until I found this thread.
The previous comment says fixed, but I dont understand how to use that fix. How do I fix?
Fixed via https://github.com/quickemu-project/quickgui/commit/b1350b825fed49fb2e8501a7f0d0e07c157c7775