{ lib, pkgs }: source: let #import metis stuff metisCalendarData = builtins.fromJSON (builtins.readFile (source + /data/calendars.json)); calendars = metisCalendarData.sources; inherit (import source { inherit pkgs; }) providers; # helper function to map 2-level deep attribute-sets mapDeepAttrs = mapFct: lib.concatMapAttrs (name: value: lib.mapAttrs' (name': value': mapFct name name' value' ) value ); toLinkal = upstream: identifier: lib.nameValuePair "https://${providers.${upstream}}/remote.php/dav/public-calendars/${identifier}" ; in mapDeepAttrs toLinkal calendars