# SPDX-FileCopyrightText: 2024 Maurice Debray # # SPDX-License-Identifier: EUPL-1.2 { 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 "${providers.${upstream}}${identifier}"; in mapDeepAttrs toLinkal calendars