這是LineageOS 16.0 使用 Raspberry Pi 4 的編譯設定環境,相關說明和操作參考
不用master branch 了
#自動化下載腳本
$ wget https://raw.githubusercontent.com/02047788a/build-lineageOS-rpi3/master/scripts/sync-lineageos-code.sh -O sync-lineageos-code.sh
# 執行腳本輸入提示
# Please entry lineageOS checkout folder : /home/Downlaods/LineageOS-16.0 (your source folder)
# Please entry checkout lineageOS branch : lineage-16.0
# Please entry build device name(ex:,rpi3,rpi4) : rpi4
輸入的變數都存在~/.profile 裡面 ($LINEAGE_SRC, $LINEAGE_BRANCH, $DEVICE_NAME)
# 下載腳本到程式碼目錄
$ wget https://raw.githubusercontent.com/02047788a/build-lineageOS-rpi3/master/scripts/build-lineageos-code.sh -O build-lineageos-code.sh
$ sudo ./build-lineageos-code.sh #編譯全部映像kernel ramdisk systemimage vendorimage
編譯後產生可安裝的image路徑: \$LINEAGE_SRC/out/target/product/rpi4/*lineage-16.0-20200201-rpi4.img**
燒錄映像到SD卡
$ sudo dd if=lineage-16.0-20200201-rpi4.img of=/dev/sdX status=progress bs=4M
/dev/sdX 是你SD卡的路徑,注意要改阿!!!
# WIFI
PRODUCT_PACKAGES += \
android.hardware.wifi@1.0-service \
hostapd \
wpa_supplicant
service wpa_supplicant /vendor/bin/hw/wpa_supplicant \
-O/data/vendor/wifi/wpa/sockets \
-g@android:wpa_wlan0
interface android.hardware.wifi.supplicant@1.0::ISupplicant default
interface android.hardware.wifi.supplicant@1.1::ISupplicant default
class main
socket wpa_wlan0 dgram 660 wifi wifi
disabled
oneshot
<hal format="hidl">
<name>android.hardware.wifi</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IWifi</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.wifi.hostapd</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IHostapd</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.wifi.supplicant</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>ISupplicant</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.bluetooth</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IBluetoothHci</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.health</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IHealth</name>
<instance>default</instance>
</interface>
</hal>
# DRM
PRODUCT_PACKAGES += \
android.hardware.drm@1.0-impl \
android.hardware.drm@1.0-service
<hal format="hidl">
<name>android.hardware.drm</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ICryptoFactory</name>
<instance>widevine</instance>
<instance>default</instance>
</interface>
<interface>
<name>IDrmFactory</name>
<instance>widevine</instance>
<instance>default</instance>
</interface>
</hal>
# configstore
PRODUCT_PACKAGES += \
android.hardware.configstore@1.1-service
<hal format="hidl">
<name>android.hardware.configstore</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>ISurfaceFlingerConfigs</name>
<instance>default</instance>
</interface>
</hal>
error: device unauthorized. \ This adbd's $ADB_VENDOR_KEYS is not set; try 'adb kill-server' if that seems wrong. \ Otherwise check for a confirmation dialog on your device.