Перейти к основному содержимому

F-Droid Repo

You can build your own curated F-Droid repo using your computer's terminal. Once set up, users can connect their F-Droid app to your Butter Box and start downloading apps.

Step 1: Install F-Droid Server Tools

Before you begin, you need to install a tool called fdroidserver. This helps you create and manage your app store.

On Mac (using Homebrew):

brew install fdroidserver

On Linux (Debian/Ubuntu):

sudo apt install fdroidserver

Step 2: Check that it's installed correctly

After installation, run this command:

fdroid version

If everything is working, you will see a version number printed on the screen.

Step 3: Create Your Repo Folder

You need to create the folder where you will save the repo files in your computer, choose a name that aligns with the project or purpose of the apps in it, and replace my-fdroid-repo for that name in the command.

mkdir -p ~/my-fdroid-repo
cd ~/my-fdroid-repo

Step 4: Initialize the repo

fdroid init

This creates the following directories in your repo file:

Config.yml
repo/
metadata/

Step 5: Add your APKs

Copy your signed APKs into the repo/ folder. Ensure you only use apps from trusted sources like the official F-Droid library or verified developers.

Security Note: Avoid downloading APKs from "mirror" sites or unknown sources, as they can contain malware or trackers that compromise your users' privacy.

cp /path/to/your/*.apk repo/

Example:

cp ~/Downloads/myapp.apk repo/

Step 6: Generate (and Update) the Repository Index

Every time you add a new APK or a new version of an app to your repo/ folder, you must run the following command to "publish" those changes:

fdroid update --create-metadata

What this command does:

  • Scans APKs: It reads the new files in your repo/ folder.
  • Generates Metadata: It creates YAML files containing the app's name, version, and permissions.
  • Creates index.v1.jar: This is the "catalog" file that the F-Droid app downloads to see what is available.
  • Signs the Repository: It uses your secret key to sign the index, proving to the Android app that the files haven't been tampered with.

Step 7: Test your Repo locally

To test your repo locally and ensure everything works before you share it on the Butter Box, you can serve its content locally and add it to F-Droid using a URL.

cd repo
python3 -m http.server 8000

Once your repo is live, open the F-Droid app on your device and navigate to Settings > Repositories > "+". Select "Enter repository URL manually" to add your new source.

Adding the repo manually allows you to verify the user experience by checking:

  • App Visibility: Are all your apps appearing in the list?
  • Visual Assets: Are icons and screenshots displaying correctly?
  • Categorization: Are apps appearing in the correct sections (e.g., Internet, Security)?
  • Functionality: Do the downloads and installations complete without errors?
  • Metadata: Does the version number and description match your repo/ files?

Your repo will be available at:

http://YOUR-IP:8000/repo

Find your IP:

macOS:

ipconfig getifaddr en0

Linux:

hostname -I