matrix-docker-ansible-deploy icon indicating copy to clipboard operation
matrix-docker-ansible-deploy copied to clipboard

Any way to change the favicon of element

Open akib1689 opened this issue 7 months ago • 1 comments

Playbook Configuration:

My vars.yml file looks like this:

---
# The bare domain name which represents your Matrix identity.
# Matrix user IDs for your server will be of the form (`@alice:example.com`).
#
# Note: this playbook does not touch the server referenced here.
# Installation happens on another server ("matrix.example.com", see `matrix_server_fqn_matrix`).
#
# If you've deployed using the wrong domain, you'll have to run the Uninstalling step,
# because you can't change the Domain after deployment.
matrix_domain: XXXX.com

# The Matrix homeserver software to install.
# See:
#  - `roles/custom/matrix-base/defaults/main.yml` for valid options
#  - the `docs/configuring-playbook-IMPLEMENTATION_NAME.md` documentation page, if one is available for your implementation choice
#
# By default, we use Synapse, because it's the only full-featured Matrix server at the moment.
#
# Note that the homeserver implementation of a server will not be able to be changed without data loss.
matrix_homeserver_implementation: synapse

# A secret used as a base, for generating various other secrets.
# You can put any string here, but generating a strong one is preferred. You can create one with a command like `pwgen -s 64 1`.
matrix_homeserver_generic_secret_key: 'XXXXXXXXXXX'

# By default, the playbook manages its own Traefik (https://doc.traefik.io/traefik/) reverse-proxy server.
# It will retrieve SSL certificates for you on-demand and forward requests to all other components.
# For alternatives, see `docs/configuring-playbook-own-webserver.md`.
matrix_playbook_reverse_proxy_type: playbook-managed-traefik

# Controls whether container networks will be created with IPv6 support.
#
# If you also have IPv6 support on your server/network and AAAA DNS records pointing to the server,
# enabling this will effectively give you full public IPv6 connectivity (powered by NAT66).
#
# We recommend leaving this enabled even if you don't currently have IPv6 connectivity on your server/network.
# This way, once you eventually get IPv6 connectivity, you won't have to change anything (besides DNS records).
#
# Flipping this setting later on requires manual work (stopping services, deleting and recreating all container networks).
#
# In the future, this setting will likely default to `true`, so if you really want IPv6 disabled, explicitly set this to `false`.
#
# People managing Docker themselves and running an older Docker version will need additional configuration.
#
# Learn more in `docs/configuring-ipv6.md`.
devture_systemd_docker_base_ipv6_enabled: true

# A Postgres password to use for the superuser Postgres user (called `matrix` by default).
#
# The playbook creates additional Postgres users and databases (one for each enabled service) using this superuser account.
#
# Changing this value subsequently requires manual work.
# The value used here must be shorter than 100 characters.
postgres_connection_password: 'XXXXXXXXXXXXXXXXXX'

# By default, we configure coturn's external IP address using the value specified for `ansible_host` in your `inventory/hosts` file.
# If this value is an external IP address, you can skip this section.
#
# If `ansible_host` is not the server's external IP address, you have 2 choices:
# 1. Uncomment the line below, to allow IP address auto-detection to happen (more on this below)
# 2. Uncomment and adjust the line below to specify an IP address manually
#
# By default, auto-detection will be attempted using the `https://ifconfig.co/json` API.
# Default values for this are specified in `matrix_coturn_turn_external_ip_address_auto_detection_*` variables in the coturn role
# (see `roles/custom/matrix-coturn/defaults/main.yml`).
#
# If your server has multiple IP addresses, you may define them in another variable which allows a list of addresses.
# Example: `matrix_coturn_turn_external_ip_addresses: ['1.2.3.4', '4.5.6.7']`
#
3: 'XXX.XXX.XXX.XXX'

matrix_traefik_config_http_middlewares_compression_enabled: true
matrix_traefik_config_entrypoint_web_transport_respondingTimeouts_readTimeout: 300s

# matrix_ssl_lets_encrypt_support_email: [email protected]

# matrix_nginx_proxy_base_domain_serving_enabled: true

# Email configuration for the Matrix server.
matrix_synapse_email_enabled: true
matrix_synapse_email_smtp_host: smtp.gmail.com
matrix_synapse_email_smtp_port: 587
matrix_synapse_email_smtp_user: '[email protected]'
matrix_synapse_email_smtp_pass: '...'
matrix_synapse_email_notif_from: "Your Friendly %(app)s homeserver <[email protected]>"

# Enable email registration for the Matrix server.
matrix_synapse_enable_registration: true
matrix_synapse_registrations_require_3pid:
  - email

# Custom theme for element web client
# matrix_client_element_themes_enabled: true
matrix_client_element_default_theme: 'dark'

matrix_client_element_branding_welcome_background_url: 'https://...'

matrix_client_element_branding_auth_header_logo_url: 'https://...'
matrix_client_element_brand: 'Element'

matrix_client_element_branding_auth_footer_links:
  - text: 'Terms of Service'
    url: 'https://...'
  - text: 'Privacy Policy'
    url: 'https://...'
  - text: 'Security'
    url: 'https://...'

matrix_client_element_show_lab_settings: false

matrix_client_element_configuration_extension_json: |
  {
    "embedded_pages": {
      "login_for_welcome": true
    }
  }

Matrix Server:

  • OS: Ubuntu 22.04
  • Architecture: amd64

Ansible: If your problem appears to be with Ansible, tell us:

  • where you run Ansible — on another computer
  • what version of Ansible you're running — ansible [core 2.18.4]

Problem description:

I want to know if there is any simpler way to customize the favicon of the self hosted element web client. In the documentation there isn't any clear way of configuring this parameter. Now I'm thinking this:

  • Intercept the favicons request to the server in traefik layer.
  • serve some static file in place of the element server

Additional context

So, I was wondering if my thought process is correct or not. Or I'm missing some pieces that lets you easily configure this favicon.

My element client version:

Element version: 1.11.99 Crypto version: Rust SDK 0.10.0 (3cc301d), Vodozemac 0.9.0

akib1689 avatar Apr 29 '25 12:04 akib1689