OTA Server for LineageOS
Go to file
Steven Polley ce2087e638
All checks were successful
continuous-integration/drone/push Build is passing
Update README.md with docker usage
2023-06-04 16:07:17 -06:00
public initial commit 2023-06-03 23:07:55 -06:00
.drone.yml fix typos 2023-06-03 23:13:51 -06:00
.gitignore go mod and .gitignore 2023-06-03 23:10:29 -06:00
Dockerfile fix typos 2023-06-03 23:13:51 -06:00
go.mod go mod and .gitignore 2023-06-03 23:10:29 -06:00
main.go lock cache during ROM move operation 2023-06-04 15:58:16 -06:00
README.md Update README.md with docker usage 2023-06-04 16:07:17 -06:00

Build Status

lineageos-ota-server

OTA Server for LineageOS. The OTA server supports a single device, if you intend to support multiple devices, you just create an additional OTA server instance for that device.

docker compose example

The service listens on port 8080 by default. Mount the output directory for the builds of the device you wish to serve to the /out folder. Also, mount a persistent public directory which will be served publicly. The public folder can be shared across multiple OTA server instances if you wish.


version: '3.8'

  lineageos-ota:
    image: registry.deadbeef.codes/lineageos-ota-server:latest
    restart: always
    expose:
      - "8080"
    volumes:
      - /data/android/lineage/out/target/product/sunfish:/out
      - /data/android/public:/public
    

How to point device to OTA server

The recommended way is to include the configuration inside your build of the ROM. We do this by by including the URL as a system build.prop by doing the following:

Create new file /data/android/lineage/vendor/lineage/build/core/deadbeef-ota.mk

# deadbeef.codes LineageOS OTA update server - replace with your own URL
ADDITIONAL_SYSTEM_PROPERTIES += \
        lineage.updater.uri=https://lineageos-ota.deadbeef.codes 

Edit /data/android/lineage/vendor/lineage/build/core/main.mk to include deadbeef-ota.mk


# Include LineageOS versions
include $(TOPDIR)vendor/lineage/build/core/main_version.mk

# Include deadbeef.codes OTA server
include $(TOPDIR)vendor/lineage/build/core/deadbeef-ota.mk