diff --git a/docs/configuring-playbook-bridge-mautrix-bluesky.md b/docs/configuring-playbook-bridge-mautrix-bluesky.md
index 632f6509a..fac227c78 100644
--- a/docs/configuring-playbook-bridge-mautrix-bluesky.md
+++ b/docs/configuring-playbook-bridge-mautrix-bluesky.md
@@ -1,3 +1,10 @@
+
+
# Setting up Mautrix Bluesky bridging (optional)
Refer the common guide for configuring mautrix bridges: [Setting up a Generic Mautrix Bridge](configuring-playbook-bridge-mautrix-bridges.md)
diff --git a/docs/configuring-playbook-bridge-mautrix-bridges.md b/docs/configuring-playbook-bridge-mautrix-bridges.md
index def918c84..557e1a9a4 100644
--- a/docs/configuring-playbook-bridge-mautrix-bridges.md
+++ b/docs/configuring-playbook-bridge-mautrix-bridges.md
@@ -1,3 +1,12 @@
+
+
# Setting up a Generic Mautrix Bridge (optional)
The playbook can install and configure various [mautrix](https://github.com/mautrix) bridges (twitter, discord, signal, googlechat, etc.), as well as many other (non-mautrix) bridges. This is a common guide for configuring mautrix bridges.
diff --git a/docs/configuring-playbook-bridge-mautrix-discord.md b/docs/configuring-playbook-bridge-mautrix-discord.md
index 0a8c743bb..12d9f243d 100644
--- a/docs/configuring-playbook-bridge-mautrix-discord.md
+++ b/docs/configuring-playbook-bridge-mautrix-discord.md
@@ -1,3 +1,15 @@
+
+
# Setting up Mautrix Discord bridging (optional)
Refer the common guide for configuring mautrix bridges: [Setting up a Generic Mautrix Bridge](configuring-playbook-bridge-mautrix-bridges.md)
diff --git a/docs/configuring-playbook-bridge-mautrix-gmessages.md b/docs/configuring-playbook-bridge-mautrix-gmessages.md
index 658b8eb95..d9289ec56 100644
--- a/docs/configuring-playbook-bridge-mautrix-gmessages.md
+++ b/docs/configuring-playbook-bridge-mautrix-gmessages.md
@@ -1,3 +1,11 @@
+
+
# Setting up Mautrix Google Messages bridging (optional)
Refer the common guide for configuring mautrix bridges: [Setting up a Generic Mautrix Bridge](configuring-playbook-bridge-mautrix-bridges.md)
diff --git a/docs/configuring-playbook-bridge-mautrix-googlechat.md b/docs/configuring-playbook-bridge-mautrix-googlechat.md
index a2e3dff61..5fd1ef99b 100644
--- a/docs/configuring-playbook-bridge-mautrix-googlechat.md
+++ b/docs/configuring-playbook-bridge-mautrix-googlechat.md
@@ -1,3 +1,12 @@
+
+
# Setting up Mautrix Google Chat bridging (optional)
Refer the common guide for configuring mautrix bridges: [Setting up a Generic Mautrix Bridge](configuring-playbook-bridge-mautrix-bridges.md)
diff --git a/docs/configuring-playbook-bridge-mautrix-meta-instagram.md b/docs/configuring-playbook-bridge-mautrix-meta-instagram.md
index 26c34f8d9..c53a22aba 100644
--- a/docs/configuring-playbook-bridge-mautrix-meta-instagram.md
+++ b/docs/configuring-playbook-bridge-mautrix-meta-instagram.md
@@ -1,3 +1,10 @@
+
+
# Setting up Instagram bridging via Mautrix Meta (optional)
Refer the common guide for configuring mautrix bridges: [Setting up a Generic Mautrix Bridge](configuring-playbook-bridge-mautrix-bridges.md)
diff --git a/docs/configuring-playbook-bridge-mautrix-meta-messenger.md b/docs/configuring-playbook-bridge-mautrix-meta-messenger.md
index 51b1a40ca..27f640bba 100644
--- a/docs/configuring-playbook-bridge-mautrix-meta-messenger.md
+++ b/docs/configuring-playbook-bridge-mautrix-meta-messenger.md
@@ -1,3 +1,11 @@
+
+
# Setting up Messenger bridging via Mautrix Meta (optional)
Refer the common guide for configuring mautrix bridges: [Setting up a Generic Mautrix Bridge](configuring-playbook-bridge-mautrix-bridges.md)
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/defaults/main.yml b/roles/custom/matrix-bridge-mautrix-bluesky/defaults/main.yml
index 2fb7c44f2..e43d3bea2 100644
--- a/roles/custom/matrix-bridge-mautrix-bluesky/defaults/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/defaults/main.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2025 MDAD project contributors
+# SPDX-FileCopyrightText: 2025 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
# mautrix-bluesky is a Matrix <-> Bluesky bridge
# Project source code URL: https://github.com/mautrix/bluesky
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/main.yml b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/main.yml
index dd56963ab..0071485aa 100644
--- a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/main.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2025 MDAD project contributors
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- tags:
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_install.yml b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_install.yml
index 17fbaed14..305ac5730 100644
--- a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_install.yml
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_install.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2025 MDAD project contributors
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- ansible.builtin.set_fact:
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_uninstall.yml b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_uninstall.yml
index c3c170699..e38cd26c9 100644
--- a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_uninstall.yml
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/setup_uninstall.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2025 MDAD project contributors
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Check existence of matrix-mautrix-bluesky service
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/validate_config.yml b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/validate_config.yml
index 23e433d33..5e7b03753 100644
--- a/roles/custom/matrix-bridge-mautrix-bluesky/tasks/validate_config.yml
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/tasks/validate_config.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2025 MDAD project contributors
+# SPDX-FileCopyrightText: 2025 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Fail if required mautrix-bluesky settings not defined
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/templates/config.yaml.j2.license b/roles/custom/matrix-bridge-mautrix-bluesky/templates/config.yaml.j2.license
new file mode 100644
index 000000000..826be4a75
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/templates/config.yaml.j2.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2025 MDAD project contributors
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/templates/labels.j2 b/roles/custom/matrix-bridge-mautrix-bluesky/templates/labels.j2
index 876f48012..bec40b880 100644
--- a/roles/custom/matrix-bridge-mautrix-bluesky/templates/labels.j2
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/templates/labels.j2
@@ -1,3 +1,9 @@
+{#
+SPDX-FileCopyrightText: 2025 MDAD project contributors
+
+SPDX-License-Identifier: AGPL-3.0-or-later
+#}
+
{% if matrix_mautrix_bluesky_container_labels_traefik_enabled %}
traefik.enable=true
diff --git a/roles/custom/matrix-bridge-mautrix-bluesky/templates/systemd/matrix-mautrix-bluesky.service.j2.license b/roles/custom/matrix-bridge-mautrix-bluesky/templates/systemd/matrix-mautrix-bluesky.service.j2.license
new file mode 100644
index 000000000..6fe7fc50c
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-bluesky/templates/systemd/matrix-mautrix-bluesky.service.j2.license
@@ -0,0 +1,4 @@
+SPDX-FileCopyrightText: 2025 MDAD project contributors
+SPDX-FileCopyrightText: 2025 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-discord/defaults/main.yml b/roles/custom/matrix-bridge-mautrix-discord/defaults/main.yml
index b6486ed0c..fa1a8e777 100644
--- a/roles/custom/matrix-bridge-mautrix-discord/defaults/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-discord/defaults/main.yml
@@ -1,3 +1,11 @@
+# SPDX-FileCopyrightText: 2022 - 2023 Samuel Meenzen
+# SPDX-FileCopyrightText: 2022 - 2024 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2023 Nikita Chernyi
+# SPDX-FileCopyrightText: 2025 Suguru Hirahara
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
# mautrix-discord is a Matrix <-> Discord bridge
# Project source code URL: https://github.com/mautrix/discord
diff --git a/roles/custom/matrix-bridge-mautrix-discord/tasks/main.yml b/roles/custom/matrix-bridge-mautrix-discord/tasks/main.yml
index 19698f9f1..dc5ccdd4e 100644
--- a/roles/custom/matrix-bridge-mautrix-discord/tasks/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-discord/tasks/main.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2022 - 2023 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2022 MDAD project contributors
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- tags:
diff --git a/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_install.yml b/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_install.yml
index a83092973..e08b1c34c 100644
--- a/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_install.yml
+++ b/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_install.yml
@@ -1,3 +1,10 @@
+# SPDX-FileCopyrightText: 2022 - 2024 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2022 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 Sebastian Gumprich
+# SPDX-FileCopyrightText: 2024 David Mehren
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- ansible.builtin.set_fact:
diff --git a/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_uninstall.yml b/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_uninstall.yml
index ade37c2f8..0b5ddc54f 100644
--- a/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_uninstall.yml
+++ b/roles/custom/matrix-bridge-mautrix-discord/tasks/setup_uninstall.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2022 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Check existence of matrix-mautrix-discord service
diff --git a/roles/custom/matrix-bridge-mautrix-discord/tasks/validate_config.yml b/roles/custom/matrix-bridge-mautrix-discord/tasks/validate_config.yml
index ed04f643b..63552ebb7 100644
--- a/roles/custom/matrix-bridge-mautrix-discord/tasks/validate_config.yml
+++ b/roles/custom/matrix-bridge-mautrix-discord/tasks/validate_config.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2022 MDAD project contributors
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Fail if required mautrix-discord settings not defined
diff --git a/roles/custom/matrix-bridge-mautrix-discord/templates/config.yaml.j2.license b/roles/custom/matrix-bridge-mautrix-discord/templates/config.yaml.j2.license
new file mode 100644
index 000000000..9c33473b5
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-discord/templates/config.yaml.j2.license
@@ -0,0 +1,5 @@
+SPDX-FileCopyrightText: 2022 - 2024 MDAD project contributors
+SPDX-FileCopyrightText: 2022 - 2024 Slavi Pantaleev
+SPDX-FileCopyrightText: 2022 Samuel Meenzen
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-discord/templates/labels.j2 b/roles/custom/matrix-bridge-mautrix-discord/templates/labels.j2
index adc265db2..be59b906e 100644
--- a/roles/custom/matrix-bridge-mautrix-discord/templates/labels.j2
+++ b/roles/custom/matrix-bridge-mautrix-discord/templates/labels.j2
@@ -1,3 +1,9 @@
+{#
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
+#}
+
{% if matrix_mautrix_discord_container_labels_traefik_enabled %}
traefik.enable=true
diff --git a/roles/custom/matrix-bridge-mautrix-discord/templates/systemd/matrix-mautrix-discord.service.j2.license b/roles/custom/matrix-bridge-mautrix-discord/templates/systemd/matrix-mautrix-discord.service.j2.license
new file mode 100644
index 000000000..c751d3d6f
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-discord/templates/systemd/matrix-mautrix-discord.service.j2.license
@@ -0,0 +1,4 @@
+SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
+SPDX-FileCopyrightText: 2022 MDAD project contributors
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/defaults/main.yml b/roles/custom/matrix-bridge-mautrix-gmessages/defaults/main.yml
index 46b1e3099..92099b6b1 100644
--- a/roles/custom/matrix-bridge-mautrix-gmessages/defaults/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/defaults/main.yml
@@ -1,3 +1,12 @@
+# SPDX-FileCopyrightText: 2023 - 2025 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2023 Cody Wyatt Neiman
+# SPDX-FileCopyrightText: 2023 Nikita Chernyi
+# SPDX-FileCopyrightText: 2023 Samuel Meenzen
+# SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+# SPDX-FileCopyrightText: 2024 MDAD project contributors
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
# mautrix-gmessages is a Matrix <-> gmessages bridge
# Project source code URL: https://github.com/mautrix/gmessages
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/main.yml b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/main.yml
index 4ca9e19fe..df53f0892 100644
--- a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/main.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- tags:
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_install.yml b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_install.yml
index 5a3e59f75..777dceab7 100644
--- a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_install.yml
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_install.yml
@@ -1,3 +1,10 @@
+# SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+# SPDX-FileCopyrightText: 2024 David Mehren
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2024 Suguru Hirahara
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- ansible.builtin.set_fact:
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_uninstall.yml b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_uninstall.yml
index e324a523e..e0fae19e7 100644
--- a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_uninstall.yml
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/setup_uninstall.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Check existence of matrix-mautrix-gmessages service
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/validate_config.yml b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/validate_config.yml
index 1358465e5..ccf220349 100644
--- a/roles/custom/matrix-bridge-mautrix-gmessages/tasks/validate_config.yml
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/tasks/validate_config.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Fail if required mautrix-gmessages settings not defined
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/templates/config.yaml.j2.license b/roles/custom/matrix-bridge-mautrix-gmessages/templates/config.yaml.j2.license
new file mode 100644
index 000000000..fb1e93f66
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/templates/config.yaml.j2.license
@@ -0,0 +1,5 @@
+SPDX-FileCopyrightText: 2023 MDAD project contributors
+SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/templates/labels.j2 b/roles/custom/matrix-bridge-mautrix-gmessages/templates/labels.j2
index 1beea2c1c..8dfe66067 100644
--- a/roles/custom/matrix-bridge-mautrix-gmessages/templates/labels.j2
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/templates/labels.j2
@@ -1,3 +1,9 @@
+{#
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
+#}
+
{% if matrix_mautrix_gmessages_container_labels_traefik_enabled %}
traefik.enable=true
diff --git a/roles/custom/matrix-bridge-mautrix-gmessages/templates/systemd/matrix-mautrix-gmessages.service.j2.license b/roles/custom/matrix-bridge-mautrix-gmessages/templates/systemd/matrix-mautrix-gmessages.service.j2.license
new file mode 100644
index 000000000..90f8a2544
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-gmessages/templates/systemd/matrix-mautrix-gmessages.service.j2.license
@@ -0,0 +1,4 @@
+SPDX-FileCopyrightText: 2023 - 2025 Slavi Pantaleev
+SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/defaults/main.yml b/roles/custom/matrix-bridge-mautrix-googlechat/defaults/main.yml
index 50d991dd5..213573c11 100644
--- a/roles/custom/matrix-bridge-mautrix-googlechat/defaults/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/defaults/main.yml
@@ -1,3 +1,14 @@
+# SPDX-FileCopyrightText: 2021 - 2024 MDAD project contributors
+# SPDX-FileCopyrightText: 2021 Aaron Raimist
+# SPDX-FileCopyrightText: 2022 - 2023 Nikita Chernyi
+# SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2022 László Várady
+# SPDX-FileCopyrightText: 2022 Marko Weltzer
+# SPDX-FileCopyrightText: 2022 Ruben Hias
+# SPDX-FileCopyrightText: 2023 Samuel Meenzen
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
# mautrix-googlechat is a Matrix <-> googlechat bridge
# Project source code URL: https://github.com/mautrix/googlechat
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/main.yml b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/main.yml
index be11089b7..3cdc701da 100644
--- a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/main.yml
@@ -1,3 +1,9 @@
+# SPDX-FileCopyrightText: 2021 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 - 2024 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2022 Marko Weltzer
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- tags:
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_install.yml b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_install.yml
index 6d8adebf4..d7cc1f1d5 100644
--- a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_install.yml
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_install.yml
@@ -1,3 +1,13 @@
+# SPDX-FileCopyrightText: 2021 - 2024 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2021 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 Jim Myhrberg
+# SPDX-FileCopyrightText: 2022 Marko Weltzer
+# SPDX-FileCopyrightText: 2022 Nikita Chernyi
+# SPDX-FileCopyrightText: 2022 Sebastian Gumprich
+# SPDX-FileCopyrightText: 2024 David Mehren
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- ansible.builtin.set_fact:
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_uninstall.yml b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_uninstall.yml
index 12b486308..412a08847 100644
--- a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_uninstall.yml
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/setup_uninstall.yml
@@ -1,3 +1,9 @@
+# SPDX-FileCopyrightText: 2021 - 2022 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2021 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 Marko Weltzer
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Check existence of matrix-mautrix-googlechat service
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/validate_config.yml b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/validate_config.yml
index b6543a188..19c89c46c 100644
--- a/roles/custom/matrix-bridge-mautrix-googlechat/tasks/validate_config.yml
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/tasks/validate_config.yml
@@ -1,3 +1,9 @@
+# SPDX-FileCopyrightText: 2021 MDAD project contributors
+# SPDX-FileCopyrightText: 2022 - 2024 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2022 Marko Weltzer
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Fail if required mautrix-googlechat settings not defined
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/templates/config.yaml.j2.license b/roles/custom/matrix-bridge-mautrix-googlechat/templates/config.yaml.j2.license
new file mode 100644
index 000000000..0e41586c5
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/templates/config.yaml.j2.license
@@ -0,0 +1,6 @@
+SPDX-FileCopyrightText: 2021 - 2022 MDAD project contributors
+SPDX-FileCopyrightText: 2021 - 2024 Slavi Pantaleev
+SPDX-FileCopyrightText: 2022 - 2023 Nikita Chernyi
+SPDX-FileCopyrightText: 2022 László Várady
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/templates/labels.j2 b/roles/custom/matrix-bridge-mautrix-googlechat/templates/labels.j2
index 8f35f5c51..567dc2958 100644
--- a/roles/custom/matrix-bridge-mautrix-googlechat/templates/labels.j2
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/templates/labels.j2
@@ -1,3 +1,9 @@
+{#
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
+#}
+
{% if matrix_mautrix_googlechat_container_labels_traefik_enabled %}
traefik.enable=true
diff --git a/roles/custom/matrix-bridge-mautrix-googlechat/templates/systemd/matrix-mautrix-googlechat.service.j2.license b/roles/custom/matrix-bridge-mautrix-googlechat/templates/systemd/matrix-mautrix-googlechat.service.j2.license
new file mode 100644
index 000000000..f91d0b692
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-googlechat/templates/systemd/matrix-mautrix-googlechat.service.j2.license
@@ -0,0 +1,4 @@
+SPDX-FileCopyrightText: 2021 MDAD project contributors
+SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/README.md b/roles/custom/matrix-bridge-mautrix-meta-instagram/README.md
index 41e9d77d9..ef06fdc36 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/README.md
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/README.md
@@ -1,3 +1,9 @@
+
+
# matrix-mautrix-meta-instagram
This bridge role is derived from the matrix-mautrix-meta-messenger Ansible role via automatic changes (see `just rebuild-mautrix-meta-instagram` or `bin/rebuild-mautrix-meta-instagram.sh`).
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/defaults/main.yml b/roles/custom/matrix-bridge-mautrix-meta-instagram/defaults/main.yml
index 006fcda7e..65e1b7268 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/defaults/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/defaults/main.yml
@@ -1,3 +1,10 @@
+# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2024 MDAD project contributors
+# SPDX-FileCopyrightText: 2024 Nikita Chernyi
+# SPDX-FileCopyrightText: 2024 Suguru Hirahara
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
# mautrix-meta is a Matrix <-> Facebook/Messenger/Instagram bridge
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/install.yml b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/install.yml
index 3debb493e..4f3749c1e 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/install.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/install.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2024 David Mehren
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- ansible.builtin.set_fact:
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/main.yml b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/main.yml
index 0acc399f0..f06937433 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/main.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- tags:
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/uninstall.yml b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/uninstall.yml
index 991f47b40..794607e04 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/uninstall.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/uninstall.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Check existence of mautrix-meta-instagram service
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/validate_config.yml b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/validate_config.yml
index 212e261b8..833106582 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/validate_config.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/validate_config.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Fail if required mautrix-meta-instagram settings not defined
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/config.yaml.j2.license b/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/config.yaml.j2.license
new file mode 100644
index 000000000..dfee73659
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/config.yaml.j2.license
@@ -0,0 +1,5 @@
+SPDX-FileCopyrightText: 2024 Nikita Chernyi
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+SPDX-FileCopyrightText: 2024 Suguru Hirahara
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/labels.j2 b/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/labels.j2
index 3648706cb..de8156bfe 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/labels.j2
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/labels.j2
@@ -1,3 +1,9 @@
+{#
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
+#}
+
{% if matrix_mautrix_meta_instagram_container_labels_traefik_enabled %}
traefik.enable=true
diff --git a/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/systemd/matrix-mautrix-meta.service.j2.license b/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/systemd/matrix-mautrix-meta.service.j2.license
new file mode 100644
index 000000000..e18b238ea
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-meta-instagram/templates/systemd/matrix-mautrix-meta.service.j2.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/defaults/main.yml b/roles/custom/matrix-bridge-mautrix-meta-messenger/defaults/main.yml
index d6f5debcb..ae26f7c1f 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-messenger/defaults/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/defaults/main.yml
@@ -1,3 +1,10 @@
+# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
+# SPDX-FileCopyrightText: 2024 MDAD project contributors
+# SPDX-FileCopyrightText: 2024 Nikita Chernyi
+# SPDX-FileCopyrightText: 2024 Suguru Hirahara
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
# mautrix-meta is a Matrix <-> Facebook/Messenger/Instagram bridge
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/install.yml b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/install.yml
index 438682d2b..ef09d425b 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/install.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/install.yml
@@ -1,3 +1,8 @@
+# SPDX-FileCopyrightText: 2024 David Mehren
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- ansible.builtin.set_fact:
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/main.yml b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/main.yml
index 5e5a7bebd..c77b53fa0 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/main.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/main.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- tags:
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/uninstall.yml b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/uninstall.yml
index 22040c2df..7ec36ad14 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/uninstall.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/uninstall.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Check existence of mautrix-meta-messenger service
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/validate_config.yml b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/validate_config.yml
index 2d69f924e..3300a54a0 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/validate_config.yml
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/tasks/validate_config.yml
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
---
- name: Fail if required mautrix-meta-messenger settings not defined
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2.license b/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2.license
new file mode 100644
index 000000000..dfee73659
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2.license
@@ -0,0 +1,5 @@
+SPDX-FileCopyrightText: 2024 Nikita Chernyi
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+SPDX-FileCopyrightText: 2024 Suguru Hirahara
+
+SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/labels.j2 b/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/labels.j2
index 79e1fc743..1c5b0a6e0 100644
--- a/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/labels.j2
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/labels.j2
@@ -1,3 +1,9 @@
+{#
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later
+#}
+
{% if matrix_mautrix_meta_messenger_container_labels_traefik_enabled %}
traefik.enable=true
diff --git a/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/systemd/matrix-mautrix-meta.service.j2.license b/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/systemd/matrix-mautrix-meta.service.j2.license
new file mode 100644
index 000000000..e64bd56b9
--- /dev/null
+++ b/roles/custom/matrix-bridge-mautrix-meta-messenger/templates/systemd/matrix-mautrix-meta.service.j2.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2024 Slavi Pantaleev
+
+SPDX-License-Identifier: AGPL-3.0-or-later