mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-08-28 12:04:11 +00:00
Merge branch 'master' into ep/smp-server-pages
This commit is contained in:
@@ -23,5 +23,5 @@ unzip -o "$tmp/libsimplex.zip" -d "$tmp/simplex-chat/apps/multiplatform/common/s
|
||||
curl -sSf "$libsup" -o "$tmp/libsupport.zip"
|
||||
unzip -o "$tmp/libsupport.zip" -d "$tmp/simplex-chat/apps/multiplatform/common/src/commonMain/cpp/android/libs/arm64-v8a"
|
||||
|
||||
gradle -p "$tmp/simplex-chat/apps/multiplatform/" clean build
|
||||
gradle -p "$tmp/simplex-chat/apps/multiplatform/" -Psimplex.assets.dir=../../assets clean build
|
||||
cp "$tmp/simplex-chat/apps/multiplatform/android/build/outputs/apk/release/android-release-unsigned.apk" "$PWD/simplex-chat.apk"
|
||||
|
||||
@@ -67,13 +67,13 @@ checks() {
|
||||
if ! command -v "$i" > /dev/null 2>&1; then
|
||||
commands_failed="$i $commands_failed"
|
||||
else
|
||||
gradle_ver_local="$(gradle -v | grep Gradle | awk '{print $2}')"
|
||||
gradle_ver_local_compare="$(printf ${gradle_ver_local:-0.0} | awk -F. '{print $1$2}')"
|
||||
gradle_ver_local="$(gradle --version | sed -n 's/^Gradle //p')"
|
||||
gradle_ver_local_compare="$(printf '%s' "$gradle_ver_local" | awk -F. '{print $1"."$2}')"
|
||||
gradle_ver_remote="$(grep distributionUrl ${folder}/apps/multiplatform/gradle/wrapper/gradle-wrapper.properties)"
|
||||
gradle_ver_remote="${gradle_ver_remote#*-}"
|
||||
gradle_ver_remote="${gradle_ver_remote%-*}"
|
||||
gradle_ver_remote_compare="$(printf ${gradle_ver_remote} | awk -F. '{print $1$2}')"
|
||||
|
||||
gradle_ver_remote_compare="$(printf '%s' "$gradle_ver_remote" | awk -F. '{print $1"."$2}')"
|
||||
|
||||
if [ "$gradle_ver_local_compare" != "$gradle_ver_remote_compare" ]; then
|
||||
commands_failed="$i[installed=${gradle_ver_local},required=${gradle_ver_remote}] $commands_failed"
|
||||
fi
|
||||
@@ -134,7 +134,7 @@ build() {
|
||||
|
||||
# Build only one arch
|
||||
sed -i.bak "s/include(.*/include(\"${android_arch}\")/" "$folder/apps/multiplatform/android/build.gradle.kts"
|
||||
gradle -p "$folder/apps/multiplatform/" clean :android:assembleRelease
|
||||
gradle -p "$folder/apps/multiplatform/" -Psimplex.assets.dir=../../assets clean :android:assembleRelease
|
||||
|
||||
mkdir -p "$android_tmp_folder"
|
||||
unzip -oqd "$android_tmp_folder" "$android_apk_output"
|
||||
|
||||
@@ -16,5 +16,10 @@ security unlock-keychain -p "" /tmp/simplex.keychain
|
||||
security list-keychains -s `security list-keychains | xargs` /tmp/simplex.keychain
|
||||
scripts/desktop/build-lib-mac.sh
|
||||
cd apps/multiplatform
|
||||
./gradlew packageDmg
|
||||
./gradlew notarizeDmg
|
||||
if [ -n "${ASSETS_DIR:-}" ]; then
|
||||
set -- -Psimplex.assets.dir="$ASSETS_DIR"
|
||||
else
|
||||
set --
|
||||
fi
|
||||
./gradlew "$@" packageDmg
|
||||
./gradlew "$@" notarizeDmg
|
||||
|
||||
@@ -8,6 +8,7 @@ function readlink() {
|
||||
|
||||
OS=linux
|
||||
ARCH="$(uname -m)"
|
||||
DATABASE_BACKEND="${1:-sqlite}"
|
||||
GHC_VERSION=9.6.3
|
||||
|
||||
if [ "$ARCH" == "aarch64" ]; then
|
||||
@@ -25,7 +26,13 @@ for elem in "${exports[@]}"; do count=$(grep -R "$elem$" libsimplex.dll.def | wc
|
||||
for elem in "${exports[@]}"; do count=$(grep -R "\"$elem\"" flake.nix | wc -l); if [ $count -ne 2 ]; then echo Wrong exports in flake.nix. Add \"$elem\" in two places of the file; exit 1; fi ; done
|
||||
|
||||
#rm -rf $BUILD_DIR
|
||||
cabal build lib:simplex-chat --ghc-options='-optl-Wl,-rpath,$ORIGIN -optl-Wl,-soname,libsimplex.so -flink-rts -threaded' --constraint 'simplexmq +client_library' --constraint 'simplex-chat +client_library'
|
||||
if [[ "$DATABASE_BACKEND" == "postgres" ]]; then
|
||||
echo "Building with postgres backend..."
|
||||
cabal build lib:simplex-chat --ghc-options='-optl-Wl,-rpath,$ORIGIN -optl-Wl,-soname,libsimplex.so -flink-rts -threaded' --constraint 'simplexmq +client_library +client_postgres' --constraint 'simplex-chat +client_library +client_postgres'
|
||||
else
|
||||
echo "Building with sqlite backend..."
|
||||
cabal build lib:simplex-chat --ghc-options='-optl-Wl,-rpath,$ORIGIN -optl-Wl,-soname,libsimplex.so -flink-rts -threaded' --constraint 'simplexmq +client_library' --constraint 'simplex-chat +client_library'
|
||||
fi
|
||||
cd $BUILD_DIR/build
|
||||
mv libHSsimplex-chat-*-inplace-ghc${GHC_VERSION}.so libsimplex.so 2> /dev/null || true
|
||||
#patchelf --add-needed libHSrts_thr-ghc${GHC_VERSION}.so libsimplex.so
|
||||
|
||||
@@ -18,7 +18,12 @@ libcrypto_path=$(ldd common/src/commonMain/cpp/desktop/libs/*/libHSdirect-sqlcip
|
||||
trap "rm common/src/commonMain/cpp/desktop/libs/*/`basename $libcrypto_path` 2> /dev/null || true" EXIT
|
||||
cp $libcrypto_path common/src/commonMain/cpp/desktop/libs/*
|
||||
|
||||
./gradlew createDistributable
|
||||
if [ -n "${ASSETS_DIR:-}" ]; then
|
||||
set -- -Psimplex.assets.dir="$ASSETS_DIR"
|
||||
else
|
||||
set --
|
||||
fi
|
||||
./gradlew "$@" createDistributable
|
||||
rm common/src/commonMain/cpp/desktop/libs/*/`basename $libcrypto_path`
|
||||
|
||||
rm -rf $release_app_dir/AppDir 2>/dev/null
|
||||
|
||||
@@ -4,7 +4,12 @@ ARCH="$(uname -m)"
|
||||
|
||||
scripts/desktop/build-lib-linux.sh
|
||||
cd apps/multiplatform
|
||||
./gradlew packageDeb
|
||||
if [ -n "${ASSETS_DIR:-}" ]; then
|
||||
set -- -Psimplex.assets.dir="$ASSETS_DIR"
|
||||
else
|
||||
set --
|
||||
fi
|
||||
./gradlew "$@" packageDeb
|
||||
|
||||
# Workaround for skiko library
|
||||
#
|
||||
|
||||
@@ -38,6 +38,55 @@
|
||||
</description>
|
||||
|
||||
<releases>
|
||||
<release version="6.5.1" date="2026-05-02">
|
||||
<url type="details">https://simplex.chat/blog/20260430-simplex-channels-v6-5-consortium-crowdfunding-freedom-of-speech.html</url>
|
||||
<description>
|
||||
<p>New in v6.5.1:</p>
|
||||
<ul>
|
||||
<li>additional preset chat relay.</li>
|
||||
<li>fixed a rare bug when receiving files.</li>
|
||||
</ul>
|
||||
<p>New in v6.5:</p>
|
||||
<p>Public channels - speak freely!</p>
|
||||
<ul>
|
||||
<li>Reliability: many relays per channel.</li>
|
||||
<li>Ownership: you can run your own relays.</li>
|
||||
<li>Security: owners hold channel keys.</li>
|
||||
<li>Privacy: for owners and subscribers.</li>
|
||||
</ul>
|
||||
<p>Easier to invite your friends: we made connecting simpler for new users.</p>
|
||||
<p>Safe web links:</p>
|
||||
<ul>
|
||||
<li>opt-in to send link previews.</li>
|
||||
<li>use SOCKS proxy for previews (if enabled).</li>
|
||||
<li>prevent hyperlink phishing.</li>
|
||||
<li>remove link tracking.</li>
|
||||
</ul>
|
||||
<p>Non-profit governance: to make SimpleX Network last.</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="6.5.0" date="2026-04-30">
|
||||
<url type="details">https://simplex.chat/blog/20260430-simplex-channels-v6-5-consortium-crowdfunding-freedom-of-speech.html</url>
|
||||
<description>
|
||||
<p>New in v6.5.</p>
|
||||
<p>Public channels - speak freely!</p>
|
||||
<ul>
|
||||
<li>Reliability: many relays per channel.</li>
|
||||
<li>Ownership: you can run your own relays.</li>
|
||||
<li>Security: owners hold channel keys.</li>
|
||||
<li>Privacy: for owners and subscribers.</li>
|
||||
</ul>
|
||||
<p>Easier to invite your friends: we made connecting simpler for new users.</p>
|
||||
<p>Safe web links:</p>
|
||||
<ul>
|
||||
<li>opt-in to send link previews.</li>
|
||||
<li>use SOCKS proxy for previews (if enabled).</li>
|
||||
<li>prevent hyperlink phishing.</li>
|
||||
<li>remove link tracking.</li>
|
||||
</ul>
|
||||
<p>Non-profit governance: to make SimpleX Network last.</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="6.4.11" date="2026-03-30">
|
||||
<url type="details">https://simplex.chat/blog/20250729-simplex-chat-v6-4-1-welcome-contacts-protect-groups-app-security.html</url>
|
||||
<description>
|
||||
|
||||
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
# Copies generated iOS assets into SimpleXAssets.xcassets.
|
||||
# Intended to run as an Xcode Run Script build phase.
|
||||
# Skips silently if SIMPLEX_ASSETS is not in SWIFT_ACTIVE_COMPILATION_CONDITIONS
|
||||
# or if the source directory is not found.
|
||||
#
|
||||
# The source path is resolved in order:
|
||||
# 1. Command-line argument
|
||||
# 2. SIMPLEX_ASSETS_DIR build setting (set in Local.xcconfig)
|
||||
# 3. No default — skips if neither is set
|
||||
#
|
||||
# Manual usage: ./scripts/copy-assets.sh path/to/assets
|
||||
|
||||
# Skip if SIMPLEX_ASSETS flag is not set (unless run manually outside Xcode)
|
||||
if [ -n "${SWIFT_ACTIVE_COMPILATION_CONDITIONS:-}" ]; then
|
||||
case " $SWIFT_ACTIVE_COMPILATION_CONDITIONS " in
|
||||
*" SIMPLEX_ASSETS "*) ;;
|
||||
*) exit 0 ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
IOS_DIR="$SCRIPT_DIR/../../apps/ios/Shared/SimpleXAssets.xcassets"
|
||||
|
||||
ASSETS_ROOT="${1:-${SIMPLEX_ASSETS_DIR:-}}"
|
||||
if [ -z "$ASSETS_ROOT" ]; then
|
||||
echo "warning: SIMPLEX_ASSETS_DIR not set and no path argument provided" >&2
|
||||
exit 0
|
||||
fi
|
||||
|
||||
SRC_DIR="$ASSETS_ROOT/ios/Assets.xcassets"
|
||||
|
||||
if [ ! -d "$SRC_DIR" ]; then
|
||||
echo "warning: source assets not found: $SRC_DIR (run resize.sh first)" >&2
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Remove old imagesets but keep root Contents.json
|
||||
find "$IOS_DIR" -name "*.imageset" -type d -exec rm -rf {} + 2>/dev/null || true
|
||||
|
||||
# Copy imagesets
|
||||
for imageset in "$SRC_DIR"/*.imageset; do
|
||||
[ -d "$imageset" ] || continue
|
||||
cp -r "$imageset" "$IOS_DIR/"
|
||||
echo "Copied $(basename "$imageset")"
|
||||
done
|
||||
|
||||
echo "Done. Assets copied to $IOS_DIR"
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"https://github.com/simplex-chat/simplexmq.git"."99f9de71e5df213bb062fa11dd165778fc1d7160" = "1gqza72i1lnllj0h0i6d2mf47zy1k4yinvmm61wypij5n1pf626h";
|
||||
"https://github.com/simplex-chat/simplexmq.git"."8bd3193280da6b4decf790bb57b470780c2576ba" = "0zzrsdgsqdiff6ks7l4qsik9p5023f1n56iaf7x395l4ykf6bkqm";
|
||||
"https://github.com/simplex-chat/hs-socks.git"."a30cc7a79a08d8108316094f8f2f82a0c5e1ac51" = "0yasvnr7g91k76mjkamvzab2kvlb1g5pspjyjn2fr6v83swjhj38";
|
||||
"https://github.com/simplex-chat/direct-sqlcipher.git"."f814ee68b16a9447fbb467ccc8f29bdd3546bfd9" = "1ql13f4kfwkbaq7nygkxgw84213i0zm7c1a8hwvramayxl38dq5d";
|
||||
"https://github.com/simplex-chat/sqlcipher-simple.git"."a46bd361a19376c5211f1058908fc0ae6bf42446" = "1z0r78d8f0812kxbgsm735qf6xx8lvaz27k1a0b4a2m0sshpd5gl";
|
||||
|
||||
@@ -110,7 +110,7 @@ for os_pair in ${oses}; do
|
||||
# Desktop: deb
|
||||
docker exec \
|
||||
-t "${container_name}" \
|
||||
sh -c './scripts/desktop/make-deb-linux.sh'
|
||||
sh -c "export ASSETS_DIR='../../assets'; ./scripts/desktop/make-deb-linux.sh"
|
||||
|
||||
# Copy deb
|
||||
docker cp \
|
||||
@@ -128,7 +128,7 @@ for os_pair in ${oses}; do
|
||||
# Appimage
|
||||
docker exec \
|
||||
-t "${container_name}" \
|
||||
sh -c './scripts/desktop/make-appimage-linux.sh && mv ./apps/multiplatform/release/main/*imple*.AppImage ./apps/multiplatform/release/main/simplex.appimage'
|
||||
sh -c "export ASSETS_DIR='../../assets'; ./scripts/desktop/make-appimage-linux.sh && mv ./apps/multiplatform/release/main/*imple*.AppImage ./apps/multiplatform/release/main/simplex.appimage"
|
||||
|
||||
# Copy appimage
|
||||
docker cp \
|
||||
|
||||
Reference in New Issue
Block a user