From ffdb8a98b942433755e7704181c8d21e23469d9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20Reuh=20Fildadut?= Date: Thu, 9 Oct 2025 16:59:22 +0200 Subject: [PATCH] docs: add environment variables names to defautl config --- config.default.toml | 11 +++++++++++ main.py | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/config.default.toml b/config.default.toml index 8d2e76f..2292b42 100644 --- a/config.default.toml +++ b/config.default.toml @@ -1,22 +1,29 @@ [server] # (Required) URL of your server's Google Reader API endpoint +# Can be set through the environment variable SERVER_URL. url = "https://rss.example.com/" # (Required) Username/email-adress used to connect to the server +# Can be set through the environment variable SERVER_USER. user = "username" # (Required) Password/API password used to connect to the server +# Can be set through the environment variable SERVER_PASSWORD. password = "password" # How many items to retrieve at most from the server in a single request. Lower values will make synchronization slower, higher values might make the server complain. # Most servers are supposedly okay with up to 1000, but tt-rss complained so I dropped it to 500 here. +# Can be set through the environment variable SERVER_ITEMS_PER_REQUEST. items_per_request = 500 [directories] # Directory path where the internal feather data will be stored. +# Can be set through the environment variable DIRECTORIES_DATA. data = "data" # Directory path where the user-facing files will be stored. +# Can be set through the environment variable DIRECTORIES_READER. reader = "reader" [html] # HTML template used for generating item HTML files. All templates are Jinja2 templates. +# Can be set through the environment variable HTML_TEMPLATE. template = ''' @@ -41,15 +48,19 @@ template = ''' ''' # Filename template for generated HTML files. +# Can be set through the environment variable HTML_FILENAME_TEMPLATE. filename_template = "{{ published_formatted }}\t[{{ origin_title }}]\t{{ title }}.html" # Maximum allowed filename length (in bytes assuming UTF-8 encoding) before truncating. Depending on your filesystem filename's limits it may be possible to increase the value, ask Wikipedia for details. +# Can be set through the environment variable HTML_MAX_FILENAME_LENGTH. max_filename_length = 250 # Table mapping characters to what they will be replaced with in filenames. Useful to remove/replace characters that are not allowed in filename by your filesystem. The default should be fine for most Unix filesystems. filename_replacement = { "/" = "⧸", "\u0000" = "" } [datetime] # Which timezone to use when writing date and time. +# Can be set through the environment variable DATETIME_TIMEZONE. timezone = "Etc/UTC" # How date and time are formatted. See https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior for the supported codes. # This will be used in filenames so it's a good idea to use something sortable... +# Can be set through the environment variable DATETIME_FORMAT. format = "%Y-%m-%d %H:%M" diff --git a/main.py b/main.py index 7b9e24e..f408667 100644 --- a/main.py +++ b/main.py @@ -44,10 +44,10 @@ class Config: self.server_user: str = str(get_config("server", "user", False)) self.server_password: str = str(get_config("server", "password", False)) self.items_per_query: int = int(get_config("server", "items_per_request")) - self.timezone: ZoneInfo = ZoneInfo(get_config("datetime", "timezone")) + self.timezone: ZoneInfo = ZoneInfo(str(get_config("datetime", "timezone"))) self.time_format: str = str(get_config("datetime", "format")) - self.item_template: Template = Template(get_config("html", "template"), autoescape=True) - self.item_filename_template: Template = Template(get_config("html", "filename_template"), autoescape=False) + self.item_template: Template = Template(str(get_config("html", "template")), autoescape=True) + self.item_filename_template: Template = Template(str(get_config("html", "filename_template")), autoescape=False) self.max_filename_length: int = int(get_config("html", "max_filename_length")) self.filename_translation = str.maketrans(get_config("html", "filename_replacement"))