KIO: Unable to create KIO worker

Hi all!

I’m getting a whole array of errors, all seemingly relating to KIO. More specifically, the following errors occur:

  • When opening a “Save As” dialog in LibreOffice, an error message appears: “Unable to create KIO worker. Can not create a socket for launching a KIO worker for protocol ‘tags’.”
  • When attempting to start a Konqueror instance in file manager mode, an error message appears and no files are loaded: “Unable to create KIO worker. Unknown protocol ‘konq’.”
  • When attempting to access a webdav folder in dolphin, it fails with the error: “The file or folder webdav://dlp-test.com/webdav/ does not exist.” The webdav server is known good, as it works perfectly in Firefox over https. (This one doesn’t explicitly say KIO anywhere, but I’ll still chalk it up to an error there, since the shoe fits with general file manager weirdness.)

Thanks to bprompt on the IRC for helping me figure out that there is an issue with KIO! They suggested I install Konqueror, and that threw an error relating to KIO as well. Before I just assumed that the errors were random, or maybe with Dolphin and LibreOffice themselves.

If anyone has any suggestions as to what I could try, I’d be very grateful. Thanks!

Sorry, I wrote this pretty late last night, and forgot to add my distro and DE:

  • Distro: CachyOS 6.18.1-2
  • DE: KDE Plasma 6.5.4

I tried some more things. I’ve reinstalled the KIO package (no change) and installed LibreOffice as a Flatpak, and the error doesn’t appear. I suspect a problem either with my configuration, or with a package. I’m on KIO 6.21.0-1.1. Does anyone have that version and is maybe experiencing similar issues?

I checked with a friend of mine. He’s on CachyOS and KIO 6.21 as well, but his setup is working fine. Does anyone at all have a similar issue?

I figured out how to set the logging level to debug, and pulled some logs of the LibreOffice and webdav error:

LibreOffice:

❯ libreoffice
kf.iconthemes: Icon theme "" not found.
kf.iconthemes: Icon theme "" not found.
kf.windowsystem: Loaded plugin "/usr/lib/qt6/plugins/kf6/kwindowsystem/KF6WindowSystemKWaylandPlugin.so" for platform "wayland"
kf.kio.core.dirlister: +KCoreDirLister
kf.kio.core.dirlister:
kf.coreaddons.kdirwatch: Available methods:  QList("Stat", "INotify", "QFileSystemWatcher") preferred= INotify
kf.coreaddons: Checking for plugins in QList("/usr/lib/libreoffice/program/kf6/kio", "/usr/lib/qt6/plugins/kf6/kio")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_bluetooth.so" supports protocols QList("bluetooth")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_obexftp.so" supports protocols QList("obexftp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/applications.so" supports protocols QList("applications", "programs")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/desktop.so" supports protocols QList("desktop")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_fonts.so" supports protocols QList("fonts")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/baloosearch.so" supports protocols QList("baloosearch")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/tags.so" supports protocols QList("tags")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/timeline.so" supports protocols QList("timeline")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_kateexec.so" supports protocols QList("kateexec")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kdeconnect.so" supports protocols QList("kdeconnect")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/admin.so" supports protocols QList("admin")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/bookmarks.so" supports protocols QList("bookmarks")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_file.so" supports protocols QList("file")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_ftp.so" supports protocols QList("ftp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_ghelp.so" supports protocols QList("ghelp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_help.so" supports protocols QList("help")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_http.so" supports protocols QList("dav", "davs", "http", "https", "webdav", "webdavs")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_remote.so" supports protocols QList("remote")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_trash.so" supports protocols QList("trash")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/activities.so" supports protocols QList("activities")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/afc.so" supports protocols QList("afc")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/archive.so" supports protocols QList("ar", "sevenz", "tar", "zip")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/filter.so" supports protocols QList("bzip", "bzip2", "gzip", "lzma", "xz", "zstd")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/fish.so" supports protocols QList("fish")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/info.so" supports protocols QList("info")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_filenamesearch.so" supports protocols QList("filenamesearch")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/man.so" supports protocols QList("man")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/mtp.so" supports protocols QList("mtp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/nfs.so" supports protocols QList("nfs")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/recentlyused.so" supports protocols QList("recentlyused")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/sftp.so" supports protocols QList("sftp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/smb.so" supports protocols QList("cifs", "smb")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/thumbnail.so" supports protocols QList("thumbnail")
kf.kio.core.dirlister: KCoreDirLister(0x5603a73aa0b0) url= QUrl("tags:/") keep= false reload= true
kf.kio.core.dirlister: lister: KCoreDirLister(0x5603a73aa0b0) silent= true
kf.kio.core.dirlister: KCoreDirLister(0x5603a73aa0b0)
kf.kio.core.dirlister: Iterating over dirs QList()
kf.kio.core.dirlister: Reloading directory: QUrl("tags:/")
kf.kio.core.dirlister: Entry now being listed by QList(KCoreDirLister(0x5603a73aa0b0))
kf.kio.core.dirlister: +KCoreDirLister
kf.kio.core.dirlister: +KCoreDirLister
kf.kio.core.dirlister: ~KCoreDirLister KCoreDirLister(0x5603abed6f10)
kf.kio.core.dirlister: lister: KCoreDirLister(0x5603abed6f10) silent= false
kf.kio.core.dirlister: KCoreDirLister(0x5603abed6f10)
kf.kio.core.dirlister: Iterating over dirs QList()
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'tags'."
kf.kio.core.dirlister: finished listing QUrl("tags:/")
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.kio.core.dirlister: KDirLister(0x5603abed6850) url= QUrl("file:///home/dante_05/Documents") keep= false reload= false
kf.kio.core.dirlister: lister: KDirLister(0x5603abed6850) silent= true
kf.kio.core.dirlister: KDirLister(0x5603abed6850)
kf.kio.core.dirlister: Iterating over dirs QList()
kf.kio.core.dirlister: Listing directory: QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: Entry now being listed by QList(KDirLister(0x5603abed6850))
kf.kio.filewidgets.kfilefiltercombo: KFileFilterCombo::setCurrentFilter: Could not find file filter KFileFilter(MIME patterns: QList() File patterns: QList("*.ods") label: "ODF Spreadsheet (.ods)")
kf.coreaddons: Checking for plugins in QList("/usr/lib/libreoffice/program/kf6/thumbcreator", "/usr/lib/qt6/plugins/kf6/thumbcreator")
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.kio.core.dirlister: finished listing QUrl("file:///home/dante_05/Documents")
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.notifications: No plugin for action "Taskbar"
kf.notifications: Calling notify on "Sound"
kf.notifications: No plugin for action "Taskbar"
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.kio.core.dirlister: KDirLister(0x5603abed6850) url= QUrl("file:///home/dante_05/Documents") keep= false reload= true
kf.kio.core.dirlister: lister: KDirLister(0x5603abed6850) silent= true
kf.kio.core.dirlister: KDirLister(0x5603abed6850)  url= QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: KDirLister(0x5603abed6850)
kf.kio.core.dirlister: Iterating over dirs QList(QUrl("file:///home/dante_05/Documents"))
kf.kio.core.dirlister: KDirLister(0x5603abed6850)  _url:  QUrl("file:///home/dante_05/Documents")
kf.coreaddons.kdirwatch: path= "/home/dante_05/Documents" sub_entry: 0x0
kf.kio.core.dirlister: Reloading directory: QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: Entry now being listed by QList(KDirLister(0x5603abed6850))
kf.kio.core.dirlister: KDirLister(0x5603abed6850) url= QUrl("file:///home/dante_05/Documents") keep= false reload= false
kf.kio.core.dirlister: lister: KDirLister(0x5603abed6850) silent= true
kf.kio.core.dirlister: KDirLister(0x5603abed6850)  url= QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister:  found lister KDirLister(0x5603abed6850) in list - for QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: Killing list job KIO::ListJob(0x5603ac1b05d0) for QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: finished listing QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: KDirLister(0x5603abed6850)
kf.kio.core.dirlister: Iterating over dirs QList(QUrl("file:///home/dante_05/Documents"))
kf.kio.core.dirlister: KDirLister(0x5603abed6850)  _url:  QUrl("file:///home/dante_05/Documents")
kf.coreaddons.kdirwatch: path= "/home/dante_05/Documents" sub_entry: 0x0
kf.kio.core.dirlister: Listing directory: QUrl("file:///home/dante_05/Documents")
kf.kio.core.dirlister: Entry now being listed by QList(KDirLister(0x5603abed6850))
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'file'."
kf.kio.core.dirlister: finished listing QUrl("file:///home/dante_05/Documents")
kf.kio.widgets.kdirmodel: QUrl("file:///home/dante_05/Documents/Datennutzung FW.ods") not found, needs to be listed
kf.kio.widgets.kdirmodel: Remembering to emit expand after listing the root url
kf.kio.widgets.kdirmodel: QUrl("file:///home/dante_05/Documents/Datennutzung FW.ods") not found, needs to be listed
kf.kio.widgets.kdirmodel: Remembering to emit expand after listing the root url

Webdav:

❯ kioclient exec webdav://dlp-test.com/webdav
kf.iconthemes: Icon theme "" not found.
kf.coreaddons: Checking for plugins in QList("/usr/bin/kf6/kio", "/usr/lib/qt6/plugins/kf6/kio")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_bluetooth.so" supports protocols QList("bluetooth")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_obexftp.so" supports protocols QList("obexftp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/applications.so" supports protocols QList("applications", "programs")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/desktop.so" supports protocols QList("desktop")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_fonts.so" supports protocols QList("fonts")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/baloosearch.so" supports protocols QList("baloosearch")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/tags.so" supports protocols QList("tags")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/timeline.so" supports protocols QList("timeline")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_kateexec.so" supports protocols QList("kateexec")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kdeconnect.so" supports protocols QList("kdeconnect")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/admin.so" supports protocols QList("admin")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/bookmarks.so" supports protocols QList("bookmarks")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_file.so" supports protocols QList("file")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_ftp.so" supports protocols QList("ftp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_ghelp.so" supports protocols QList("ghelp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_help.so" supports protocols QList("help")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_http.so" supports protocols QList("dav", "davs", "http", "https", "webdav", "webdavs")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_remote.so" supports protocols QList("remote")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_trash.so" supports protocols QList("trash")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/activities.so" supports protocols QList("activities")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/afc.so" supports protocols QList("afc")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/archive.so" supports protocols QList("ar", "sevenz", "tar", "zip")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/filter.so" supports protocols QList("bzip", "bzip2", "gzip", "lzma", "xz", "zstd")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/fish.so" supports protocols QList("fish")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/info.so" supports protocols QList("info")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/kio_filenamesearch.so" supports protocols QList("filenamesearch")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/man.so" supports protocols QList("man")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/mtp.so" supports protocols QList("mtp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/nfs.so" supports protocols QList("nfs")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/recentlyused.so" supports protocols QList("recentlyused")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/sftp.so" supports protocols QList("sftp")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/smb.so" supports protocols QList("cifs", "smb")
kf.kio.core: "/usr/lib/qt6/plugins/kf6/kio/thumbnail.so" supports protocols QList("thumbnail")
kf.coreaddons.kdirwatch: Available methods:  QList("Stat", "INotify", "QFileSystemWatcher") preferred= INotify
kf.service.sycoca: Opening ksycoca from "/home/dante_05/.cache/ksycoca6_en_ZNqN6i8GiyBrGkVrMjIUn+tFDnM="
kf.service.services: query for mimeType "x-scheme-handler/webdav" returning 0 offers
qt.qpa.services: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: App info not found for 'org.kde.kioclient'")
kf.kio.core.connection: Got a new connection
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Got 0 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Got 62 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Beginning of command 85 of size 4
kf.kio.core.connection: QLocalSocket(0x55594205ff10) Want to read 4 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 85 4
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Got 48 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Beginning of command 48 of size 38
kf.kio.core.connection: QLocalSocket(0x55594205ff10) Want to read 38 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 48 38
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Got 158 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Beginning of command 80 of size 106
kf.kio.core.connection: QLocalSocket(0x55594205ff10) Want to read 106 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 80 106
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Got 42 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x55594205fbb0) Beginning of command 69 of size 32
kf.kio.core.connection: QLocalSocket(0x55594205ff10) Want to read 32 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 69 32
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Got 46 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Beginning of command 10 of size 8
kf.kio.core.connection: QLocalSocket(0x561def4ec350) Want to read 8 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 10 8
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Got 28 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Beginning of command 11 of size 8
kf.kio.core.connection: QLocalSocket(0x561def4ec350) Want to read 8 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 11 8
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Got 10 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Beginning of command 100 of size 0
kf.kio.core.connection: QLocalSocket(0x561def4ec350) Want to read 0 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 100 0
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Got 74 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x561def89e190) Beginning of command 102 of size 64
kf.kio.core.connection: QLocalSocket(0x561def4ec350) Want to read 64 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 102 64
The file or folder webdav://dlp-test.com/webdav does not exist.
kf.notifications: No plugin for action "Taskbar"
kf.notifications: Calling notify on "Sound"
kf.notifications: No plugin for action "Taskbar"
kf.kio.core: killing worker process pid 49029 ( "webdav://dlp-test.com" )

I can’t really make sense of what I’m seeing, sadly. Could someone help me? Thanks!

It was AppArmor. Uninstalling it fixed it. Currently kicking myself. Have a good one.