Outline
services.outline.azureAuthentication
To configure Microsoft/Azure auth, you'll need to create an OAuth Client. See the guide for details on setting up your Azure App.
Type: null or (submodule)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.azureAuthentication.clientId
Authentication client identifier.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.azureAuthentication.clientSecretFile
File path containing the authentication secret.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.azureAuthentication.resourceAppId
Authentication application resource ID.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.cdnUrl
If using a Cloudfront/Cloudflare distribution or similar it can be set using this option. This will cause paths to JavaScript files, stylesheets and images to be updated to the hostname defined here. In your CDN configuration the origin server should be set to public URL.
Type: string
Default
""
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.concurrency
How many processes should be spawned. For a rough estimate, divide your server's available memory by 512.
Type: signed integer
Default
1
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.databaseUrl
URI to use for the main PostgreSQL database. If this needs to include
credentials that shouldn't be world-readable in the Nix store, set an
environment file on the systemd service and override the
DATABASE_URL
entry. Pass the string
local
to setup a database on the local server.
Type: string
Default
"local"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.debugOutput
Set this to http
log HTTP requests.
Type: null or value "http" (singular enum)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.defaultLanguage
The default interface language. See translate.getoutline.com for a list of available language codes and their rough percentage translated.
Type: one of "da_DK", "de_DE", "en_US", "es_ES", "fa_IR", "fr_FR", "it_IT", "ja_JP", "ko_KR", "nl_NL", "pl_PL", "pt_BR", "pt_PT", "ru_RU", "sv_SE", "th_TH", "vi_VN", "zh_CN", "zh_TW"
Default
"en_US"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.enable
Whether to enable outline.
Type: boolean
Default
false
Example
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.enableUpdateCheck
Have the installation check for updates by sending anonymized statistics to the maintainers.
Type: boolean
Default
false
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.forceHttps
Auto-redirect to HTTPS in production. The default is
true
but you may set this to false
if you can be sure that SSL is terminated at an external loadbalancer.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.googleAnalyticsId
Optionally enable Google Analytics to track page views in the knowledge base.
Type: null or string
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.googleAuthentication
To configure Google auth, you'll need to create an OAuth Client ID at https://console.cloud.google.com/apis/credentials
When configuring the Client ID, add an Authorized redirect URI to
https://[publicUrl]/auth/google.callback
.
Type: null or (submodule)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.googleAuthentication.clientId
Authentication client identifier.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.googleAuthentication.clientSecretFile
File path containing the authentication secret.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.group
Group under which the service should run. If this is the default value, the group will be created.
Type: string
Default
"outline"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.logo
Custom logo displayed on the authentication screen. This will be scaled to a height of 60px.
Type: null or string
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.maximumImportSize
The maximum size of document imports. Overriding this could be required if you have especially large Word documents with embedded imagery.
Type: signed integer
Default
5120000
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication
To configure generic OIDC auth, you'll need some kind of identity
provider. See the documentation for whichever IdP you use to fill out
all the fields. The redirect URL is
https://[publicUrl]/auth/oidc.callback
.
Type: null or (submodule)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.authUrl
OIDC authentication URL endpoint.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.clientId
Authentication client identifier.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.clientSecretFile
File path containing the authentication secret.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.displayName
Display name for OIDC authentication.
Type: string
Default
"OpenID"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.scopes
OpenID authentication scopes.
Type: list of string
Default
["openid""profile""email"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.tokenUrl
OIDC token URL endpoint.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.userinfoUrl
OIDC userinfo URL endpoint.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.oidcAuthentication.usernameClaim
Specify which claims to derive user information from. Supports any valid JSON path with the JWT payload
Type: string
Default
"preferred_username"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.package
Outline package to use.
Type: package
Default
pkgs.outline
Example
pkgs.outline.overrideAttrs (super: {# Ignore the domain part in emails that come from OIDC. This is might# be helpful if you want multiple users with different email providers# to still land in the same team. Note that this effectively makes# Outline a single-team instance.patchPhase = '' sed -i 's/const domain = parts\.length && parts\[1\];/const domain = "example.com";/g' plugins/oidc/server/auth/oidc.ts '';})
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.port
Listening port.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default
3000
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.publicUrl
The fully qualified, publicly accessible URL
Type: string
Default
"http://localhost:3000"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.rateLimiter.durationWindow
Length of a throttling window.
Type: signed integer
Default
60
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.rateLimiter.enable
Whether to enable rate limiter for the application web server.
Type: boolean
Default
false
Example
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.rateLimiter.requests
Maximum number of requests in a throttling window.
Type: signed integer
Default
5000
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.redisUrl
Connection to a redis server. If this needs to include credentials
that shouldn't be world-readable in the Nix store, set an environment
file on the systemd service and override the
REDIS_URL
entry. Pass the string
local
to setup a local Redis database.
Type: string
Default
"local"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.secretKeyFile
File path that contains the application secret key. It must be 32 bytes long and hex-encoded. If the file does not exist, a new key will be generated and saved here.
Type: string
Default
"/var/lib/outline/secret_key"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.sentryDsn
Optionally enable Sentry to track errors and performance.
Type: null or string
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.sentryTunnel
Optionally add a Sentry proxy tunnel for bypassing ad blockers in the UI.
Type: null or string
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackAuthentication
To configure Slack auth, you'll need to create an Application at https://api.slack.com/apps
When configuring the Client ID, add a redirect URL under "OAuth & Permissions"
to https://[publicUrl]/auth/slack.callback
.
Type: null or (submodule)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackAuthentication.clientId
Authentication key.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackAuthentication.secretFile
File path containing the authentication secret.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackIntegration
For a complete Slack integration with search and posting to channels this configuration is also needed. See here for details: https://wiki.generaloutline.com/share/be25efd1-b3ef-4450-b8e5-c4a4fc11e02a
Type: null or (submodule)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackIntegration.appId
Application ID.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackIntegration.messageActions
Whether to enable message actions.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.slackIntegration.verificationTokenFile
File path containing the verification token.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp
To support sending outgoing transactional emails such as "document updated" or "you've been invited" you'll need to provide authentication for an SMTP server.
Type: null or (submodule)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.fromEmail
Sender email in outgoing mail.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.host
Host name or IP address of the SMTP server.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.passwordFile
File path containing the password to authenticate with.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.port
TCP port of the SMTP server.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.replyEmail
Reply address in outgoing mail.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.secure
Use a secure SMTP connection.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.tlsCiphers
Override SMTP cipher configuration.
Type: string
Default
""
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.smtp.username
Username to authenticate with.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.sslCertFile
File path that contains the Base64-encoded certificate for HTTPS termination. This is only required if you do not use an external reverse proxy. See the documentation.
Type: null or string
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.sslKeyFile
File path that contains the Base64-encoded private key for HTTPS termination. This is only required if you do not use an external reverse proxy. See the documentation.
Type: null or string
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage
To support uploading of images for avatars and document attachments an s3-compatible storage can be provided. AWS S3 is recommended for redundancy however if you want to keep all file storage local an alternative such as minio can be used. Local filesystem storage can also be used.
A more detailed guide on setting up storage is available here.
Type: submodule
Example
{accessKey = "...";secretKeyFile = "/somewhere";uploadBucketUrl = "https://minio.example.com";uploadBucketName = "outline";region = "us-east-1";}
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.accessKey
S3 access key.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.acl
ACL setting.
Type: string
Default
"private"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.forcePathStyle
Force S3 path style.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.localRootDir
If storageType
is local
, this sets the parent directory
under which all attachments/images go.
Type: string
Default
"/var/lib/outline/data"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.region
AWS S3 region name.
Type: string
Default
"xx-xxxx-x"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.secretKeyFile
File path that contains the S3 secret key.
Type: path
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.storageType
File storage type, it can be local or s3.
Type: one of "local", "s3"
Default
"s3"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.uploadBucketName
Name of the bucket where uploads should be stored.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.uploadBucketUrl
URL endpoint of an S3-compatible API where uploads should be stored.
Type: string
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.storage.uploadMaxSize
Maxmium file size for uploads.
Type: signed integer
Default
26214400
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.user
User under which the service should run. If this is the default value, the user will be created, with the specified group as the primary group.
Type: string
Default
"outline"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix
services.outline.utilsSecretFile
File path that contains the utility secret key. If the file does not exist, a new key will be generated and saved here.
Type: string
Default
"/var/lib/outline/utils_secret"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/web-apps/outline.nix