Rethinking the KOrganizer reminder daemon

Allen Winter winter at kde.org
Sun Feb 13 16:44:13 GMT 2022


On Saturday, February 12, 2022 8:33:24 AM EST Volker Krause wrote:
> 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?
> 
I'm happy to have a replacement for korgac.
+1 from me.







More information about the kde-pim mailing list