Serious error: /home/.aliendalvik_systeming_patch/tmp/rpms/lzip-1.20-4.fc30.armv7hl.rpm has wrong architecture: armv7hl
umount: /home/.aliendalvik_systemimg_patch/tmp/systemimg_mount: no mount point specified
This came on 4.4.0.72 / 10 III
Serious error: /home/.aliendalvik_systeming_patch/tmp/rpms/lzip-1.20-4.fc30.armv7hl.rpm has wrong architecture: armv7hl
umount: /home/.aliendalvik_systemimg_patch/tmp/systemimg_mount: no mount point specified
This came on 4.4.0.72 / 10 III
This has been worked for me on my Xperia 10 III with SFOS 4.5…
I replaced the achitecture stuff simply by aarch64, arm64 and some more.
Enjoy.
installgapps_aarch64.sh
set -e
WORKDIR=/home/.aliendalvik_systemimg_patch
TMPWORKDIR="$WORKDIR/tmp"
SQUASHFS_ROOT="$TMPWORKDIR/squashfs-root"
MOUNT_ROOT="$TMPWORKDIR/systemimg_mount"
SYSTEM_IMG=/opt/alien/system.img
ORIG_IMG_FILE=orig_img_path.txt
FEDORA22_REPO=https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/30/Everything/aarch64/os/Packages
OPENGAPPS_ARCH=arm64
OPENGAPPS_API=11.0
OPENGAPPS_VARIANT=pico
GOOGLE_APPS_REMOVE='carriersetup-all extservicesgoogle-arm64 extsharedgoogle-all googlebackuptransport-all googlecontactssync-all googlefeedback-all googlepartnersetup-all setupwizarddefault-arm64 setupwizardtablet-arm64 vending-common'
log() {
printf '%s\n' "$1" > /dev/stderr
}
install_fedora22_rpm() {
pkgname="$1"
pkgversion="$2"
if ! rpm -q "$pkgname" > /dev/null; then
pkgfile="$pkgname-$pkgversion.fc30.aarch64.rpm"
firstletter="$(printf '%s' "$pkgfile" | cut -c 1)"
mkdir "$TMPWORKDIR/rpms"
curl "$FEDORA22_REPO/$firstletter/$pkgfile" > "$TMPWORKDIR/rpms/$pkgfile"
pkcon -y install-local "$TMPWORKDIR/rpms/$pkgfile"
rm "$TMPWORKDIR/rpms/$pkgfile"
rmdir "$TMPWORKDIR/rpms"
fi
}
install_deps() {
if ! rpm -q squashfs-tools > /dev/null; then
log "squashfs-tools package not found. Installing..."
pkcon -y install squashfs-tools
fi
if ! rpm -q rsync > /dev/null; then
log "rsync package not found. Installing..."
pkcon -y install rsync
fi
if ! rpm -q lzip > /dev/null; then
log "lzip package not found. Installing..."
install_fedora22_rpm lzip 1.20-4
fi
}
extract_image() {
mkdir "$MOUNT_ROOT"
mount -o loop,ro "$SYSTEM_IMG" "$MOUNT_ROOT"
if [ -f "$MOUNT_ROOT/$ORIG_IMG_FILE" ]; then
orig_image="$(cat "$MOUNT_ROOT/$ORIG_IMG_FILE")"
log "$SYSTEM_IMG already patched, using original from $orig_image"
else
orig_image="$WORKDIR/system.img.orig.$(date +%Y%m%dT%H%M%S)"
cp "$SYSTEM_IMG" "$orig_image"
log "Copying original image $SYSTEM_IMG to $orig_image"
fi
umount "$MOUNT_ROOT"
if [ ! -f "$orig_image" ]; then
log "$orig_image not found"
return 1
fi
mount -o loop,ro "$orig_image" "$MOUNT_ROOT"
if [ -f "$MOUNT_ROOT/$ORIG_IMG_FILE" ]; then
umount "$MOUNT_ROOT"
rmdir "$MOUNT_ROOT"
log "$orig_image already patched, please restore original image to $SYSTEM_IMG"
return 1
fi
mkdir "$SQUASHFS_ROOT"
# rsync needs to be run twice to copy all xattrs. Probably a bug in rsync.
rsync -aSHAX "$MOUNT_ROOT/" "$SQUASHFS_ROOT/"
rsync -aSHAX "$MOUNT_ROOT/" "$SQUASHFS_ROOT/"
umount "$MOUNT_ROOT"
rmdir "$MOUNT_ROOT"
printf '%s' "$orig_image" > "$SQUASHFS_ROOT/$ORIG_IMG_FILE"
}
build_image() {
cp "$SYSTEM_IMG" "$TMPWORKDIR/system.img.backup"
mksquashfs "$SQUASHFS_ROOT" "$SYSTEM_IMG" -noappend -no-exports -no-duplicates -no-fragments
rm "$TMPWORKDIR/system.img.backup"
rm -r "$SQUASHFS_ROOT"
}
_find_opengapps() {
downloads=/home/defaultuser/Downloads/
name_pattern="open_gapps-$OPENGAPPS_ARCH-$OPENGAPPS_API-$OPENGAPPS_VARIANT-*.zip"
if [ "$1" != quiet ]; then
log "Searching for Open GApps zip at $downloads/$name_pattern"
fi
find "$downloads" -maxdepth 1 -name "$name_pattern" | sort | tail -n 1
}
get_opengapps_zip() {
opengapps_zip="$(_find_opengapps)"
if [ -z "$opengapps_zip" ]; then
# Show the Open GApps download page to the user instead of automating
# the download of the latest version.
# The no-mirror policy
log "Opening Open GApps download page"
runuser -l defaultuser – /usr/bin/xdg-open "The Open GApps Project"
log "Waiting for download to start"
while [ -z "$opengapps_zip" ]; do
sleep 1
opengapps_zip="$(_find_opengapps quiet)"
done
log "Detected new download at $opengapps_zip"
log "Waiting for download to finish"
while [ -f "$opengapps_zip" ] && [ -f "$opengapps_zip.part" ]; do
sleep 1
done
sleep 1
if [ ! -f "$opengapps_zip" ]; then
log "Download failed"
return 1
fi
else
log "Found Open GApps zip $opengapps_zip"
fi
printf '%s' "$opengapps_zip"
}
install_opengapps() {
log "Unzip open gapps archive"
unzip "$(get_opengapps_zip)" -d "$TMPWORKDIR/opengapps/"
log "Remove some google apps"
for p in $GOOGLE_APPS_REMOVE; do
log "Removing $p"
rm "$TMPWORKDIR/opengapps/Core/$p.tar.lz"
done
if [ -f "$TMPWORKDIR/opengapps/Core/extservicesgoogle-all.tar.lz" ]; then
rm -r "$SQUASHFS_ROOT/system/priv-app/ExtServices"
fi
if [ -f "$TMPWORKDIR/opengapps/Core/extsharedgoogle-all.tar.lz" ]; then
rm -r "$SQUASHFS_ROOT/system/app/ExtShared"
fi
mkdir "$TMPWORKDIR/opengapps_unarchived"
for f in "$TMPWORKDIR"/opengapps/Core/*.tar.lz; do
lzip -c -d "$f" | tar -x -C "$TMPWORKDIR/opengapps_unarchived"
done
rm -r "$TMPWORKDIR/opengapps/"
ls -al "$TMPWORKDIR"/opengapps_unarchived
ls -al "$SQUASHFS_ROOT/system/"
ls -al "$SQUASHFS_ROOT/system/product"
cp -r "$TMPWORKDIR"/opengapps_unarchived/*/*/* "$SQUASHFS_ROOT/system/"
rm -r "$TMPWORKDIR/opengapps_unarchived/"
}
set_traps() {
# shellcheck disable=SC2064
trap "$*" EXIT HUP INT QUIT PIPE TERM
}
cleanup() {
if [ ! -f "$SYSTEM_IMG" ] && [ -f "$TMPWORKDIR/system.img.backup" ]; then
mv "$TMPWORKDIR/system.img.backup" "$SYSTEM_IMG" || :
fi
umount "$MOUNT_ROOT" || :
rm -r "$TMPWORKDIR" || :
set_traps -
exit 1
}
set_traps cleanup
systemctl stop aliendalvik
mkdir -p "$WORKDIR"
mkdir -p "$TMPWORKDIR"
install_deps
log "extract image"
extract_image
log "image was extracted"
log "install open gapps"
install_opengapps
log "open gapps were installed"
log "build image"
build_image
log "image was built"
rmdir "$TMPWORKDIR"
set_traps -
exit 0
Most values could be extracted from phones system so I think it is not so hard to rewrite the script it will used on both archs.
Thanks for all the good work here. Is anyone maintaining a proper GitHub repo for these scripts, do we know?
After installed sailfish 4.5 google play services stopped to work/ update. How I can make it update again. Sorry my poor english. I use the install gapps script.
That’s what I get:
extract image
Copying original image /opt/alien/system.img to /home/.aliendalvik_systemimg_patch/system.img.orig.20230329T130144
image was extracted
install open gapps
Unzip open gapps archive
Searching for Open GApps zip at /home/defaultuser/Downloads//open_gapps-arm64-11.0-pico-*.zip
Opening Open GApps download page
-bash: –: Tiedostoa tai hakemistoa ei ole
unzip: cannot find or open , .zip or .ZIP.
umount: /home/.aliendalvik_systemimg_patch/tmp/systemimg_mount: no mount point specified.
Edit: nevermind, it can be found here: OpenGApps - Browse /arm64/20220503 at SourceForge.net
CosmicStars’ script works, and no problems with google play, though its not available in Android emulation (some apps need it)
Yes it works, but google play services are not updated. Some apps like IL Paras sää( finnish weather app) doesn’t show a rain map, but there is a notification that google play services are being updated. I’m running sailfish 4.5.0.19
Can anybody helps me out with this? I’ve the 32bit Xperia 10 and sailfish 4.4… How to rhn the script ? Adapt the script ? Thx otherwise well… Bye google
EDIT: The script for the Xperia XA2 worked brilliant on my Xperia 10 I. I modified /home/nemo to /home/defaultuser. That’s all.
here it is opengappsinstallerforxperia10markI.sh - Google Drive
Does the gps data work for both goigle maps and whatsap, viber. When I use the script gps is not triggered from viber, whatsap or glympse but works great with some i
other apps like organic maps or here wego
You could try if starting a SFOS App which uses GPS like GPSInfo before starting an Android App which does not trigger the gps helps.
I have tested, while google maps has gps data, the other apps does not get it. As if sinething is broken for a group of apps but gps is working perfectly for others.
GPS didn’t work very well on my XA2 plus it took forever for it to find my location.
On my X10III it works as expected.
Did you manage to fix it. Could someone post link with working script file to download?
yes got it working and working script was in this post
need also file which is mentioned here: Google play services on xperia 10 III Sailfish 4.4.0.64 - #57 by Tekno
I get the following error:
Erreur fatale: /home/.aliendalvik_systemimg_patch/tmp/rpms/lzip-1.16-1.fc22.armv7hl.rpm has wrong architecture: armv7hl
umount: /home/.aliendalvik_systemimg_patch/tmp/systemimg_mount: no mount point specified.
I am on the latest SF version
In 4.6.0, looks like a refactor is necessary at least for SYSTEM_IMG=/opt/{alien -> appsupport}/system.img
. Not sure yet if that’s all there is, since appsupport service is currently failing to start after 4.6.0 update [Release notes] Sauna 4.6.0.11 - #33 by lkraav
I changed the SYSTEM_IMG path and used open_gapps-arm64-11.0-pico-20220503.zip
Play Store works but the apps are unable to see Play Services. I had microG before this update.
You removed all tracs of MicroG?
But even on clean install, I’ve had a couple apps fail to find Play Services, even if majority seem to work fine.
I just had to install the apps again. For apps that have data that I don’t want to lose I downloaded an older apk with Aurora store and then
appsupport-attach sh
pm install -d /path/to/apk.apk
And after that it is possible to update it with Play store. So this was a microG thing.
I have successfully booted 4.6.0 App Support with this slightly updated script fork Sony 10 III - Dual SIM (arm64) | Sailfish OS 4.6 | Android 11 | Open GApps pico installation script · GitHub
Thanks @nemishkor for getting the gist started.