From 1d23df37d86cc5cb6d7d9efaaf4360ecc9a9796f Mon Sep 17 00:00:00 2001 From: Nutomic Date: Mon, 13 Nov 2023 15:19:09 +0100 Subject: [PATCH] Rename cache_remote_images setting to cache_external_link_previews (ref #4035) (#4148) --- config/defaults.hjson | 11 +++++++++-- crates/api_common/src/request.rs | 2 +- crates/utils/src/settings/structs.rs | 11 +++++++++-- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/config/defaults.hjson b/config/defaults.hjson index 46e4e0a41..04e34f978 100644 --- a/config/defaults.hjson +++ b/config/defaults.hjson @@ -43,8 +43,15 @@ url: "http://localhost:8080/" # Set a custom pictrs API key. ( Required for deleting images ) api_key: "string" - # Cache remote images - cache_remote_images: true + # By default the thumbnails for external links are stored in pict-rs. This ensures that they + # can be reliably retrieved and can be resized using pict-rs APIs. However it also increases + # storage usage. In case this is disabled, the Opengraph image is directly returned as + # thumbnail. + # + # In some countries it is forbidden to copy preview images from newspaper articles and only + # hotlinking is allowed. If that is the case for your instance, make sure that this setting is + # disabled. + cache_external_link_previews: true } # Email sending configuration. All options except login/password are mandatory email: { diff --git a/crates/api_common/src/request.rs b/crates/api_common/src/request.rs index 11ef4002e..e4de2e751 100644 --- a/crates/api_common/src/request.rs +++ b/crates/api_common/src/request.rs @@ -124,7 +124,7 @@ pub(crate) async fn fetch_pictrs( let pictrs_config = settings.pictrs_config()?; is_image_content_type(client, image_url).await?; - if pictrs_config.cache_remote_images { + if pictrs_config.cache_external_link_previews { // fetch remote non-pictrs images for persistent thumbnail link let fetch_url = format!( "{}image/download?url={}", diff --git a/crates/utils/src/settings/structs.rs b/crates/utils/src/settings/structs.rs index a31b3605e..3664417be 100644 --- a/crates/utils/src/settings/structs.rs +++ b/crates/utils/src/settings/structs.rs @@ -79,9 +79,16 @@ pub struct PictrsConfig { #[default(None)] pub api_key: Option, - /// Cache remote images + /// By default the thumbnails for external links are stored in pict-rs. This ensures that they + /// can be reliably retrieved and can be resized using pict-rs APIs. However it also increases + /// storage usage. In case this is disabled, the Opengraph image is directly returned as + /// thumbnail. + /// + /// In some countries it is forbidden to copy preview images from newspaper articles and only + /// hotlinking is allowed. If that is the case for your instance, make sure that this setting is + /// disabled. #[default(true)] - pub cache_remote_images: bool, + pub cache_external_link_previews: bool, } #[derive(Debug, Deserialize, Serialize, Clone, SmartDefault, Document)]