Rethinking the KOrganizer reminder daemon

Volker Krause vkrause at kde.org
Sat Feb 12 13:33:24 GMT 2022


On Samstag, 20. November 2021 11:00:06 CET Volker Krause wrote:
> On Samstag, 7. August 2021 12:47:24 CET Volker Krause wrote:
> > Hi,
> > 
> > how we handle event reminders came up in a recent Plasma Mobile
> > calendaring
> > discussion, I've tried to put that into a concrete proposal here.
> > 
> > For KOrganizer event reminders are handled by korgac [1], a 20+ year old
> > piece of code. While that works reasonably well from a technical POV,
> > there's a number of issues worth addressing IMHO:
> > 
> > (A) Security/privacy: korgac still has support for iCal alarm types
> > "email"
> > and "procedure", something that shouldn't exist in a world of shared
> > calendars and iCal invites.
> > 
> > (B) UX: the main UI is a big dialog popping up in the middle of your
> > screen. We nowadays have a much more powerful desktop-wide notification
> > system supporting grouping, interaction, priorities and various
> > inhibition mechanisms, which would be better suited for this.
> > 
> > (C) Duplication of the reminder logic with other calendaring apps, see
> > e.g.
> > Calindori's implementation [2].
> > 
> > As a way forward, we could:
> > 
> > (1) Drop support for iCal alarm types due to their danger, and handle all
> > alarms as regular notifications. For the rare cases where people actually
> > rely on that functionality KAlarm provides that for local (safe) sources.
> > 
> > (2) Use KNotification as the main and only UI for reminders. This means in
> > order to see event details beyond the title you would need to click on the
> > notification to open the calendar app. This also means the suspend option
> > would only be able to have an automatic default time (this is the only
> > functionality change I'm not entirely sure about, but it matches what is
> > usually offered on phones for example). Dismissing/suspending individual
> > or
> > all reminders remains possible thanks to notification grouping.
> > 
> > (3) Base this on Nico's KCalCore plugin work once that becomes available
> > for Akonadi as well.
> > 
> > (4) Standardize the D-Bus interface towards the calendaring app between
> > KOrganizer, Calindori and Kalendar.
> > 
> > (5) Find a way to define a "default calendaring app" (like it's done for
> > web browsers), so that the reminder daemon doesn't need to hardcode which
> > calendaring app to launch. With (3) - (5) we should have all the pieces
> > to move towards a single unified reminder daemon that works with all our
> > calendaring apps, and works well both on desktop and mobile.
> > 
> > (4) and (5) could also be beneficial for the Plasma calendar integration.
> 
> See https://invent.kde.org/pim/kalendar/-/merge_requests/156
> 
> Summary: There's now an implementation combining korgac's reminder logic and
> Calendori's notification-based UI. Ideally this would end up as the shared
> reminder daemon in one of the common calendaring infrastructure repos and
> replace korgac. Details on what that means for interfacing with calendaring
> apps are discussed in the MR.

This is now reaching the point where it's a viable replacement for korgac, and 
I'd suggest we switch to it for 22.04.

It can be installed side-by-side with korgac for testing, and it's opening 
events in Korganizer (standalone or in Kontact) or Kalendar depending on which 
of those you last used.

Practically this would mean we move the reminder daemon from Kalendar into one 
of the common calendaring modules (akonadi-calendar is the lowest possible 
one) and disable/drop korgac. Ideally we'd complete that by end of this month, 
well in advance of the 22.04 freezes.

Opinions/Feedback/Objections?

Regards,
Volker
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20220212/f6a4bdab/attachment.sig>


More information about the kde-pim mailing list