Describe the bug
The printer dialog in the Plasma 5 taskbar doesn't work and outputs this error message:
Error loading QML file: file:///nix/store/anghgivrxfzkkag6s8rkxb6dr25p29i1-print-manager-20.08.1/share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/printmanager.qml:64:34: Type PopupDialog unavailable
file:///nix/store/anghgivrxfzkkag6s8rkxb6dr25p29i1-print-manager-20.08.1/share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/PopupDialog.qml:81:23: Type PrinterItem unavailable
file:///nix/store/anghgivrxfzkkag6s8rkxb6dr25p29i1-print-manager-20.08.1/share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/PrinterItem.qml:28:1: Type PlasmaExtras.ExpandableListItem unavailable
file:///nix/store/sgi7dk5siyfarhq30piyx6f7m1wpk0kc-plasma-framework-5.73.0-bin/lib/qt-5.12.7/qml/org/kde/plasma/extras/ExpandableListItem.qml:20:1: module "QtQuick" version 2.14 is not installed
To Reproduce
Steps to reproduce the behavior:
Screenshots
Additional context
This issue also happens on a newly created user with an empty home directory.
Notify maintainers
@ttuegel @andir @edolstra @flokli
Metadata
"x86_64-linux"
Linux 5.8.7-zen1, NixOS, 20.09alpha290.3b8ddb2f1ee (Nightingale)
yes
yes
nix-env (Nix) 2.3.7
"home-manager, nixos-20.09alpha290.3b8ddb2f1ee, nixos-unstable-21.03pre244365.06b27898a45"
/nix/var/nix/profiles/per-user/root/channels/nixos
Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:plasma5
I ran git bisect on nixpkgs, the culprit is ce4eb0b79b3b8e830d40345fb6457fac6ca9a9ec (plasma5: pin to qt512) from https://github.com/NixOS/nixpkgs/pull/97524.
Is this still an issue?
cc @ttuegel
I would block on this since printing is a minimal release requirement in DE's.
I'm investigating.
I wouldn't block on this because there is a workaround: the user can point their browser at localhost:631
and use the CUPS web interface.
@ttuegel I drafted some requirements and printing was one of them https://github.com/NixOS/nixpkgs/issues/99648#issuecomment-703933134. It seems it has been reported in the Q.A confirming it doesn't work https://github.com/NixOS/nixpkgs/issues/99648#issuecomment-706641386. I do get there is a workaround, but I think printing is just one of those things that people get super annoyed when broken (lol, and printing in general).
I think the issue is just that qtquick is missing https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/kde/print-manager.nix. Easy enough to block on if that's true.
is this still an issue? there's been ~700+ revisions since this was posted with 20.09alpha290
t seems it has been reported in the Q.A confirming it doesn't work #99648 (comment).
@jonringer see my quoted comment above
I can't get it working with #100236, or by adding qtdeclarative
and qtquickcontrols2
directly to the runtime environment. So, I can't say what the problem really is, or what it will take to fix it. :frowning:
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
Maybe we do not have the qml-module-qtquick-controls2 included?
the qtquickcontrols2
is added to almost everything.
I spent the night looking into this, it seems like each kdeApplication has the needed qt framework. HOWEVER, the issue seems to only appear in the system tray's widgets. For some reason, these widgets do not inherit the "QML2_PLUGIN_PATH" from the user or from the wrapped programs.
I don't use plasma, and hacking on it is very much outside my comfort zone.
Seeing as this is the last "blocking" issue with no clear resolution, I'm not sure how much longer I want to delay the release for this issue.
EDIT:
We are already 2 weeks "past" the desired release date
<Removed>
something about the qml files not being installed
EDIT:
actually, this isn't true at all, it just get's put in the bin input. And it gets correctly picked up when used as a buildInput
After burning a few hours, I think I'm at the point that I will just make a release note that some plasmoids/widgets don't inherit qml paths correctly, and may not work as intendend.
cc @worldofpeace
Just to define what works:
EDIT:
I tried the calculator, resource monitors, and around 10 other widgets, and they all work fine. Just the print widget seems to be having issues.
actually, was able to get this working. qtquickcontrols
was getting prefixed first in QML2_IMPORT_PATH
, and so it was always picking up the previous version
qtquickcontrols has been deprecated since, 5.12, and qtquickcontrols has been available since 5.7. I'm going to see if there's any regressions with just setting qtquickcontrols = null;
hmm, in my attempt to make things more consistent. I broke some things. I'll have to try another plan of attack
I'm not actually sure how my nullifying qtquickcontrols was able to work in the first place. But I think #101078 is a reasonable change
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/what-should-stable-nixos-prioritize/9646/1
Most helpful comment
actually, was able to get this working.
qtquickcontrols
was getting prefixed first inQML2_IMPORT_PATH
, and so it was always picking up the previous version