Hi, I have updated to Fedora 35 and Anki 2.1.47. (Yes I know… its bleeding edge). Anki starts up (using --safemode) with a blank window. I have the top Anki menus so the window manager is doing its thing. But there are no decks displayed etc. I can select Tools Study Deck and select one of my decks to get returned to the blank window. But now the strange part. I booted back into Fedora 34 and downgraded Anki to 46 with the same results. Not sure if there was some Fedora mesa update or something that may have done that???
It tried to install 2.1.48: same result
Installed the flatpak with 2.1.46 and that works. But confirmed that 2.1.46 doesn’t work in either of my Fedora 34/35 installs (but the flatpak is ok). However 2.1.47 was previously working under Fedora 34.
Anyway I don’t have any error messages to report. I tried update anything mesa. And I also installed the Fedora verion of anki, just to let it pull in any qt stuff it wanted. That is version 2.1.15 so will not even open my files at this point. The good news is I do have the flatpak for now, but any further suggestion on troubleshooting this without any error messages???
Just going to try and install with a totally new user profile…
Really? But yes of course normally I don’t use --safemode. This is just to show that I have eliminated any plugins. I am however on a relateively slow network in West Africa, and often have issues with cloudfare (who have broken the intenet IMO) But I also don’t ‘get it’. What network connectivity is going to prevent displaying the decks?
Anki runs a private server on a local port on your computer for its webviews. Your screenshot seems indicative of a firewall/VPN blocking access to that server.
If you inspect the main window with the AnkiWebView Inspector, you can browse the files in that local server:
ah ok, that makes sens, especially since the anki install is in a toolbox container.
Regrettably though even the webview inspector doesn’t work. I suppose there is nothing to inspect, so if you right click anywere then there is no menu to inspect anything.
There is no firewall running but there must be something preventing the communication between the host and container. Otherwise FYI I can run graphical apps in the toolbox normally without issues. Chrome browser works fine.
I can also confirm that anki 2.1.15 from Fedora works. Its just that its too old for both the data file and plugins to work. Is there a port number I can check? Or is it random?
A blank window can be caused by antivirus/firewall software, but that tends to be seen mainly on Windows. Another possibility is that the webview component is failing to load properly, and perhaps running Anki from a terminal will reveal some debug info. You could also try changing the video driver: Known Issues - Changes
Did figure out how to get some logging with the results below. I then changed my locale to en_US.utf8 from en_CA.utf8 and no change. So maybe its that transport_security warning that is causing the issue?? In any case at least the --no-sandbox option gets things running again.
Note: I had already tried changing the video driver from auto to software with no luck. But at least I have a working solution!
Cheers!
^C[bkelly@toolbox ~]$ /usr/local/bin/anki --enable-logging --log-level=0 --V=1
Qt info: Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
mpv not found, reverting to mplayer
[16472:16478:0919/085950.094765:WARNING:transport_security_persister.cc(307)] Could not parse entry expect_ct; skipping entry
[16472:16478:0919/085950.094790:WARNING:transport_security_persister.cc(307)] Could not parse entry sts; skipping entry
[16472:16478:0919/085950.094797:WARNING:transport_security_persister.cc(307)] Could not parse entry version; skipping entry
[16483:1:0919/085950.115353:WARNING:resource_bundle_qt.cpp(115)] locale_file_path.empty() for locale
[16472:16478:0919/085950.136671:WARNING:transport_security_persister.cc(307)] Could not parse entry expect_ct; skipping entry
[16472:16478:0919/085950.136698:WARNING:transport_security_persister.cc(307)] Could not parse entry sts; skipping entry
[16472:16478:0919/085950.136709:WARNING:transport_security_persister.cc(307)] Could not parse entry version; skipping entry
[16492:1:0919/085950.621504:WARNING:resource_bundle_qt.cpp(115)] locale_file_path.empty() for locale
It’s random, but could be seen in the console output (maybe with some additional error messages) after temporarily exporting ANKIDEV=1 in your shell, and ANKI_API_PORT=40000 could be used to tell Anki what port to use.
If ANKIDEV is set before starting Anki, some extra log messages will be printed on stdout, and automatic backups will be disabled - so please don’t use this except on a test profile.
i had a similar issue in fedora 34 and fedora 35. since you are using toolbox i imagine you are using silverblue? i used standard fedora. I also recall attempting to do it in ubuntu’s 21.10 beta and also had the same issue. I’m thinking that maybe there is some incompatability or issues surrounding some of the newer libraries that the package managers are using that may be causing problems? i tried 2.1.47 2.1.48 and 2.1.35 (which i actually need to use) and they all had that blank screen issue. I went back to ubuntu’s 20.04 lts and the issues went away.
Thanks for the info. I was wondering if it was some kind of ‘toolbox’ security issue. But it seems that is not the case. Anyway for now the problem is solved for the time being with:
wow yeah that’s great. that works for me too. i can’t figure out how to add it to the anki.desktop file to make it persistent and automated. i basically need to export that in terminal and then run anki from the terminal. do you how i can make it so it does this automatically?
Yes either create or edit the anki.desktop file in ~/.local/share/applications
[Desktop Entry]
Name=Anki
Comment=An intelligent spaced-repetition memory training program
GenericName=Flashcards
Exec=env QTWEBENGINE_CHROMIUM_FLAGS=–no-sandbox /usr/local/bin/anki %F
Type=Application
Icon=anki.png
Categories=Education;Languages;KDE;Qt;
Terminal=false
`
it should work in .local/share/applications.
I don’t have my glasses on but do you have two dashes in --no-sandbox? That may be the issues. Otherwise you must have another anki (flatpak?)
ah, no i just copy pasted from your message. i wonder if the second - got lost in some markdown or something
– (yup - - turns into a long dash in the anki forums) now that i’ve added that second slash it appears to be working! thanks a lot for your help. this would have been a real problem if i didnt find a solution to it!
I’ve tried to edit anki.desktop but still cannot start Anki from my normal launcher
Do I have to launch it from the terminal each time using
export QTWEBENGINE_CHROMIUM_FLAGS="–no-sandbox"
anki
?
I had the same problems too, couldn’t fix it, then finally installed a flatpak, now satisfied. But the devs should really make a RPM version of Anki that works.