Announcement

Collapse
No announcement yet.

Black screen at log in caused by Event Calendar widget and/or lack of uprades.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [SOLVED] Black screen at log in caused by Event Calendar widget and/or lack of uprades.

    I solved a problem I've had for quite a while yesterday so I'd thought I'd share it for posterity. I'm using KDEneon 20.04 that is an upgraded 18.04 installation - something I haven't tried in a decade for various reasons.

    Several months ago, after a fairly large update, about 200ish packages, my system would boot and I'd log into a black screen with a mouse cursor but no functionality. This is not an uncommon thing based on the postings I've seen here and elsewhere. I didn't want to deal with it at the time and so I just rolled back to the previous day's snapshot and was good to go. Believing it was possibly a bad or missing package causing the issue, I waited a week or so and then tried updating again. Same result. Rolling back again worked and I've been super busy with work and remodeling so I left it alone and just didn't upgrade any packages.

    Fast forward to yesterday. I was 600+ package updates behind and a few things were clearly in trouble, like Dolphin and Krunner would randomly close. So, trying to ease into the upgrade and figure out the problem I did some manual package updates, about 30 or so - things not directly related to Plasma like libre-office, Strawberry, and a few others, and rebooted. This time I didn't even get a login screen. SDDM had stopped presenting a login dialog and force restarting it didn't help. I could log into the terminal at least so I had a way in. I figured I had touched something that had caused this so I rolled back again, and again, and one more time. I was now four days into the past (I do a daily snapshot and keep a weeks worth at any given time) and the behavior hadn't changed. Something was really wrong now, and it was time to roll up my sleeves and start digging.

    First, I did a full upgrade to all 600+ packages and rebooted twice to re-run upgrading to catch all the overlapping upgrades - sometimes upgrading a package triggers another to upgrade. Three full upgrades 600+, then 12, then finally 2 packages, and I was booting again to SDDM login screen. Still got the black screen and mouse when I logged in but now conky came up and krunner worked and I was able to launch programs from krunner - just no desktop. This meant Plasmashell was the thing not launching. I did some 'net searching to see if there was a helpful hint out there, but that's not often productive. Pouring through log file didn't help either. So...

    Step one: Suspect your user settings.
    I've given this advice many times; I went to the terminal and created a new user. I added it to all the same groups as my so I could act fully on the system, etc. Danged if it didn't log in immediately to the desktop! So now I knew for sure it was in my user settings somewhere. I debated just starting over with a clean user account, but the new user log in reminded me of just how much customization I would have to redo, like the custom monitor setup, ssh secure keys, and more. I wasn't ready to throw in the towel yet.

    I re-logged into my user with the black but functional desktop. A web search had suggested launching plasmashell in konsole and see if any errors would be exposed, and there were!
    Cyclic dependency detected between "file:///usr/lib64/qt5/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml"
    repeated twice. This message wasn't really specifically helpful but web searching this error suggested it was related to a plasma widget. So...

    Step two: Suspect your plasma widgets.
    I've run into several buggy widgets over the years and this was no exception. I simply moved the file that defines the plasma desktop and all the widgets to my desktop:
    mv .config/plasma-org.kde.plasma.desktop-appletsrc .
    and logged into plasma 5 again. Voilà, I had a new clean plasma desktop again! Obviously a vanilla desktop, but less than five minutes later I was done re-configuring and reinstalling my widgets.

    Hindsight is often 20/20.
    I only run two widgets on my desktop: "Folder view" and "Event calendar." Event calendar had stopped syncing with google a month or more ago and I had let it go for quite awhile. When I went to place it on my desktop again, it wasn't available in my list of widgets so I had to re-install it. When I did, there was a notice in the widget description that the previous version would no longer work with calendar syncing and the newer version was needed - duh.

    Since I let this go so long, it's not really possible to blame the problem on a single thing. It could have been my slow package upgrading, or the fact that this was originally an 18.04 install and needed some clean-up, or just a bad widget.

    Interesting side note: The new version of the Event Calendar widget isn't syncing with google calendar either - and the weather ribbon isn't either. Both display "HTTP Error 0:" and I have no idea what that means. The older one I had removed showed no errors and the weather ribbon worked fine. Time to make a bug post...

    Please Read Me

    #2
    The Event Calendar broke Plasma some time back, I think it was mentioned here somewhere.
    Well, not directly
    https://www.kubuntuforums.net/showth...l=1#post442187

    The Event Calendar needed to be upgraded after the move to Qt 5.15.1
    https://store.kde.org/p/998901
    Last edited by claydoh; Dec 22, 2020, 08:01 AM.

    Comment


      #3
      The newer versions v71 and v72 (updated literally hours ago and on the KDE Store) install but they don't have connectivity to the internet on my system. The calendar sync and weather ribbon both show "HTTP Error 0:"

      Please Read Me

      Comment


        #4
        lol I am still on .70, weather works. google calendar gives 401 error, but that is expected
        I am wondering how I have the older .70 to be honest. Probably though I had upgraded on my PC, but only did on my laptop. I don't use the widget much at my desk.

        Maybe related?
        https://github.com/Zren/plasma-apple...dar/issues/203


        .72 is working for me, for both weather and my calendar, after re-authorizing with google
        Last edited by claydoh; Dec 22, 2020, 08:43 AM.

        Comment


          #5
          Wow, I turned on debug mode and got this:
          Code:
          [FONT=monospace][COLOR=#000000]yclic dependency detected between "file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml" and "file:///usr/lib/x86_64-l[/COLOR]
          inux-gnu/qt5/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml"
          QQmlEngine::setContextForObject(): Object already has a QQmlContext
          file:///usr/share/kwin/aurorae/MenuButton.qml:11: TypeError: Cannot read property 'closeOnDoubleClickOnMenu' of null
          file:///usr/share/kwin/aurorae/MenuButton.qml:11: TypeError: Cannot read property 'closeOnDoubleClickOnMenu' of null
          QPainter::begin: Paint device returned engine == 0, type: 3
          file:///home/stuart/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar/contents/ui/calendars/PlasmaCalendarManager.qml:15: Error: Qt.createQmlObject(): failed
           to create object:  
              file:///home/stuart/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar/contents/ui/calendars/inline:1:1: module "org.kde.plasma.PimCalendars" is not insta
          lled
          Error: cannot change the containment to AppletsLayout
          Error: cannot change the containment to AppletsLayout
          file:///usr/share/plasma/shells/org.kde.plasma.desktop/contents/views/Panel.qml:73:5: QML Binding: Not restoring previous value because restoreMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/shells/org.kde.plasma.desktop/contents/views/Panel.qml:89:5: QML Binding: Not restoring previous value because restoreMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/ui/DeviceItem.qml:32:5: Unable to assign [undefined] to bool
          file:///usr/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/ui/DeviceItem.qml:32:5: Unable to assign [undefined] to bool
          file:///usr/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/ui/FullRepresentation.qml:105:13: Unable to assign [undefined] to QQuickAction*
          file:///usr/share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/PrinterItem.qml:35:5: Unable to assign [undefined] to bool
          file:///usr/share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/PopupDialog.qml:91:17: Unable to assign [undefined] to QString
          file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/CompactRepresentation.qml:0: ReferenceError: jobProgressItem is not defined
          file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/plasma/components.3/ComboBox.qml:74:9: Unable to assign [undefined] to QQmlComponent*
          file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/plasma/extras/PlasmoidHeading.qml:56:5: Unable to assign [undefined] to int
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          qml: SystemTray ItemLoader: Invalid state, cannot determine source!
          qml: SystemTray ItemLoader: Invalid state, cannot determine source!
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/PlasmoidItem.qml:99:5: QML Binding: Not restoring previous value because restor
          eMode has not been set.
          This behavior is deprecated.
          You have to import QtQml 2.15 after any QtQuick imports and set
          the restoreMode of the binding to fix this warning.
          In Qt < 6.0 the default is Binding.RestoreBinding.
          In Qt >= 6.0 the default is Binding.RestoreBindingOrValue.
          
          file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/plasma/extras/PlasmoidHeading.qml:56:5: Unable to assign [undefined] to int
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Both point size and pixel size set. Using pixel size.
          Error: cannot change the containment to AppletsLayout
          kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/desktop.so' from launcher.
          kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/desktop.so'
          kdeconnect.interfaces: QDBusError("org.freedesktop.DBus.Error.UnknownInterface", "No such interface 'org.kde.kdeconnect.device.notifications' at object path '/modules
          /kdeconnect/devices/42cb5f00b8f66264'")
          kdeconnect.interfaces: QDBusError("org.freedesktop.DBus.Error.UnknownInterface", "No such interface 'org.kde.kdeconnect.device.notifications' at object path '/modules
          /kdeconnect/devices/42cb5f00b8f66264'")
          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'
            % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                           Dload  Upload   Total   Spent    Left  Speed
          100    15  100    15    0     0    102      0 --:--:-- --:--:-- --:--:--   102
          kdeinit5: PID 294715 terminated.
            % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                           Dload  Upload   Total   Spent    Left  Speed
          100    15  100    15    0     0    113      0 --:--:-- --:--:-- --:--:--   113
          XMLHttpRequest: Using GET on a local file is dangerous and will be disabled by default in a future Qt version.Set QML_XHR_ALLOW_FILE_READ to 1 if you wish to continue
           using this feature.
          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'
          qml: [logger:debug] updateCalendarList
          qml: [logger:debug] accessToken ya29.a0AfH6SMAg_CLDpvEZ7uGS4eA7VbS78ulfx2Gq_YyozUbLLgk-U3G8x1fkwfDSwHLm4iPoWDqbcxGANBpu3uwZpcStp6dULrFKu_5SAOG75Vg58UvB_uKRp8BdDEEv11r
          zkCtuXge4PQS1IVN6Exa7zu8CA0NIToO9P5X5Fpq_tXo
          kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/http.so' from launcher.
          kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/http.so'
            % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                           Dload  Upload   Total   Spent    Left  Speed
            0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0qml: HTTP 0 Headers:  
          
          qml: [logger:debug] fetchGCalCalendars.response.data  
          100    15  100    15    0     0    114      0 --:--:-- --:--:-- --:--:--   114
          qml: [logger:debug] updateTasklistList
          qml: [logger:debug] accessToken ya29.a0AfH6SMAg_CLDpvEZ7uGS4eA7VbS78ulfx2Gq_YyozUbLLgk-U3G8x1fkwfDSwHLm4iPoWDqbcxGANBpu3uwZpcStp6dULrFKu_5SAOG75Vg58UvB_uKRp8BdDEEv11r
          zkCtuXge4PQS1IVN6Exa7zu8CA0NIToO9P5X5Fpq_tXo
          qml: HTTP 0 Headers:  
          
          qml: fetchGoogleTasklistList.response HTTP Error 0:   0
          qml: [logger:debug] fetchGoogleTasklistList.response.data 
          
          [/FONT]

          Please Read Me

          Comment

          Working...
          X