From 0f49d03c932a27f832bbef56a7579538a815e150 Mon Sep 17 00:00:00 2001 From: redbeardymcgee Date: Sat, 14 Dec 2024 14:47:10 -0600 Subject: [PATCH 1/3] fix(linkwarden): restore files lost from branching --- quadlets/linkwarden/data.volume | 2 + quadlets/linkwarden/database.volume | 3 + .../linkwarden/linkwarden-database.container | 22 ++ quadlets/linkwarden/linkwarden.container | 22 ++ quadlets/linkwarden/linkwarden.env | 362 ++++++++++++++++++ 5 files changed, 411 insertions(+) create mode 100644 quadlets/linkwarden/data.volume create mode 100644 quadlets/linkwarden/database.volume create mode 100644 quadlets/linkwarden/linkwarden-database.container create mode 100644 quadlets/linkwarden/linkwarden.container create mode 100644 quadlets/linkwarden/linkwarden.env diff --git a/quadlets/linkwarden/data.volume b/quadlets/linkwarden/data.volume new file mode 100644 index 0000000..3d6bc2c --- /dev/null +++ b/quadlets/linkwarden/data.volume @@ -0,0 +1,2 @@ +[Volume] +VolumeName=linkwarden-data diff --git a/quadlets/linkwarden/database.volume b/quadlets/linkwarden/database.volume new file mode 100644 index 0000000..bbea65e --- /dev/null +++ b/quadlets/linkwarden/database.volume @@ -0,0 +1,3 @@ +[Volume] +VolumeName=linkwarden-database + diff --git a/quadlets/linkwarden/linkwarden-database.container b/quadlets/linkwarden/linkwarden-database.container new file mode 100644 index 0000000..41a44d3 --- /dev/null +++ b/quadlets/linkwarden/linkwarden-database.container @@ -0,0 +1,22 @@ +[Unit] +Description=Linkwarden database +Requires=linkwarden-database.service + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image=docker.io/postgres:16-alpine +ContainerName=linkwarden +HostName=linkwarden + +Volume=linkwarden-database:/var/lib/postgresql/data + +Environment=DATABASE_URL=postgresql://postgres:${POSTGRES_PASSWORD}@postgres:5432/postgres + +# FIXME: Secret is not injected into env before Environment parses +Secret=linkwarden-db-pw,type=env,target=POSTGRES_PASSWORD diff --git a/quadlets/linkwarden/linkwarden.container b/quadlets/linkwarden/linkwarden.container new file mode 100644 index 0000000..9d6ab87 --- /dev/null +++ b/quadlets/linkwarden/linkwarden.container @@ -0,0 +1,22 @@ +[Unit] +Description=Bookmark preservation +Requires=linkwarden-database.service + +[Service] +Restart=on-failure +TimeoutStartSec=900 + +[Install] +WantedBy=default.target + +[Container] +Image=ghcr.io/linkwarden/linkwarden:latest +ContainerName=linkwarden + +HostName=linkwarden +PublishPort=3000 + +Volume=linkwarden-data:/data/data + +EnvironmentFile=linkwarden.env + diff --git a/quadlets/linkwarden/linkwarden.env b/quadlets/linkwarden/linkwarden.env new file mode 100644 index 0000000..f670a5f --- /dev/null +++ b/quadlets/linkwarden/linkwarden.env @@ -0,0 +1,362 @@ +NEXTAUTH_URL=http://localhost:3000/api/v1/auth +NEXTAUTH_SECRET= +# Manual installation database settings +# Example: DATABASE_URL=postgresql://user:password@localhost:5432/linkwarden +DATABASE_URL= +# Docker installation database settings +POSTGRES_PASSWORD= +# Additional Optional Settings +PAGINATION_TAKE_COUNT= +STORAGE_FOLDER= +AUTOSCROLL_TIMEOUT= +NEXT_PUBLIC_DISABLE_REGISTRATION= +NEXT_PUBLIC_CREDENTIALS_ENABLED= +DISABLE_NEW_SSO_USERS= +RE_ARCHIVE_LIMIT= +MAX_LINKS_PER_USER= +ARCHIVE_TAKE_COUNT= +BROWSER_TIMEOUT= +IGNORE_UNAUTHORIZED_CA= +IGNORE_HTTPS_ERRORS= +IGNORE_URL_SIZE_LIMIT= +NEXT_PUBLIC_DEMO= +NEXT_PUBLIC_DEMO_USERNAME= +NEXT_PUBLIC_DEMO_PASSWORD= +NEXT_PUBLIC_ADMIN= +NEXT_PUBLIC_MAX_FILE_BUFFER= +MONOLITH_MAX_BUFFER= +MONOLITH_CUSTOM_OPTIONS= +PDF_MAX_BUFFER= +SCREENSHOT_MAX_BUFFER= +READABILITY_MAX_BUFFER= +PREVIEW_MAX_BUFFER= +IMPORT_LIMIT= +PLAYWRIGHT_LAUNCH_OPTIONS_EXECUTABLE_PATH= +MAX_WORKERS= +# AWS S3 Settings +SPACES_KEY= +SPACES_SECRET= +SPACES_ENDPOINT= +SPACES_BUCKET_NAME= +SPACES_REGION= +SPACES_FORCE_PATH_STYLE= +# SMTP Settings +NEXT_PUBLIC_EMAIL_PROVIDER= +EMAIL_FROM= +EMAIL_SERVER= +BASE_URL= +# Proxy settings +PROXY= +PROXY_USERNAME= +PROXY_PASSWORD= +PROXY_BYPASS= +# PDF archive settings +PDF_MARGIN_TOP= +PDF_MARGIN_BOTTOM= +################# +# SSO Providers # +################# +# 42 School +NEXT_PUBLIC_FORTYTWO_ENABLED= +FORTYTWO_CUSTOM_NAME= +FORTYTWO_CLIENT_ID= +FORTYTWO_CLIENT_SECRET= +# Apple +NEXT_PUBLIC_APPLE_ENABLED= +APPLE_CUSTOM_NAME= +APPLE_ID= +APPLE_SECRET= +# Atlassian +NEXT_PUBLIC_ATLASSIAN_ENABLED= +ATLASSIAN_CUSTOM_NAME= +ATLASSIAN_CLIENT_ID= +ATLASSIAN_CLIENT_SECRET= +ATLASSIAN_SCOPE= +# Auth0 +NEXT_PUBLIC_AUTH0_ENABLED= +AUTH0_CUSTOM_NAME= +AUTH0_ISSUER= +AUTH0_CLIENT_SECRET= +AUTH0_CLIENT_ID= +# Authelia +NEXT_PUBLIC_AUTHELIA_ENABLED="" +AUTHELIA_CLIENT_ID="" +AUTHELIA_CLIENT_SECRET="" +AUTHELIA_WELLKNOWN_URL="" +# Authentik +NEXT_PUBLIC_AUTHENTIK_ENABLED= +AUTHENTIK_CUSTOM_NAME= +AUTHENTIK_ISSUER= +AUTHENTIK_CLIENT_ID= +AUTHENTIK_CLIENT_SECRET= +# Azure AD B2C +NEXT_PUBLIC_AZURE_AD_B2C_ENABLED= +AZURE_AD_B2C_TENANT_NAME= +AZURE_AD_B2C_CLIENT_ID= +AZURE_AD_B2C_CLIENT_SECRET= +AZURE_AD_B2C_PRIMARY_USER_FLOW= +# Azure AD +NEXT_PUBLIC_AZURE_AD_ENABLED= +AZURE_AD_CLIENT_ID= +AZURE_AD_CLIENT_SECRET= +AZURE_AD_TENANT_ID= +# Battle.net +NEXT_PUBLIC_BATTLENET_ENABLED= +BATTLENET_CUSTOM_NAME= +BATTLENET_CLIENT_ID= +BATTLENET_CLIENT_SECRET= +BATTLENET_ISSUER= +# Box +NEXT_PUBLIC_BOX_ENABLED= +BOX_CUSTOM_NAME= +BOX_CLIENT_ID= +BOX_CLIENT_SECRET= +# Bungie +NEXT_PUBLIC_BUNGIE_ENABLED= +BUNGIE_CUSTOM_NAME= +BUNGIE_CLIENT_ID= +BUNGIE_CLIENT_SECRET= +BUNGIE_API_KEY= +# Cognito +NEXT_PUBLIC_COGNITO_ENABLED= +COGNITO_CUSTOM_NAME= +COGNITO_CLIENT_ID= +COGNITO_CLIENT_SECRET= +COGNITO_ISSUER= +# Coinbase +NEXT_PUBLIC_COINBASE_ENABLED= +COINBASE_CUSTOM_NAME= +COINBASE_CLIENT_ID= +COINBASE_CLIENT_SECRET= +# Discord +NEXT_PUBLIC_DISCORD_ENABLED= +DISCORD_CUSTOM_NAME= +DISCORD_CLIENT_ID= +DISCORD_CLIENT_SECRET= +# Dropbox +NEXT_PUBLIC_DROPBOX_ENABLED= +DROPBOX_CUSTOM_NAME= +DROPBOX_CLIENT_ID= +DROPBOX_CLIENT_SECRET= +# DuendeIndentityServer6 +NEXT_PUBLIC_DUENDE_IDS6_ENABLED= +DUENDE_IDS6_CUSTOM_NAME= +DUENDE_IDS6_CLIENT_ID= +DUENDE_IDS6_CLIENT_SECRET= +DUENDE_IDS6_ISSUER= +# EVE Online +NEXT_PUBLIC_EVEONLINE_ENABLED= +EVEONLINE_CUSTOM_NAME= +EVEONLINE_CLIENT_ID= +EVEONLINE_CLIENT_SECRET= +# Facebook +NEXT_PUBLIC_FACEBOOK_ENABLED= +FACEBOOK_CUSTOM_NAME= +FACEBOOK_CLIENT_ID= +FACEBOOK_CLIENT_SECRET= +# FACEIT +NEXT_PUBLIC_FACEIT_ENABLED= +FACEIT_CUSTOM_NAME= +FACEIT_CLIENT_ID= +FACEIT_CLIENT_SECRET= +# Foursquare +NEXT_PUBLIC_FOURSQUARE_ENABLED= +FOURSQUARE_CUSTOM_NAME= +FOURSQUARE_CLIENT_ID= +FOURSQUARE_CLIENT_SECRET= +FOURSQUARE_APIVERSION= +# Freshbooks +NEXT_PUBLIC_FRESHBOOKS_ENABLED= +FRESHBOOKS_CUSTOM_NAME= +FRESHBOOKS_CLIENT_ID= +FRESHBOOKS_CLIENT_SECRET= +# FusionAuth +NEXT_PUBLIC_FUSIONAUTH_ENABLED= +FUSIONAUTH_CUSTOM_NAME= +FUSIONAUTH_CLIENT_ID= +FUSIONAUTH_CLIENT_SECRET= +FUSIONAUTH_ISSUER= +FUSIONAUTH_TENANT_ID= +# GitHub +NEXT_PUBLIC_GITHUB_ENABLED= +GITHUB_CUSTOM_NAME= +GITHUB_ID= +GITHUB_SECRET= +# GitLab +NEXT_PUBLIC_GITLAB_ENABLED= +GITLAB_CUSTOM_NAME= +GITLAB_CLIENT_ID= +GITLAB_CLIENT_SECRET= +# Google +NEXT_PUBLIC_GOOGLE_ENABLED= +GOOGLE_CUSTOM_NAME= +GOOGLE_CLIENT_ID= +GOOGLE_CLIENT_SECRET= +# HubSpot +NEXT_PUBLIC_HUBSPOT_ENABLED= +HUBSPOT_CUSTOM_NAME= +HUBSPOT_CLIENT_ID= +HUBSPOT_CLIENT_SECRET= +# IdentityServer4 +NEXT_PUBLIC_IDS4_ENABLED= +IDS4_CUSTOM_NAME= +IDS4_CLIENT_ID= +IDS4_CLIENT_SECRET= +IDS4_ISSUER= +# Kakao +NEXT_PUBLIC_KAKAO_ENABLED= +KAKAO_CUSTOM_NAME= +KAKAO_CLIENT_ID= +KAKAO_CLIENT_SECRET= +# Keycloak +NEXT_PUBLIC_KEYCLOAK_ENABLED= +KEYCLOAK_CUSTOM_NAME= +KEYCLOAK_ISSUER= +KEYCLOAK_CLIENT_ID= +KEYCLOAK_CLIENT_SECRET= +# LINE +NEXT_PUBLIC_LINE_ENABLED= +LINE_CUSTOM_NAME= +LINE_CLIENT_ID= +LINE_CLIENT_SECRET= +# LinkedIn +NEXT_PUBLIC_LINKEDIN_ENABLED= +LINKEDIN_CUSTOM_NAME= +LINKEDIN_CLIENT_ID= +LINKEDIN_CLIENT_SECRET= +# Mailchimp +NEXT_PUBLIC_MAILCHIMP_ENABLED= +MAILCHIMP_CUSTOM_NAME= +MAILCHIMP_CLIENT_ID= +MAILCHIMP_CLIENT_SECRET= +# Mail.ru +NEXT_PUBLIC_MAILRU_ENABLED= +MAILRU_CUSTOM_NAME= +MAILRU_CLIENT_ID= +MAILRU_CLIENT_SECRET= +# Naver +NEXT_PUBLIC_NAVER_ENABLED= +NAVER_CUSTOM_NAME= +NAVER_CLIENT_ID= +NAVER_CLIENT_SECRET= +# Netlify +NEXT_PUBLIC_NETLIFY_ENABLED= +NETLIFY_CUSTOM_NAME= +NETLIFY_CLIENT_ID= +NETLIFY_CLIENT_SECRET= +# Okta +NEXT_PUBLIC_OKTA_ENABLED= +OKTA_CUSTOM_NAME= +OKTA_CLIENT_ID= +OKTA_CLIENT_SECRET= +OKTA_ISSUER= +# OneLogin +NEXT_PUBLIC_ONELOGIN_ENABLED= +ONELOGIN_CUSTOM_NAME= +ONELOGIN_CLIENT_ID= +ONELOGIN_CLIENT_SECRET= +ONELOGIN_ISSUER= +# Osso +NEXT_PUBLIC_OSSO_ENABLED= +OSSO_CUSTOM_NAME= +OSSO_CLIENT_ID= +OSSO_CLIENT_SECRET= +OSSO_ISSUER= +# osu! +NEXT_PUBLIC_OSU_ENABLED= +OSU_CUSTOM_NAME= +OSU_CLIENT_ID= +OSU_CLIENT_SECRET= +# Patreon +NEXT_PUBLIC_PATREON_ENABLED= +PATREON_CUSTOM_NAME= +PATREON_CLIENT_ID= +PATREON_CLIENT_SECRET= +# Pinterest +NEXT_PUBLIC_PINTEREST_ENABLED= +PINTEREST_CUSTOM_NAME= +PINTEREST_CLIENT_ID= +PINTEREST_CLIENT_SECRET= +# Pipedrive +NEXT_PUBLIC_PIPEDRIVE_ENABLED= +PIPEDRIVE_CUSTOM_NAME= +PIPEDRIVE_CLIENT_ID= +PIPEDRIVE_CLIENT_SECRET= +# Reddit +NEXT_PUBLIC_REDDIT_ENABLED= +REDDIT_CUSTOM_NAME= +REDDIT_CLIENT_ID= +REDDIT_CLIENT_SECRET= +# Salesforce +NEXT_PUBLIC_SALESFORCE_ENABLED= +SALESFORCE_CUSTOM_NAME= +SALESFORCE_CLIENT_ID= +SALESFORCE_CLIENT_SECRET= +# Slack +NEXT_PUBLIC_SLACK_ENABLED= +SLACK_CUSTOM_NAME= +SLACK_CLIENT_ID= +SLACK_CLIENT_SECRET= +# Spotify +NEXT_PUBLIC_SPOTIFY_ENABLED= +SPOTIFY_CUSTOM_NAME= +SPOTIFY_CLIENT_ID= +SPOTIFY_CLIENT_SECRET= +# Strava +NEXT_PUBLIC_STRAVA_ENABLED= +STRAVA_CUSTOM_NAME= +STRAVA_CLIENT_ID= +STRAVA_CLIENT_SECRET= +# Todoist +NEXT_PUBLIC_TODOIST_ENABLED= +TODOIST_CUSTOM_NAME= +TODOIST_CLIENT_ID= +TODOIST_CLIENT_SECRET= +# Twitch +NEXT_PUBLIC_TWITCH_ENABLED= +TWITCH_CUSTOM_NAME= +TWITCH_CLIENT_ID= +TWITCH_CLIENT_SECRET= +# United Effects +NEXT_PUBLIC_UNITED_EFFECTS_ENABLED= +UNITED_EFFECTS_CUSTOM_NAME= +UNITED_EFFECTS_CLIENT_ID= +UNITED_EFFECTS_CLIENT_SECRET= +UNITED_EFFECTS_ISSUER= +# VK +NEXT_PUBLIC_VK_ENABLED= +VK_CUSTOM_NAME= +VK_CLIENT_ID= +VK_CLIENT_SECRET= +# Wikimedia +NEXT_PUBLIC_WIKIMEDIA_ENABLED= +WIKIMEDIA_CUSTOM_NAME= +WIKIMEDIA_CLIENT_ID= +WIKIMEDIA_CLIENT_SECRET= +# Wordpress.com +NEXT_PUBLIC_WORDPRESS_ENABLED= +WORDPRESS_CUSTOM_NAME= +WORDPRESS_CLIENT_ID= +WORDPRESS_CLIENT_SECRET= +# Yandex +NEXT_PUBLIC_YANDEX_ENABLED= +YANDEX_CUSTOM_NAME= +YANDEX_CLIENT_ID= +YANDEX_CLIENT_SECRET= +# Zitadel +NEXT_PUBLIC_ZITADEL_ENABLED= +ZITADEL_CUSTOM_NAME= +ZITADEL_CLIENT_ID= +ZITADEL_CLIENT_SECRET= +ZITADEL_ISSUER= +# Zoho +NEXT_PUBLIC_ZOHO_ENABLED= +ZOHO_CUSTOM_NAME= +ZOHO_CLIENT_ID= +ZOHO_CLIENT_SECRET= +# Zoom +NEXT_PUBLIC_ZOOM_ENABLED= +ZOOM_CUSTOM_NAME= +ZOOM_CLIENT_ID= +ZOOM_CLIENT_SECRET= + -- 2.45.3 From e53777d871c5a4effc9afa2121d9c68cfb59f853 Mon Sep 17 00:00:00 2001 From: redbeardymcgee Date: Sat, 14 Dec 2024 14:51:03 -0600 Subject: [PATCH 2/3] tidy(linkwarden): whitespace for readability --- quadlets/linkwarden/linkwarden.env | 67 ++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/quadlets/linkwarden/linkwarden.env b/quadlets/linkwarden/linkwarden.env index f670a5f..0f5378e 100644 --- a/quadlets/linkwarden/linkwarden.env +++ b/quadlets/linkwarden/linkwarden.env @@ -1,10 +1,13 @@ NEXTAUTH_URL=http://localhost:3000/api/v1/auth NEXTAUTH_SECRET= + # Manual installation database settings # Example: DATABASE_URL=postgresql://user:password@localhost:5432/linkwarden DATABASE_URL= + # Docker installation database settings POSTGRES_PASSWORD= + # Additional Optional Settings PAGINATION_TAKE_COUNT= STORAGE_FOLDER= @@ -33,6 +36,7 @@ PREVIEW_MAX_BUFFER= IMPORT_LIMIT= PLAYWRIGHT_LAUNCH_OPTIONS_EXECUTABLE_PATH= MAX_WORKERS= + # AWS S3 Settings SPACES_KEY= SPACES_SECRET= @@ -40,136 +44,162 @@ SPACES_ENDPOINT= SPACES_BUCKET_NAME= SPACES_REGION= SPACES_FORCE_PATH_STYLE= + # SMTP Settings NEXT_PUBLIC_EMAIL_PROVIDER= EMAIL_FROM= EMAIL_SERVER= BASE_URL= + # Proxy settings PROXY= PROXY_USERNAME= PROXY_PASSWORD= PROXY_BYPASS= + # PDF archive settings PDF_MARGIN_TOP= PDF_MARGIN_BOTTOM= + ################# # SSO Providers # ################# + # 42 School NEXT_PUBLIC_FORTYTWO_ENABLED= FORTYTWO_CUSTOM_NAME= FORTYTWO_CLIENT_ID= FORTYTWO_CLIENT_SECRET= + # Apple NEXT_PUBLIC_APPLE_ENABLED= APPLE_CUSTOM_NAME= APPLE_ID= APPLE_SECRET= + # Atlassian NEXT_PUBLIC_ATLASSIAN_ENABLED= ATLASSIAN_CUSTOM_NAME= ATLASSIAN_CLIENT_ID= ATLASSIAN_CLIENT_SECRET= ATLASSIAN_SCOPE= + # Auth0 NEXT_PUBLIC_AUTH0_ENABLED= AUTH0_CUSTOM_NAME= AUTH0_ISSUER= AUTH0_CLIENT_SECRET= AUTH0_CLIENT_ID= + # Authelia NEXT_PUBLIC_AUTHELIA_ENABLED="" AUTHELIA_CLIENT_ID="" AUTHELIA_CLIENT_SECRET="" AUTHELIA_WELLKNOWN_URL="" + # Authentik NEXT_PUBLIC_AUTHENTIK_ENABLED= AUTHENTIK_CUSTOM_NAME= AUTHENTIK_ISSUER= AUTHENTIK_CLIENT_ID= AUTHENTIK_CLIENT_SECRET= + # Azure AD B2C NEXT_PUBLIC_AZURE_AD_B2C_ENABLED= AZURE_AD_B2C_TENANT_NAME= AZURE_AD_B2C_CLIENT_ID= AZURE_AD_B2C_CLIENT_SECRET= AZURE_AD_B2C_PRIMARY_USER_FLOW= + # Azure AD NEXT_PUBLIC_AZURE_AD_ENABLED= AZURE_AD_CLIENT_ID= AZURE_AD_CLIENT_SECRET= AZURE_AD_TENANT_ID= + # Battle.net NEXT_PUBLIC_BATTLENET_ENABLED= BATTLENET_CUSTOM_NAME= BATTLENET_CLIENT_ID= BATTLENET_CLIENT_SECRET= BATTLENET_ISSUER= + # Box NEXT_PUBLIC_BOX_ENABLED= BOX_CUSTOM_NAME= BOX_CLIENT_ID= BOX_CLIENT_SECRET= + # Bungie NEXT_PUBLIC_BUNGIE_ENABLED= BUNGIE_CUSTOM_NAME= BUNGIE_CLIENT_ID= BUNGIE_CLIENT_SECRET= BUNGIE_API_KEY= + # Cognito NEXT_PUBLIC_COGNITO_ENABLED= COGNITO_CUSTOM_NAME= COGNITO_CLIENT_ID= COGNITO_CLIENT_SECRET= COGNITO_ISSUER= + # Coinbase NEXT_PUBLIC_COINBASE_ENABLED= COINBASE_CUSTOM_NAME= COINBASE_CLIENT_ID= COINBASE_CLIENT_SECRET= + # Discord NEXT_PUBLIC_DISCORD_ENABLED= DISCORD_CUSTOM_NAME= DISCORD_CLIENT_ID= DISCORD_CLIENT_SECRET= + # Dropbox NEXT_PUBLIC_DROPBOX_ENABLED= DROPBOX_CUSTOM_NAME= DROPBOX_CLIENT_ID= DROPBOX_CLIENT_SECRET= + # DuendeIndentityServer6 NEXT_PUBLIC_DUENDE_IDS6_ENABLED= DUENDE_IDS6_CUSTOM_NAME= DUENDE_IDS6_CLIENT_ID= DUENDE_IDS6_CLIENT_SECRET= DUENDE_IDS6_ISSUER= + # EVE Online NEXT_PUBLIC_EVEONLINE_ENABLED= EVEONLINE_CUSTOM_NAME= EVEONLINE_CLIENT_ID= EVEONLINE_CLIENT_SECRET= + # Facebook NEXT_PUBLIC_FACEBOOK_ENABLED= FACEBOOK_CUSTOM_NAME= FACEBOOK_CLIENT_ID= FACEBOOK_CLIENT_SECRET= + # FACEIT NEXT_PUBLIC_FACEIT_ENABLED= FACEIT_CUSTOM_NAME= FACEIT_CLIENT_ID= FACEIT_CLIENT_SECRET= + # Foursquare NEXT_PUBLIC_FOURSQUARE_ENABLED= FOURSQUARE_CUSTOM_NAME= FOURSQUARE_CLIENT_ID= FOURSQUARE_CLIENT_SECRET= FOURSQUARE_APIVERSION= + # Freshbooks NEXT_PUBLIC_FRESHBOOKS_ENABLED= FRESHBOOKS_CUSTOM_NAME= FRESHBOOKS_CLIENT_ID= FRESHBOOKS_CLIENT_SECRET= + # FusionAuth NEXT_PUBLIC_FUSIONAUTH_ENABLED= FUSIONAUTH_CUSTOM_NAME= @@ -177,183 +207,220 @@ FUSIONAUTH_CLIENT_ID= FUSIONAUTH_CLIENT_SECRET= FUSIONAUTH_ISSUER= FUSIONAUTH_TENANT_ID= + # GitHub NEXT_PUBLIC_GITHUB_ENABLED= GITHUB_CUSTOM_NAME= GITHUB_ID= GITHUB_SECRET= + # GitLab NEXT_PUBLIC_GITLAB_ENABLED= GITLAB_CUSTOM_NAME= GITLAB_CLIENT_ID= GITLAB_CLIENT_SECRET= + # Google NEXT_PUBLIC_GOOGLE_ENABLED= GOOGLE_CUSTOM_NAME= GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= + # HubSpot NEXT_PUBLIC_HUBSPOT_ENABLED= HUBSPOT_CUSTOM_NAME= HUBSPOT_CLIENT_ID= HUBSPOT_CLIENT_SECRET= + # IdentityServer4 NEXT_PUBLIC_IDS4_ENABLED= IDS4_CUSTOM_NAME= IDS4_CLIENT_ID= IDS4_CLIENT_SECRET= IDS4_ISSUER= + # Kakao NEXT_PUBLIC_KAKAO_ENABLED= KAKAO_CUSTOM_NAME= KAKAO_CLIENT_ID= KAKAO_CLIENT_SECRET= + # Keycloak NEXT_PUBLIC_KEYCLOAK_ENABLED= KEYCLOAK_CUSTOM_NAME= KEYCLOAK_ISSUER= KEYCLOAK_CLIENT_ID= KEYCLOAK_CLIENT_SECRET= + # LINE NEXT_PUBLIC_LINE_ENABLED= LINE_CUSTOM_NAME= LINE_CLIENT_ID= LINE_CLIENT_SECRET= + # LinkedIn NEXT_PUBLIC_LINKEDIN_ENABLED= LINKEDIN_CUSTOM_NAME= LINKEDIN_CLIENT_ID= LINKEDIN_CLIENT_SECRET= + # Mailchimp NEXT_PUBLIC_MAILCHIMP_ENABLED= MAILCHIMP_CUSTOM_NAME= MAILCHIMP_CLIENT_ID= MAILCHIMP_CLIENT_SECRET= + # Mail.ru NEXT_PUBLIC_MAILRU_ENABLED= MAILRU_CUSTOM_NAME= MAILRU_CLIENT_ID= MAILRU_CLIENT_SECRET= + # Naver NEXT_PUBLIC_NAVER_ENABLED= NAVER_CUSTOM_NAME= NAVER_CLIENT_ID= NAVER_CLIENT_SECRET= + # Netlify NEXT_PUBLIC_NETLIFY_ENABLED= NETLIFY_CUSTOM_NAME= NETLIFY_CLIENT_ID= NETLIFY_CLIENT_SECRET= + # Okta NEXT_PUBLIC_OKTA_ENABLED= OKTA_CUSTOM_NAME= OKTA_CLIENT_ID= OKTA_CLIENT_SECRET= OKTA_ISSUER= + # OneLogin NEXT_PUBLIC_ONELOGIN_ENABLED= ONELOGIN_CUSTOM_NAME= ONELOGIN_CLIENT_ID= ONELOGIN_CLIENT_SECRET= ONELOGIN_ISSUER= + # Osso NEXT_PUBLIC_OSSO_ENABLED= OSSO_CUSTOM_NAME= OSSO_CLIENT_ID= OSSO_CLIENT_SECRET= OSSO_ISSUER= + # osu! NEXT_PUBLIC_OSU_ENABLED= OSU_CUSTOM_NAME= OSU_CLIENT_ID= OSU_CLIENT_SECRET= + # Patreon NEXT_PUBLIC_PATREON_ENABLED= PATREON_CUSTOM_NAME= PATREON_CLIENT_ID= PATREON_CLIENT_SECRET= + # Pinterest NEXT_PUBLIC_PINTEREST_ENABLED= PINTEREST_CUSTOM_NAME= PINTEREST_CLIENT_ID= PINTEREST_CLIENT_SECRET= + # Pipedrive NEXT_PUBLIC_PIPEDRIVE_ENABLED= PIPEDRIVE_CUSTOM_NAME= PIPEDRIVE_CLIENT_ID= PIPEDRIVE_CLIENT_SECRET= + # Reddit NEXT_PUBLIC_REDDIT_ENABLED= REDDIT_CUSTOM_NAME= REDDIT_CLIENT_ID= REDDIT_CLIENT_SECRET= + # Salesforce NEXT_PUBLIC_SALESFORCE_ENABLED= SALESFORCE_CUSTOM_NAME= SALESFORCE_CLIENT_ID= SALESFORCE_CLIENT_SECRET= + # Slack NEXT_PUBLIC_SLACK_ENABLED= SLACK_CUSTOM_NAME= SLACK_CLIENT_ID= SLACK_CLIENT_SECRET= + # Spotify NEXT_PUBLIC_SPOTIFY_ENABLED= SPOTIFY_CUSTOM_NAME= SPOTIFY_CLIENT_ID= SPOTIFY_CLIENT_SECRET= + # Strava NEXT_PUBLIC_STRAVA_ENABLED= STRAVA_CUSTOM_NAME= STRAVA_CLIENT_ID= STRAVA_CLIENT_SECRET= + # Todoist NEXT_PUBLIC_TODOIST_ENABLED= TODOIST_CUSTOM_NAME= TODOIST_CLIENT_ID= TODOIST_CLIENT_SECRET= + # Twitch NEXT_PUBLIC_TWITCH_ENABLED= TWITCH_CUSTOM_NAME= TWITCH_CLIENT_ID= TWITCH_CLIENT_SECRET= + # United Effects NEXT_PUBLIC_UNITED_EFFECTS_ENABLED= UNITED_EFFECTS_CUSTOM_NAME= UNITED_EFFECTS_CLIENT_ID= UNITED_EFFECTS_CLIENT_SECRET= UNITED_EFFECTS_ISSUER= + + # VK NEXT_PUBLIC_VK_ENABLED= VK_CUSTOM_NAME= VK_CLIENT_ID= VK_CLIENT_SECRET= + # Wikimedia NEXT_PUBLIC_WIKIMEDIA_ENABLED= WIKIMEDIA_CUSTOM_NAME= WIKIMEDIA_CLIENT_ID= WIKIMEDIA_CLIENT_SECRET= + + # Wordpress.com NEXT_PUBLIC_WORDPRESS_ENABLED= WORDPRESS_CUSTOM_NAME= WORDPRESS_CLIENT_ID= WORDPRESS_CLIENT_SECRET= + # Yandex NEXT_PUBLIC_YANDEX_ENABLED= YANDEX_CUSTOM_NAME= YANDEX_CLIENT_ID= YANDEX_CLIENT_SECRET= + # Zitadel NEXT_PUBLIC_ZITADEL_ENABLED= ZITADEL_CUSTOM_NAME= ZITADEL_CLIENT_ID= ZITADEL_CLIENT_SECRET= ZITADEL_ISSUER= + # Zoho NEXT_PUBLIC_ZOHO_ENABLED= ZOHO_CUSTOM_NAME= ZOHO_CLIENT_ID= ZOHO_CLIENT_SECRET= + # Zoom NEXT_PUBLIC_ZOOM_ENABLED= ZOOM_CUSTOM_NAME= -- 2.45.3 From 4d176c22774122408057b37c192675221e7d14d5 Mon Sep 17 00:00:00 2001 From: redbeardymcgee Date: Sat, 14 Dec 2024 18:53:05 -0600 Subject: [PATCH 3/3] fix(linkwarden): discard secrets for now Environment= keys in quadlets are populated before Secret= is added to the container environment, I think. This may be why the podman secret for the db pw is empty in the database url string. EnvironmentFile will probably have the same issue, so right now my poc system is using the password in plaintext. plsfix --- quadlets/linkwarden/linkwarden-database.container | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/quadlets/linkwarden/linkwarden-database.container b/quadlets/linkwarden/linkwarden-database.container index 41a44d3..3ed0f9f 100644 --- a/quadlets/linkwarden/linkwarden-database.container +++ b/quadlets/linkwarden/linkwarden-database.container @@ -1,6 +1,6 @@ [Unit] Description=Linkwarden database -Requires=linkwarden-database.service +Wants=linkwarden.service [Service] Restart=on-failure @@ -11,12 +11,10 @@ WantedBy=default.target [Container] Image=docker.io/postgres:16-alpine -ContainerName=linkwarden -HostName=linkwarden +ContainerName=linkwarden-database +HostName=linkwarden-database Volume=linkwarden-database:/var/lib/postgresql/data -Environment=DATABASE_URL=postgresql://postgres:${POSTGRES_PASSWORD}@postgres:5432/postgres +EnvironmentFile=linkwarden.env -# FIXME: Secret is not injected into env before Environment parses -Secret=linkwarden-db-pw,type=env,target=POSTGRES_PASSWORD -- 2.45.3