Skip to content

Commit f4ca486

Browse files
authored
Create build-deb.yml
1 parent 8b69450 commit f4ca486

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed

.github/workflows/build-deb.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Build .deb package
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
permissions:
8+
contents: write
9+
10+
jobs:
11+
build-deb:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- name: Checkout repository
16+
uses: actions/checkout@v4
17+
18+
- name: Set variables
19+
run: |
20+
VERSION="${GITHUB_REF_NAME#v}"
21+
PACKAGE=$(basename $GITHUB_REPOSITORY)
22+
echo "VERSION=$VERSION" >> $GITHUB_ENV
23+
echo "PACKAGE=$PACKAGE" >> $GITHUB_ENV
24+
25+
- name: Get repo description
26+
run: |
27+
DESC=$(curl -s https://api.github.com/repos/${GITHUB_REPOSITORY} | jq -r '.description')
28+
# kalau deskripsi kosong, fallback biar ga error
29+
if [ -z "$DESC" ] || [ "$DESC" = "null" ]; then
30+
DESC="No description provided"
31+
fi
32+
echo "DESCRIPTION=$DESC" >> $GITHUB_ENV
33+
34+
- name: Prepare debian package structure
35+
run: |
36+
mkdir -p build/${{ env.PACKAGE }}_${{ env.VERSION }}/DEBIAN
37+
mkdir -p build/${{ env.PACKAGE }}_${{ env.VERSION }}/data/data/com.termux/files/usr/bin
38+
mkdir -p build/${{ env.PACKAGE }}_${{ env.VERSION }}/data/data/com.termux/files/usr/share/doc/${{ env.PACKAGE }}
39+
40+
# contoh patching versi di script (opsional)
41+
sed -i "s/^# version:.*/# version: $VERSION/" index.html || true
42+
sed -i "s/^version=.*/version=$VERSION/" index.html || true
43+
44+
# copy docs & script
45+
cp README.md build/${{ env.PACKAGE }}_${{ env.VERSION }}/data/data/com.termux/files/usr/share/doc/${{ env.PACKAGE }}/README.md
46+
cp LICENSE build/${{ env.PACKAGE }}_${{ env.VERSION }}/data/data/com.termux/files/usr/share/doc/${{ env.PACKAGE }}/LICENSE
47+
cp index.html build/${{ env.PACKAGE }}_${{ env.VERSION }}/data/data/com.termux/files/usr/bin/${{ env.PACKAGE }}
48+
chmod 755 build/${{ env.PACKAGE }}_${{ env.VERSION }}/data/data/com.termux/files/usr/bin/${{ env.PACKAGE }}
49+
50+
# control file
51+
cat > build/${{ env.PACKAGE }}_${{ env.VERSION }}/DEBIAN/control <<EOF
52+
Package: ${{ env.PACKAGE }}
53+
Version: ${{ env.VERSION }}
54+
Architecture: all
55+
Maintainer: Luis Adha <adharudin14@gmail.com>
56+
Description: ${{ env.DESCRIPTION }}
57+
Priority: optional
58+
Section: games
59+
EOF
60+
61+
- name: Build .deb
62+
run: |
63+
dpkg-deb --build build/${{ env.PACKAGE }}_${{ env.VERSION }}
64+
mv build/${{ env.PACKAGE }}_${{ env.VERSION }}.deb ${{ env.PACKAGE }}_${{ env.VERSION }}_all-termux.deb
65+
66+
- name: Upload to release
67+
uses: softprops/action-gh-release@v2
68+
with:
69+
files: ${{ env.PACKAGE }}_${{ env.VERSION }}_all-termux.deb

0 commit comments

Comments
 (0)