Kiwix for Apple iOS & macOS

This is the home for Kiwix apps for Apple iOS and macOS.

CodeFactor License: GPL v3 Drawing=

Download

Kiwix apps are made available primarily via the App Store and Mac App Store. macOS version can also be downloaded directly.

Most recent versions of Kiwix support the three latest major versions of the OSes (either iOS or macOS). Older versions of Kiwix being still downloadable for older versions of macOS and iOS on the Mac App Store.

Develop

Kiwix developers usually work with latest macOS and Xcode. Check our Continuous Integration Workflow to find out which XCode version we use on Github Actions.

CPU Architectures

Kiwix compiles on both macOS architectures x86_64 and arm64 (Apple silicon).

Kiwix for iOS and macOS can run, in both cases, on x86_64 or arm64.

Dependencies

To compile Kiwix you rely on the following compilation tools:

Steps

To compile Kiwix, follow these steps:

  • Put CoreKiwix/xcframework at the root of this folder
  • Open project with Xcode open Kiwix.xcodeproj/project.xcworkspace/
  • Change the Bundle Identifier (in Signing & Capabilities)
  • Select appropriate Signing Certificate/Profile.

Getting CoreKiwix.xcframework

CoreKiwix.xcframework is published with all supported platforms and CPU architectures:

Compiling CoreKiwix.xcframework

You may want to compile it yourself, to use different branches of said projects for instance.

The xcframework is a bundle of all libkiwix dependencies for multiple architectures and platforms. The CoreKiwix.xcframework will contain libkiwix library for macOS archs and for iOS. It is built off kiwix-build repo.

Make sure to preinstall kiwix-build prerequisites (ninja and meson). If you use homebrew, run the following

brew install ninja meson

Make sure Xcode command tools are installed. Make sure to download an iOS SDK if you want to build for iOS.

xcode-select --install

Then you can build libkiwix

git clone https://github.com/kiwix/kiwix-build.git
cd kiwix-build
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

kiwix-build --target-platform apple_all_static libkiwix
# assuming your kiwix-build and apple folder at at same level
cp -r BUILD_apple_all_static/INSTALL/lib/CoreKiwix.xcframework ../apple/

You can now launch the build from Xcode and use the iOS simulator or your macOS target. At this point the xcframework is not signed.

License

GPLv3 or later, see LICENSE for more details.

Description
Kiwix for offline access on iOS and macOS
Readme 51 MiB
Languages
Swift 92.6%
Objective-C++ 4.2%
Objective-C 1.8%
Python 0.7%
JavaScript 0.6%