You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
for local builds it might leak username (/home/username) or other information like khacthong.le and appuser in above examples.
it makes the build non reproducible when different build-path is used (build path variations break reproducibility)
to reproduce current build it require using a directory which only root user can create on linux /Users/ (in case it can be reproduced on linux)
fdroid.org builds are using /home/vagrant/ as path as they built using vagrant in regular user, and fdroid can use upstream APK directly only if it's reproducible in their build server.
the build process shouldn't write above full paths lines to output (no path at all or relative path to project root dir like src/main/native/libnunchuk/src/nunchukimpl.cpp)
as current apk built with clang 9, it might require fixing first #4 (increase the ndk version used to latest supported) in case -fmacro-prefix-map should be used (which require clang > 10)
The text was updated successfully, but these errors were encountered:
Add -ffile-prefix-map to the clang invocations such as -ffile-prefix-map=${pwd}=. (instead of . a path like /src can be used too) and instead of pwd a variable that will point to local nunchuk-android-nativesdk (in case during the compilation command the current directory can be different) such as (examples of the content the variable should have in different setups) /Users/khacthong.le/Documents/Personal/nunchuk-android-nativesdk/src/main/native
or /home/appuser/app/nunchuk/nunchuk-android-nativesdk/src/main/native
from strings diff of libnunchuk-android.so from nunchunk apk downloaded from GooglePlay and apk built with Cotnainerfile at: #1 (comment)
full build path leakage is a issue cause:
khacthong.le
andappuser
in above examples./Users/
(in case it can be reproduced on linux)/home/vagrant/
as path as they built using vagrant in regular user, and fdroid can use upstream APK directly only if it's reproducible in their build server.the build process shouldn't write above full paths lines to output (no path at all or relative path to project root dir like
src/main/native/libnunchuk/src/nunchukimpl.cpp
)this can be fixed by using
-prefix-map
options, details in: https://reproducible-builds.org/docs/build-path/as current apk built with clang 9, it might require fixing first #4 (increase the ndk version used to latest supported) in case
-fmacro-prefix-map
should be used (which require clang > 10)The text was updated successfully, but these errors were encountered: