$schema: http://json-schema.org/draft/2020-12/schema type: object properties: proxy: description: Proxy for curl. No proxy by default type: string base_dir: description: Base directory for content type: string default: . cache_dir: description: Directory in which files are kept while downloading type: string default: /cache state_dir: description: Directory where downloaded urls are recorded to avoid re-downloading type: string default: /state podcasts_dir: description: Directory of the actual downloaded episodes type: string default: /podcasts entries: description: Array of feeds to download type: array items: type: object properties: name: type: string description: Name of the feed. Used as filenames. Avoid spaces or special characters url: type: string description: Rss feed url of the podcast limit: type: integer description: Number of entries to download default: 1 filename_type: type: string description: | Decides how the files are named default -> curl decides the filename (see curl's -O flag) title -> Feed entries' title sanitized to remove special characters and spaces replaced with - date -> feedname-. e.g. linuxunplugged-2023-02-14.mp3 default: default enum: - default - title - date filter: type: string default: "true" description: yq filter expression required: - name - url required: - entries