Zren/plasma-applet-eventcalendar

Bug re:Google Calendar - Access blocked: KDE Event Calendar Widget’s request is invalid

Opened this issue · 47 comments

EDIT:

To those who end up here, @kanocz had submitted a pull request using golang to remedy our troubles! However, he recommends #345 since it doesn't require installing golang first. Check it out!

I've personally tested both methods on my system, and both work. For now, as per @kanocz's recommendation, I'm sticking with @gaganpreet's solution.

rm -rf ~/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar
sudo rm -rf /usr/share/plasma/plasmoids/org.kde.plasma.eventcalendar

git clone https://github.com/gaganpreet/plasma-applet-eventcalendar eventcalendar
cd eventcalendar
git switch google-calendar-fix
git pull
sh ./install

I will close the issue as soon as @Zren approves the pull request and merges.

And of course, thank you again @gaganpreet, @kanocz, and, of course, @Zren for working on this problem.

Hi @Zren,

Thanks for your work on this great widget.

I have a small problem with the Google Calendar integration. Upgraded from Kubuntu 20.04 LTS to 22.04 LTS recently.

Tried to sync my Google Calendar account with Event Calendar like I had set up on my previous version of the Kubuntu distro, and the following error was thrown after the applet launched my web browser.

I have v76 installed.

Access blocked: KDE Event Calendar Widget’s request is invalid

You can’t sign in because KDE Event Calendar Widget sent an invalid request. You can try again later, or contact the developer about this issue. Learn more about this error
If you are a developer of KDE Event Calendar Widget, see error details.
Error 400: invalid_request

Error 400: invalid_request
The out-of-band (OOB) flow has been blocked in order to keep users secure. Follow the Out-of-Band (OOB) flow Migration Guide linked in the developer docs below to migrate your app to an alternative method.
Request details:
redirect_uri=urn:ietf:wg:oauth:2.0:oob
Related developer documentation

I went to my google account to make sure KDE wasn't already a Third-party app with account access, potentially causing an issue causing overlapping authentication parameters. Removed KDE, and tried again. Still threw the same error.

Any related open or closed issues in the repo to help me sus out a solution?

Thanks in advance,

Neil

System Specs:

        a8888b.           Host        -  neil@FractalNorth                       
       d888888b.          Machine     -  ASUS System Product Name Version        
       8P"YP"Y88          Kernel      -  6.8.0-48-generic                        
       8|o||o|88          Distro      -  Ubuntu 24.04.1 LTS (Noble Numbat)       
       8'    .88          DE          -  KDE                                     
       8`._.' Y8.         WM          -  KWin (X11)                              
      d/      `8b.        Packages    -  2463 (dpkg), 14 (cargo), 20 (flatpak)   
     dP        Y8b.       Shell       -  bash                                    
    d8:       ::88b.      Terminal    -  konsole                                 
   d8"         'Y88b      Resolution  -  1920x1080, 1920x1080                    
  :8P           :888      Uptime      -  24m                                     
   8a.         _a88P      CPU         -  AMD Ryzen 9 5950X 16-Core Processor (32)
 ._/"Yaa     .| 88P|      CPU Load    -  1%                                      
 \    YP"    `|     `.    Memory      -  5.0 GB / 32.8 GB                        
 /     \.___.d|    .'     GPU         -  GA102 [GeForce RTX 3090]                
 `--..__)     `._.'                                                                                                   

Same here with v76

same here, I removed default plasma panel and replaced with latte panel; tried to setup event calendar and received same message about OOB
manjaro kde plasma
plasma 5.24
event cal v 76

thanks for creating such as great widget hope it gets updated soon.

To anyone that ends up here, I was able to circumvent this by using an old access token (from a configuration file in a previous installation I had in my disk), previously granted tokens should still work

The configuration is in: ~/.config/plasma-org.kde.plasma.desktop-appletsrc

In there you can search for "Google Calendar" and paste the token information. Then log out and back in
image

To anyone that ends up here, I was able to circumvent this by using an old access token (from a configuration file in a previous installation I had in my disk), previously granted tokens should still work

The configuration is in: ~/.config/plasma-org.kde.plasma.desktop-appletsrc

In there you can search for "Google Calendar" and paste the token information. Then log out and back in image

@ksgremes Thanks for the tip! I'll try this out and see if it's successful!

Same here. It seems that google remove access to the oauth method use by this widget. This is the detailed message tht is shown to me:

Access blocked: Third-party app is using an unsupported OAuth method

Google has safe ways for users to sign in and share their Google Account data with third-party applications. To help protect your account, Google sign-in requests are blocked from apps with less secure authorization methods because they’re more vulnerable to phishing and app impersonation attacks.

https://support.google.com/accounts/answer/12379384

Event Calendar v76
Operating System: Kubuntu 22.04
KDE Plasma Version: 5.24.6
KDE Frameworks Version: 5.92.0
Qt Version: 5.15.3
Kernel Version: 5.15.0-52-generic (64-bit)
Graphics Platform: X11

thanks for creating such as great widget 👍 😄

Thanks for your help. In a previous installation I had in my disk with Manjaro, Event Calendar v.72 work with Google Calendar, but this token does not appear. Event Calendar is not the last version, and each version stores these data in a different way.

To anyone that ends up here, I was able to circumvent this by using an old access token (from a configuration file in a previous installation I had in my disk), previously granted tokens should still work
The configuration is in: ~/.config/plasma-org.kde.plasma.desktop-appletsrc
In there you can search for "Google Calendar" and paste the token information. Then log out and back in image

@ksgremes Thanks for the tip! I'll try this out and see if it's successful!

What is your Event Calendar's version?

To anyone that ends up here, I was able to circumvent this by using an old access token (from a configuration file in a previous installation I had in my disk), previously granted tokens should still work
The configuration is in: ~/.config/plasma-org.kde.plasma.desktop-appletsrc
In there you can search for "Google Calendar" and paste the token information. Then log out and back in image

@ksgremes Thanks for the tip! I'll try this out and see if it's successful!

What is your Event Calendar's version?

Same problem
Operating System: Ubuntu Studio 22.10
KDE Plasma Version: 5.25.5
KDE Frameworks Version: 5.98.0
Qt Version: 5.15.6
Kernel Version: 5.19.0-1009-lowlatency (64-bit)

I cannot gain access also. Google access is denied.
"Access blocked: KDE Event Calendar Widget’s request is invalid"
Event Calendar version 76
Kubuntu 22.04
KDE Plasma Version: 5.24.6
KDE Frameworks Version: 5.92.0
Qt Version: 5.15.3
Kernel Version: 5.15.0-52-generic (64-bit)

Thanks, works

To anyone that ends up here, I was able to circumvent this by using an old access token (from a configuration file in a previous installation I had in my disk), previously granted tokens should still work

The configuration is in: ~/.config/plasma-org.kde.plasma.desktop-appletsrc

In there you can search for "Google Calendar" and paste the token information. Then log out and back in image

What is your Event Calendar's version?

Currently I'm using version 76. I assume that's what was on my disk before as it was a fairly recent install as well (but I cannot confirm it)

What is your Event Calendar's version?

Currently I'm using version 76. I assume that's what was on my disk before as it was a fairly recent install as well (but I cannot confirm it)

Thanks. I have two linux installations on my computer; Manjaro and Neon. In Manjaro runs Google Calendar in Event Calendar (EC) v.72, in Neon I had EC v.76, I removed the plasmoid in Neon and when I put it back I could not authenticate in Google... but in both distributions, my ~/.config/plasma-org.kde.plasma.desktop-appletsrc file does not reference any token.

https://developers.google.com/identity/protocols/oauth2/resources/oob-migration

It looks like EventCalendar's method of getting auth has been deprecated.

As a quick fix till an appropriate upgrade from Zen, simply store suitable google credentials (client and token) in source file main.xml, and make a fresh installation. Happy installing.

As a quick fix till an appropriate upgrade from Zen, simply store suitable google credentials (client and token) in source file main.xml, and make a fresh installation. Happy installing.

What I would like to know should be something simple, and is where I locate the access token in my Manjaro, which has installed the Event Calendar v.72, to use it in my Neon Event Calendar v.76.

My access token is gone because of a plasma bug. Fix auth pls.

I have the same problem. Erro 400: invalid_request

Same issue here

Event Calendar version 76
Kubuntu: 22.04
Plasma Version: 5.24.6
Kernel Version: 5.15.0-52-generic

Same issue here.

Event Calendar version 76
Arch Linux
Plasma Version: 5.26.4
Kernel Version: 6.0.11-zen1-1-zen

Same issue here

Event calendar version 76
Operating System: Manjaro Linux
KDE Plasma Version: 5.26.4
KDE Frameworks Version: 5.100.0
Qt Version: 5.15.7
Kernel Version: 5.15.81-1-MANJARO (64-bit)
Graphics Platform: X11
Processors: 8 × Intel® Core™ i7-4710HQ CPU @ 2.50GHz
Memory: 31.3 GiB of RAM
Graphics Processor: NVIDIA GeForce GTX 980M/PCIe/SSE2
Manufacturer: ASUSTeK COMPUTER INC.
Product Name: G751JY
System Version: 1.0

Please fix!

Repeatedly asking for a fix is not going to help anything. All it does is clutter the issue and annoy the developer.

Who has "Repeatedly" asked for a fix? They all look like separate people to me.

Collectively, repeatedly asking. It doesn't matter who

Same here. Ubuntu 22.04. Event calendar 76.

To those who end up here, @kanocz has submitted a pull request using golang to remedy our troubles (2 months ago)! Thank you, Anton!

Check it out!

Thank you very much, I somehow missed that pull request and issue #339.
We don't have to wait for this pull request to be accepted: simply first install golang and then go to https://github.com/kanocz/plasma-applet-eventcalendar, download the code, and install the new, working version of this widget.

I installed that version of the widget, but I'm still getting the same error with the Google Calendar request. :(

You have to do a clean install directly from the URL linked above, which to be clear is a different repository than the one you're currently in. It contains the bugfix which hasn't been pulled to this repo yet.

rm -r ./eventcalendar
git clone https://github.com/kanocz/plasma-applet-eventcalendar.git eventcalendar
cd eventcalendar
sh ./install

I know, I uninstalled the version I had and installed the new one. I can see it's the correct new one on the about page of the widget, but the issue is still present.

@shootie22 Maybe the previous version couldn't be uninstalled properly. To rule out this possibility, it might be a good idea to uninstall Event Calendar again, then look for "plugin=org.kde.plasma.eventcalendar" in "~/.config/plasma-org.kde.plasma.desktop-appletsrc" which might appear like this:

[Containments][3][Applets][143]
immutability=1
plugin=org.kde.plasma.eventcalendar

Then (after first saving a backup of the file just in case) remove each and every section starting with the first line above (the numbers might be different), and ending with an empty line followed by another like this but with different numbers.

Thanks for your quick replies guys. It works! I was probably doing something wrong or it wasn't uninstalling completely. Hurray!

@kanocz Could you make this changes also for v68 branch? I tried to add them manually to that branch but then I got error 401 invalid client or client not found. I need v68 branch because of this:

#153

https://github.com/kanocz/plasma-applet-eventcalendar

v68 looks like very-very old version for very-very old version of KDE... and it's too many changes made to easily backport this

It's a shame, thanks anyway.

EDIT:

rm -r ./eventcalendar
git clone https://github.com/kanocz/plasma-applet-eventcalendar.git eventcalendar
cd eventcalendar
sh ./install

Operating System: Kubuntu 22.04 KDE Plasma Version: 5.24.6 KDE Frameworks Version: 5.92.0 Qt Version: 5.15.3 Kernel Version: 5.15.0-52-generic (64-bit) Graphics Platform: X11 Processors: 16 × AMD Ryzen 9 5900HS with Radeon Graphics Memory: 22,9 GiB of RAM Graphics Processor 1: NVIDIA RTX 3080 Laptop Graphics Processor 2: AMD RENOIR Default Web Browser: Brave Version 1.44.112 Chromium: 106.0.5249.119 (Official Build) (64-bit)

This build does not work. Inside the file https://github.com/kanocz/plasma-applet-eventcalendar/blob/master/install at row 8, there is the link to file package/contents/scripts/local-http, but in the folder https://github.com/kanocz/plasma-applet-eventcalendar/tree/master/package/contents/scripts there is no the file local-http. So a compiler gives the error "./install: 8: go: not found".

EDIT:

rm -r ./eventcalendar
git clone https://github.com/kanocz/plasma-applet-eventcalendar.git eventcalendar
cd eventcalendar
sh ./install

Operating System: Kubuntu 22.04 KDE Plasma Version: 5.24.6 KDE Frameworks Version: 5.92.0 Qt Version: 5.15.3 Kernel Version: 5.15.0-52-generic (64-bit) Graphics Platform: X11 Processors: 16 × AMD Ryzen 9 5900HS with Radeon Graphics Memory: 22,9 GiB of RAM Graphics Processor 1: NVIDIA RTX 3080 Laptop Graphics Processor 2: AMD RENOIR Default Web Browser: Brave Version 1.44.112 Chromium: 106.0.5249.119 (Official Build) (64-bit)

This build does not work. Inside the file https://github.com/kanocz/plasma-applet-eventcalendar/blob/master/install at row 8, there is the link to file package/contents/scripts/local-http, but in the folder https://github.com/kanocz/plasma-applet-eventcalendar/tree/master/package/contents/scripts there is no the file local-http. So a compiler gives the error "./install: 8: go: not found".

for my solution you need to have golang installed... but you can find another solution from other person which is python-based so you don't need to install anything extra

EDIT:

rm -r ./eventcalendar
git clone https://github.com/kanocz/plasma-applet-eventcalendar.git eventcalendar
cd eventcalendar
sh ./install

Operating System: Kubuntu 22.04 KDE Plasma Version: 5.24.6 KDE Frameworks Version: 5.92.0 Qt Version: 5.15.3 Kernel Version: 5.15.0-52-generic (64-bit) Graphics Platform: X11 Processors: 16 × AMD Ryzen 9 5900HS with Radeon Graphics Memory: 22,9 GiB of RAM Graphics Processor 1: NVIDIA RTX 3080 Laptop Graphics Processor 2: AMD RENOIR Default Web Browser: Brave Version 1.44.112 Chromium: 106.0.5249.119 (Official Build) (64-bit)

This build does not work. Inside the file https://github.com/kanocz/plasma-applet-eventcalendar/blob/master/install at row 8, there is the link to file package/contents/scripts/local-http, but in the folder https://github.com/kanocz/plasma-applet-eventcalendar/tree/master/package/contents/scripts there is no the file local-http. So a compiler gives the error "./install: 8: go: not found".

@kanocz is correct; you need to install golang first.

EDIT:
@kanocz is correct; you need to install golang first.

Thank you. Everything works with GoLang, except one issue. If I attempt to select 'Tasks', the desktop environment becomes unresponsive. After a reboot, the desktop environment still remains unresponsive. Resetting the desktop environment is proving to be quite a challenge.

TaskError
TaskError2

EDIT:
@kanocz is correct; you need to install golang first.

Thank you. Everything works with GoLang, except one issue. If I attempt to select 'Tasks', the desktop environment becomes unresponsive. After a reboot, the desktop environment still remains unresponsive. Resetting the desktop environment is proving to be quite a challenge.

TaskError TaskError2

Oof, that's a tough problem to diagnose. System Monitor might be able to help which specific process is causing the issue, while you configure Event Calendar.

Also, I'm assuming you successfully removed the previous version of Event Calendar before cloning, building, and installing @kanocz 's fork?

rm -r ./eventcalendar

then...

git clone https://github.com/kanocz/plasma-applet-eventcalendar.git eventcalendar
cd eventcalendar
sh ./install

Thank you all for the work done to get event calendar working normally again. Is there any problem to update event calendar if a new version is released?

Is there any problem to update event calendar if a new version is released?

That would be up to @Zren to approve @kanocz's pull request, merge to the main branch, and create a new release. So far, @Zren hasn't commented on this issue.

@cocoepiblas EDIT: @Zren needs to test #345 and will merge when he's ready. @kanocz recommends this solution as opposed to his PR, since it doesn't require installing golang. I will update as details unfold.

I think #345 is better as it uses python script, so nothing additional need to be installed (python is installed by default opposite to golang)

Thanks guys! Installing @gaganpreet 's version as per @NeilPandya 's instructions, works well for me.
I am on Kubuntu 23.04

NeilPandya thank you very much for giving us this tip pinned at the top of the discussion, I'm still new to linux, I've only been using the various flavors for 1 year and at the moment I'm with Kde Neon. I love the Event Calendar widget, but unfortunately I was having trouble connecting with my Google account. The message was always the same: ACCESS DENIED. After I followed your command instructions in the linux terminal, I finally got the connection. I'm normally using the Event Calendar here. Thank you very much for sharing your knowledge. Success for all of us !!! Hugs from Brazil !!! Eduardo Mendes

NeilPandya thank you very much for giving us this tip pinned at the top of the discussion, I'm still new to linux, I've only been using the various flavors for 1 year and at the moment I'm with Kde Neon. I love the Event Calendar widget, but unfortunately I was having trouble connecting with my Google account. The message was always the same: ACCESS DENIED. After I followed your command instructions in the linux terminal, I finally got the connection. I'm normally using the Event Calendar here. Thank you very much for sharing your knowledge. Success for all of us !!! Hugs from Brazil !!! Eduardo Mendes

@meproag Saudações e abraços de Chicago, Eduardo! Bem-vindo ao GNU/Linux e boa computação!