Compare commits

..
Author SHA1 Message Date
carla f47da0c1b8 style(background): set default background to none 2025-06-23 13:22:40 +02:00
72 changed files with 259 additions and 907 deletions
+1 -1
View File
@@ -24,7 +24,7 @@ steps:
FLOW_RECOVERY_VERSION: v1
FLOW_TRANSLATION_VERSION: v1
SYSTEM_BRAND_VERSION: v1
NEXTCLOUD_VERSION: v1
NEXTCLOUD_CONFIG_VERSION: v1
SECRET_SECRET_KEY_VERSION: v1
SECRET_DB_PASSWORD_VERSION: v1
SECRET_ADMIN_TOKEN_VERSION: v1
+3 -65
View File
@@ -1,5 +1,5 @@
TYPE=authentik
#TIMEOUT=900
TIMEOUT=900
ENABLE_AUTO_UPDATE=true
POST_DEPLOY_CMDS="worker set_admin_pass"
# Example values for post deploy cmds: "worker set_admin_pass|worker apply_blueprints|worker add_applications"
@@ -9,14 +9,9 @@ ENABLE_BACKUPS=true
DOMAIN=authentik.example.com
## Domain aliases
#EXTRA_DOMAINS=', `www.authentik.example.com`'
# Redirects
# All redirect domains have to be added to extra_domains as well)
# multiple redirects can be added by seperating them with a | character
#REDIRECTS=www.authentik.example.com
COMPOSE_FILE="compose.yml"
AUTHENTIK_DEFAULT_USER_CHANGE_USERNAME=false
AUTHENTIK_LOG_LEVEL=info
# AUTHENTIK_DISABLE_UPDATE_CHECK=false
# AUTHENTIK_IMPERSONATION=true
# AUTHENTIK_FOOTER_LINKS='[{"name": "My Organization","href":"https://example.com"}]'
# WORKERS=1
@@ -28,9 +23,6 @@ AUTHENTIK_LOG_LEVEL=info
## ADMIN
AUTHENTIK_BOOTSTRAP_EMAIL=admin@example.com
# The admin password will be overwritten by set_admin_pass() use this env only to skip the manual setup process
#AUTHENTIK_BOOTSTRAP_PASSWORD=changemeimmediately!
## EMAIL
AUTHENTIK_EMAIL__HOST=smtp
@@ -70,26 +62,13 @@ COPY_ASSETS="$COPY_ASSETS icon.png|app:/web/dist/assets/icons/"
# COMPOSE_FILE="$COMPOSE_FILE:compose.css.yml"
# BACKGROUND_FONT_COLOR=white
# BACKGROUND_BOX_COLOR='#eaeaeacf'
# THEME_BACKGROUND="url('https://authentik.example.com/static/dist/assets/images/flow_background.jpg'); background-position: center; background-repeat: no-repeat; background-size: cover;"
# Group Name Variables to cluster Applications
# GROUP_SUPPORT=Support
# GROUP_HELP=Help
# GROUP_ORGANISATION=Organisation
# GROUP_COMMUNICATION=Communication
# GROUP_COLLABORATION=Collaboration
# GROUP_DOCUMENTATION=Documentation
# GROUP_DEVELOPMENT=Development
# GROUP_INFRASTRUCTURE=Infrastructure
# THEME_BACKGROUND=""
# COMPOSE_FILE="$COMPOSE_FILE:compose.nextcloud.yml"
# NEXTCLOUD_DOMAIN=nextcloud.example.com
# SECRET_NEXTCLOUD_ID_VERSION=v1
# SECRET_NEXTCLOUD_SECRET_VERSION=v1
# APP_ICONS="nextcloud:~/.abra/recipes/authentik/icons/nextcloud.png"
# NEXTCLOUD_APPGROUP="$GROUP_ORGANISATION"
# NEXTCLOUD_APPNAME=Files
# NEXTCLOUD_APPDESCRIPTION=Nextcloud
# COMPOSE_FILE="$COMPOSE_FILE:compose.wordpress.yml"
# WORDPRESS_DOMAIN=wordpress.example.com
@@ -97,9 +76,6 @@ COPY_ASSETS="$COPY_ASSETS icon.png|app:/web/dist/assets/icons/"
# SECRET_WORDPRESS_ID_VERSION=v1
# SECRET_WORDPRESS_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS wordpress:~/.abra/recipes/authentik/icons/wordpress.png"
# WORDPRESS_APPGROUP="$GROUP_DEVELOPMENT"
# WORDPRESS_APPNAME=Website
# WORDPRESS_APPDESCRIPTION=Wordpress
# COMPOSE_FILE="$COMPOSE_FILE:compose.matrix.yml"
# ELEMENT_DOMAIN=element-web.example.com
@@ -107,90 +83,52 @@ COPY_ASSETS="$COPY_ASSETS icon.png|app:/web/dist/assets/icons/"
# SECRET_MATRIX_ID_VERSION=v1
# SECRET_MATRIX_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS matrix:~/.abra/recipes/authentik/icons/matrix.svg"
# MATRIX_APPGROUP="$GROUP_COMMUNICATION"
# MATRIX_APPNAME=Chat
# MATRIX_APPDESCRIPTION=Element
# COMPOSE_FILE="$COMPOSE_FILE:compose.wekan.yml"
# WEKAN_DOMAIN=wekan.example.com
# SECRET_WEKAN_ID_VERSION=v1
# SECRET_WEKAN_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS wekan:~/.abra/recipes/authentik/icons/wekan.png"
# WEKAN_APPGROUP="$GROUP_ORGANISATION"
# WEKAN_APPNAME=Boards
# WEKAN_APPDESCRIPTION=Wekan
# COMPOSE_FILE="$COMPOSE_FILE:compose.vikunja.yml"
# VIKUNJA_DOMAIN=vikunja.example.com
# SECRET_VIKUNJA_ID_VERSION=v1
# SECRET_VIKUNJA_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS vikunja:~/.abra/recipes/authentik/icons/vikunja.svg"
# VIKUNJA_APPGROUP="$GROUP_ORGANISATION"
# VIKUNJA_APPNAME=Tasks
# VIKUNJA_APPDESCRIPTION=Vikunja
# COMPOSE_FILE="$COMPOSE_FILE:compose.outline.yml"
# OUTLINE_DOMAIN=outline.example.com
# SECRET_OUTLINE_ID_VERSION=v1
# SECRET_OUTLINE_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS outline:~/.abra/recipes/authentik/icons/outline.png"
# OUTLINE_APPGROUP="$GROUP_DOCUMENTATION"
# OUTLINE_APPNAME=Wiki
# OUTLINE_APPDESCRIPTION=Outline
# COMPOSE_FILE="$COMPOSE_FILE:compose.kimai.yml"
# KIMAI_DOMAIN=kimai.example.com
# SECRET_KIMAI_ID_VERSION=v1
# SECRET_KIMAI_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS kimai:~/.abra/recipes/authentik/icons/kimai_logo.png"
# KIMAI_GROUP='kimai_admin'
# KIMAI_APPGROUP="$GROUP_ORGANISATION"
# KIMAI_APPNAME=Timetracking
# KIMAI_APPDESCRIPTION=Kimai
# COMPOSE_FILE="$COMPOSE_FILE:compose.zammad.yml"
# ZAMMAD_DOMAIN=zammad.example.com
# APP_ICONS="$APP_ICONS zammad:~/.abra/recipes/authentik/icons/zammad.svg"
# ZAMMAD_APPGROUP="$GROUP_SUPPORT"
# ZAMMAD_APPNAME=Support
# ZAMMAD_APPDESCRIPTION=Zammad
# COMPOSE_FILE="$COMPOSE_FILE:compose.monitoring.yml"
# MONITORING_DOMAIN=monitoring.example.com
# SECRET_MONITORING_ID_VERSION=v1
# SECRET_MONITORING_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS monitoring:~/.abra/recipes/authentik/icons/monitoring.svg"
# MONITORING_APPGROUP="$GROUP_INFRASTRUCTURE"
# MONITORING_APPNAME=Metrics
# MONITORING_APPDESCRIPTION=Monitoring
# COMPOSE_FILE="$COMPOSE_FILE:compose.rallly.yml"
# RALLLY_DOMAIN=rallly.example.com
# SECRET_RALLLY_ID_VERSION=v1
# SECRET_RALLLY_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS rallly:~/.abra/recipes/authentik/icons/rallly.png"
# RALLLY_APPGROUP="$GROUP_ORGANISATION"
# RALLLY_APPNAME=Polls
# RALLLY_APPDESCRIPTION=Rallly
# COMPOSE_FILE="$COMPOSE_FILE:compose.hedgedoc.yml"
# HEDGEDOC_DOMAIN=hedgedoc.example.com
# SECRET_HEDGEDOC_ID_VERSION=v1
# SECRET_HEDGEDOC_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS hedgedoc:~/.abra/recipes/authentik/icons/hedgedoc.png"
# HEDGEDOC_APPGROUP="$GROUP_DOCUMENTATION"
# HEDGEDOC_APPNAME=Notes
# HEDGEDOC_APPDESCRIPTION=Hedgedoc
# COMPOSE_FILE="$COMPOSE_FILE:compose.mila.yml"
# MILA_DOMAIN=mila.example.com
# SECRET_MILA_ID_VERSION=v1
# SECRET_MILA_SECRET_VERSION=v1
# APP_ICONS="$APP_ICONS mila:~/.abra/recipes/authentik/icons/mila.svg"
# MILA_APPGROUP=""
# MILA_APPNAME=Members
# MILA_APPDESCRIPTION=Mila
# MILA_GROUP='mv_admin'
# APPLICATIONS='{"Calendar": {"url":"https://nextcloud.example.com/apps/calendar/", "group": ""}, "BBB": {"url":"https://nextcloud.example.com/apps/bbb/", "group":""}, "Pretix": {"url":"https://pretix.example.com/control/", "group":""}}'
# APPLICATIONS='{"Calendar": "https://nextcloud.example.com/apps/calendar/", "BBB": "https://nextcloud.example.com/apps/bbb/", "Pretix": "https://pretix.example.com/control/"}'
# EXTRA_ICONS={"Calendar": "~/.abra/recipes/authentik/icons/calendar.svg", "BBB": "~/.abra/recipes/authentik/icons/bbb.png", "Pretix": "~/.abra/recipes/authentik/icons/pretix.svg"}
-1
View File
@@ -1,2 +1 @@
.envrc
.cursorignore
+110 -266
View File
@@ -1,90 +1,63 @@
export CUSTOM_CSS_VERSION=v3
export FLOW_AUTHENTICATION_VERSION=v4
export FLOW_INVITATION_VERSION=v3
export FLOW_INVITATION_VERSION=v2
export FLOW_INVALIDATION_VERSION=v2
export FLOW_RECOVERY_VERSION=v2
export FLOW_RECOVERY_VERSION=v1
export FLOW_TRANSLATION_VERSION=v3
export SYSTEM_BRAND_VERSION=v4
export NEXTCLOUD_VERSION=v5
export WORDPRESS_VERSION=v9
export MATRIX_VERSION=v5
export WEKAN_VERSION=v7
export VIKUNJA_VERSION=v5
export OUTLINE_VERSION=v6
export KIMAI_VERSION=v4
export ZAMMAD_VERSION=v5
export RALLLY_VERSION=v6
export HEDGEDOC_VERSION=v5
export MONITORING_VERSION=v7
export MILA_VERSION=v3
export NEXTCLOUD_CONFIG_VERSION=v3
export WORDPRESS_CONFIG_VERSION=v4
export MATRIX_CONFIG_VERSION=v3
export WEKAN_CONFIG_VERSION=v5
export VIKUNJA_CONFIG_VERSION=v3
export OUTLINE_CONFIG_VERSION=v4
export KIMAI_CONFIG_VERSION=v3
export ZAMMAD_CONFIG_VERSION=v4
export RALLLY_CONFIG_VERSION=v4
export HEDGEDOC_CONFIG_VERSION=v3
export MONITORING_CONFIG_VERSION=v4
export DB_ENTRYPOINT_VERSION=v1
export PG_BACKUP_VERSION=v2
export ENTRYPOINT_CSS_VERSION=v1
customize() {
if [ -z "$1" ]; then
echo "Usage: ... customize <assets_path>"
exit 1
fi
asset_dir=$1
for asset in $COPY_ASSETS; do
source=$(echo $asset | cut -d "|" -f1)
target=$(echo $asset | cut -d "|" -f2)
echo copy $source to $target
abra app cp $APP_NAME $asset_dir/$source $target
done
if [ -z "$1" ]
then
echo "Usage: ... customize <assets_path>"
exit 1
fi
asset_dir=$1
for asset in $COPY_ASSETS; do
source=$(echo $asset | cut -d "|" -f1)
target=$(echo $asset | cut -d "|" -f2)
echo copy $source to $target
abra app cp $APP_NAME $asset_dir/$source $target
done
}
shell() {
if [ -z "$1" ]; then
echo "Usage: ... shell <python code>"
exit 1
fi
ak shell -c "$1" 2>&1 | quieten
shell(){
if [ -z "$1" ]
then
echo "Usage: ... shell <python code>"
exit 1
fi
ak shell -c "$1" 2>&1 | quieten
}
import_user() {
if [ -z "$1" ]; then
echo "Usage: ... import_user <users.csv>"
exit 1
fi
source_file=$1
filename=$(basename $source_file)
abra app cp -C $APP_NAME $source_file worker:/tmp/
abra app cmd -C -T $APP_NAME worker _import_user $filename
}
init_admin_groups() {
/manage.py shell -c """
from authentik.core.models import Group
groups = [
os.environ.get('WORDPRESS_GROUP', ''),
os.environ.get('MILA_GROUP', ''),
os.environ.get('KIMAI_GROUP', '')
]
groups = [g.strip() for g in groups if g.strip()]
if not groups:
print('Keine Gruppen definiert.')
admin = User.objects.get(username='akadmin')
for group_name in groups:
group_name = group_name.strip()
if Group.objects.filter(name=group_name):
group = Group.objects.get(name=group_name)
else:
group = Group.objects.create(name=group_name)
print(f'{group_name} created')
group.users.add(admin)
print(f'add akadmin to group {group_name}')
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
if [ -z "$1" ]
then
echo "Usage: ... import_user <users.csv>"
exit 1
fi
source_file=$1
filename=$(basename $source_file)
abra app cp $APP_NAME $source_file worker:/tmp/
abra app cmd -T $APP_NAME worker _import_user $filename
}
_import_user() {
/manage.py shell -c """
from authentik.core.models import Group
/manage.py shell -c """
import csv
new_user = User()
with open('/tmp/$1', newline='') as file:
@@ -109,25 +82,12 @@ with open('/tmp/$1', newline='') as file:
group.users.add(new_user)
print(f'add {username} to group {group_name}')
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
set_user_pass() {
username="$1"
password="$2"
/manage.py shell -c """
user = User.objects.get(username='$username')
user.set_password('$password')
user.save()
print('Changed $username password')
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
set_admin_pass() {
password=$(cat /run/secrets/admin_pass)
token=$(cat /run/secrets/admin_token)
/manage.py shell -c """
password=$(cat /run/secrets/admin_pass)
token=$(cat /run/secrets/admin_token)
/manage.py shell -c """
import time
i = 0
while (not User.objects.filter(username='akadmin')):
@@ -159,51 +119,48 @@ else:
)
print('Created authentik-bootstrap-token')
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
rotate_db_pass() {
db_password=$(cat /run/secrets/db_password)
psql -U authentik -c """ALTER USER authentik WITH PASSWORD '$db_password';"""
db_password=$(cat /run/secrets/db_password)
psql -U authentik -c """ALTER USER authentik WITH PASSWORD '$db_password';"""
}
# This function is for blueprints that are overwriting custom blueprints
# It deactivates the affected custom blueprints to avoid changes to be reverted
apply_blueprints() {
update_and_disable_blueprint default/flow-password-change.yaml
update_and_disable_blueprint default/flow-default-authentication-flow.yaml
update_and_disable_blueprint default/flow-default-user-settings-flow.yaml
update_and_disable_blueprint default/flow-default-source-enrollment.yaml
apply_blueprint 3_flow_translation.yaml
apply_blueprint 2_flow_authentication.yaml
update_and_disable_blueprint default/flow-password-change.yaml
update_and_disable_blueprint default/flow-default-authentication-flow.yaml
update_and_disable_blueprint default/flow-default-user-settings-flow.yaml
update_and_disable_blueprint default/flow-default-source-enrollment.yaml
apply_blueprint 3_flow_translation.yaml
apply_blueprint 2_flow_authentication.yaml
}
update_and_disable_blueprint() {
enable_blueprint $@ 2>&1 | quieten
sleep 1
apply_blueprint $@
sleep 1
disable_blueprint $@ 2>&1 | quieten
return ${PIPESTATUS[0]}
enable_blueprint $@ 2>&1 | quieten
sleep 1
apply_blueprint $@
sleep 1
disable_blueprint $@ 2>&1 | quieten
}
disable_blueprint() {
blueprint_state False $@
blueprint_state False $@
}
enable_blueprint() {
blueprint_state True $@
blueprint_state True $@
}
apply_blueprint() {
echo apply blueprint $@
ak apply_blueprint $@ 2>&1 | quieten
return ${PIPESTATUS[0]}
echo apply blueprint $@
ak apply_blueprint $@ 2>&1 | quieten
}
blueprint_state() {
/manage.py shell -c """
/manage.py shell -c """
import time
blueprint_state=$1
blueprint_path='$2'
@@ -217,208 +174,108 @@ time.sleep(1)
blueprint.save()
print(f'{blueprint.name} enabled: {blueprint.enabled}')
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
# This function adds each application with its name, slug and group if passed
add_applications() {
export APPLICATIONS
/manage.py shell -c """
add_applications(){
export APPLICATIONS
/manage.py shell -c """
import json
import os
if os.environ['APPLICATIONS'] == '':
exit()
applications = json.loads(os.environ['APPLICATIONS'])
for name, details in applications.items():
url = details['url']
for name, url in applications.items():
print(f'Add {name}: {url}')
app = Application.objects.filter(name=name).first()
if not app:
app = Application()
app.name = name
app.slug = name.replace(' ', '-')
app.meta_launch_url = url
group = details['group']
if group:
app.group = group
print(f'Add {name}: {url} in group: {group}')
else:
app.group = ''
print(f'Add {name}: {url}')
app.open_in_new_tab = True
app.save()
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
# This function adds one application with its name, slug and group if passed
add_single_application() {
if [ -z "$2" ]; then
echo "Usage: ... add_single_application <name> <url> <group>"
exit 1
fi
/manage.py shell -c """
import json
import os
name = '$1'
url = '$2'
app = Application.objects.filter(name=name).first()
if not app:
app = Application()
app.name = name
app.slug = name.replace(' ', '-')
app.meta_launch_url = url
group = '$3'
if group:
app.group = group
print(f'Add {name}: {url} in group: {group}')
else:
app.group = ''
print(f'Add {name}: {url}')
app.open_in_new_tab = True
app.save()
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
quieten(){
# 'SyntaxWarning|version_regex|"http\['
# is a workaround to get rid of some verbose syntax warnings, this might be fixed with another version
grep -Pv '"level": "(info|debug)"|SyntaxWarning|version_regex|"http\[|RuntimeWarning:'
}
## This function is for renaming apps - usage: rename "old name" "new name"
rename() {
/manage.py shell -c """
old_name = '$1'
new_name = '$2' if '$2' else old_name
app = Application.objects.filter(name=old_name).first()
if app:
app.name = new_name
app.save()
print(f'Renamed application from {old_name} to {new_name}')
else:
print(f'No application found with name: {old_name}')
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
quieten() {
# 'SyntaxWarning|version_regex|"http\['
# is a workaround to get rid of some verbose syntax warnings, this might be fixed with another version
grep -Pv '"level": "(info|debug)"|SyntaxWarning|version_regex|"http\[|RuntimeWarning:|### authentik shell|### Node| objects imported automatically|^$' || true
}
add_email_templates() {
for file_path in "$@"; do
add_email_templates(){
for file_path in "$@"; do
echo copy template $file_path
abra app cp $APP_NAME $file_path app:/templates/
done
done
}
set_icons() {
if [ -n "$1" ]; then
APP_ICONS="$1"
fi
for icon in $APP_ICONS; do
set_icons(){
if [ -n "$1" ]
then
APP_ICONS="$1"
fi
for icon in $APP_ICONS; do
app=$(echo $icon | cut -d ":" -f1)
file_path=$(eval echo $(echo $icon | cut -d ":" -f2))
file=$(basename $file_path)
echo copy icon $file_path for $app
abra app cp -C $APP_NAME $file_path app:/media/
abra app cmd -C -T $APP_NAME app set_app_icon $app /media/$file
done
abra app cp $APP_NAME $file_path app:/media/
abra app cmd -T $APP_NAME app set_app_icon $app /media/$file
done
}
set_extra_icons() {
if [ -z "$EXTRA_ICONS" ]; then
echo "Variable EXTRA_ICONS is not set"
exit 1
fi
export EXTRA_ICONS
icon_key_values=$(python3 -c "
set_extra_icons(){
if [ -z "$EXTRA_ICONS" ]
then
echo "Variable EXTRA_ICONS is not set"
exit 1
fi
export EXTRA_ICONS
icon_key_values=$(python3 -c "
import json
import os
for key, value in json.loads(os.environ['EXTRA_ICONS']).items():
slug = key.replace(' ','-')
print(f'{slug}:{value}')
print(f'{key}:{value}')
")
set_icons "$icon_key_values"
set_icons "$icon_key_values"
}
set_app_icon() {
TOKEN=$(cat /run/secrets/admin_token)
python -c """
TOKEN=$(cat /run/secrets/admin_token)
python -c """
import requests
import os
my_token = '$TOKEN'
application = '$1'
icon_path = '$2'
base_url = f'https://$DOMAIN/api/v3'
headers = {'Authorization': f'Bearer {my_token}'}
name_img = os.path.basename(icon_path)
# Upload file via the file management API
url = f'https://$DOMAIN/api/v3/core/applications/{application}/set_icon/'
headers = {'Authorization':f'Bearer {my_token}'}
with open(icon_path, 'rb') as img:
r = requests.post(
f'{base_url}/admin/file/',
files={'file': (name_img, img, 'image/png')},
data={'name': name_img},
headers=headers,
)
if r.status_code == 400 and 'already exists' in r.text:
print(f'{name_img} already uploaded')
elif r.status_code != 200:
print(f'Upload failed: {r.status_code} {r.text}')
exit(1)
else:
print(f'Uploaded {name_img}')
# Set the icon on the application
r = requests.patch(
f'{base_url}/core/applications/{application}/',
json={'meta_icon': name_img},
headers=headers,
)
if r.status_code == 200:
print(f'Set icon for {application}')
else:
print(f'Failed to set icon: {r.status_code} {r.text}')
name_img = os.path.basename(icon_path)
files= {'file': (name_img,img,'image/png') }
with requests.Session() as s:
r = s.post(url,files=files,headers=headers)
print(r.status_code)
"""
}
blueprint_cleanup() {
/manage.py shell -c """
/manage.py shell -c """
delete_flows = ['default-recovery-flow' , 'custom-authentication-flow' , 'invitation-enrollment-flow' , 'initial-setup']
Flow.objects.filter(slug__in=delete_flows).delete()
Stage.objects.filter(flow=None).delete()
Prompt.objects.filter(promptstage=None).delete()
Brand.objects.filter(default=True).delete()
""" 2>&1 | quieten
apply_blueprints
}
check_blueprints() {
failed_blueprints=$(/manage.py shell -c """
print(','.join(b.path for b in BlueprintInstance.objects.exclude(status='successful').exclude(name='Default - Out-of-box-experience flow')))
""" 2>&1 | quieten | tail -n1)
if [ -z "$failed_blueprints" ]; then
echo "All Blueprints Successful"
return 0
fi
echo "These Blueprints failed:"
echo "$failed_blueprints" | tr ',' '\n'
echo "execute failed Blueprints"
export AUTHENTIK_LOG_LEVEL=warning
for bp in $(echo "$failed_blueprints" | tr ',' '\n'); do
echo "Applying: $bp"
ak apply_blueprint "/blueprints/$bp" 2>&1 | quieten
done
return 1
apply_blueprints
}
get_certificate() {
/manage.py shell -c """
/manage.py shell -c """
provider_name='$1'
if not provider_name:
print('no Provider Name given')
@@ -428,23 +285,10 @@ saml = provider.samlprovider
cert = saml.signing_kp
print(''.join(cert.certificate_data.splitlines()[1:-1]))
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
get_user_uid() {
/manage.py shell -c """
/manage.py shell -c """
print(User.objects.filter(username='$1').first().uid)
""" 2>&1 | quieten
return ${PIPESTATUS[0]}
}
get_secrets() {
grep "" -r /var/run/secrets
}
fix_collation_mismatch() {
psql -U ${POSTGRES_USER} -d authentik -c "ALTER DATABASE authentik REFRESH COLLATION VERSION;"
psql -U ${POSTGRES_USER} -d authentik -c "REINDEX DATABASE authentik;"
psql -U ${POSTGRES_USER} -d postgres -c "ALTER DATABASE postgres REFRESH COLLATION VERSION;"
psql -U ${POSTGRES_USER} -d postgres -c "REINDEX DATABASE postgres;"
}
-9
View File
@@ -87,12 +87,3 @@ hedgedoc:
- hedgedoc.png
secrets:
hedgedoc_id: hedgedoc
mila:
uncomment:
- compose.mila.yml
- MILA_DOMAIN
- SECRET_MILA_ID_VERSION
- SECRET_MILA_SECRET_VERSION
- mila.svg
secrets:
mila_id: mila
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- hedgedoc_secret
environment:
- HEDGEDOC_DOMAIN
- HEDGEDOC_APPNAME
- HEDGEDOC_APPDESCRIPTION
configs:
- source: hedgedoc
target: /blueprints/hedgedoc.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
hedgedoc:
name: ${STACK_NAME}_hedgedoc_${HEDGEDOC_VERSION}
name: ${STACK_NAME}_hedgedoc_${HEDGEDOC_CONFIG_VERSION}
file: hedgedoc.yaml.tmpl
template_driver: golang
+1 -4
View File
@@ -3,15 +3,12 @@ services:
worker:
environment:
- KIMAI_DOMAIN
- KIMAI_GROUP
- KIMAI_APPNAME
- KIMAI_APPDESCRIPTION
configs:
- source: kimai
target: /blueprints/kimai.yaml
configs:
kimai:
name: ${STACK_NAME}_kimai_${KIMAI_VERSION}
name: ${STACK_NAME}_kimai_${KIMAI_CONFIG_VERSION}
file: kimai.yaml.tmpl
template_driver: golang
+2 -4
View File
@@ -3,7 +3,7 @@ services:
app:
deploy:
labels:
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect,${STACK_NAME}-frameOptions,${STACK_NAME}-redirect,${STACK_NAME}-redirect-matrix-well-known"
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect-matrix-well-known"
- "traefik.http.middlewares.${STACK_NAME}-redirect-matrix-well-known.redirectregex.regex=^https://(.*)/.well-known/matrix/(.*)"
- "traefik.http.middlewares.${STACK_NAME}-redirect-matrix-well-known.redirectregex.replacement=https://${MATRIX_DOMAIN}/.well-known/matrix/$$2"
worker:
@@ -13,8 +13,6 @@ services:
environment:
- ELEMENT_DOMAIN
- MATRIX_DOMAIN
- MATRIX_APPNAME
- MATRIX_APPDESCRIPTION
configs:
- source: matrix
target: /blueprints/matrix.yaml
@@ -30,6 +28,6 @@ secrets:
configs:
matrix:
name: ${STACK_NAME}_matrix_${MATRIX_VERSION}
name: ${STACK_NAME}_matrix_${MATRIX_CONFIG_VERSION}
file: matrix.yaml.tmpl
template_driver: golang
-30
View File
@@ -1,30 +0,0 @@
version: "3.8"
services:
worker:
secrets:
- mila_id
- mila_secret
environment:
- MILA_DOMAIN
- MILA_GROUP
- MILA_APPNAME
- MILA_APPDESCRIPTION
configs:
- source: mila
target: /blueprints/mila.yaml
secrets:
mila_id:
external: true
name: ${STACK_NAME}_mila_id_${SECRET_MILA_ID_VERSION}
mila_secret:
external: true
name: ${STACK_NAME}_mila_secret_${SECRET_MILA_SECRET_VERSION}
configs:
mila:
name: ${STACK_NAME}_mila_${MILA_VERSION}
file: mila.yaml.tmpl
template_driver: golang
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- monitoring_secret
environment:
- MONITORING_DOMAIN
- MONITORING_APPNAME
- MONITORING_APPDESCRIPTION
configs:
- source: monitoring
target: /blueprints/monitoring.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
monitoring:
name: ${STACK_NAME}_monitoring_${MONITORING_VERSION}
name: ${STACK_NAME}_monitoring_${MONITORING_CONFIG_VERSION}
file: monitoring.yaml.tmpl
template_driver: golang
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- nextcloud_secret
environment:
- NEXTCLOUD_DOMAIN
- NEXTCLOUD_APPNAME
- NEXTCLOUD_APPDESCRIPTION
configs:
- source: nextcloud
target: /blueprints/nextcloud.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
nextcloud:
name: ${STACK_NAME}_nextcloud_${NEXTCLOUD_VERSION}
name: ${STACK_NAME}_nextcloud_${NEXTCLOUD_CONFIG_VERSION}
file: nextcloud.yaml.tmpl
template_driver: golang
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- outline_secret
environment:
- OUTLINE_DOMAIN
- OUTLINE_APPNAME
- OUTLINE_APPDESCRIPTION
configs:
- source: outline
target: /blueprints/outline.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
outline:
name: ${STACK_NAME}_outline_${OUTLINE_VERSION}
name: ${STACK_NAME}_outline_${OUTLINE_CONFIG_VERSION}
file: outline.yaml.tmpl
template_driver: golang
+1 -1
View File
@@ -1,7 +1,7 @@
version: "3.8"
services:
authentik_ldap:
image: ghcr.io/goauthentik/ldap:2026.8.0
image: ghcr.io/goauthentik/ldap:2025.6.2
# Optionally specify which networks the container should be
# might be needed to reach the core authentik server
networks:
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- rallly_secret
environment:
- RALLLY_DOMAIN
- RALLLY_APPNAME
- RALLLY_APPDESCRIPTION
configs:
- source: rallly
target: /blueprints/rallly.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
rallly:
name: ${STACK_NAME}_rallly_${RALLLY_VERSION}
name: ${STACK_NAME}_rallly_${RALLLY_CONFIG_VERSION}
file: rallly.yaml.tmpl
template_driver: golang
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- vikunja_secret
environment:
- VIKUNJA_DOMAIN
- VIKUNJA_APPNAME
- VIKUNJA_APPDESCRIPTION
configs:
- source: vikunja
target: /blueprints/vikunja.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
vikunja:
name: ${STACK_NAME}_vikunja_${VIKUNJA_VERSION}
name: ${STACK_NAME}_vikunja_${VIKUNJA_CONFIG_VERSION}
file: vikunja.yaml.tmpl
template_driver: golang
+1 -3
View File
@@ -6,8 +6,6 @@ services:
- wekan_secret
environment:
- WEKAN_DOMAIN
- WEKAN_APPNAME
- WEKAN_APPDESCRIPTION
configs:
- source: wekan
target: /blueprints/wekan.yaml
@@ -23,6 +21,6 @@ secrets:
configs:
wekan:
name: ${STACK_NAME}_wekan_${WEKAN_VERSION}
name: ${STACK_NAME}_wekan_${WEKAN_CONFIG_VERSION}
file: wekan.yaml.tmpl
template_driver: golang
+1 -3
View File
@@ -7,8 +7,6 @@ services:
environment:
- WORDPRESS_DOMAIN
- WORDPRESS_GROUP
- WORDPRESS_APPNAME
- WORDPRESS_APPDESCRIPTION
configs:
- source: wordpress
target: /blueprints/wordpress.yaml
@@ -24,6 +22,6 @@ secrets:
configs:
wordpress:
name: ${STACK_NAME}_wordpress_${WORDPRESS_VERSION}
name: ${STACK_NAME}_wordpress_${WORDPRESS_CONFIG_VERSION}
file: wordpress.yaml.tmpl
template_driver: golang
+39 -17
View File
@@ -5,6 +5,7 @@ x-env: &env
- AUTHENTIK_POSTGRESQL__USER=authentik
- AUTHENTIK_POSTGRESQL__NAME=authentik
- AUTHENTIK_POSTGRESQL__HOST=db
- AUTHENTIK_REDIS__HOST=redis
- AUTHENTIK_ERROR_REPORTING__ENABLED
- AUTHENTIK_SECRET_KEY=file:///run/secrets/secret_key
- AUTHENTIK_EMAIL__HOST
@@ -16,13 +17,11 @@ x-env: &env
- AUTHENTIK_EMAIL__TIMEOUT
- AUTHENTIK_EMAIL__FROM
- AUTHENTIK_LOG_LEVEL
- AUTHENTIK_DISABLE_UPDATE_CHECK
- BACKGROUND_FONT_COLOR=${BACKGROUND_FONT_COLOR:-white}
- BACKGROUND_BOX_COLOR=${BACKGROUND_BOX_COLOR:-#eaeaeacf}
- AUTHENTIK_FOOTER_LINKS
- AUTHENTIK_IMPERSONATION
- AUTHENTIK_BOOTSTRAP_EMAIL
- AUTHENTIK_BOOTSTRAP_PASSWORD
- WELCOME_MESSAGE
- DEFAULT_LANGUAGE
- EMAIL_SUBJECT
@@ -35,10 +34,11 @@ x-env: &env
version: '3.8'
services:
app:
image: ghcr.io/goauthentik/server:2026.8.0
image: ghcr.io/goauthentik/server:2025.6.2
command: server
depends_on:
- db
- redis
secrets:
- db_password
- admin_pass
@@ -46,9 +46,8 @@ services:
- secret_key
- email_pass
volumes:
- data:/data
- media:/media
- custom_assets:/web/dist/assets
- assets:/web/dist/assets
- templates:/templates
networks:
- internal
@@ -63,25 +62,25 @@ services:
deploy:
labels:
- "traefik.enable=true"
- "traefik.swarm.network=proxy"
- "traefik.docker.network=proxy"
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=9000"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect,${STACK_NAME}-frameOptions,${STACK_NAME}-redirect"
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect,${STACK_NAME}-frameOptions"
- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true"
- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- "traefik.http.middlewares.${STACK_NAME}-frameOptions.headers.customFrameOptionsValue=SAMEORIGIN"
- "traefik.http.middlewares.${STACK_NAME}-frameOptions.headers.contentSecurityPolicy=frame-ancestors ${X_FRAME_OPTIONS_ALLOW_FROM}"
- "coop-cloud.${STACK_NAME}.version=12.1.2+2026.8.0"
- "traefik.http.middlewares.${STACK_NAME}-redirect.redirectregex.regex=^https://(${REDIRECTS})/(.*)"
- "traefik.http.middlewares.${STACK_NAME}-redirect.redirectregex.replacement=https://${DOMAIN}/$${2}"
- "traefik.http.middlewares.${STACK_NAME}-redirect.redirectregex.permanent=true"
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT}"
- "coop-cloud.${STACK_NAME}.version=7.3.2+2025.6.2"
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}"
worker:
image: ghcr.io/goauthentik/server:2026.8.0
image: ghcr.io/goauthentik/server:2025.6.2
command: worker
depends_on:
- db
- redis
secrets:
- db_password
- admin_pass
@@ -92,8 +91,8 @@ services:
- internal
- proxy
volumes:
- data:/data
- media:/media
- /dev/null:/blueprints/default/flow-oobe.yaml
- templates:/templates
- certs:/certs
configs:
@@ -118,13 +117,18 @@ services:
start_period: 5m
db:
image: pgautoupgrade/pgautoupgrade:16-trixie
image: postgres:15.13
secrets:
- db_password
configs:
- source: db_entrypoint
target: /docker-entrypoint.sh
mode: 0555
- source: pg_backup
target: /pg_backup.sh
mode: 0555
entrypoint:
/docker-entrypoint.sh
volumes:
- database:/var/lib/postgresql/data
networks:
@@ -144,8 +148,22 @@ services:
backupbot.backup: "${ENABLE_BACKUPS:-true}"
backupbot.backup.pre-hook: "/pg_backup.sh backup"
backupbot.backup.volumes.database.path: "backup.sql"
backupbot.backup.volumes.redis: "false"
backupbot.restore.post-hook: '/pg_backup.sh restore'
redis:
image: redis:8.0.2-alpine
command: --save 60 1 --loglevel warning
networks:
- internal
healthcheck:
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
interval: 30s
timeout: 10s
retries: 10
start_period: 1m
volumes:
- redis:/data
secrets:
db_password:
@@ -170,11 +188,11 @@ networks:
internal:
volumes:
data:
media:
certs:
redis:
templates:
custom_assets:
assets:
database:
configs:
@@ -202,6 +220,10 @@ configs:
name: ${STACK_NAME}_system_brand_${SYSTEM_BRAND_VERSION}
file: system_brand.yaml.tmpl
template_driver: golang
db_entrypoint:
name: ${STACK_NAME}_db_entrypoint_${DB_ENTRYPOINT_VERSION}
file: entrypoint.postgres.sh.tmpl
template_driver: golang
pg_backup:
name: ${STACK_NAME}_pg_backup_${PG_BACKUP_VERSION}
file: pg_backup.sh
+1 -3
View File
@@ -3,14 +3,12 @@ services:
worker:
environment:
- ZAMMAD_DOMAIN
- ZAMMAD_APPNAME
- ZAMMAD_APPDESCRIPTION
configs:
- source: zammad
target: /blueprints/zammad.yaml
configs:
zammad:
name: ${STACK_NAME}_zammad_${ZAMMAD_VERSION}
name: ${STACK_NAME}_zammad_${ZAMMAD_CONFIG_VERSION}
file: zammad.yaml.tmpl
template_driver: golang
+45
View File
@@ -0,0 +1,45 @@
#!/bin/bash
set -e
MIGRATION_MARKER=$PGDATA/migration_in_progress
OLDDATA=$PGDATA/old_data
NEWDATA=$PGDATA/new_data
if [ -e $MIGRATION_MARKER ]; then
echo "FATAL: migration was started but did not complete in a previous run. manual recovery necessary"
exit 1
fi
if [ -f $PGDATA/PG_VERSION ]; then
DATA_VERSION=$(cat $PGDATA/PG_VERSION)
if [ -n "$DATA_VERSION" -a "$PG_MAJOR" != "$DATA_VERSION" ]; then
echo "postgres data version $DATA_VERSION found, but need $PG_MAJOR. Starting migration"
echo "Installing postgres $DATA_VERSION"
sed -i "s/$/ $DATA_VERSION/" /etc/apt/sources.list.d/pgdg.list
apt-get update && apt-get install -y --no-install-recommends \
postgresql-$DATA_VERSION \
&& rm -rf /var/lib/apt/lists/*
echo "shuffling around"
chown -R postgres:postgres $PGDATA
gosu postgres mkdir $OLDDATA $NEWDATA
chmod 700 $OLDDATA $NEWDATA
mv $PGDATA/* $OLDDATA/ || true
touch $MIGRATION_MARKER
echo "running initdb"
# abuse entrypoint script for initdb by making server error out
gosu postgres bash -c "export PGDATA=$NEWDATA ; /usr/local/bin/docker-entrypoint.sh --invalid-arg || true"
echo "running pg_upgrade"
cd /tmp
gosu postgres pg_upgrade --link -b /usr/lib/postgresql/$DATA_VERSION/bin -d $OLDDATA -D $NEWDATA -U $POSTGRES_USER
cp $OLDDATA/pg_hba.conf $NEWDATA/
mv $NEWDATA/* $PGDATA
rm -rf $OLDDATA
rmdir $NEWDATA
rm $MIGRATION_MARKER
echo "migration complete"
fi
fi
/usr/local/bin/docker-entrypoint.sh postgres
+1 -1
View File
@@ -27,7 +27,7 @@ entries:
### POLICIES
- attrs:
expression: |
if not regex_match(request.context.get('prompt_data').get('username'), '\\s'):
if not regex_match(request.context.get('prompt_data').get('username'), '\s'):
return True
ak_message("Username must not contain any whitespace!")
return False
+1 -1
View File
@@ -4,7 +4,7 @@ metadata:
blueprints.goauthentik.io/instantiate: "true"
name: Recovery with email verification
context:
token_expiry: minutes={{ if eq (env "EMAIL_TOKEN_EXPIRY_MINUTES") "" }}30{{ else }}{{ env "EMAIL_TOKEN_EXPIRY_MINUTES" }}{{ end }}
token_expiry: {{ if eq (env "EMAIL_TOKEN_EXPIRY_MINUTES") "" }} 30 {{ else }} {{ env "EMAIL_TOKEN_EXPIRY_MINUTES" }} {{ end }}
subject: {{ if eq (env "EMAIL_SUBJECT") "" }} Account Recovery {{ else }} {{ env "EMAIL_SUBJECT" }} {{ end }}
entries:
### DEPENDENCIES
+2 -6
View File
@@ -27,9 +27,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: hashed_user_id
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: hedgedoc_provider
identifiers:
@@ -38,15 +35,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "HEDGEDOC_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "HEDGEDOC_DOMAIN" }}/auth/oauth2
name: "{{ if eq (env "HEDGEDOC_APPNAME") "" }}Hedgedoc{{ else }}{{ env "HEDGEDOC_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf hedgedoc_provider
slug: hedgedoc
conditions: []
id: hedgedoc_application
identifiers:
slug: hedgedoc
name: Hedgedoc
model: authentik_core.application
state: present
+1 -39
View File
@@ -1,40 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
xml:space="preserve"
height="200"
width="200"
enable-background="new 0 0 595.275 311.111"
y="0px"
x="0px"
viewBox="0 0 200 200"
id="svg8"
sodipodi:docname="calendar.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs12" /><sodipodi:namedview
id="namedview10"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false" /><rect
rx="31.25"
ry="31.25"
height="200"
width="200"
y="-5.2587998e-06"
x="0"
fill="#0082c9"
id="rect2"
style="stroke-width:6.25" /><g
transform="matrix(5.580375,0,0,5.580375,3251.3125,-1.2081599)"
id="g6"><path
fill="#ffffff"
d="m -572.71,3.5765 c -1.108,0 -2,0.892 -2,2 v 4 c 0,1.108 0.892,2 2,2 1.108,0 2,-0.892 2,-2 v -4 c 0,-1.108 -0.892,-2 -2,-2 z m 16,0 c -1.108,0 -2,0.892 -2,2 v 4 c 0,1.108 0.892,2 2,2 1.108,0 2,-0.892 2,-2 v -4 c 0,-1.108 -0.892,-2 -2,-2 z m -13,4 v 2 c 0,1.662 -1.338,3 -3,3 -1.662,0 -3,-1.338 -3,-3 v -1.875 c -1.728,0.44254 -3,2.0052 -3,3.875 v 16 c 0,2.216 1.784,4 4,4 h 20 c 2.216,0 4,-1.784 4,-4 v -16 c 0,-1.8698 -1.272,-3.4325 -3,-3.875 v 1.875 c 0,1.662 -1.338,3 -3,3 -1.662,0 -3,-1.338 -3,-3 v -2 z m -5.9062,9 h 21.812 c 0.0554,0 0.0937,0.03835 0.0937,0.09375 v 11.812 c 0,0.0554 -0.0384,0.09375 -0.0937,0.09375 h -21.812 c -0.0554,0 -0.0937,-0.03835 -0.0937,-0.09375 v -11.812 c 0,-0.0554 0.0384,-0.09375 0.0937,-0.09375 z"
id="path4" /></g></svg>
<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" version="1.1" xml:space="preserve" height="32" width="32" enable-background="new 0 0 595.275 311.111" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 32 32"><rect rx="5" ry="5" height="32" width="32" y="-.0000052588" x="0" fill="#0082c9"/><g transform="matrix(.89286 0 0 .89286 520.21 -.19331)"><path fill="#fff" d="m-572.71 3.5765c-1.108 0-2 0.892-2 2v4c0 1.108 0.892 2 2 2s2-0.892 2-2v-4c0-1.108-0.892-2-2-2zm16 0c-1.108 0-2 0.892-2 2v4c0 1.108 0.892 2 2 2s2-0.892 2-2v-4c0-1.108-0.892-2-2-2zm-13 4v2c0 1.662-1.338 3-3 3s-3-1.338-3-3v-1.875c-1.728 0.44254-3 2.0052-3 3.875v16c0 2.216 1.784 4 4 4h20c2.216 0 4-1.784 4-4v-16c0-1.8698-1.272-3.4325-3-3.875v1.875c0 1.662-1.338 3-3 3s-3-1.338-3-3v-2h-10zm-5.9062 9h21.812c0.0554 0 0.0937 0.03835 0.0937 0.09375v11.812c0 0.0554-0.0384 0.09375-0.0937 0.09375h-21.812c-0.0554 0-0.0937-0.03835-0.0937-0.09375v-11.812c0-0.0554 0.0384-0.09375 0.0937-0.09375z"/></g></svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

-33
View File
@@ -1,33 +0,0 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
width="200.000000pt" height="200.000000pt" viewBox="0 0 200.000000 200.000000"
preserveAspectRatio="xMidYMid meet">
<metadata>
Created by potrace 1.16, written by Peter Selinger 2001-2019
</metadata>
<g transform="translate(0.000000,200.000000) scale(0.100000,-0.100000)"
fill="#000000" stroke="none">
<path d="M932 1898 c-27 -57 -77 -163 -112 -236 -35 -73 -61 -134 -59 -137 3
-2 32 3 64 13 93 26 272 23 354 -6 35 -13 65 -22 66 -20 1 2 -48 111 -109 243
-137 295 -133 292 -204 143z"/>
<path d="M847 1389 c-120 -41 -219 -130 -281 -251 -108 -215 -74 -446 93 -622
98 -102 202 -146 346 -146 179 0 316 78 410 235 24 41 35 70 33 90 l-3 30
-116 3 -115 3 -37 -36 c-113 -110 -279 -99 -374 24 -91 120 -75 276 41 378 97
85 217 83 318 -6 35 -31 37 -31 145 -31 150 0 164 19 95 126 -117 180 -362
270 -555 203z"/>
<path d="M240 1294 c-129 -18 -236 -33 -237 -34 -2 0 -3 -10 -3 -21 0 -14 60
-84 171 -200 94 -99 175 -179 180 -179 5 0 9 18 9 39 0 109 47 262 110 360 22
34 40 64 40 66 0 8 -18 5 -270 -31z"/>
<path d="M1514 1305 c88 -135 127 -241 134 -373 2 -51 8 -91 12 -90 4 2 82 80
174 174 143 148 166 176 166 203 0 23 -6 34 -22 41 -19 7 -441 70 -472 70 -4
0 -1 -11 8 -25z"/>
<path d="M431 413 c-12 -65 -32 -176 -45 -247 -13 -71 -21 -138 -18 -148 10
-38 61 -21 266 90 109 59 198 112 196 117 -1 6 -23 18 -48 28 -105 41 -240
154 -295 245 -10 17 -23 32 -27 32 -4 0 -17 -53 -29 -117z"/>
<path d="M1497 475 c-64 -93 -214 -201 -319 -229 -23 -6 -23 -6 7 -24 17 -10
116 -65 221 -121 191 -102 217 -110 229 -71 3 10 -12 117 -35 237 -47 258 -48
263 -58 263 -4 -1 -24 -25 -45 -55z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="buchhaltung.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g3043" transform="matrix(0.99999305,0,0,0.99999305,8.34e-5,8.3413775e-5)"><path d="m 19.5,14.2523 v -2.625 c 0,-1.86394 -1.511,-3.37498 -3.375,-3.37498 h -1.5 c -0.6213,0 -1.125,-0.50368 -1.125,-1.125 v -1.5 c 0,-1.86396 -1.511,-3.375 -3.375,-3.375 H 8.25 m 0,11.62498 h 4.5 m -4.5,2.25 h 4.5 m 2.1213,1.5267 c -1.1716,1.4644 -3.071,1.4644 -4.2426,0 -1.17159,-1.4645 -1.17159,-3.8389 0,-5.3033 1.1716,-1.4645 3.071,-1.4645 4.2426,0 M 10.5,2.25232 H 5.625 C 5.00368,2.25232 4.5,2.756 4.5,3.37732 V 20.6273 c 0,0.6213 0.50368,1.125 1.125,1.125 h 12.75 c 0.6213,0 1.125,-0.5037 1.125,-1.125 v -9.375 c 0,-4.97054 -4.0294,-8.99998 -9,-8.99998 z" stroke="#000000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path3034"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="kalender.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2256" transform="matrix(1.1160572,0,0,1.1160572,-1.3926864,-1.3929545)"><path d="m 6.75,3.00232 v 2.25 m 10.5,-2.25 v 2.25 M 3,18.7523 V 7.50232 c 0,-1.24264 1.00736,-2.25 2.25,-2.25 h 13.5 c 1.2426,0 2.25,1.00736 2.25,2.25 V 18.7523 m -18,0 c 0,1.2427 1.00736,2.25 2.25,2.25 h 13.5 c 1.2426,0 2.25,-1.0073 2.25,-2.25 m -18,0 v -7.5 C 3,10.0097 4.00736,9.00232 5.25,9.00232 h 13.5 c 1.2426,0 2.25,1.00738 2.25,2.24998 v 7.5" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2247"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

-6
View File
@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="chat.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
<defs id="defs8"/>
<sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.752866" inkscape:cy="52.585987" inkscape:window-width="1871" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg4"/>
<path d="m 60.012357,86.66786 c 0,1.840131 -1.49174,3.331961 -3.33196,3.331961 -1.84022,0 -3.33196,-1.49183 -3.33196,-3.331961 0,-1.84013 1.49174,-3.33196 3.33196,-3.33196 1.84022,0 3.33196,1.49183 3.33196,3.33196 z m 0,0 h -3.33196 m 36.651562,0 c 0,1.840131 -1.49183,3.331961 -3.33196,3.331961 -1.840131,0 -3.331961,-1.49183 -3.331961,-3.331961 0,-1.84013 1.49183,-3.33196 3.331961,-3.33196 1.84013,0 3.33196,1.49183 3.33196,3.33196 z m 0,0 h -3.33196 m 36.651571,0 c 0,1.840131 -1.49183,3.331961 -3.33196,3.331961 -1.84013,0 -3.33196,-1.49183 -3.33196,-3.331961 0,-1.84013 1.49183,-3.33196 3.33196,-3.33196 1.84013,0 3.33196,1.49183 3.33196,3.33196 z m 0,0 h -3.33196 m 46.64744,0 c 0,40.48465 -35.80213,73.30313 -79.96705,73.30313 -7.88564,0 -15.503833,-1.04579 -22.700252,-2.99521 -8.66318,6.08638 -19.22017,9.65913 -30.61112,9.65913 -1.77011,0 -3.52068,-0.0862 -5.24521,-0.25412 -1.41871,-0.13861 -2.82435,-0.3332 -4.21054,-0.58108 4.29628,-5.0708 7.34791,-11.22471 8.69065,-17.99437 0.80544,-4.06056 -1.18343,-8.0047 -4.14985,-10.89152 -13.480131,-13.12169 -21.740731,-30.79975 -21.740731,-50.24596 0,-40.483853 35.80249,-73.302775 79.967052,-73.302775 44.164921,0 79.967051,32.818922 79.967051,73.302775 z" stroke="#0f172a" stroke-width="13.3278" stroke-linecap="round" stroke-linejoin="round" id="path2" style="stroke-width:13.328;stroke-dasharray:none"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="videokonferenz.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.752866" inkscape:cy="52.585987" inkscape:window-width="1871" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2055" transform="matrix(1.0363388,0,0,1.0363388,-0.4360656,-0.44082343)"><path d="M 15.75,10.5068 20.4697,5.78716 C 20.9421,5.31469 21.75,5.64932 21.75,6.3175 v 11.3787 c 0,0.6682 -0.8079,1.0028 -1.2803,0.5303 L 15.75,13.5068 m -11.25,5.25 h 9 c 1.2426,0 2.25,-1.0073 2.25,-2.25 V 7.50684 c 0,-1.24264 -1.0074,-2.25 -2.25,-2.25 h -9 c -1.24264,0 -2.25,1.00736 -2.25,2.25 v 8.99996 c 0,1.2427 1.00736,2.25 2.25,2.25 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2046"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="kontakte.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.752866" inkscape:cy="52.585987" inkscape:window-width="1871" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg4"/><g style="fill:none" id="g1947" transform="matrix(7.378071,0,0,7.378071,1.463148,1.4116491)"><path d="m 15,9.00696 h 3.75 M 15,12.007 h 3.75 m -3.75,3 h 3.75 m -14.25,4.5 h 15 c 1.2426,0 2.25,-1.0074 2.25,-2.25 V 6.75696 c 0,-1.24264 -1.0074,-2.25 -2.25,-2.25 h -15 c -1.24264,0 -2.25,1.00736 -2.25,2.25 V 17.257 c 0,1.2426 1.00736,2.25 2.25,2.25 z m 6,-10.12504 c 0,1.03554 -0.83947,1.87504 -1.875,1.87504 -1.03553,0 -1.875,-0.8395 -1.875,-1.87504 0,-1.03554 0.83947,-1.875 1.875,-1.875 1.03553,0 1.875,0.83946 1.875,1.875 z m 1.2939,6.33634 c -0.945,0.5034 -2.02369,0.7887 -3.16906,0.7887 -1.14536,0 -2.2241,-0.2853 -3.16903,-0.7887 0.47405,-1.2906 1.71402,-2.2113 3.16903,-2.2113 1.45506,0 2.69496,0.9207 3.16906,2.2113 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path1938"/></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="dateiablage.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2191" transform="matrix(1.0363388,0,0,1.0363388,-0.4360656,-0.43854349)"><path d="m 2.25,12.7546 v -0.75 C 2.25,10.762 3.25736,9.75464 4.5,9.75464 h 15 c 1.2426,0 2.25,1.00736 2.25,2.24996 v 0.75 M 13.0607,6.3153 10.9393,4.19398 C 10.658,3.91267 10.2765,3.75464 9.87868,3.75464 H 4.5 c -1.24264,0 -2.25,1.00736 -2.25,2.25 V 18.0046 c 0,1.2427 1.00736,2.25 2.25,2.25 h 15 c 1.2426,0 2.25,-1.0073 2.25,-2.25 V 9.00464 c 0,-1.24264 -1.0074,-2.25 -2.25,-2.25 h -5.3787 c -0.3978,0 -0.7793,-0.15804 -1.0606,-0.43934 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2182"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="mail.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.752866" inkscape:cy="52.585987" inkscape:window-width="1871" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg4"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><path d="M 21.75,6.75232 V 17.2523 c 0,1.2427 -1.0074,2.25 -2.25,2.25 h -15 c -1.24264,0 -2.25,-1.0073 -2.25,-2.25 V 6.75232 m 19.5,0 c 0,-1.24264 -1.0074,-2.25 -2.25,-2.25 h -15 c -1.24264,0 -2.25,1.00736 -2.25,2.25 m 19.5,0 v 0.24271 c 0,0.78134 -0.4053,1.50673 -1.0708,1.91623 l -7.5,4.61534 c -0.7231,0.4451 -1.6353,0.4451 -2.3584,0 L 3.32078,8.91126 C 2.65535,8.50177 2.25,7.77637 2.25,6.99503 V 6.75232" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path1998"/></g></svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="mitgliederverwaltung.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g3109" transform="matrix(0.99999829,0,0,0.99999829,-6.4447886e-4,-0.37948883)"><path d="m 17.9999,18.726 c 0.2475,0.0204 0.4979,0.0308 0.7507,0.0308 1.0483,0 2.0548,-0.1792 2.9904,-0.5087 0.0063,-0.0796 0.0096,-0.1601 0.0096,-0.2413 0,-1.6568 -1.3432,-3 -3,-3 -0.6276,0 -1.2103,0.1928 -1.6919,0.5223 m 0.9412,3.1969 C 18,18.7363 18,18.7465 18,18.7568 c 0,0.225 -0.0124,0.4471 -0.0365,0.6657 -1.7568,1.008 -3.7928,1.5843 -5.9635,1.5843 -2.17067,0 -4.20673,-0.5763 -5.96349,-1.5843 C 6.01238,19.2039 6,18.9818 6,18.7568 c 0,-0.0102 3e-5,-0.0205 8e-5,-0.0307 M 17.9999,18.726 C 17.994,17.5494 17.6494,16.453 17.0587,15.5291 m 0,0 C 15.9928,13.862 14.1255,12.7568 12,12.7568 c -2.12521,0 -3.99235,1.1049 -5.05831,2.7717 m 0,0 C 6.46023,15.1993 5.87796,15.0068 5.25073,15.0068 c -1.65685,0 -3,1.3432 -3,3 0,0.0812 0.00323,0.1617 0.00956,0.2413 0.93564,0.3295 1.94211,0.5087 2.99044,0.5087 0.25234,0 0.50226,-0.0103 0.74935,-0.0307 m 0.94161,-3.1976 c -0.59098,0.924 -0.93571,2.0207 -0.94161,3.1976 M 15,6.75684 c 0,1.65685 -1.3431,3 -3,3 -1.6569,0 -3,-1.34315 -3,-3 0,-1.65686 1.3431,-3 3,-3 1.6569,0 3,1.34314 3,3 z m 6,3 c 0,1.24266 -1.0074,2.24996 -2.25,2.24996 -1.2426,0 -2.25,-1.0073 -2.25,-2.24996 0,-1.24264 1.0074,-2.25 2.25,-2.25 1.2426,0 2.25,1.00736 2.25,2.25 z m -13.5,0 C 7.5,10.9995 6.49264,12.0068 5.25,12.0068 4.00736,12.0068 3,10.9995 3,9.75684 c 0,-1.24264 1.00736,-2.25 2.25,-2.25 1.24264,0 2.25,1.00736 2.25,2.25 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path3100"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="square-3-stack-3d.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><path d="M 6.42857,9.75232 2.25,12.0023 l 4.17857,2.25 m 0,-4.49998 L 12,12.7523 17.5714,9.75232 m -11.14283,0 -4.17857,-2.25 9.75,-5.25 9.75,5.25 -4.1786,2.25 m 0,0 4.1786,2.24998 -4.1786,2.25 m 0,0 4.1786,2.25 -9.75,5.25 -9.75,-5.25 4.17857,-2.25 m 11.14283,0 -5.5714,3 -5.57143,-3" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2555"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="pad.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2927" transform="matrix(0.99999305,0,0,0.99999305,8.34e-5,8.3413775e-5)"><path d="m 19.5,14.2523 v -2.625 c 0,-1.86394 -1.511,-3.37498 -3.375,-3.37498 h -1.5 c -0.6213,0 -1.125,-0.50368 -1.125,-1.125 v -1.5 c 0,-1.86396 -1.511,-3.375 -3.375,-3.375 H 8.25 m 0,12.74998 h 7.5 m -7.5,3 H 12 M 10.5,2.25232 H 5.625 C 5.00368,2.25232 4.5,2.756 4.5,3.37732 V 20.6273 c 0,0.6213 0.50368,1.125 1.125,1.125 h 12.75 c 0.6213,0 1.125,-0.5037 1.125,-1.125 v -9.375 c 0,-4.97054 -4.0294,-8.99998 -9,-8.99998 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2918"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="passwortmanager.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2305" transform="matrix(1.0363388,0,0,1.0363388,-0.4360656,-0.44338319)"><path d="m 15.75,5.25928 c 1.6569,0 3,1.34314 3,3 m 3,0 c 0,3.31372 -2.6863,6.00002 -6,6.00002 -0.3507,0 -0.6945,-0.0301 -1.0287,-0.0879 -0.563,-0.0972 -1.1593,0.0259 -1.5633,0.4299 L 10.5,17.2593 H 8.25 v 2.25 H 6 v 2.25 H 2.25 v -2.818 c 0,-0.5968 0.23705,-1.1691 0.65901,-1.591 L 9.408,10.8513 C 9.81202,10.4473 9.93512,9.851 9.83785,9.28798 9.7801,8.95374 9.75,8.61002 9.75,8.25928 c 0,-3.31371 2.6863,-6 6,-6 3.3137,0 6,2.68629 6,6 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2296"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="terminumfrage.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2613" transform="matrix(1.0769146,0,0,1.0769146,-0.9229752,-0.92564055)"><path d="m 6.75,3.00464 v 2.25 m 10.5,-2.25 v 2.25 M 3,18.7546 V 7.50464 c 0,-1.24264 1.00736,-2.25 2.25,-2.25 h 13.5 c 1.2426,0 2.25,1.00736 2.25,2.25 V 18.7546 m -18,0 c 0,1.2427 1.00736,2.25 2.25,2.25 h 13.5 c 1.2426,0 2.25,-1.0073 2.25,-2.25 m -18,0 v -7.5 C 3,10.012 4.00736,9.00464 5.25,9.00464 h 13.5 c 1.2426,0 2.25,1.00736 2.25,2.24996 v 7.5 m -9,-6 h 0.0075 v 0.0075 H 12 Z m 0,2.25 h 0.0075 v 0.0075 H 12 Z m 0,2.25 h 0.0075 v 0.0075 H 12 Z m -2.25,-2.25 h 0.0075 v 0.0075 H 9.75 Z m 0,2.25 h 0.0075 v 0.0075 H 9.75 Z m -2.25,-2.25 h 0.0075 v 0.0075 H 7.5 Z m 0,2.25 h 0.0075 v 0.0075 H 7.5 Z m 6.75,-4.5 h 0.0075 v 0.0075 H 14.25 Z m 0,2.25 h 0.0075 v 0.0075 H 14.25 Z m 0,2.25 h 0.0075 v 0.0075 H 14.25 Z m 2.25,-4.5 h 0.0075 v 0.0075 H 16.5 Z m 0,2.25 h 0.0075 v 0.0075 H 16.5 Z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2604"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="projekte.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2460" transform="matrix(1.1160572,0,0,1.1160572,-1.3926864,-1.3903764)"><path d="M 3,8.25 V 18 c 0,1.2426 1.00736,2.25 2.25,2.25 h 13.5 C 19.9926,20.25 21,19.2426 21,18 V 8.25 m -18,0 V 6 C 3,4.75736 4.00736,3.75 5.25,3.75 h 13.5 C 19.9926,3.75 21,4.75736 21,6 v 2.25 m -18,0 H 21 M 5.25,6 H 5.2575 V 6.0075 H 5.25 Z M 7.5,6 H 7.5075 V 6.0075 H 7.5 Z M 9.75,6 H 9.7575 V 6.0075 H 9.75 Z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2418"/><line x1="9" y1="10" x2="9" y2="19" stroke="#000000" id="line2420"/><line x1="15" y1="10" x2="15" y2="19" stroke="#000000" id="line2422"/><line x1="4" y1="10.375" x2="8" y2="10.375" stroke="#000000" stroke-width="0.75" id="line2424"/><line x1="10" y1="10.375" x2="14" y2="10.375" stroke="#000000" stroke-width="0.75" id="line2426"/><line x1="16" y1="10.375" x2="20" y2="10.375" stroke="#000000" stroke-width="0.75" id="line2428"/><rect x="4.75" y="11.75" width="2.5" height="1.5" stroke="#000000" stroke-width="0.5" stroke-linejoin="round" id="rect2430"/><rect x="10.75" y="11.75" width="2.5" height="1.5" stroke="#000000" stroke-width="0.5" stroke-linejoin="round" id="rect2432"/><rect x="16.75" y="14.25" width="2.5" height="1.5" stroke="#000000" stroke-width="0.5" stroke-linejoin="round" id="rect2434"/><rect x="16.75" y="11.75" width="2.5" height="1.5" stroke="#000000" stroke-width="0.5" stroke-linejoin="round" id="rect2436"/><rect x="10.75" y="14.25" width="2.5" height="1.5" stroke="#000000" stroke-width="0.5" stroke-linejoin="round" id="rect2438"/><rect x="10.75" y="16.75" width="2.5" height="1.5" stroke="#000000" stroke-width="0.5" stroke-linejoin="round" id="rect2440"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.7 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="support-ticket-system.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2777" transform="matrix(0.999994,0,0,0.999994,7.2e-5,-0.00223797)"><path d="m 9,12.0046 h 3.75 m -3.75,3 h 3.75 m -3.75,3 h 3.75 m 3,0.75 H 18 c 1.2426,0 2.25,-1.0073 2.25,-2.25 V 6.11286 C 20.25,4.97787 19.405,4.01479 18.2739,3.92091 17.9006,3.88993 17.5261,3.86322 17.1505,3.84083 m -5.801,0 C 11.2848,4.05066 11.25,4.27358 11.25,4.50464 c 0,0.41421 0.3358,0.75 0.75,0.75 h 4.5 c 0.4142,0 0.75,-0.33579 0.75,-0.75 0,-0.23106 -0.0348,-0.45398 -0.0995,-0.66381 m -5.801,0 C 11.6328,2.92221 12.4884,2.25464 13.5,2.25464 H 15 c 1.0116,0 1.8672,0.66757 2.1505,1.58619 m -5.801,0 C 10.9739,3.86322 10.5994,3.88993 10.2261,3.92091 9.09499,4.01479 8.25,4.97788 8.25,6.11286 v 2.14178 m 0,0 H 4.875 c -0.62132,0 -1.125,0.50368 -1.125,1.125 V 20.6296 c 0,0.6214 0.50368,1.125 1.125,1.125 h 9.75 c 0.6213,0 1.125,-0.5036 1.125,-1.125 V 9.37964 c 0,-0.62132 -0.5037,-1.125 -1.125,-1.125 z m -1.5,3.74996 h 0.0075 v 0.0075 H 6.75 Z m 0,3 h 0.0075 v 0.0075 H 6.75 Z m 0,3 h 0.0075 v 0.0075 H 6.75 Z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2768"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="buchungs_und_veranstaltungssystem.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2663" transform="matrix(0.9999921,0,0,0.9999921,9.48e-5,-0.00221517)"><path d="m 16.5,6.00464 v 0.75 m 0,3 v 0.74996 m 0,3 v 0.75 m 0,3 v 0.75 m -9,-5.25 h 5.25 m -5.25,2.25 h 3 M 3.375,5.25464 c -0.62132,0 -1.125,0.50368 -1.125,1.125 v 3.02635 c 0.8967,0.51871 1.5,1.48821 1.5,2.59861 0,1.1105 -0.6033,2.08 -1.5,2.5987 v 3.0263 c 0,0.6214 0.50368,1.125 1.125,1.125 h 17.25 c 0.6213,0 1.125,-0.5036 1.125,-1.125 v -3.0263 c -0.8967,-0.5187 -1.5,-1.4882 -1.5,-2.5987 0,-1.1104 0.6033,-2.0799 1.5,-2.59861 V 6.37964 c 0,-0.62132 -0.5037,-1.125 -1.125,-1.125 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2654"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="zeiterfassung.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2877" transform="matrix(1.0769146,0,0,1.0769146,-0.9229752,-0.92564055)"><path d="m 12,6.00464 v 5.99996 h 4.5 m 4.5,0 c 0,4.9706 -4.0294,9 -9,9 -4.97056,0 -9,-4.0294 -9,-9 0,-4.97052 4.02944,-8.99996 9,-8.99996 4.9706,0 9,4.02944 9,8.99996 z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2868"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="aufgaben.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.752866" inkscape:cy="52.585987" inkscape:window-width="1871" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2104" transform="matrix(1.0363408,0,0,1.0363408,-0.4360896,-0.4385675)"><path d="M 11.3495,3.84083 C 11.2848,4.05066 11.25,4.27358 11.25,4.50464 c 0,0.41421 0.3358,0.75 0.75,0.75 h 4.5 c 0.4142,0 0.75,-0.33579 0.75,-0.75 0,-0.23106 -0.0348,-0.45398 -0.0995,-0.66381 m -5.801,0 C 11.6328,2.92221 12.4884,2.25464 13.5,2.25464 H 15 c 1.0116,0 1.8672,0.66757 2.1505,1.58619 m -5.801,0 C 10.9739,3.86322 10.5994,3.88993 10.2261,3.92091 9.09499,4.01479 8.25,4.97788 8.25,6.11286 v 2.14178 m 8.9005,-4.41381 c 0.3756,0.02239 0.7501,0.0491 1.1234,0.08008 C 19.405,4.01479 20.25,4.97787 20.25,6.11286 V 16.5046 c 0,1.2427 -1.0074,2.25 -2.25,2.25 H 15.75 M 8.25,8.25464 H 4.875 c -0.62132,0 -1.125,0.50368 -1.125,1.125 V 20.6296 c 0,0.6214 0.50368,1.125 1.125,1.125 h 9.75 c 0.6213,0 1.125,-0.5036 1.125,-1.125 v -1.875 M 8.25,8.25464 h 6.375 c 0.6213,0 1.125,0.50368 1.125,1.125 v 9.37496 m -8.25,-3 1.5,1.5 3,-3.75" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2095"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.0 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="webseitenbaukasten.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2827" transform="matrix(1.0769146,0,0,1.0769146,-0.9229752,-0.92564055)"><path d="m 12,21.0046 c 4.1926,0 7.7156,-2.8667 8.7157,-6.747 M 12,21.0046 c -4.19258,0 -7.71558,-2.8667 -8.7157,-6.747 M 12,21.0046 c 2.4853,0 4.5,-4.0294 4.5,-9 0,-4.97052 -2.0147,-8.99996 -4.5,-8.99996 m 0,17.99996 c -2.48528,0 -4.5,-4.0294 -4.5,-9 0,-4.97052 2.01472,-8.99996 4.5,-8.99996 m 0,0 c 3.3652,0 6.299,1.84694 7.8431,4.58245 M 12,3.00464 c -3.36519,0 -6.29901,1.84694 -7.84308,4.58245 m 15.68618,0 C 17.7397,9.40503 14.9983,10.5046 12,10.5046 9.00172,10.5046 6.26027,9.40503 4.15692,7.58709 m 15.68618,0 C 20.5797,8.89207 21,10.3993 21,12.0046 c 0,0.778 -0.0987,1.533 -0.2843,2.253 m 0,0 c -2.5823,1.4318 -5.5538,2.247 -8.7157,2.247 -3.1619,0 -6.13338,-0.8152 -8.7157,-2.247 m 0,0 C 3.09871,13.5376 3,12.7826 3,12.0046 3,10.3993 3.42032,8.89207 4.15692,7.58709" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2818"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="presentation-chart-bar.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="-33.997452" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2007"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2363" transform="matrix(1.0363388,0,0,1.0363388,-0.4360656,-0.4337556)"><path d="m 3.75,3 v 11.25 c 0,1.2426 1.00736,2.25 2.25,2.25 H 8.25 M 3.75,3 h -1.5 m 1.5,0 h 16.5 m 0,0 h 1.5 m -1.5,0 v 11.25 c 0,1.2426 -1.0074,2.25 -2.25,2.25 h -2.25 m -7.5,0 h 7.5 m -7.5,0 -1,3 m 8.5,-3 1,3 m 0,0 0.5,1.5 m -0.5,-1.5 h -9.5 m 0,0 -0.5,1.5 M 13,12.75 h 2.5 1.5 m -4,-2 h 2.5 1.5" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2345"/><path d="M 17,12.75 H 15.5" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2347"/><rect x="7.5" y="6.5" width="10" height="2" stroke="#0f172a" id="rect2349"/><circle cx="9" cy="12" r="1.5" stroke="#000000" id="circle2351"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

-2
View File
@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="180" height="180" viewBox="0 0 180 180" fill="none" version="1.1" id="svg4" sodipodi:docname="Wiki.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xml:space="preserve" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs8"/><sodipodi:namedview id="namedview6" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="2.0442708" inkscape:cx="44.270064" inkscape:cy="53.075159" inkscape:window-width="1516" inkscape:window-height="991" inkscape:window-x="26" inkscape:window-y="23" inkscape:window-maximized="0" inkscape:current-layer="g2564"/><g style="fill:none" id="g2007" transform="matrix(8.0411283,0,0,8.0411283,-6.4935396,-6.5121146)"><g style="fill:none" id="g2564" transform="matrix(1.036347,0,0,1.036347,-0.436164,-0.43624796)"><g style="fill:none" id="g2993" transform="matrix(1.0769146,0,0,1.0769146,-0.9229752,-0.93315741)"><path d="m 12,7.5116 h 1.5 m -1.5,3 h 1.5 m -7.5,3 h 7.5 m -7.5,3 h 7.5 m 3,-9 h 3.375 c 0.6213,0 1.125,0.50368 1.125,1.125 v 9.375 c 0,1.2426 -1.0074,2.25 -2.25,2.25 M 16.5,7.5116 v 10.5 c 0,1.2426 1.0074,2.25 2.25,2.25 M 16.5,7.5116 v -2.625 c 0,-0.62132 -0.5037,-1.125 -1.125,-1.125 H 4.125 C 3.50368,3.7616 3,4.26528 3,4.8866 v 13.125 c 0,1.2426 1.00736,2.25 2.25,2.25 h 13.5 M 6,7.5116 h 3 v 3 H 6 Z" stroke="#0f172a" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" id="path2984"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

+8 -60
View File
@@ -1,60 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="200"
height="200"
viewBox="0 0 200 200"
fill="none"
version="1.1"
id="svg171"
sodipodi:docname="help.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview173"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="2.3032421"
inkscape:cx="119.614"
inkscape:cy="76.631111"
inkscape:window-width="1871"
inkscape:window-height="1011"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg171" />
<g
clip-path="url(#clip0_1735_3439)"
id="g164"
transform="matrix(8.4444369,0,0,8.4444369,-1.3332428,-1.4116916)">
<path
d="m 12,18.0093 v -5.25 m 0,0 c 0.5179,0 1.0206,-0.0656 1.5,-0.189 m -1.5,0.189 c -0.5179,0 -1.0206,-0.0656 -1.5,-0.189 m 3.75,7.4784 c -0.7288,0.1383 -1.481,0.2106 -2.25,0.2106 -0.769,0 -1.5212,-0.0723 -2.25,-0.2106 m 3.75,2.3826 c -0.493,0.0515 -0.9934,0.078 -1.5,0.078 -0.5066,0 -1.007,-0.0265 -1.5,-0.078 m 3.75,-4.422 v -0.1917 c 0,-0.9829 0.6583,-1.8233 1.5085,-2.3166 2.237,-1.298 3.7415,-3.7192 3.7415,-6.49172 0,-4.14214 -3.3579,-7.5 -7.5,-7.5 -4.14214,0 -7.5,3.35786 -7.5,7.5 C 4.5,11.7818 6.00446,14.203 8.24155,15.501 9.09173,15.9943 9.75,16.8347 9.75,17.8176 v 0.1917"
stroke="#0f172a"
stroke-width="1.5"
stroke-linecap="round"
stroke-linejoin="round"
id="path162" />
</g>
<defs
id="defs169">
<clipPath
id="clip0_1735_3439">
<rect
width="24"
height="24"
fill="#ffffff"
transform="translate(0,0.00927734)"
id="rect166"
x="0"
y="0" />
</clipPath>
</defs>
</svg>
<?xml version="1.0" encoding="UTF-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="48" height="48" fill="white" fill-opacity="0.01"/>
<path d="M24 44C29.5228 44 34.5228 41.7614 38.1421 38.1421C41.7614 34.5228 44 29.5228 44 24C44 18.4772 41.7614 13.4772 38.1421 9.85786C34.5228 6.23858 29.5228 4 24 4C18.4772 4 13.4772 6.23858 9.85786 9.85786C6.23858 13.4772 4 18.4772 4 24C4 29.5228 6.23858 34.5228 9.85786 38.1421C13.4772 41.7614 18.4772 44 24 44Z" fill="#2F88FF" stroke="#000000" stroke-width="4" stroke-linejoin="round"/>
<path d="M24 28.6249V24.6249C27.3137 24.6249 30 21.9386 30 18.6249C30 15.3112 27.3137 12.6249 24 12.6249C20.6863 12.6249 18 15.3112 18 18.6249" stroke="white" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M24 37.6249C25.3807 37.6249 26.5 36.5056 26.5 35.1249C26.5 33.7442 25.3807 32.6249 24 32.6249C22.6193 32.6249 21.5 33.7442 21.5 35.1249C21.5 36.5056 22.6193 37.6249 24 37.6249Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

-22
View File
@@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" data-name="Ebene 1" xmlns="http://www.w3.org/2000/svg" viewBox="80 60 430 410">
<defs>
<style>
.b {
fill: #346180;
}
.c {
fill: #009aa5;
}
</style>
</defs>
<g>
<path class="c" d="M319.57,303.39c41.78,18.41,74.43,42.48,87.64,89.83,4.52,16.2,12.63,44.75-10.72,48.82H101.39c-2.63-.09-9.25-2.82-11.12-4.38-.3-.25-4.06-6.12-4.22-6.49-5.78-13.4,2.35-35.12,7.31-47.71,9.49-24.09,25.75-44.44,46.62-59.63,16.07-11.7,34.34-20.54,53.51-25.78,32.68-8.93,94.96-8.37,126.07,5.34Z"/>
<path class="c" d="M299.53,126.4c7.22,5.55,16.92,15.59,20.81,23.69,14.47,30.14,13.54,62.8-6.99,90.82-32.64,44.55-106.51,39.41-133.59-8.24-45.73-80.48,49.74-160.1,119.77-106.26Z"/>
</g>
<g>
<path class="b" d="M395.52,128.43c50.29,40.71,28.84,125.79-34.37,141.27-7.94,1.94-34,4.45-40.2-.24-.7-.53-1.73-1.28-1.25-2.3.2-.42.58-.72.95-1.01,6.58-5.05,11.45-13.02,15.71-20.08s7.99-14.88,10.77-22.84c5.4-15.47,7.48-32.13,5.27-48.4-2.36-17.34-9.63-33.63-20.49-47.31-2.75-3.46-6.2-6.45-9.27-9.63-1.09-1.14-3.73-3.05-4.21-4.6-.9-2.93,2.98-3.72,5.51-4.06,23.02-3.1,46.39,1.77,65.63,14.81,2.04,1.38,4.02,2.84,5.94,4.39Z"/>
<path class="b" d="M433.88,441.36c-2.64-2.97.77-10.22,1.03-13.89,3.54-49.03-30.24-100.05-69.07-126.89-1.99-1.38-11.43-6.12-11.91-6.6-1.42-1.44.09-1.81,1.48-1.99,7.36-.93,17.29,1.08,24.7,2.32,16.51,2.77,33.53,8.05,48.48,15.52,18.53,9.24,34.94,22.72,47.79,38.94,11.65,14.7,54.83,91.93,8.76,92.91-15.76.33-31.52.67-47.28,1-1.97.04-3.23-.46-3.99-1.31Z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

-46
View File
@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="200"
height="200"
viewBox="0 0 200 200"
fill="none"
version="1.1"
id="svg282"
sodipodi:docname="poll.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
inkscape:export-filename="poll_tall.svg"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs286" />
<sodipodi:namedview
id="namedview284"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="4.3999736"
inkscape:cx="116.47797"
inkscape:cy="125.79621"
inkscape:window-width="1871"
inkscape:window-height="1011"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg282" />
<path
d="M 51.538464,16.923263 V 37.692495 M 148.46154,16.923263 V 37.692495 M 16.923078,162.30751 V 58.461725 c 0,-11.470523 9.298709,-20.76923 20.769232,-20.76923 h 124.61538 c 11.47016,0 20.76923,9.298707 20.76923,20.76923 V 162.30751 m -166.153842,0 c 0,11.47108 9.298709,20.76923 20.769232,20.76923 h 124.61538 c 11.47016,0 20.76923,-9.29815 20.76923,-20.76923 m -166.153842,0 V 93.076741 c 0,-11.470154 9.298709,-20.768862 20.769232,-20.768862 h 124.61538 c 11.47016,0 20.76923,9.298708 20.76923,20.768862 V 162.30751 M 100,106.92289 h 0.0692 v 0.0692 H 100 Z m 0,20.76924 h 0.0692 v 0.0692 H 100 Z m 0,20.76923 h 0.0692 v 0.0692 H 100 Z M 79.230771,127.69213 h 0.06923 v 0.0692 h -0.06923 z m 0,20.76923 h 0.06923 v 0.0692 h -0.06923 z M 58.46154,127.69213 h 0.06923 v 0.0692 h -0.06923 z m 0,20.76923 h 0.06923 v 0.0692 h -0.06923 z m 62.30769,-41.53847 h 0.0692 v 0.0692 h -0.0692 z m 0,20.76924 h 0.0692 v 0.0692 h -0.0692 z m 0,20.76923 h 0.0692 v 0.0692 h -0.0692 z m 20.76923,-41.53847 h 0.0692 v 0.0692 h -0.0692 z m 0,20.76924 h 0.0692 v 0.0692 h -0.0692 z"
stroke="#0f172a"
stroke-width="13.8462"
stroke-linecap="round"
stroke-linejoin="round"
id="path280" />
</svg>

Before

Width:  |  Height:  |  Size: 2.3 KiB

+12 -33
View File
@@ -1,33 +1,12 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="200"
height="200"
viewBox="0 0 200 200"
fill="none"
version="1.1"
id="svg346"
sodipodi:docname="support.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs350" />
<sodipodi:namedview
id="namedview348"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false" />
<path
d="m 79.332968,56.337414 c 11.415493,-9.988348 29.923442,-9.988348 41.338062,0 11.41559,9.988447 11.41559,26.182585 0,36.171713 -1.98672,1.738257 -4.1878,3.173487 -6.53016,4.307641 -7.26579,3.515482 -14.13892,9.727022 -14.13892,17.798612 v 7.3077 m 87.69036,-21.923081 c 0,48.431491 -39.26082,87.692311 -87.692311,87.692311 -48.431097,0 -87.692308,-39.26082 -87.692308,-87.692311 0,-48.431097 39.261211,-87.692308 87.692308,-87.692308 48.431491,0 87.692311,39.261211 87.692311,87.692308 z M 99.999999,151.15385 h 0.07308 v 0.0731 h -0.07308 z"
stroke="#0f172a"
stroke-width="14.6154"
stroke-linecap="round"
stroke-linejoin="round"
id="path344" />
</svg>
<?xml version="1.0" encoding="UTF-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 512 512" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>support</title>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="support" fill="#000000" transform="translate(42.666667, 42.666667)">
<path d="M379.734355,174.506667 C373.121022,106.666667 333.014355,-2.13162821e-14 209.067688,-2.13162821e-14 C85.1210217,-2.13162821e-14 45.014355,106.666667 38.4010217,174.506667 C15.2012632,183.311569 -0.101643453,205.585799 0.000508304259,230.4 L0.000508304259,260.266667 C0.000508304259,293.256475 26.7445463,320 59.734355,320 C92.7241638,320 119.467688,293.256475 119.467688,260.266667 L119.467688,230.4 C119.360431,206.121456 104.619564,184.304973 82.134355,175.146667 C86.4010217,135.893333 107.307688,42.6666667 209.067688,42.6666667 C310.827688,42.6666667 331.521022,135.893333 335.787688,175.146667 C313.347976,184.324806 298.68156,206.155851 298.667688,230.4 L298.667688,260.266667 C298.760356,283.199651 311.928618,304.070103 332.587688,314.026667 C323.627688,330.88 300.801022,353.706667 244.694355,360.533333 C233.478863,343.50282 211.780225,336.789048 192.906491,344.509658 C174.032757,352.230268 163.260418,372.226826 167.196286,392.235189 C171.132153,412.243552 188.675885,426.666667 209.067688,426.666667 C225.181549,426.577424 239.870491,417.417465 247.041022,402.986667 C338.561022,392.533333 367.787688,345.386667 376.961022,317.653333 C401.778455,309.61433 418.468885,286.351502 418.134355,260.266667 L418.134355,230.4 C418.23702,205.585799 402.934114,183.311569 379.734355,174.506667 Z M76.8010217,260.266667 C76.8010217,269.692326 69.1600148,277.333333 59.734355,277.333333 C50.3086953,277.333333 42.6676884,269.692326 42.6676884,260.266667 L42.6676884,230.4 C42.6676884,224.302667 45.9205765,218.668499 51.2010216,215.619833 C56.4814667,212.571166 62.9872434,212.571166 68.2676885,215.619833 C73.5481336,218.668499 76.8010217,224.302667 76.8010217,230.4 L76.8010217,260.266667 Z M341.334355,230.4 C341.334355,220.97434 348.975362,213.333333 358.401022,213.333333 C367.826681,213.333333 375.467688,220.97434 375.467688,230.4 L375.467688,260.266667 C375.467688,269.692326 367.826681,277.333333 358.401022,277.333333 C348.975362,277.333333 341.334355,269.692326 341.334355,260.266667 L341.334355,230.4 Z">
</path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

-68
View File
@@ -1,68 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:version="1.1-dev (f9311a1, 2019-12-25)"
sodipodi:docname="talk8.svg"
id="svg19"
xml:space="preserve"
viewBox="0 0 1024 1024"
version="1.1"
stroke-miterlimit="1.4142"
stroke-linejoin="round"
fill-rule="evenodd"
clip-rule="evenodd"><metadata
id="metadata23"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><sodipodi:namedview
inkscape:current-layer="svg19"
inkscape:window-maximized="1"
inkscape:window-y="23"
inkscape:window-x="1440"
inkscape:cy="522.40348"
inkscape:cx="510.51379"
inkscape:zoom="0.67285156"
showgrid="false"
id="namedview21"
inkscape:window-height="1035"
inkscape:window-width="1920"
inkscape:pageshadow="2"
inkscape:pageopacity="0"
guidetolerance="10"
gridtolerance="10"
objecttolerance="10"
borderopacity="1"
inkscape:document-rotation="0"
bordercolor="#666666"
pagecolor="#ffffff" /><defs
id="defs15"><linearGradient
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(8.96 0 0 8.96 -7.8457e-5 .00019795)"
y2="-7.6294e-6"
y1="150"
x2="150"
x1="18.23"
id="a"><stop
id="stop10"
offset="0"
stop-color="#0082c9" /><stop
id="stop12"
offset="1"
stop-color="#1cafff" /></linearGradient></defs>
<rect
id="rect17"
fill-rule="evenodd"
fill="url(#a)"
height="1024"
width="1024" /><path
style="fill:#ffffff"
inkscape:connector-curvature="0"
d="M 511.95919,186 A 325.96385,325.95103 0 0 0 186,511.96034 325.96385,325.95103 0 0 0 511.95919,837.91133 325.96385,325.95103 0 0 0 681.04889,790.22529 c 40.06218,15.91895 129.79781,63.14682 151.15526,42.74701 22.3177,-21.31206 -26.20129,-121.61808 -37.83331,-158.89148 A 325.96385,325.95103 0 0 0 837.91466,511.95755 325.96385,325.95103 0 0 0 511.96013,186.01118 Z m 0.0373,123.92323 A 202.1178,202.11161 0 0 1 714.11425,512.03485 202.1178,202.11161 0 0 1 511.99645,714.13247 202.1178,202.11161 0 0 1 309.87866,512.03485 202.1178,202.11161 0 0 1 511.99645,309.92323 Z"
stroke-width="0.14"
fill="#000"
id="path25" /></svg>

Before

Width:  |  Height:  |  Size: 2.6 KiB

+2 -3
View File
@@ -37,15 +37,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "KIMAI_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "KIMAI_DOMAIN" }}/auth/saml/login
name: "{{ if eq (env "KIMAI_APPNAME") "" }}Kimai{{ else }}{{ env "KIMAI_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf kimai_provider
slug: kimai
conditions: []
id: kimai_application
identifiers:
slug: kimai
name: Kimai
model: authentik_core.application
state: present
+1 -5
View File
@@ -27,9 +27,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: user_username
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: matrix_provider
identifiers:
@@ -38,12 +35,11 @@ entries:
state: present
- attrs:
meta_description: "{{ env "MATRIX_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "ELEMENT_DOMAIN" }}
name: "{{ if eq (env "MATRIX_APPNAME") "" }}Element{{ else }}{{ env "MATRIX_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf matrix_provider
name: Element
conditions: []
id: matrix_application
identifiers:
-53
View File
@@ -1,53 +0,0 @@
version: 1
metadata:
labels:
blueprints.goauthentik.io/instantiate: "true"
name: mila
entries:
- attrs:
access_code_validity: minutes=1
authentication_flow: !Find [authentik_flows.flow, [slug, default-authentication-flow]]
authorization_flow: !Find [authentik_flows.flow, [slug, default-provider-authorization-implicit-consent]]
invalidation_flow: !Find [authentik_flows.flow, [slug, default-provider-invalidation-flow]]
client_id: {{ secret "mila_id" }}
client_secret: {{ secret "mila_secret" }}
client_type: confidential
include_claims_in_id_token: true
issuer_mode: per_provider
redirect_uris:
- matching_mode: strict
url: https://{{ env "MILA_DOMAIN" }}/auth/user/oidc/callback
name: Mila
property_mappings:
- !Find [authentik_providers_oauth2.scopemapping, [scope_name, openid]]
- !Find [authentik_providers_oauth2.scopemapping, [scope_name, email]]
- !Find [authentik_providers_oauth2.scopemapping, [scope_name, profile]]
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: hashed_user_id
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: mila_provider
identifiers:
pk: 9990
model: authentik_providers_oauth2.oauth2provider
state: present
- attrs:
meta_description: "{{ env "MILA_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "MILA_DOMAIN" }}
name: "{{ if eq (env "MILA_APPNAME") "" }}Mila{{ else }}{{ env "MILA_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf mila_provider
conditions: []
id: mila_application
identifiers:
slug: mila
model: authentik_core.application
state: present
+3 -7
View File
@@ -27,26 +27,22 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: user_username
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: monitoring_provider
identifiers:
pk: 9988
pk: 9990
model: authentik_providers_oauth2.oauth2provider
state: present
- attrs:
meta_description: "{{ env "MONITORING_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "MONITORING_DOMAIN" }}
name: "{{ if eq (env "MONITORING_APPNAME") "" }}Monitoring{{ else }}{{ env "MONITORING_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf monitoring_provider
slug: monitoring
conditions: []
id: monitoring_application
identifiers:
slug: monitoring
name: Monitoring
model: authentik_core.application
state: present
+2 -6
View File
@@ -40,9 +40,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: user_username
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: nextcloud_provider
identifiers:
@@ -51,15 +48,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "NEXTCLOUD_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "NEXTCLOUD_DOMAIN" }}
name: "{{ if eq (env "NEXTCLOUD_APPNAME") "" }}Nextcloud{{ else }}{{ env "NEXTCLOUD_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf nextcloud_provider
slug: nextcloud
conditions: []
id: nextcloud_application
identifiers:
slug: nextcloud
name: Nextcloud
model: authentik_core.application
state: present
+2 -6
View File
@@ -27,9 +27,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: hashed_user_id
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: outline_provider
identifiers:
@@ -38,15 +35,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "OUTLINE_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "OUTLINE_DOMAIN" }}/auth/oidc
name: "{{ if eq (env "OUTLINE_APPNAME") "" }}Outline{{ else }}{{ env "OUTLINE_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf outline_provider
slug: outline
conditions: []
id: outline_application
identifiers:
slug: outline
name: Outline
model: authentik_core.application
state: present
+2 -6
View File
@@ -27,9 +27,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: hashed_user_id
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: rallly_provider
identifiers:
@@ -38,15 +35,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "RALLLY_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "RALLLY_DOMAIN" }}
name: "{{ if eq (env "RALLLY_APPNAME") "" }}Rallly{{ else }}{{ env "RALLLY_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf rallly_provider
slug: rallly
conditions: []
id: rallly_application
identifiers:
slug: rallly
name: Rallly
model: authentik_core.application
state: present
-1
View File
@@ -1 +0,0 @@
2025.10 removes redis. Since 2025.8 all redis tasks have been migrated to postgres.
-1
View File
@@ -1 +0,0 @@
This is an intermediate release (required for migrations) before upgrading to 2026.x.
-3
View File
@@ -1,3 +0,0 @@
You must deploy 10.2.0+2025.12.4 first, before deploying this version, if upgrading from 2025.10 or earlier.
Skipping the intermediate version will cause a migration error (although rolled back safely, no data loss).
-1
View File
@@ -1 +0,0 @@
WARNING: This update will clear all custom assets in /web/dist/asssts. You might need to run customize() again.
-1
View File
@@ -1 +0,0 @@
postgres image was replaced py pgautoupdate. Make an database backup to prevent any dataloss before updating.
-1
View File
@@ -1 +0,0 @@
adds admin group for kimai
-1
View File
@@ -1 +0,0 @@
blueprints: handle integrity exception when applying blueprints (cherry-pick #22599 to version-2026.5) (#22927)
-3
View File
@@ -1,3 +0,0 @@
Adds following new envs:
REDIRECTS
AUTHENTIK_DISABLE_UPDATE_CHECK
-4
View File
@@ -1,4 +0,0 @@
Update of config neccessary!
Changed structure of APPLICATION env to:
appname: {"url":"http...", "group":"groupname"}
Adds various new group envs to support application grouping
-6
View File
@@ -1,6 +0,0 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended"
]
}
+2 -6
View File
@@ -27,9 +27,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: hashed_user_id
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: vikunja_provider
identifiers:
@@ -38,15 +35,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "VIKUNJA_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "VIKUNJA_DOMAIN" }}
name: "{{ if eq (env "VIKUNJA_APPNAME") "" }}Vikunja{{ else }}{{ env "VIKUNJA_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf vikunja_provider
slug: vikunja
conditions: []
id: vikunja_application
identifiers:
slug: vikunja
name: Vikunja
model: authentik_core.application
state: present
+2 -6
View File
@@ -45,9 +45,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: hashed_user_id
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: wekan_provider
identifiers:
@@ -56,15 +53,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "WEKAN_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "WEKAN_DOMAIN" }}
name: "{{ if eq (env "WEKAN_APPNAME") "" }}Wekan{{ else }}{{ env "WEKAN_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf wekan_provider
slug: wekan
conditions: []
id: wekan_application
identifiers:
slug: wekan
name: Wekan
model: authentik_core.application
state: present
+5 -6
View File
@@ -27,9 +27,6 @@ entries:
signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]]
sub_mode: user_username
token_validity: days=30
grant_types:
- authorization_code
- refresh_token
conditions: []
id: wordpress_provider
identifiers:
@@ -38,22 +35,24 @@ entries:
state: present
- attrs:
meta_description: "{{ env "WORDPRESS_APPDESCRIPTION" }}"
meta_launch_url: https://{{ env "WORDPRESS_DOMAIN" }}/wp-login.php
name: "{{ if eq (env "WORDPRESS_APPNAME") "" }}Wordpress{{ else }}{{ env "WORDPRESS_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf wordpress_provider
slug: wordpress
conditions: []
id: wordpress_application
identifiers:
slug: wordpress
name: Wordpress
model: authentik_core.application
state: present
{{ if ne (env "WORDPRESS_GROUP") "" }}
- identifiers:
name: {{ env "WORDPRESS_GROUP" }}
attrs:
users:
- 1
id: wordpress_group
model: authentik_core.group
+2 -3
View File
@@ -56,15 +56,14 @@ entries:
state: present
- attrs:
meta_description: "{{ env "ZAMMAD_APPDESCRIPTION" }}"
meta_launch_url: ""
name: "{{ if eq (env "ZAMMAD_APPNAME") "" }}Zammad{{ else }}{{ env "ZAMMAD_APPNAME" }}{{ end }}"
open_in_new_tab: true
policy_engine_mode: any
provider: !KeyOf zammad_provider
slug: zammad
conditions: []
id: zammad_application
identifiers:
slug: zammad
name: Zammad
model: authentik_core.application
state: present