ente-auth-git
maintainer phoepsilonix
· 0 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The non-standard host is Google's official storage domain for Flutter releases, a trusted source; the downloaded Flutter SDK is used to build the project from source and is not executed directly, posing minimal risk.
Triggered rules
LOW
AI review downgraded a static finding
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The non-standard host is Google's official storage domain for Flutter releases, a trusted source; the downloaded Flutter SDK is used to build the project from source and is not executed directly, posing minimal risk.
1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM
source=() URL on a non-standard host
source_untrusted_domain
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
-
PKGBUILD:26
source_x86_64=("https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${_FLUTTER_VERSION}-stable.tar.xz")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: Masato TOYOSHIMA <phoepsilonix at gmail dot com>
2
# Contributor: Alessandro Bernardello
3
4
#_tag=auth-v4.4.15
5
#_commit=fd27208e058a75c3c951db0118329aab3b9cb1a4
6
7
# https://github.com/ente-io/ente/blob/main/.github/workflows/auth-release.yml
8
_FLUTTER_VERSION=3.32.8
9
_jdk_ver=17
10
11
_pkgname=enteauth
12
pkgname=ente-auth-git
13
pkgver=4.4.17.r33.gb48fdc5
14
pkgrel=1
15
pkgdesc="Ente two-factor authenticator."
16
arch=('x86_64')
17
url="https://github.com/ente-io/ente/tree/main/auth"
18
license=('AGPL-3.0-only')
19
depends=('at-spi2-core' 'gcc-libs' 'glib2' 'glibc' 'gtk3' 'hicolor-icon-theme' 'libayatana-appindicator' 'libsecret' 'pango' 'libepoxy' 'curl' 'fontconfig')
20
makedepends=('patchelf' 'clang' 'git' 'cmake' 'ninja' "jdk${_jdk_ver}-openjdk")
21
options=('!strip' '!emptydirs')
22
source=("git+https://github.com/ente-io/ente.git"
23
"fix-flutter.patch"
24
)
25
26
source_x86_64=("https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${_FLUTTER_VERSION}-stable.tar.xz")
27
sha512sums=('SKIP'
28
'00a812be226ae347d9bda689245a5af39b967e62e8d7d838ff02434e1d4735a79b4e60054ee1bf18f912c7e086c912d4d5c1fb5deb4be2b9edb12eb935c4f594')
29
sha512sums_x86_64=('c46984bb59a3fb5337d1bd4dd7f41306ad66a8b0430c69a41c755c3d8d8ebe0a3b5be7c8fdc25ef202cfeab7faa31914ffb21bc4ad928f4eb7d352ca00248f3e')
30
provides=('ente-auth')
31
conflicts=('ente-auth')
32
options=('strip')
33
34
export PATH_=$PATH
35
export LDFLAGS="$LDFLAGS"
36
37
pkgver() {
38
cd "$srcdir/ente"
39
# cutting off 'auth-v' prefix that presents in the git tag
40
git describe --long --tags --abbrev=7 --match="auth-v*" | sed 's/^auth-v//; s/\([^-]*-g\)/r\1/; s/-/./g'
41
}
42
43
set_env(){
44
export PUB_CACHE="${srcdir}/.pub-cache"
45
export PATH="$srcdir/flutter/bin":"$PATH_":"$PUB_CACHE/bin"
46
export JAVA_HOME="/usr/lib/jvm/java-${_jdk_ver}-openjdk"
47
}
48
49
prepare(){
50
cd "$srcdir/ente"
51
git submodule update --init --recursive
52
patch -p1 -i "${srcdir}/fix-flutter.patch"
53
54
# metainfo
55
cd "$srcdir/ente/mobile/apps/auth/"
56
APPDATA_FILE="linux/packaging/enteauth.appdata.xml"
57
RELEASE_DATE=$(date -u +%Y-%m-%d)
58
59
# Extract version from pkgver (e.g., 4.4.15.r0.gbb7d369eeb -> 4.4.15)
60
VERSION_NAME=${pkgver%%\.r*}
61
62
# Create new release entry
63
NEW_RELEASE=" <release version=\"${VERSION_NAME}\" date=\"${RELEASE_DATE}\" />"
64
65
# Insert new release entry after <releases> tag
66
sed -i "/<releases>/a\\${NEW_RELEASE}" "$APPDATA_FILE"
67
68
echo "✅ Updated $APPDATA_FILE with version ${VERSION_NAME}"
69
echo "Release entry added:"
70
echo "$NEW_RELEASE"
71
72
set_env
73
# Disable analytics
74
flutter --disable-analytics
75
76
# Ensure no build artifacts are cached
77
flutter clean
78
}
79
80
build() {
81
set_env
82
83
cd "${srcdir}/ente/mobile/packages/strings"
84
flutter gen-l10n
85
86
cd "$srcdir/ente/mobile/apps/auth/"
87
flutter config --no-analytics
88
dart --disable-analytics
89
flutter pub get
90
flutter config --enable-linux-desktop
91
#flutter build linux --release
92
93
dart pub global activate --source git https://github.com/ente-io/fastforgefork --git-ref develop --git-path packages/fastforge
94
fastforge package --platform=linux --targets=pacman --skip-clean --flutter-build-args=release #--flutter-build-args=verbose
95
}
96
97
check() {
98
cd "$srcdir/ente/mobile/apps/auth/"
99
set_env
100
flutter test
101
}
102
103
package(){
104
cd "$srcdir/ente/mobile/apps/auth/"
105
# fakeroot environment
106
tar --no-same-owner --owner 0 --group 0 -xvf ./dist/*/ente_auth-*-linux.pacman --exclude="\.*" -C "$pkgdir"
107
108
# libsodium.so is needed by libflutter_linux_gtk.so.
109
patchelf --add-needed libsodium.so "${pkgdir}/usr/share/${_pkgname}/lib/libflutter_linux_gtk.so"
110
111
# ICON: added StartupWMClass to desktop file
112
# The Version field in the Desktop Entry indicates the specification version and is typically 1.0. The application version should be specified as X-Version.
113
local desktop_file="${pkgdir}/usr/share/applications/enteauth.desktop"
114
sed -i '/^StartupWMClass=/d' "$desktop_file" && sed -i 's/^Version=\(.*\)/X-Version=\1/; $a StartupWMClass=io.ente.auth' "$desktop_file"
115
116
# file layout: namcap check
117
mkdir -p "${pkgdir}/usr/lib/enteauth"
118
mv "${pkgdir}/usr/share/enteauth/enteauth" "${pkgdir}/usr/lib/enteauth/"
119
mv "${pkgdir}/usr/share/enteauth/lib" "${pkgdir}/usr/lib/enteauth"
120
mv "${pkgdir}/usr/share/enteauth/data" "${pkgdir}/usr/lib/enteauth/"
121
rmdir "${pkgdir}/usr/share/enteauth"
122
123
mkdir -p "${pkgdir}/usr/bin"
124
ln -sf "/usr/lib/enteauth/enteauth" "${pkgdir}/usr/bin/enteauth"
125
126
# remove insecure RUNPATH
127
for so_file in ${pkgdir}/usr/lib/enteauth/lib/*.so; do
128
while read -r rpath; do
129
if [[ "$rpath" == *"${srcdir}"* ]]; then
130
patchelf --remove-rpath "$so_file"
131
fi
132
done < <(patchelf --print-rpath "$so_file" | tr ':' '\n')
133
done
134
}
135
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 2 |
| 2026-08-01 00:11:18 | LOW | 2 |
| 2026-07-31 00:14:10 | LOW | 2 |
| 2026-07-30 00:17:23 | LOW | 2 |
| 2026-07-29 00:25:53 | LOW | 2 |
| 2026-07-28 00:07:28 | LOW | 2 |
| 2026-07-27 00:24:32 | LOW | 2 |
| 2026-07-26 00:07:32 | LOW | 2 |
| 2026-07-25 00:13:44 | LOW | 2 |
| 2026-07-24 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |