Here is what I did to build ownKeepass for aarch64.
I think the biggest problem people that want to repeat these steps will face is that I’m using my own build environment (Sailfish OS Builds in Docker). I will not go into the reasons why here, but I suggest first trying to repeat these steps in the same environment and then porting it to what most people use (which is the official Sailfish OS SDK I think).
ownKeepass depends on libargon2 and libsodium. In this example we’ll use the RPMs I already uploaded to my repository, but if you’re interested in building them yourself you can check out how I did it (thanks to @abranson for some clarifications!):
Preparing Sailfish OS Builds in Docker
-
mkdir ~/software(if it does not exist yet) cd ~/softwaregit clone https://git.sr.ht/~aerique/sfosbid sfosbid-gitcd sfosbid-git./download.sh./build.sh -u./run.sh -u
Preparing the Build Environment
This section assumes you’ve run ./run.sh -u from the previous section and are
now in the Docker container.
sb2 -t SailfishOS-latest-aarch64 -m sdk-install -Rrpm --import https://sailfish.openrepos.net/openrepos.keyzypper addrepo -f https://sailfish.openrepos.net/aerique/personal-main.repozypper install libargon2-devel libsodium-devel libgcrypt-devel-
exit- this exits the
sb2sdk-installenvironment from above, it does not exit the Docker container
- this exits the
Building ownKeepass
(This is still in the Docker container.)
We will not use the official repository but @samule’s slightly updated one that has already improved the libgcrypt situation for us:
cd projectsgit clone https://github.com/24mu13/ownkeepass.git ownkeepass-gitcd ownkeepass-gitgit submodule update --init --recursivecd Sailfish- in
ownKeepass.prochangeARCH_LIBSfromarmv7hltoaarch64 - in
rpm/harbour-ownkeepass.yamlremove- libargon2in thePkgCongfigBRlist mb2 -t SailfishOS-latest-aarch64 build
If the build was successfull you’ll have an ownKeepass RPM in the RPMS
directory.