介紹Introduction
F-Droid根據官方說法是一個在Android平台上的FOSS(Free and Open Source Software 免費與開源軟體)可安裝目錄程式,顧名思義就是非常類似我們所熟知了App市集囉。
那肯定會有人問說,既然有了Google Play為什麼還要另外自己去建立一個市集呢? 那是因為有些地方是沒辦法連得上Google Play,或著不喜歡目前市面上所有App市集的上架規則。 那用F-Droid架自己的市集有什麼好處呢?
- 私人的程式庫,小小程式樂園
- 自己的市集,自己說的算
- 開源軟體,自己的模式自己建立
環境建立Setup
首先一定是要下載好工具囉
Linux
有套件管理工具的好處就是一件完成安裝!
sudo apt-get install fdroidserver
當然還有一些進階的操作,例如如果有希望讓F-Droid自己把Source code編譯起來的話,可以用以下的指令(假設你什麼都沒有...)
# 安裝一些用來編譯程式程式的套件
sudo apt-get install openjdk-7-jdk libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386
# 從android官網用wget抓android-sdk
cd ~
# 筆者目前最新版本是r24.4.1,建議讀者到 ( http://developer.android.com/sdk/index.html#Other ) 去查看最新的SDK
wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz
# 用tar解壓縮我們剛剛的檔案
tar zxcf android-sdk_r24.4.1-linux.tgz
# 接下來我們要把ANDROID_HOME設定起來(假設你解壓縮出來的資料夾名字為 android-sdk-linux )
export ANDROID_HOME=~/android-sdk-linux
# 再來就是要把ANDROID_HOME丟進我們的 .bashrc (如果是zsh就會是 .zshrc ) 這樣我們的設定就會被記錄住了
echo 'export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools' >> .bashrc
還有其他一些有的沒有的選項設定,可以參考這邊
OSX
Using MacPorts
port install fdroidserver
Using HomeBrew
brew install fdroidserver
Using easy_install
sudo easy_install fdroidserver
Windows
Windows基本上Command-Line base的東西就蠻殘缺的所以會需要借助Cygwin,不囉嗦~建立方式如下
- 下載 Cygwin (載點)
- 安裝 Cygwin , 並在選擇安裝套件的時候選擇安裝以下套件
- gcc-core
- git
- openssh
- python
- python-pyasn1
- python-imaging
- python-magic
- python-paramiko
- python-requests
- python-setuptools
- rsync
- wget
- 開啟一個Cygwin的bash介面,然後輸入
easy_install fdroidserver
From Source
git clone https://gitlab.com/fdroid/fdroidserver.git
cd fdroidserver
virtualenv --system-site-packages env/
. env/bin/activate
pip install -e .
python setup.py install
接下來就是建立環境囉 (用Linux做示範)
# 伺服器這邊筆者選用Nginx,當然Apache Web Server也是可以
sudo apt-get install nginx
# 建立F-Droid專用的資料夾
sudo mkdir /usr/share/nginx/www/fdroid
sudo chown -R $USER /usr/share/nginx/www/fdroid
cd /usr/share/nginx/www/fdroid
# 初始化環境
fdroid init
然後在當前的資料夾裡面就會多了一個repo的資料夾,這邊就是我們放程式(.apk)的地方,程式放完就可以輸入下面的指令,來產生MetaData(程式敘述資料)
fdroid update --create-metadata
這樣我們的 Repo Server 已經建立完成囉~ 接下來把位置放進F-Droid的Client就可以連接到了
Config.py 設置
基本上要改的就這幾個
# Repo Server的網址
repo_url = "https://MyFirstFDroidRepo.org/fdroid/repo"
# Repo Server的名字
repo_name = "My First F-Droid Repo Demo"
# Repo Server的Icon
repo_icon = "fdroid-icon.png"
# Repo Server的敘述
repo_description = ""
改完之後要重置伺服器,用下方的指令
fdroid server update -v