blob: e18a60d88c8da36baf9b35e8a57006d42d31907b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
# Maintainer: taotieren <admin@taotieren.com>
pkgbase=uotantoolboxnt
pkgname=uotantoolboxnt
_name=UotanToolboxNT
pkgver=3.3.5
pkgrel=3
epoch=
pkgdesc="现代化 Android & OpenHarmony 工具箱 | A Modern Toolbox for Android & OpenHarmony Devices"
arch=($CARCH)
url="https://github.com/Uotan-Dev/UotanToolboxNT"
license=('GPL-3.0-only')
provides=(${pkgname} ${pkgname%nt} ${_name%NT} ${_name})
conflicts=(${pkgname} ${pkgname%nt} ${_name%NT} ${_name})
replaces=()
depends=(
gcc-libs
glibc
java-runtime
sh
android-tools
usbutils
)
makedepends=(
git
dotnet-host
dotnet-sdk
nuget
)
backup=()
options=(!strip !debug)
install=
source=(
"${_name}-${pkgver}.tar.gz::${url}/archive/refs/tags/${pkgver}.tar.gz"
"UotanToolboxNT.Binary::git+https://github.com/Uotan-Dev/UotanToolboxNT.Binary.git"
)
sha256sums=('fdf1acffee2018ce37312f4f79959212d513bcd10ebb4fd8e0cb92ebe379ddad'
'SKIP')
noextract=()
prepare() {
git -C "${srcdir}/UotanToolboxNT.Binary" clean -dfx
cd ${srcdir}/${_name}-${pkgver}
dotnet clean && dotnet restore
}
build() {
cd ${srcdir}/${_name}-${pkgver}
if [ "$CARCH" == "aarch64" ]; then
msg2 "build for arm64"
dotnet publish -r linux-arm64 --self-contained true -p:PublishSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true -o ./publish-arm64
elif [ "$CARCH" == "loong64" ]; then
msg2 "build for loong64"
dotnet publish -r linux-loong64 --self-contained true -p:PublishSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true -o ./publish-loong64
elif [ "$CARCH" == "x86_64" ]; then
msg2 "build for x64"
dotnet publish -r linux-x64 --self-contained true -p:PublishSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true -o ./publish-x64
else
msg2 "Unsupported architectures"
fi
}
package() {
cd ${srcdir}/${_name}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/UotanToolbox
if [ "$CARCH" == "aarch64" ]; then
msg2 "aarch64"
cp -r ${srcdir}/UotanToolboxNT.Binary/Linux_AArch64/* ${pkgdir}/usr/lib/UotanToolbox
cp -r publish-arm64/* ${pkgdir}/usr/lib/UotanToolbox
elif [ "$CARCH" == "loong64" ]; then
msg2 "loong64"
cp -r ${srcdir}/UotanToolboxNT.Binary/Linux_LoongArch64/* ${pkgdir}/usr/lib/UotanToolbox
cp -r publish-loong64/* ${pkgdir}/usr/lib/UotanToolbox
elif [ "$CARCH" == "x86_64" ]; then
msg2 "x64"
cp -r ${srcdir}/UotanToolboxNT.Binary/Linux_AMD64/* ${pkgdir}/usr/lib/UotanToolbox
cp -r publish-x64/* ${pkgdir}/usr/lib/UotanToolbox
else
msg2 "Unsupported architectures"
fi
chmod -R a+rX ${pkgdir}/usr/lib/UotanToolbox
chmod +x ${pkgdir}/usr/lib/UotanToolbox/UotanToolbox
install -vDm755 UotanToolbox/Assets/Linux/UotanToolbox -t ${pkgdir}/usr/bin
install -vDm644 UotanToolbox/Assets/Linux/UotanToolbox.desktop -t ${pkgdir}/usr/share/applications
install -vDm644 UotanToolbox/Assets/Linux/UotanToolbox.png -t ${pkgdir}/usr/share/pixmaps
sed -i '5i\Name[zh_CN]=柚坛工具箱' "$pkgdir/usr/share/applications/UotanToolbox.desktop"
install -vDm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
}
|