--- description: 'How to Create Your Own F-Droid Repo to Share as a Content Pack' sidebar_position: 2 --- # 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: * **Escanea APKs:** Lee los nuevos archivos en tu carpeta /repo. * **Genera metadatos:** Crea archivos YAML que contienen el nombre, la versión y los permisos de la aplicación. * **Crea index.v1.jar:** Este es el archivo "catálogo" que la aplicación F-Droid descarga para ver qué hay disponible. * **Firma el repositorio:** Utiliza tu clave secreta para firmar el índice, demostrando a la aplicación de Android que los archivos no han sido manipulados. ### Paso 7: Prueba tu repositorio localmente Para probar tu repositorio localmente y asegurarte de que todo funciona correctamente antes de compartirlo en la Caja Mantequilla, puedes servir su contenido localmente y agregarlo a F-Droid mediante una URL. ``` cd repo ``` ``` python3 -m http.server 8000 ``` Una vez que tu repositorio esté activo, abre la aplicación F-Droid en tu dispositivo y ve a **Configuración > Repositorios > "+"**. Selecciona **"Introducir URL del repositorio manualmente"** para añadir tu nueva fuente. Agregar el repositorio manualmente le permite verificar la experiencia del usuario comprobando lo siguiente: * **Visibilidad de la app:** ¿Aparecen todas tus apps en la lista? * **Recursos visuales:** ¿Se muestran correctamente los iconos y las capturas de pantalla? * **Categorización:** ¿Aparecen las aplicaciones en las secciones correctas (por ejemplo, Internet, Seguridad)? * **Funcionalidad:** ¿Las descargas e instalaciones se completan sin errores? * **Metadatos:** ¿Coinciden el número de versión y la descripción con los archivos de tu repositorio? Tu repositorio estará disponible en: `http://YOUR-IP:8000/repo` **Encuentra tu IP:** #### macOS: ``` ipconfig getifaddr en0 ``` #### Linux: ``` hostname -I ```