Skip to content

Commit

Permalink
Change update strategy
Browse files Browse the repository at this point in the history
& bump version to v9.3.3.1

- auto release
- use triple tuple to represent preview/beta, use quad tuple to represent newer release

update log:
Long time no see!
- merge upstream v9.3.3-pre01
As Telegram-FOSS is stuck at v9.3.3, there may be new branch that based on latest nekogram.
- Revert Remove Hide device model
Spoof device using entry in device.csv
- Add shadowban
  • Loading branch information
nexplorer-3e committed Mar 13, 2023
1 parent 6dd94af commit c286c37
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 95 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/debug.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ on:
branches:
- luvletter
- NekoN-fake
tags-ignore:
- "*"
paths-ignore:
- '**.md'
- '.github/**'
Expand Down
104 changes: 23 additions & 81 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
name: Release Build
on:
push:
tag:
- "*"
workflow_dispatch:
inputs:
tag:
Expand Down Expand Up @@ -195,76 +198,11 @@ jobs:
echo "${{ secrets.KEYSTORE_PASS }}" > TMessagesProj/priv-signing.properties
sha256sum TMessagesProj/luvletter2333.jks
./run libs v2ray
shadowsocks:
name: Native Build (Shadowsocks)
runs-on: ubuntu-latest
needs: check
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Fetch Status
run: git submodule status ss-rust/src/main/rust/shadowsocks-rust > shadowsocks_status
- name: Shadowsocks Cache
id: cache
uses: actions/cache@v2
with:
path: |
TMessagesProj/libs/ss-rust-release.aar
key: ${{ hashFiles('shadowsocks_status') }}
- name: Setup Android SDK Tools
uses: android-actions/setup-android@v2
if: steps.cache.outputs.cache-hit != 'true'
- name: Install NDK
if: steps.cache.outputs.cache-hit != 'true'
run: |
echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;21.4.7075529" --sdk_root=${ANDROID_SDK_ROOT} &> /dev/null
echo "sdk.dir=${ANDROID_HOME}" > local.properties
echo "ndk.dir=${ANDROID_HOME}/ndk/21.4.7075529" >> local.properties
- name: Install Rust
if: steps.cache.outputs.cache-hit != 'true'
run: ./run init action shadowsocks
- name: Native Build
if: steps.cache.outputs.cache-hit != 'true'
run: |
echo "${{ secrets.B64_SIGNING_KEY }}" | base64 --decode - > TMessagesProj/luvletter2333.jks
echo "${{ secrets.KEYSTORE_PASS }}" > TMessagesProj/priv-signing.properties
sha256sum TMessagesProj/luvletter2333.jks
./run libs shadowsocks
shadowsocksr:
name: Native Build (ShadowsocksR)
runs-on: ubuntu-latest
needs: check
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Fetch Status
run: git submodule status 'ssr-libev/*' > shadowsocksr_status
- name: ShadowsocksR Cache
id: cache
uses: actions/cache@v2
with:
path: |
TMessagesProj/libs/ssr-libev-release.aar
key: ${{ hashFiles('shadowsocksr_status') }}
- name: Setup Android SDK Tools
uses: android-actions/setup-android@v2
if: steps.cache.outputs.cache-hit != 'true'
- name: Install NDK
if: steps.cache.outputs.cache-hit != 'true'
run: |
echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;21.4.7075529" --sdk_root=${ANDROID_SDK_ROOT} &> /dev/null
echo "sdk.dir=${ANDROID_HOME}" > local.properties
echo "ndk.dir=${ANDROID_HOME}/ndk/21.4.7075529" >> local.properties
- name: Native Build
if: steps.cache.outputs.cache-hit != 'true'
run: |
echo "${{ secrets.B64_SIGNING_KEY }}" | base64 --decode - > TMessagesProj/luvletter2333.jks
echo "${{ secrets.KEYSTORE_PASS }}" > TMessagesProj/priv-signing.properties
sha256sum TMessagesProj/luvletter2333.jks
./run libs ssr
build:
name: Gradle Build
runs-on: ubuntu-latest
outputs:
ver_code: ${{ steps.gradle.outputs.ver_code }}
needs:
- native
- v2ray
Expand Down Expand Up @@ -321,18 +259,6 @@ jobs:
path: |
TMessagesProj/libs/libv2ray.aar
key: ${{ hashFiles('bin/libs/v2ray/*', 'v2ray_status') }}
- name: Shadowsocks Cache
uses: actions/cache@v2
with:
path: |
TMessagesProj/libs/ss-rust-release.aar
key: ${{ hashFiles('shadowsocks_status') }}
- name: ShadowsocksR Cache
uses: actions/cache@v2
with:
path: |
TMessagesProj/libs/ssr-libev-release.aar
key: ${{ hashFiles('shadowsocksr_status') }}
- name: Fix Gradle Memoery
run: |
sed -i -e "s/16384/6144/g" gradle.properties
Expand All @@ -343,6 +269,7 @@ jobs:
path: ~/.gradle
key: gradle-${{ hashFiles('**/*.gradle') }}
- name: Release Build
id: gradle
run: |
echo "${{ secrets.B64_SIGNING_KEY }}" | base64 --decode - > TMessagesProj/luvletter2333.jks
echo "${{ secrets.KEYSTORE_PASS }}" > TMessagesProj/priv-signing.properties
Expand Down Expand Up @@ -394,18 +321,22 @@ jobs:
name: telegram-bot-api-binary
path: .
- name: Release
env:
ver_code: ${{ needs.build.outputs.ver_code }}
run: |
sudo apt-get update && sudo apt-get install jq -y
chmod +x telegram-bot-api-binary
function start() {
./telegram-bot-api-binary --api-id=21724 --api-hash=3e0cb5efcd52300aec5994fdfc5bdc16 --local 2>&1 > /dev/null &
}
start
while ! curl http://127.0.0.1:8081/; do start; sleep 1; done
curl http://127.0.0.1:8081/bot${{ secrets.TELEGRAM_TOKEN }}/sendMessage \
echo ">> Posting apk metadata"
apk_meta_msgid=`curl http://127.0.0.1:8081/bot${{ secrets.TELEGRAM_TOKEN }}/sendMessage \
-X POST \
--form-string chat_id="${{ secrets.TELEGRAM_RCHANNEL }}" \
-F text="==== ${{ github.event.inputs.tag }} ====" \
--silent --show-error --fail >/dev/null
--silent --show-error --fail | jq '.result.message_id'`
mkdir apks
find artifacts -name "*.apk" -exec cp {} apks \;
function upload() {
Expand All @@ -422,7 +353,18 @@ jobs:
done
}
upload apks/NekoX-*-mini-*-release.apk
echo ">> Posting log placeholder"
log_msgid=`curl http://localhost:8081/bot${{ secrets.TELEGRAM_TOKEN }}/sendMessage \
-X POST \
-F chat_id="{{ secrets.TELEGRAM_RCHANNEL}}" \
-F text="${{ github.event.head_commit.message }}" | jq ".result.message_id"`
echo ">> Posting metadata"
curl http://localhost:8081/bot${{ secrets.TELEGRAM_TOKEN }}/sendMessage \
-X POST \
-F chat_id="{{ secrets.TELEGRAM_RCHANNEL }}" \
-F text="${{ github.event.inputs.tag }},$ver_code,$apk_meta_msgid,$log_msgid"
pkill telegram-bot
telegram-bot-api:
name: Telegram Bot API
runs-on: ubuntu-latest
Expand Down
5 changes: 3 additions & 2 deletions TMessagesProj/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ if (System.getenv("DEBUG_BUILD") == "true") {
verName += "-" + RuntimeUtil.execForStr("git log --pretty=format:'%h' -n 1").trim().replace('\'','')
}

def officialVer = "9.3.3"
def officialVer = "9.3.3.1"
def officialCode = 3026
RuntimeUtil.exec("echo ver_code="+officialCode+">>\$GITHUB_OUTPUT")

def serviceAccountCredentialsFile = rootProject.file("service_account_credentials.json")

Expand Down Expand Up @@ -220,7 +221,7 @@ android {
proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
matchingFallbacks = ["release", "debug"]
signingConfig signingConfigs.releasePriv
versionNameSuffix "-na"
versionNameSuffix "-n"
}

foss {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,12 @@
package tw.nekomimi.nekogram;

import org.telegram.messenger.AccountInstance;
import org.telegram.messenger.BuildConfig;
import org.telegram.messenger.BuildVars;
import org.telegram.messenger.FileLog;
import org.telegram.messenger.UserConfig;
import org.telegram.messenger.*;
import org.telegram.tgnet.TLRPC;
import org.webrtc.EglBase;
import tw.nekomimi.nekogram.utils.FileUtil;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.function.Consumer;

import tw.nekomimi.nekogram.utils.FileUtil;

//TODO use UpdateAppAlertDialog / BlockingUpdateView?

Expand Down Expand Up @@ -54,9 +47,7 @@ static void retrieveUpdateMetadata(retrieveUpdateMetadataCallback callback) {
UpdateMetadata found = null;
for (UpdateMetadata metaData : metas) {
if (metaData.versionCode <= localVersionCode) break;
if (NekoXConfig.autoUpdateReleaseChannel < 3 && metaData.versionName.contains("preview"))
continue;
if (NekoXConfig.autoUpdateReleaseChannel < 2 && metaData.versionName.contains("rc"))
if (NekoXConfig.autoUpdateReleaseChannel < 3 && metaData.versionName.matches("v\\d+\\.\\d+\\.\\d+-"))
continue;
found = metaData;
break;
Expand Down

0 comments on commit c286c37

Please sign in to comment.