diff --git a/docs/docs/client-examples/headscale.md b/docs/docs/client-examples/headscale.md new file mode 100644 index 0000000..b968689 --- /dev/null +++ b/docs/docs/client-examples/headscale.md @@ -0,0 +1,34 @@ +--- +id: headscale +--- +# Headscale + +## Create OIDC Client in Pocket ID +1. Create a new OIDC Client in Pocket ID (e.g., `Headscale`). +2. Set the callback URL: `https:///oidc/callback` +3. Enable `PKCE`. +4. Copy the **Client ID** and **Client Secret**. + +## Configure Headscale +> Refer to the example [`config.yaml`](https://github.com/juanfont/headscale/blob/main/config-example.yaml) for full OIDC configuration options. + +Add the following to `config.yaml`: + +```yaml +oidc: + issuer: "https://" + client_id: "" + client_secret: "" + pkce: + enabled: true + method: S256 +``` + +### (Optional) Restrict Access to Certain Groups +To allow only specific groups, add: + +```yaml + scope: ["openid", "profile", "email", "groups"] + allowed_groups: + - #example: headscale +``` diff --git a/docs/docs/client-examples/immich.md b/docs/docs/client-examples/immich.md new file mode 100644 index 0000000..1fb4c04 --- /dev/null +++ b/docs/docs/client-examples/immich.md @@ -0,0 +1,26 @@ +--- +id: immich +--- +# Immich + +## Create OIDC Client in Pocket ID +1. Create a new OIDC Client in Pocket ID (e.g., `immich`). +2. Set the callback URLs: + ``` + https:///auth/login + https:///user-settings + app.immich:///oauth-callback + ``` +4. Copy the **Client ID**, **Client Secret**, and **OIDC Discovery URL**. + +## Configure Immich +1. Open Immich and navigate to: + **`Administration > Settings > Authentication Settings > OAuth`** +2. Enable **Login with OAuth**. +3. Fill in the required fields: + - **Issuer URL**: Paste the `Authorization URL` from Pocket ID. + - **Client ID**: Paste the `Client ID` from Pocket ID. + - **Client Secret**: Paste the `Client Secret` from Pocket ID. +4. *(Optional)* Change `Button Text` to `Login with Pocket ID`. +5. Save the settings. +6. Test the OAuth login to ensure it works. \ No newline at end of file diff --git a/docs/sidebars.ts b/docs/sidebars.ts index dfea5b2..7ffe755 100644 --- a/docs/sidebars.ts +++ b/docs/sidebars.ts @@ -61,7 +61,9 @@ const sidebars: SidebarsConfig = { items: [ "client-examples/cloudflare-zero-trust", "client-examples/grist", + "client-examples/headscale", "client-examples/hoarder", + "client-examples/immich", "client-examples/jellyfin", "client-examples/netbox", "client-examples/open-webui",