Bug 457443

Summary: Error hotstuff-access when try to download new molecule in molecule-editor
Product: [Applications] kalzium Reporter: Ruben <ruben.rojovazquez.sa>
Component: generalAssignee: Kalzium Developers <kalzium>
Status: CONFIRMED ---    
Severity: normal CC: sgmoore, tuomas
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Debian stable   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Ruben 2022-08-03 09:16:12 UTC
STEPS TO REPRODUCE
1. Run Kalzium
2. Launch Molecular_Editor-Download Molecules-Dowload any molecule...
3. Error hotstuff-access

OBSERVED RESULT
In a terminal :

dock Area changed Qt::BottomDockWidgetArea
slotSwitchtoLookGradient Kalzium
slotSwitchtoLookScheme Kalzium
dock Area changed Qt::BottomDockWidgetArea
Kalzium new stuff
Changed Entry:  ("/home/usuario/.local/share/kalzium/molecules/hotstuff-access")
Couldn't start kuiserver from org.kde.kuiserver.service: QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kuiserver was not provided by any .service files")
kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/libexec/kf5/klauncher'
kdeinit5: Launched KLauncher, pid = 2051, result = 0
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
kdeinit5: opened connection to localhost:10.0
kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so' from launcher.
kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so'
Could not initialize file reader for file  "/home/usuario/Documentos/hotstuff-access"


EXPECTED RESULT
Trying to save Molecule succesfully

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 
Distributor ID:	Debian
Description:	Debian GNU/Linux 11 (bullseye)
Release:	11
Codename:	bullseye

KDE Plasma Version: 
kde-plasma-desktop/stable 5:111 amd64
kdeplasma-addons-data/stable 4:5.20.5-1 all
kdeplasma-applets-xrdesktop/stable 0.15.0-1 all
plasma-kdevelop/stable 4:5.6.2-4 amd64

KDE Frameworks Version: 
Qt Version: qt5

ADDITIONAL INFORMATION
kalzium version debian package: 4:20.12.0-1
Comment 1 Tuomas Nurmi 2022-10-27 21:09:45 UTC
I can reproduce this with current git head ("kalzium 22.11.70"), and had a bit deeper look at the problem. My documentation of the underlying technical probem and a solution prototype at https://invent.kde.org/education/kalzium/-/merge_requests/26 . I might inspect this more later.
Comment 2 Tuomas Nurmi 2022-10-27 21:14:50 UTC
*** Bug 461027 has been marked as a duplicate of this bug. ***
Comment 3 Tuomas Nurmi 2022-10-29 10:12:39 UTC
Ok, I tracked down the problem.
KNewStuff's Installation::downloadPayload(const KNSCore::EntryInternal &entry) generates the file name using QUrl::fileName() at https://invent.kde.org/frameworks/knewstuff/-/blob/master/src/core/installation.cpp#L222 . however, the URLs are of format http://newstuff.kde.org/cgi-bin/hotstuff-access?file=alkanes/3S-3-methylheptane.cml&site=kalzium and .fileName() interprets the hotstuff-access part as the filename, and not the part that follows the "?file=". Fixing the problem would need some different kind of handling of the QUrl in KNewStuff (or porting the Kalzium molecule download data to the newer formats.)