English

How to build LineageOS

Tags: #<Tag:0x00007f05e1e506f8>

Continuing the discussion from Lineage-16.0 (Android Pie) Nightly:

so split it.

May you want to share some experience before doing all the research from scratch?

At the beginning of the short “build hiatus” of LineageOS for the FP2 I created a virtual machine based an Ubuntu and followed the build instructions like a dumb script kiddie line by line. Maybe I can learn or contribute something?

Several hours and a single obstacle later (The blob extraction script somehow expected a “different” recovery image and failed. I ignored and circumvented this error.) the build completed successfully. But wait - huh? - it should fail, right?

I tried to locate the “app permissions”-bug inside the code and was quickly lost in a haze of python scripts and code snippets (AOSP apps, CyanogenMod apps, FP2 apps…) which are a complete mystery to me.

I deleted the virtual machine.
Android is - possibly like any other commercial or open source OS out there - a complete mess.

I am even more grateful now for the work of chrmhoffmann, z3ntu and others.

4 Likes

@chrmhoffmann and @z3ntu the post is collecting likes and there have been attempts to do the same by at least @thc and who knows who else.
Would you mind to enlighten us a bit?
My impression is, that there could be a third contributor by @thc, couldn’t be?

1 Like

This may be still working:

LineageOS has automatically generated build pages for the supported devices for a start …

https://wiki.lineageos.org/devices/FP2/build

And how to compile TWRP (according to https://twrp.me/faq/howtocompiletwrp.html) starts here …

https://forum.xda-developers.com/showthread.php?p=32965365#post32965365

I haven’t done this myself yet, but that’s where I would start.

1 Like

thx but it is quite old, will see if it still works :grin:

I know that. I’m wondering when your device isn’t listed yet.

1 Like

Build instructions haven’t changed that much. It probably works as is, otherwise it’d only need minor changes. Have fun!

ok but it is still unclear to me how to start from scratch, if a device is not supported (officially or unofficially), means no LOS port available.

2 Likes

First try to build one that is supported. Learn the build process. Inpect Makefiles, get familiar with them.

Then the thing gets a lot difficult. Locate a supported device with similar hardware than the one you want to build for. Copy the device tree. Go Makefile for Makefile making the appropiate changes. Try to build a functional recovery for it.

Then try to make it boot. Inspect logcats. And then make the rest work.

Easy peasy (nope).

4 Likes

Hi,

I switched from Fairphone OS to LineageOS 16.0 a week ago and I think it’s great!

Now, I’m trying to build it for myself on Ubuntu to learn how it works. Not sure I’m knowledgeable enough to contribute yet, but I guess I have to start somewhere :slight_smile:.

I’ve followed the instructions here: https://wiki.lineageos.org/devices/FP2/build
but I am getting errors when running ./extract-files.sh and then breakfast FP2. There are a number of files missing (see below). Am I missing something? Any help greatly appreciated :slight_smile:.

Output of extract-files.sh

No device is online. Waiting for one…
Please connect USB and/or enable USB debugging
Device Found.
Cleaning output directory (./…/…/…/vendor/fairphone/FP2/proprietary)…
Extracting 121 files in ./proprietary-files-qc.txt from adb:

  • vendor/bin/adsprpcd
  • vendor/bin/fm_qsoc_patches
  • vendor/bin/hci_qcomm_init
    !! vendor/bin/hci_qcomm_init: file not found in source
  • vendor/bin/irsc_util
  • vendor/bin/loc_launcher
  • /vendor/bin/mm-pp-daemon
  • vendor/bin/mpdecision
  • vendor/bin/netmgrd
  • vendor/bin/qmuxd
  • vendor/bin/qseecomd
  • vendor/bin/radish
  • vendor/bin/rfs_access
  • vendor/bin/rmt_storage
  • vendor/bin/sensors.qcom
  • vendor/bin/time_daemon
  • vendor/etc/data/dsi_config.xml
  • vendor/etc/data/netmgr_config.xml
  • vendor/firmware/a330_pfp.fw
    !! vendor/firmware/a330_pfp.fw: file not found in source
  • vendor/firmware/a330_pm4.fw
    !! vendor/firmware/a330_pm4.fw: file not found in source
  • vendor/firmware/venus.b00
    !! vendor/firmware/venus.b00: file not found in source
  • vendor/firmware/venus.b01
    !! vendor/firmware/venus.b01: file not found in source
  • vendor/firmware/venus.b02
    !! vendor/firmware/venus.b02: file not found in source
  • vendor/firmware/venus.b03
    !! vendor/firmware/venus.b03: file not found in source
  • vendor/firmware/venus.b04
    !! vendor/firmware/venus.b04: file not found in source
  • vendor/firmware/venus.mbn
    !! vendor/firmware/venus.mbn: file not found in source
  • vendor/firmware/venus.mdt
    !! vendor/firmware/venus.mdt: file not found in source
  • vendor/etc/permissions/qcnvitems.xml
  • vendor/etc/permissions/qcrilhook.xml
  • vendor/framework/qcnvitems.jar
    Checking if system is odexed and locating boot.oats…
  • vendor/framework/qcrilhook.jar
  • vendor/lib/libmdmdetect.so
  • vendor/bin/thermal-engine
  • vendor/lib/egl/eglsubAndroid.so
  • vendor/lib/egl/libEGL_adreno.so
  • vendor/lib/egl/libGLESv1_CM_adreno.so
  • vendor/lib/egl/libGLESv2_adreno.so
  • vendor/lib/egl/libq3dtools_adreno.so
  • vendor/lib/hw/activity_recognition.msm8974.so
  • vendor/lib/hw/flp.default.so
  • vendor/lib/hw/sensors.msm8974.so
  • vendor/lib/libC2D2.so
  • vendor/lib/libCB.so
  • vendor/lib/libOmxAacDec.so
  • vendor/lib/libOmxAmrwbplusDec.so
  • vendor/lib/libOmxEvrcDec.so
  • vendor/lib/libOmxQcelp13Dec.so
  • vendor/lib/libOmxWmaDec.so
  • vendor/lib/libOpenCL.so
  • vendor/lib/libQSEEComAPI.so
  • vendor/lib/libRSDriver_adreno.so
  • vendor/lib/libacdbloader.so
  • vendor/lib/libacdbrtac.so
  • vendor/lib/libadiertac.so
  • vendor/lib/libadreno_utils.so
  • vendor/lib/libadsprpc.so
  • vendor/lib/libaudcal.so
  • vendor/lib/libbccQTI.so
  • vendor/lib/libbtnv.so
  • vendor/lib/libc2d30-a3xx.so
  • vendor/lib/libconfigdb.so
  • vendor/lib/libdisp-aba.so
  • vendor/lib/libdrmfs.so
  • vendor/lib/libdrmtime.so
  • vendor/lib/libdsi_netctrl.so
  • vendor/lib/libfastcvadsp_stub.so
  • vendor/lib/libfastcvopt.so
  • vendor/lib/libflp.so
  • vendor/lib/libgeofence.so
  • vendor/lib/libgsl.so
  • vendor/lib/libizat_core.so
  • vendor/lib/liblbs_core.so
  • vendor/lib/liblistenhardware.so
  • vendor/lib/liblistenjni.so
  • vendor/lib/liblistensoundmodel.so
  • vendor/lib/libllvm-qcom.so
  • vendor/lib/libloc_api_v02.so
  • vendor/lib/liblqe.so
  • vendor/lib/libmm-abl-oem.so
  • vendor/lib/libmm-abl.so
  • vendor/lib/libnetmgr.so
  • vendor/lib/libperipheral_client.so
  • vendor/lib/libqc-opt.so
  • vendor/lib/libqdi.so
  • vendor/lib/libqdp.so
  • vendor/lib/libqmi_cci.so
  • vendor/lib/libqmi_client_helper.so
  • vendor/lib/libqmi_common_so.so
  • vendor/lib/libqmi_csi.so
  • vendor/lib/libqmi_encdec.so
  • vendor/lib/libqti-perfd-client.so
  • vendor/lib/libril-qc-qmi-1.so
  • vendor/lib/libril-qcril-hook-oem.so
  • vendor/lib/librpmb.so
  • vendor/lib/librs_adreno.so
  • vendor/lib/librs_adreno_sha1.so
  • vendor/lib/libsc-a3xx.so
  • vendor/lib/libscale.so
  • vendor/lib/libsensor1.so
  • vendor/lib/libsensor_reg.so
  • vendor/lib/libsmemlog.so
  • vendor/lib/libssd.so
  • vendor/lib/libsystem_health_mon.so
  • vendor/lib/libthermalclient.so
  • vendor/lib/libthermalioctl.so
  • vendor/lib/libxml.so
  • vendor/lib/soundfx/libqcbassboost.so
  • vendor/lib/soundfx/libqcreverb.so
  • vendor/lib/soundfx/libqcvirt.so
  • vendor/app/TimeService/TimeService.apk
  • vendor/app/shutdownlistener/shutdownlistener.apk
  • priv-app/qcrilmsgtunnel/qcrilmsgtunnel.apk
  • vendor/lib/libTimeService.so
  • vendor/lib/libdiag.so
  • vendor/lib/libdsutils.so
  • vendor/lib/libidl.so
  • vendor/lib/liblisten.so
  • vendor/lib/libqcci_legacy.so
  • vendor/lib/libqmi.so
  • vendor/lib/libqmi_client_qmux.so
  • vendor/lib/libqmiservices.so
  • vendor/lib/libtime_genoff.so
    Extracting 195 files in ./proprietary-files.txt from adb:
  • vendor/bin/mm-qcamera-daemon
  • vendor/firmware/cpp_firmware_v1_2_0.fw
    !! vendor/firmware/cpp_firmware_v1_2_0.fw: file not found in source
  • vendor/lib/libchromatix_imx135_liveshot.so
  • vendor/bin/senread
  • vendor/lib/libactuator_dw9714.so
  • vendor/lib/libactuator_dw9714_camcorder.so
  • vendor/lib/libactuator_dw9714_camera.so
  • vendor/lib/libactuator_dw9716.so
  • vendor/lib/libactuator_dw9716_camcorder.so
  • vendor/lib/libactuator_dw9716_camera.so
  • vendor/lib/libactuator_dw9800W.so
  • vendor/lib/libactuator_dw9800W_camcorder.so
  • vendor/lib/libactuator_dw9800W_camera.so
  • vendor/lib/libactuator_iu074.so
  • vendor/lib/libactuator_iu074_camcorder.so
  • vendor/lib/libactuator_iu074_camera.so
  • vendor/lib/libactuator_ov12830.so
  • vendor/lib/libactuator_ov12830_camcorder.so
  • vendor/lib/libactuator_ov12830_camera.so
  • vendor/lib/libactuator_ov8825.so
  • vendor/lib/libactuator_ov8825_camcorder.so
  • vendor/lib/libactuator_ov8825_camera.so
  • vendor/lib/libactuator_rohm_bu64243gwz.so
  • vendor/lib/libactuator_rohm_bu64243gwz_camcorder.so
  • vendor/lib/libactuator_rohm_bu64243gwz_camera.so
  • vendor/lib/libchromatix_SKUAA_ST_gc0339_common.so
  • vendor/lib/libchromatix_SKUAA_ST_gc0339_default_video.so
  • vendor/lib/libchromatix_SKUAA_ST_gc0339_preview.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_common.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_default_video.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_hfr_120fps.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_hfr_60fps.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_hfr_90fps.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_liveshot.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_preview.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_snapshot.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_video_hd.so
  • vendor/lib/libchromatix_SKUAB_ST_s5k4e1_zsl.so
  • vendor/lib/libchromatix_imx132_common.so
  • vendor/lib/libchromatix_imx132_default_video.so
  • vendor/lib/libchromatix_imx132_liveshot.so
  • vendor/lib/libchromatix_imx132_preview.so
  • vendor/lib/libchromatix_imx132_snapshot.so
  • vendor/lib/libchromatix_imx134_common.so
  • vendor/lib/libchromatix_imx134_default_video.so
  • vendor/lib/libchromatix_imx134_hfr_120.so
  • vendor/lib/libchromatix_imx134_hfr_60.so
  • vendor/lib/libchromatix_imx134_preview.so
  • vendor/lib/libchromatix_imx134_snapshot.so
  • vendor/lib/libchromatix_imx135_common.so
  • vendor/lib/libchromatix_imx135_default_video.so
  • vendor/lib/libchromatix_imx135_hfr_120.so
  • vendor/lib/libchromatix_imx135_hfr_60.so
  • vendor/lib/libchromatix_imx135_hfr_90.so
  • vendor/lib/libchromatix_imx135_preview.so
  • vendor/lib/libchromatix_imx135_snapshot.so
  • vendor/lib/libchromatix_imx135_video_hd.so
  • vendor/lib/libchromatix_ov12870_common.so
  • vendor/lib/libchromatix_ov12870_default_video.so
  • vendor/lib/libchromatix_ov12870_preview.so
  • vendor/lib/libchromatix_ov12870_snapshot.so
  • vendor/lib/libchromatix_ov2685_common.so
  • vendor/lib/libchromatix_ov2685_default_video.so
  • vendor/lib/libchromatix_ov2685_preview.so
  • vendor/lib/libchromatix_ov2685_snapshot.so
  • vendor/lib/libchromatix_ov2720_common.so
  • vendor/lib/libchromatix_ov2720_default_video.so
  • vendor/lib/libchromatix_ov2720_hfr.so
  • vendor/lib/libchromatix_ov2720_liveshot.so
  • vendor/lib/libchromatix_ov2720_preview.so
  • vendor/lib/libchromatix_ov2720_zsl.so
  • vendor/lib/libchromatix_ov5648_oty5f03_common.so
  • vendor/lib/libchromatix_ov5648_oty5f03_default_video.so
  • vendor/lib/libchromatix_ov5648_oty5f03_preview.so
  • vendor/lib/libchromatix_ov5648_oty5f03_snapshot.so
  • vendor/lib/libchromatix_ov5648_oty5f03_zsl.so
  • vendor/lib/libchromatix_ov5670_common.so
  • vendor/lib/libchromatix_ov5670_preview.so
  • vendor/lib/libchromatix_ov5670_snapshot.so
  • vendor/lib/libchromatix_ov5670_video.so
  • vendor/lib/libchromatix_ov8825_common.so
  • vendor/lib/libchromatix_ov8825_default_video.so
  • vendor/lib/libchromatix_ov8825_hfr_120fps.so
  • vendor/lib/libchromatix_ov8825_hfr_60fps.so
  • vendor/lib/libchromatix_ov8825_hfr_90fps.so
  • vendor/lib/libchromatix_ov8825_liveshot.so
  • vendor/lib/libchromatix_ov8825_liveshot_hd.so
  • vendor/lib/libchromatix_ov8825_preview.so
  • vendor/lib/libchromatix_ov8825_preview_hd.so
  • vendor/lib/libchromatix_ov8825_snapshot.so
  • vendor/lib/libchromatix_ov8825_snapshot_hd.so
  • vendor/lib/libchromatix_ov8825_video_hd.so
  • vendor/lib/libchromatix_ov8825_zsl.so
  • vendor/lib/libchromatix_ov8865_q8v18a_common.so
  • vendor/lib/libchromatix_ov8865_q8v18a_default_video.so
  • vendor/lib/libchromatix_ov8865_q8v18a_hfr_120fps.so
  • vendor/lib/libchromatix_ov8865_q8v18a_hfr_60fps.so
  • vendor/lib/libchromatix_ov8865_q8v18a_hfr_90fps.so
  • vendor/lib/libchromatix_ov8865_q8v18a_liveshot.so
  • vendor/lib/libchromatix_ov8865_q8v18a_preview.so
  • vendor/lib/libchromatix_ov8865_q8v18a_snapshot.so
  • vendor/lib/libchromatix_ov8865_q8v18a_video_hd.so
  • vendor/lib/libchromatix_ov8865_q8v18a_zsl.so
  • vendor/lib/libchromatix_ov9724_common.so
  • vendor/lib/libchromatix_ov9724_default_video.so
  • vendor/lib/libchromatix_ov9724_liveshot.so
  • vendor/lib/libchromatix_ov9724_preview.so
  • vendor/lib/libchromatix_s5k3l1yx_common.so
  • vendor/lib/libchromatix_s5k3l1yx_default_video.so
  • vendor/lib/libchromatix_s5k3l1yx_hfr_120fps.so
  • vendor/lib/libchromatix_s5k3l1yx_hfr_60fps.so
  • vendor/lib/libchromatix_s5k3l1yx_hfr_90fps.so
  • vendor/lib/libchromatix_s5k3l1yx_liveshot.so
  • vendor/lib/libchromatix_s5k3l1yx_preview.so
  • vendor/lib/libchromatix_s5k3l1yx_snapshot.so
  • vendor/lib/libchromatix_s5k3l1yx_video_hd.so
  • vendor/lib/libchromatix_s5k3l1yx_zsl.so
  • vendor/lib/libchromatix_skuab_shinetech_gc0339_common.so
  • vendor/lib/libchromatix_skuab_shinetech_gc0339_default_video.so
  • vendor/lib/libchromatix_skuab_shinetech_gc0339_liveshot.so
  • vendor/lib/libchromatix_skuab_shinetech_gc0339_preview.so
  • vendor/lib/libchromatix_skuab_shinetech_gc0339_snapshot.so
  • vendor/lib/libchromatix_skuab_shinetech_gc0339_zsl.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_common.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_default_video.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_hfr_120fps.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_hfr_60fps.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_hfr_90fps.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_preview.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_snapshot.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_video_hd.so
  • vendor/lib/libchromatix_skuf_ov12830_p12v01c_zsl.so
  • vendor/lib/libchromatix_skuf_ov5648_p5v23c_common.so
  • vendor/lib/libchromatix_skuf_ov5648_p5v23c_default_video.so
  • vendor/lib/libchromatix_skuf_ov5648_p5v23c_preview.so
  • vendor/lib/libchromatix_skuf_ov5648_p5v23c_snapshot.so
  • vendor/lib/libcneapiclient.so
  • vendor/lib/libjpegdhw.so
  • vendor/lib/libjpegehw.so
  • vendor/lib/libmmcamera2_c2d_module.so
  • vendor/lib/libmmcamera2_cpp_module.so
  • vendor/lib/libmmcamera2_frame_algorithm.so
  • vendor/lib/libmmcamera2_iface_modules.so
  • vendor/lib/libmmcamera2_imglib_modules.so
  • vendor/lib/libmmcamera2_is.so
  • vendor/lib/libmmcamera2_isp_modules.so
  • vendor/lib/libmmcamera2_pproc_modules.so
  • vendor/lib/libmmcamera2_sensor_modules.so
  • vendor/lib/libmmcamera2_stats_algorithm.so
  • vendor/lib/libmmcamera2_stats_modules.so
  • vendor/lib/libmmcamera2_vpe_module.so
  • vendor/lib/libmmcamera2_wnr_module.so
  • vendor/lib/libmmcamera_SKUAA_ST_gc0339.so
  • vendor/lib/libmmcamera_SKUAB_ST_s5k4e1.so
  • vendor/lib/libmmcamera_faceproc.so
  • vendor/lib/libmmcamera_hdr_gb_lib.so
  • vendor/lib/libmmcamera_hdr_lib.so
  • vendor/lib/libmmcamera_hi256.so
  • vendor/lib/libmmcamera_imglib.so
  • vendor/lib/libmmcamera_imx132.so
  • vendor/lib/libmmcamera_imx134.so
  • vendor/lib/libmmcamera_imx135.so
  • vendor/lib/libmmcamera_mt9m114.so
  • vendor/lib/libmmcamera_ofilm_oty5f03_eeprom.so
  • vendor/lib/libmmcamera_ov12870.so
  • vendor/lib/libmmcamera_ov12870_gt24p64a_eeprom.so
  • vendor/lib/libmmcamera_ov2685.so
  • vendor/lib/libmmcamera_ov2720.so
  • vendor/lib/libmmcamera_ov5648_oty5f03.so
  • vendor/lib/libmmcamera_ov5670.so
  • vendor/lib/libmmcamera_ov8825.so
  • vendor/lib/libmmcamera_ov8865_q8v18a.so
  • vendor/lib/libmmcamera_ov9724.so
  • vendor/lib/libmmcamera_s5k3l1yx.so
  • vendor/lib/libmmcamera_skuab_shinetech_gc0339.so
  • vendor/lib/libmmcamera_skuf_ov12830_p12v01c.so
  • vendor/lib/libmmcamera_skuf_ov5648_p5v23c.so
  • vendor/lib/libmmcamera_sp1628.so
  • vendor/lib/libmmcamera_sunny_p12v01m_eeprom.so
  • vendor/lib/libmmcamera_sunny_p5v23c_eeprom.so
  • vendor/lib/libmmcamera_sunny_q8v18a_eeprom.so
  • vendor/lib/libmmcamera_tintless_algo.so
  • vendor/lib/libmmcamera_tintless_bg_pca_algo.so
  • vendor/lib/libmmcamera_truly_cm7700_eeprom.so
  • vendor/lib/libmmcamera_wavelet_lib.so
  • vendor/lib/libmmipl.so
  • vendor/lib/libmmjpeg.so
  • vendor/lib/libmmqjpeg_codec.so
  • vendor/lib/liboemcamera.so
  • vendor/lib/libqomx_jpegdec.so
  • vendor/lib/libqomx_jpegenc.so
  • vendor/lib/libril-qc-radioconfig.so
  • vendor/lib/libsensor_test.so
  • vendor/lib/libwcnss_qmi.so
  • vendor/lib/mediadrm/libwvdrmengine.so
    Extracting 9 files in ./proprietary-files-twrp.txt from adb:
  • recovery/root/sbin/qseecomd
    !! recovery/root/sbin/qseecomd: file not found in source
  • recovery/root/vendor/lib/hw/keystore.default.so
    !! recovery/root/vendor/lib/hw/keystore.default.so: file not found in source
  • recovery/root/vendor/lib/hw/keystore.qcom.so
    !! recovery/root/vendor/lib/hw/keystore.qcom.so: file not found in source
  • recovery/root/vendor/lib/libQSEEComAPI.so
  • recovery/root/vendor/lib/libdiag.so
  • recovery/root/vendor/lib/libdrmfs.so
  • recovery/root/vendor/lib/libdrmtime.so
  • recovery/root/vendor/lib/librpmb.so
  • recovery/root/vendor/lib/libssd.so
    sed: can’t read ./…/…/…/vendor/fairphone/FP2/proprietary/recovery/root/sbin/qseecomd: No such file or directory

Those are supposed to be extracted from a FP2 running official Fairphone OS, but I think you’re trying to get them from LineageOS. That may be the cause, I guess.

I recall seeing a way to extract them from an upgrade ZIP (for Firefox OS builds, maybe?)

2 Likes

So you mean https://wiki.lineageos.org/extracting_blobs_from_zips.html ?

2 Likes

Thanks for your help @Roboe and @Volker . Yes, I was trying to extract from the latest LineageOS zip as it says in the instructions.

I managed to do the same with the latest Fairphone OS build and ./extract_files.sh finds more files. This time it finds some that were missing from the LineageOS zip, but also can’t find some that were present in the LineageOS zip. Also, there are a couple of files missing from both.

This time breakfast FP2 runs without error, but brunch FP2 fails with a missing file error quoting one of the files missing from ./extract_files.sh. Is there anywhere I can download the missing vendor files from?

1 Like

Did you check at
https://code.fairphone.com/projects/fp-osos/dev/fp2-blobs-download-page.html
?

1 Like

(But don’t extract them onto the Lineage OS source code!!!)

Hi @Roboe. Why is that? I think I’ve managed to find all the files the extract script needs from a combination of the LineageOS, FPOS and blob zips. Should I not build using those files?

2 Likes

Fairphone provides an official way to get the blobs, the thing @Volker linked above. But it’s meant to be extracted right inside the Fairphone Open OS source code. I meant you shouldn’t unpack the official blobs on the LOS source tree directly, since it modifies other things outside of the vendor folder.

4 Likes