Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
70 commits
Select commit Hold shift + click to select a range
3a1d10d
First implementation of matrix sliding proxy
Josue-T Feb 26, 2024
61add5e
Make it less warning on remove
Josue-T Feb 26, 2024
8b4d2e1
fix test
Josue-T Feb 26, 2024
632ecc4
Fix upgrade with old 3pids_email values
Josue-T Mar 8, 2024
1b522bd
Merge branch 'testing' into matrix_v2
Josue-T Mar 9, 2024
1efee60
Merge branch 'testing' into matrix_v2
Josue-T Mar 9, 2024
507ac9d
Force enable password authentication as some client need it to work c…
Josue-T Mar 19, 2024
72b21bf
Auto-update README
yunohost-bot Mar 19, 2024
24fb003
Merge branch 'testing' into matrix_v2
Josue-T Mar 22, 2024
1ecfca8
Merge branch 'testing' into matrix_v2
Josue-T Apr 3, 2024
1b8c052
Merge branch 'testing' into matrix_v2
Josue-T Apr 17, 2024
4caf510
Merge branch 'testing' into matrix_v2
Josue-T Apr 19, 2024
4d1cc3a
Merge branch 'testing' into matrix_v2
Josue-T Apr 25, 2024
2b6e61d
Merge branch 'testing' into matrix_v2
Josue-T May 6, 2024
ecb452f
Merge branch 'testing' into matrix_v2
Josue-T May 15, 2024
5cda628
[fix] Force enable password authentication on matrixv2
Josue-T May 17, 2024
1b4c08c
Merge branch 'testing' into matrix_v2
Josue-T May 30, 2024
aa34378
Upgrade sliding sync proxy to v0.99.18
nathanael-h Jun 10, 2024
1a39c32
Merge branch 'testing' into matrix_v2
Josue-T Jun 22, 2024
a925519
Merge branch 'testing' into matrix_v2
Josue-T Jun 24, 2024
07efe7b
Merge branch 'testing' into matrix_v2
Josue-T Jul 3, 2024
23985be
Merge branch 'testing' into matrix_v2
Josue-T Jul 17, 2024
50d70de
Merge branch 'testing' into matrix_v2
Josue-T Jul 31, 2024
0f5060c
Merge branch 'testing' into matrix_v2
Josue-T Aug 14, 2024
695e2f0
Add missing sliding sync proxy db on restore
Josue-T Aug 22, 2024
155514f
Merge branch 'testing' into matrix_v2
Josue-T Aug 22, 2024
5a55aee
Merge branch 'testing' into matrix_v2
Josue-T Sep 5, 2024
823bbcc
Merge branch 'testing' into matrix_v2
Josue-T Sep 18, 2024
607fff3
Merge branch 'testing' into matrix_v2
Josue-T Oct 2, 2024
70b585b
Merge branch 'testing' into matrix_v2
Josue-T Oct 16, 2024
0c17daa
Merge branch 'testing' into matrix_v2
Josue-T Oct 28, 2024
5e7b559
Remove sliding sync proxy and use native synapse sliding sync
Josue-T Oct 28, 2024
75d3384
Remove /client as it not anymore necessary
Josue-T Oct 30, 2024
6ae1fc9
Merge pull request #494 from YunoHost-Apps/matrix_v2_merge
Josue-T Nov 1, 2024
b5e25d0
Merge branch 'testing' into matrix_v2
Josue-T Nov 18, 2024
418aba8
Merge branch 'testing' into matrix_v2
Josue-T Nov 27, 2024
52ce772
Merge branch 'testing' into matrix_v2
Josue-T Nov 30, 2024
6e09114
Merge branch 'testing' into matrix_v2
Josue-T Dec 4, 2024
012beea
Merge branch 'testing' into matrix_v2
Josue-T Dec 12, 2024
e0ec9c8
Merge branch 'testing' into matrix_v2
Josue-T Jan 29, 2025
8c9409e
Auto-update READMEs
yunohost-bot Jan 29, 2025
fdbe11a
Merge branch 'testing' into matrix_v2
Josue-T Jan 29, 2025
f845ab4
Merge branch 'testing' into matrix_v2
Josue-T Feb 12, 2025
e69733b
Merge branch 'testing' into matrix_v2
Josue-T Feb 26, 2025
1eb54a4
Merge branch 'testing' into matrix_v2
Josue-T Mar 11, 2025
2099e88
Merge branch 'testing' into matrix_v2
Josue-T Mar 26, 2025
92e6303
Merge branch 'testing' into matrix_v2
Josue-T Mar 27, 2025
11f8d21
Merge branch 'testing' into matrix_v2
Josue-T Apr 8, 2025
7e9a260
First implementation of element call
Josue-T Apr 8, 2025
711a47d
Update licence
Josue-T Apr 12, 2025
080ed2a
Fix upgrade
Josue-T Apr 13, 2025
6c01b3d
Update homeserver config
Josue-T Apr 13, 2025
6bb0213
Move env config for lk-jwt to environement file
Josue-T Apr 13, 2025
bee2eb4
fix tests
Josue-T Apr 14, 2025
7df15aa
Improve livekit config
Josue-T Apr 16, 2025
77d137a
Put SFU in subpath
Josue-T Apr 17, 2025
117665e
Auto-update READMEs
yunohost-bot Apr 22, 2025
8e94b46
Cleanup sliding sync well-known
Josue-T Apr 28, 2025
af29d40
Rework well-known and fix support for some edge cases
Josue-T Apr 30, 2025
1615027
Fix from CI
Josue-T May 2, 2025
11ff119
Fix auto update
Josue-T May 6, 2025
a603e73
Avoid systemd dependency to postgresql
Josue-T May 7, 2025
0b2fbed
Fix checksum
Josue-T May 7, 2025
fdbab09
Upgrade synapse to 1.129.0
May 6, 2025
bda575d
Merge remote-tracking branch 'upstream/testing' into matrix_v2
Josue-T May 7, 2025
0b35dc9
Auto-update READMEs
yunohost-bot May 7, 2025
2f0943b
Merge branch 'testing' into matrix_v2
Josue-T May 7, 2025
d750b39
Auto-update READMEs
yunohost-bot May 7, 2025
f6bfa54
Add setting to allow request on localhost
Josue-T May 8, 2025
259f280
Merge pull request #540 from YunoHost-Apps/allow_request_localhost
Josue-T May 9, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,4 @@ sudo yunohost app upgrade synapse -u https://github.com/YunoHost-Apps/synapse_yn

### 📚 App packaging documentation

Please see <https://doc.yunohost.org/packaging_apps> for more information.
Please see <https://doc.yunohost.org/packaging_apps> for more information.
44 changes: 34 additions & 10 deletions auto_update/auto_update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,14 @@ json_str = json.dumps(loaded_toml)
print(json_str)
EOL
)
echo $result | jq -r "$1"
echo "$result" | jq -r "$1"
}

check_app_version() {
local app_remote_version=$(curl 'https://api.github.com/repos/element-hq/synapse/releases/latest' -H 'Host: api.github.com' --compressed | jq -r ".tag_name" | cut -dv -f2)
local app_remote_version
app_remote_version=$(curl 'https://api.github.com/repos/element-hq/synapse/releases/latest' -H 'Host: api.github.com' --compressed | jq -r ".tag_name" | cut -dv -f2)
lk_jwt_version=$(curl 'https://api.github.com/repos/element-hq/lk-jwt-service/releases/latest' -H 'Host: api.github.com' --compressed | jq -r ".tag_name" | cut -dv -f2)
livekit_version=$(curl 'https://api.github.com/repos/livekit/livekit/releases/latest' -H 'Host: api.github.com' --compressed | jq -r ".tag_name" | cut -dv -f2)

## Check if new build is needed
if [[ "$app_version" != "$app_remote_version" ]]
Expand All @@ -39,6 +42,8 @@ check_app_version() {
upgrade_app() {
(
set -eu
local new_checksum
local prev_checksum

# Define output file name
# arm build: ${result_prefix_name_deb_1}-bin1_armv7l.tar.gz
Expand All @@ -48,29 +53,48 @@ upgrade_app() {
readonly result_prefix_name_deb_2="matrix-synapse_${app_version}-$debian_version_name_2"

# Build armv7 build
build_cmd_deb_1 $app_version $result_prefix_name_deb_1
build_cmd_deb_2 $app_version $result_prefix_name_deb_2
build_cmd_deb_1 "$app_version" "$result_prefix_name_deb_1"
build_cmd_deb_2 "$app_version" "$result_prefix_name_deb_2"
push_armv7_build

# Update python requirement
cp "$build_result_path_deb_1/${result_prefix_name_deb_1}"-build1_requirement.txt ../conf/requirement_"$debian_version_name_1".txt
cp "$build_result_path_deb_2/${result_prefix_name_deb_2}"-build1_requirement.txt ../conf/requirement_"$debian_version_name_2".txt

# Update manifest
sed -r -i 's|version = "[[:alnum:].]{4,8}~ynh[[:alnum:].]{1,2}"|version = "'${app_version}'~ynh1"|' ../manifest.toml
sed -r -i 's|version = "[[:alnum:].]{4,8}~ynh[[:alnum:].]{1,2}"|version = "'"${app_version}"'~ynh1"|' ../manifest.toml

# Update this link
# Update synapse link
sed -r -i "s|armhf.url\s*=(.*)/releases/download/v[[:alnum:].]{4,10}/matrix-synapse_[[:alnum:].]{4,10}-$debian_version_name_1-bin[[:digit:]]_armv7l.tar.gz|armhf.url =\1/releases/download/v${app_version}/matrix-synapse_${app_version}-$debian_version_name_1-bin1_armv7l.tar.gz|" ../manifest.toml
sed -r -i "s|armhf.url\s*=(.*)/releases/download/v[[:alnum:].]{4,10}/matrix-synapse_[[:alnum:].]{4,10}-$debian_version_name_2-bin[[:digit:]]_armv7l.tar.gz|armhf.url =\1/releases/download/v${app_version}/matrix-synapse_${app_version}-$debian_version_name_2-bin1_armv7l.tar.gz|" ../manifest.toml
sed -r -i "s|armhf.url\s*=(.*)/releases/download/v[[:alnum:].]{4,10}/matrix-synapse_[[:alnum:].]{4,10}-$debian_version_name_2-bin[[:digit:]]_armv7l\.tar\.gz|armhf.url =\1/releases/download/v${app_version}/matrix-synapse_${app_version}-$debian_version_name_2-bin1_armv7l.tar.gz|" ../manifest.toml

# Update checksum
sha256sum_arm_archive_deb_1=$(cat $build_result_path_deb_1/${result_prefix_name_deb_1}-bin1_armv7l-sha256.txt)
sha256sum_arm_archive_deb_2=$(cat $build_result_path_deb_2/${result_prefix_name_deb_2}-bin1_armv7l-sha256.txt)
# Update synapse link checksum
sha256sum_arm_archive_deb_1=$(cat "$build_result_path_deb_1/${result_prefix_name_deb_1}-bin1_armv7l-sha256.txt")
sha256sum_arm_archive_deb_2=$(cat "$build_result_path_deb_2/${result_prefix_name_deb_2}-bin1_armv7l-sha256.txt")
prev_sha256sum_arm_archive_deb_1=$(get_from_manifest ".resources.sources.${app_name}_prebuilt_armv7_$debian_version_name_1.armhf.sha256")
prev_sha256sum_arm_archive_deb_2=$(get_from_manifest ".resources.sources.${app_name}_prebuilt_armv7_$debian_version_name_2.armhf.sha256")
sed -r -i "s|$prev_sha256sum_arm_archive_deb_1|$sha256sum_arm_archive_deb_1|" ../manifest.toml
sed -r -i "s|$prev_sha256sum_arm_archive_deb_2|$sha256sum_arm_archive_deb_2|" ../manifest.toml

# Update lk-jwt
wget -O archive.tar.gz "https://github.com/element-hq/lk-jwt-service/archive/refs/tags/v${lk_jwt_version}.tar.gz"
new_checksum=$(sha256sum archive.tar.gz | cut -d' ' -f1)
rm archive.tar.gz

sed -r -i "s|url\s*=(.*)/element-hq/lk-jwt-service/archive/refs/tags/v[[:alnum:].]{4,10}\.tar\.gz|url =\1/element-hq/lk-jwt-service/archive/refs/tags/v${lk_jwt_version}.tar.gz|" ../manifest.toml
prev_checksum=$(get_from_manifest ".resources.sources.lk_jwt.sha256")
sed -r -i "s|$prev_checksum|$new_checksum|" ../manifest.toml

# Update livekit
wget -O checksums.txt "https://github.com/livekit/livekit/releases/download/v${livekit_version}/checksums.txt"
for arch in amd64 arm64 armhf; do
sed -r -i "s|${arch}\.url\s*=(.*)/livekit/livekit/releases/download/v[[:alnum:].]{4,10}/livekit_[[:alnum:].]{4,10}_linux_${arch}.tar.gz|${arch}.url =\1/livekit/livekit/releases/download/v${livekit_version}/livekit_${livekit_version}_linux_${arch}.tar.gz|" ../manifest.toml
prev_checksum="$(get_from_manifest ".resources.sources.livekit.${arch}.sha256")"
new_checksum="$(grep -F "livekit_${livekit_version}_linux_${arch}.tar.gz" checksums.txt | cut -d' ' -f1)"
sed -r -i "s|$prev_checksum|$new_checksum|" ../manifest.toml
done
rm checksums.txt

git commit -a -m "Upgrade $app_name to $app_version"
git push gitea auto_update:auto_update
) 2>&1 | tee "${app_name}_build_temp.log"
Expand Down
35 changes: 32 additions & 3 deletions conf/homeserver.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,6 @@ allow_public_rooms_over_federation: {{ allow_public_rooms_over_federation }}
# Note: The value is ignored when an HTTP proxy is in use
#
ip_range_blacklist:
- '127.0.0.0/8'
- '10.0.0.0/8'
- '172.16.0.0/12'
- '192.168.0.0/16'
Expand All @@ -97,12 +96,15 @@ ip_range_blacklist:
- '198.51.100.0/24'
- '203.0.113.0/24'
- '224.0.0.0/4'
- '::1/128'
- 'fe80::/10'
- 'fc00::/7'
- '2001:db8::/32'
- 'ff00::/8'
- 'fec0::/10'
{%- if allow_to_send_request_to_localhost != 'true' %}
- '127.0.0.0/8'
- '::1/128'
{% endif %}

# List of ports that Synapse should listen on, their purpose and their
# configuration.
Expand Down Expand Up @@ -717,7 +719,7 @@ sso:
# By default, this list contains only the login fallback page.
#
client_whitelist:
{%- for domain in domain_whitelist_client.splitlines() %}
{%- for domain in domains_list.splitlines() %}
- {{ domain }}
{%- endfor %}

Expand Down Expand Up @@ -1004,3 +1006,30 @@ encryption_enabled_by_default_for_room_type: {{ e2e_enabled_by_default }}
# Uncomment to allow non-server-admin users to create groups on this server
#
enable_group_creation: {{ enable_group_creation }}

#
# Used for element call
#
experimental_features:
# MSC3266: Room summary API. Used for knocking over federation
msc3266_enabled: true
# MSC4222: needed for syncv2 state_after. This allows clients to
# correctly track the state of the room.
msc4222_enabled: true
# MSC4140: Delayed events are required for proper call participation signalling. If disabled it is very likely that you end up with stuck calls in Matrix rooms
msc4140_enabled: true

# The maximum allowed duration by which sent events can be delayed, as
# per MSC4140.
max_event_delay_duration: 24h

rc_message:
# This needs to match at least e2ee key sharing frequency plus a bit of headroom
# Note key sharing events are bursty
per_second: 0.5
burst_count: 30
# This needs to match at least the heart-beat frequency plus a bit of headroom
# Currently the heart-beat is every 5 seconds which translates into a rate of 0.2s
rc_delayed_event_mgmt:
per_second: 1
burst_count: 20
Loading