Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
27 changes: 14 additions & 13 deletions .github/workflows/build-manual.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: Manual build release

on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+*'
workflow_dispatch:
inputs:
awl_ref:
Expand Down Expand Up @@ -30,13 +33,13 @@ jobs:
uses: actions/checkout@v6
with:
fetch-depth: 0 # also fetch tags for 'git describe'
ref: ${{ github.event.inputs.awl_ref }}
ref: ${{ github.event.inputs.awl_ref || github.ref }}
path: 'awl'
- name: Checkout awl-flutter code
uses: actions/checkout@v6
with:
repository: 'anywherelan/awl-flutter'
ref: ${{ github.event.inputs.awl_flutter_ref }}
ref: ${{ github.event.inputs.awl_flutter_ref || github.ref }}
path: 'awl-flutter'

- name: Install Go
Expand All @@ -58,14 +61,7 @@ jobs:
- run: flutter --version
- name: Install ndk
run: |
echo "ls $ANDROID_HOME/"
ls -lah $ANDROID_HOME/ || true
echo "ls $ANDROID_HOME/tools/bin/"
ls -lah $ANDROID_HOME/tools/bin/ || true
echo "ls $ANDROID_HOME/cmdline-tools/latest/bin/"
ls -lah $ANDROID_HOME/cmdline-tools/latest/bin/ || true
echo "install ndk"
$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "ndk;27.0.12077973"
$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "ndk;27.3.13750724"
- name: List available space
run: |
df -h
Expand All @@ -86,8 +82,9 @@ jobs:

- name: Build
run: |
export ANDROID_NDK_ROOT=$ANDROID_HOME/ndk-bundle
unset ANDROID_NDK_HOME
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/27.3.13750724
unset ANDROID_NDK_ROOT
export SOURCE_DATE_EPOCH=$(git -C awl-flutter log -1 --format=%ct)
cd awl
GOMOBILE_VERSION=$(go list -m -f '{{.Version}}' golang.org/x/mobile)
go install golang.org/x/mobile/cmd/gomobile@$GOMOBILE_VERSION
Expand All @@ -96,10 +93,14 @@ jobs:
cd cmd/awl-tray && go mod tidy -compat=1.26 && cd ../..
echo "check go mod tidy and git dirty"
test -z "$(git status --porcelain)" || (git status; git diff && false)
echo "start building"
cd ../awl-flutter && flutter pub get && cd ../awl
echo "=== Patching flutter_zxing for reproducible builds ==="
sed -i '1a add_link_options("LINKER:--build-id=none")' $HOME/.pub-cache/hosted/pub.dev/flutter_zxing-*/src/CMakeLists.txt
echo "start building"
./build.sh release
echo "ls build"
ls -lah build

- name: List available space
run: |
df -h
Expand Down
15 changes: 8 additions & 7 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

awldir=$(pwd)
builddir="$awldir/build"
mkdir -p "$builddir"
awlflutterdir="$awldir/../awl-flutter"
tempdir=$(dirname $(mktemp -u))

Expand Down Expand Up @@ -57,7 +58,7 @@ gobuild-linux() {
for arch in 386 amd64 arm arm64 mips mipsle; do
archive_name="$name-linux-$arch-$VERSION.tar.gz"
filename="$name"
CGO_ENABLED=0 GOOS=linux GOARCH=$arch go build -trimpath -ldflags "-s -w -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
CGO_ENABLED=0 GOOS=linux GOARCH=$arch go build -trimpath -ldflags "-buildid= -s -w -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
tar -czf "$archive_name" "$filename"
rm "$filename"
mv "$archive_name" "$builddir"
Expand All @@ -70,7 +71,7 @@ gobuild-macos() {
for arch in amd64 arm64; do
archive_name="$name-macos-$arch-$VERSION.zip"
filename="$name"
CGO_ENABLED=1 GOOS=darwin GOARCH=$arch go build -trimpath -ldflags "-s -w -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
CGO_ENABLED=1 GOOS=darwin GOARCH=$arch go build -trimpath -ldflags "-buildid= -s -w -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
zip "$archive_name" "$filename"
rm "$filename"
mv "$archive_name" "$builddir"
Expand All @@ -84,7 +85,7 @@ gobuild-windows() {
install-wintun "$arch"
archive_name="$name-windows-$arch-$VERSION.zip"
filename="$name.exe"
CGO_ENABLED=0 GOOS=windows GOARCH=$arch go build -trimpath -ldflags "-s -w -H windowsgui -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
CGO_ENABLED=0 GOOS=windows GOARCH=$arch go build -trimpath -ldflags "-buildid= -s -w -H windowsgui -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
zip "$archive_name" "$filename"
rm "$filename"
mv "$archive_name" "$builddir"
Expand All @@ -98,7 +99,7 @@ gobuild-windows7() {
install-wintun "$arch"
archive_name="$name-windows7-$arch-$VERSION.zip"
filename="$name.exe"
CGO_ENABLED=0 GOOS=windows GOARCH=$arch go build -trimpath -ldflags "-s -w -H windowsgui -X github.com/anywherelan/awl/config.Version=${VERSION} -X github.com/anywherelan/awl/config.IsWindows7=true" -o "$filename"
CGO_ENABLED=0 GOOS=windows GOARCH=$arch go build -trimpath -ldflags "-buildid= -s -w -H windowsgui -X github.com/anywherelan/awl/config.Version=${VERSION} -X github.com/anywherelan/awl/config.IsWindows7=true" -o "$filename"
zip "$archive_name" "$filename"
rm "$filename"
mv "$archive_name" "$builddir"
Expand Down Expand Up @@ -137,7 +138,7 @@ build-android-lib() {
cd "$awldir/cmd/gomobile-lib"
# about `-checklinkname=0` https://github.com/wlynxg/anet#how-to-build-with-go-1230-or-later
gomobile bind -androidapi 24 -trimpath \
-ldflags "-linkmode=external -extldflags=-Wl,-z,max-page-size=16384 -s -w -checklinkname=0 -X github.com/anywherelan/awl/config.Version=${VERSION}" \
-ldflags "-buildid= -linkmode=external -extldflags=-Wl,-z,max-page-size=16384 -s -w -checklinkname=0 -X github.com/anywherelan/awl/config.Version=${VERSION}" \
-o anywherelan.aar -target=android . || { echo "gomobile bind failed"; exit 1; }
mkdir -p "$awlflutterdir/android/app/src/main/libs"
mv anywherelan.aar "$awlflutterdir/android/app/src/main/libs/"
Expand All @@ -147,7 +148,7 @@ build-android-lib() {
build-android-apk() {
cd "$awlflutterdir"
flutter build apk --release
mv "$awlflutterdir/build/app/outputs/flutter-apk/app-release.apk" "$builddir/awl-android-$VERSION.apk"
cp "$awlflutterdir/build/app/outputs/flutter-apk/app-release.apk" "$builddir/awl-android-$VERSION.apk"
}

# build for android
Expand Down Expand Up @@ -184,7 +185,7 @@ build-awl-tray() {
archive_name="$archive_name.tar.gz"
fi
cd "$awldir/cmd/awl-tray"
CGO_ENABLED=0 go build -trimpath -ldflags "-s -w -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
CGO_ENABLED=0 go build -trimpath -ldflags "-buildid= -s -w -X github.com/anywherelan/awl/config.Version=${VERSION}" -o "$filename"
if [ "$goos" == "windows" ]; then
zip "$archive_name" "$filename"
elif [ "$goos" == "linux" ]; then
Expand Down
2 changes: 1 addition & 1 deletion cmd/awl-tray/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ require (
github.com/libp2p/go-cidranger v1.1.0 // indirect
github.com/libp2p/go-flow-metrics v0.3.0 // indirect
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
github.com/libp2p/go-libp2p-kad-dht v0.39.0 // indirect
github.com/libp2p/go-libp2p-kad-dht v0.39.1 // indirect
github.com/libp2p/go-libp2p-kbucket v0.8.0 // indirect
github.com/libp2p/go-libp2p-record v0.3.1 // indirect
github.com/libp2p/go-libp2p-routing-helpers v0.7.5 // indirect
Expand Down
4 changes: 2 additions & 2 deletions cmd/awl-tray/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -326,8 +326,8 @@ github.com/libp2p/go-libp2p v0.48.0 h1:h2BrLAgrj7X8bEN05K7qmrjpNHYA+6tnsGRdprjTn
github.com/libp2p/go-libp2p v0.48.0/go.mod h1:Q1fBZNdmC2Hf82husCTfkKJVfHm2we5zk+NWmOGEmWk=
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
github.com/libp2p/go-libp2p-kad-dht v0.39.0 h1:mww38eBYiUvdsu+Xl/GLlBC0Aa8M+5HAwvafkFOygAM=
github.com/libp2p/go-libp2p-kad-dht v0.39.0/go.mod h1:Po2JugFEkDq9Vig/JXtc153ntOi0q58o4j7IuITCOVs=
github.com/libp2p/go-libp2p-kad-dht v0.39.1 h1:9RzUBc7zywT4ZNamRSgEvPZmVlK3Y6xdlCYfXXvlR/Q=
github.com/libp2p/go-libp2p-kad-dht v0.39.1/go.mod h1:Po2JugFEkDq9Vig/JXtc153ntOi0q58o4j7IuITCOVs=
github.com/libp2p/go-libp2p-kbucket v0.8.0 h1:QAK7RzKJpYe+EuSEATAaaHYMYLkPDGC18m9jxPLnU8s=
github.com/libp2p/go-libp2p-kbucket v0.8.0/go.mod h1:JMlxqcEyKwO6ox716eyC0hmiduSWZZl6JY93mGaaqc4=
github.com/libp2p/go-libp2p-record v0.3.1 h1:cly48Xi5GjNw5Wq+7gmjfBiG9HCzQVkiZOUZ8kUl+Fg=
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ require (
github.com/labstack/echo-contrib v0.50.1
github.com/labstack/echo/v4 v4.15.1
github.com/libp2p/go-libp2p v0.48.0
github.com/libp2p/go-libp2p-kad-dht v0.39.0
github.com/libp2p/go-libp2p-kad-dht v0.39.1
github.com/libp2p/go-libp2p-kbucket v0.8.0
github.com/marcopolo/simnet v0.0.6
github.com/mdp/qrterminal/v3 v3.2.1
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -305,8 +305,8 @@ github.com/libp2p/go-libp2p v0.48.0 h1:h2BrLAgrj7X8bEN05K7qmrjpNHYA+6tnsGRdprjTn
github.com/libp2p/go-libp2p v0.48.0/go.mod h1:Q1fBZNdmC2Hf82husCTfkKJVfHm2we5zk+NWmOGEmWk=
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
github.com/libp2p/go-libp2p-kad-dht v0.39.0 h1:mww38eBYiUvdsu+Xl/GLlBC0Aa8M+5HAwvafkFOygAM=
github.com/libp2p/go-libp2p-kad-dht v0.39.0/go.mod h1:Po2JugFEkDq9Vig/JXtc153ntOi0q58o4j7IuITCOVs=
github.com/libp2p/go-libp2p-kad-dht v0.39.1 h1:9RzUBc7zywT4ZNamRSgEvPZmVlK3Y6xdlCYfXXvlR/Q=
github.com/libp2p/go-libp2p-kad-dht v0.39.1/go.mod h1:Po2JugFEkDq9Vig/JXtc153ntOi0q58o4j7IuITCOVs=
github.com/libp2p/go-libp2p-kbucket v0.8.0 h1:QAK7RzKJpYe+EuSEATAaaHYMYLkPDGC18m9jxPLnU8s=
github.com/libp2p/go-libp2p-kbucket v0.8.0/go.mod h1:JMlxqcEyKwO6ox716eyC0hmiduSWZZl6JY93mGaaqc4=
github.com/libp2p/go-libp2p-record v0.3.1 h1:cly48Xi5GjNw5Wq+7gmjfBiG9HCzQVkiZOUZ8kUl+Fg=
Expand Down