lynx: Set up proprietary files extraction

* The proprietary files lists are generated by comparing stock partition
  contents with AOSP generated partitions.

Co-authored-by: Aaron Kling <webgeek1234@gmail.com>
Co-authored-by: Cosmin Tanislav <demonsingur@gmail.com>
Co-authored-by: Michael Bestas <mkbestas@lineageos.org>
Change-Id: I17b78ccf212d8364070c40fe3c7d06d4048e3fe4
This commit is contained in:
Chirayu Desai 2021-12-04 01:01:42 +05:30 committed by Michael Bestas
parent b03269604b
commit 51a27fabd9
No known key found for this signature in database
GPG Key ID: CC95044519BE6669
13 changed files with 3968 additions and 0 deletions

View File

@ -6,6 +6,36 @@
DEVICE_PACKAGE_OVERLAYS += $(DEVICE_PATH)/overlay-lineage
# ANGLE - Almost Native Graphics Layer Engine
PRODUCT_PACKAGES += \
ANGLE
# EUICC
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.telephony.euicc.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/android.hardware.telephony.euicc.xml
# Build necessary packages for vendor
# Codec2
PRODUCT_PACKAGES += \
libacryl \
libacryl_hdr_plugin \
libexynosv4l2
# Fingerprint
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
# Graphics
PRODUCT_PACKAGES += \
libEGL_angle \
libGLESv1_CM_angle \
libGLESv2_angle
# Sensors
PRODUCT_PACKAGES += \
sensors.dynamic_sensor_hal
# Wi-Fi
PRODUCT_PACKAGES += \
libwifi-hal-ctrl:64

12
extract-files.sh Executable file
View File

@ -0,0 +1,12 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2016 The CyanogenMod Project
# SPDX-FileCopyrightText: 2017-2024 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
set -e
MY_DIR="$(cd "$(dirname "${0}")"; pwd -P)"
"${MY_DIR}/lynx/extract-files.sh" "$@"

View File

@ -11,6 +11,7 @@ $(call inherit-product, vendor/lineage/config/common_full_phone.mk)
# Inherit device configuration
DEVICE_CODENAME := lynx
DEVICE_PATH := device/google/lynx
VENDOR_PATH := vendor/google/lynx
$(call inherit-product, $(DEVICE_PATH)/aosp_$(DEVICE_CODENAME).mk)
$(call inherit-product, device/google/gs201/lineage_common.mk)
$(call inherit-product, $(DEVICE_PATH)/$(DEVICE_CODENAME)/device-lineage.mk)
@ -28,3 +29,5 @@ PRODUCT_BUILD_PROP_OVERRIDES += \
BuildDesc="lynx-user 15 AP3A.241005.015 12366759 release-keys" \
BuildFingerprint=google/lynx/lynx:15/AP3A.241005.015/12366759:user/release-keys \
DeviceProduct=$(DEVICE_CODENAME)
$(call inherit-product, $(VENDOR_PATH)/$(DEVICE_CODENAME)-vendor.mk)

View File

@ -45,4 +45,5 @@ include device/google/lynx/sepolicy/lynx-sepolicy.mk
include device/google/gs201/wifi/qcom/BoardConfig-wifi.mk
DEVICE_PATH := device/google/lynx
VENDOR_PATH := vendor/google/lynx
include $(DEVICE_PATH)/$(TARGET_BOOTLOADER_BOARD_NAME)/BoardConfigLineage.mk

View File

@ -5,3 +5,5 @@
#
include $(DEVICE_PATH)/BoardConfigLineage.mk
include $(VENDOR_PATH)/BoardConfigVendor.mk

141
lynx/extract-files.sh Executable file
View File

@ -0,0 +1,141 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2016 The CyanogenMod Project
# SPDX-FileCopyrightText: 2017-2024 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
set -e
DEVICE=lynx
VENDOR=google
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
ANDROID_ROOT="${MY_DIR}/../../../.."
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}"
exit 1
fi
source "${HELPER}"
# Default to sanitizing the vendor folder before extraction
CLEAN_VENDOR=true
ONLY_FIRMWARE=
KANG=
SECTION=
CARRIER_SKIP_FILES=()
VENDOR_SKIP_FILES=()
while [ "${#}" -gt 0 ]; do
case "${1}" in
--only-firmware)
ONLY_FIRMWARE=true
;;
-n | --no-cleanup)
CLEAN_VENDOR=false
;;
-k | --kang)
KANG="--kang"
;;
-s | --section)
SECTION="${2}"
shift
CLEAN_VENDOR=false
;;
*)
SRC="${1}"
;;
esac
shift
done
if [ -z "${SRC}" ]; then
SRC="adb"
fi
function blob_fixup() {
case "${1}" in
vendor/etc/init/init.modem_logging_control.rc)
[ "$2" = "" ] && return 0
sed -i 's/ && property:ro.debuggable=0//' "${2}"
;;
*)
return 1
;;
esac
return 0
}
function blob_fixup_dry() {
blob_fixup "$1" ""
}
function prepare_firmware() {
if [ "${SRC}" != "adb" ]; then
bash "${ANDROID_ROOT}"/lineage/scripts/pixel/prepare-firmware.sh "${DEVICE}" "${SRC}"
fi
}
# Initialize the helper
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}"
if [ -z "${ONLY_FIRMWARE}" ]; then
extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
generate_prop_list_from_image "product.img" "${MY_DIR}/proprietary-files-carriersettings.txt" CARRIER_SKIP_FILES carriersettings
extract "${MY_DIR}/proprietary-files-carriersettings.txt" "${SRC}" "${KANG}" --section "${SECTION}"
readarray -t VENDOR_SKIP_FILES < <(cat "${MY_DIR}/skip-files-vendor.txt" | sed -E "/^[[:blank:]]*(#|$)/d")
VENDOR_TXT="${MY_DIR}/proprietary-files-vendor.txt"
generate_prop_list_from_image "vendor.img" "${VENDOR_TXT}" VENDOR_SKIP_FILES
# flp.default & gps.default have incorrect SONAME
# libExynosC2*Dec & libExynosC2*Enc depend on libacryl & libexynosv4l2, which are gnu makefile targets
# lowi-server depends on libwpa_client, which is a gnu makefile target
set_disable_checkelf "vendor/bin/lowi-server" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2H263Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2H263Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2H264Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2H264Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2HevcDec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2HevcEnc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2Mpeg4Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2Mpeg4Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2Vp8Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2Vp8Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2Vp9Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib/libExynosC2Vp9Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/hw/flp.default.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/hw/gps.default.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2H263Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2H263Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2H264Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2H264Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2HevcDec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2HevcEnc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2Mpeg4Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2Mpeg4Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2Vp8Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2Vp8Enc.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2Vp9Dec.so" "${VENDOR_TXT}"
set_disable_checkelf "vendor/lib64/libExynosC2Vp9Enc.so" "${VENDOR_TXT}"
set_module_suffix "vendor/lib/com.google.edgetpu_app_service-V3-ndk.so" "-vendor" "${VENDOR_TXT}"
set_module_suffix "vendor/lib64/com.google.edgetpu_app_service-V3-ndk.so" "-vendor" "${VENDOR_TXT}"
set_module_suffix "vendor/lib64/com.google.edgetpu_vendor_service-V2-ndk.so" "-vendor" "${VENDOR_TXT}"
extract "${MY_DIR}/proprietary-files-vendor.txt" "${SRC}" "${KANG}" --section "${SECTION}"
fi
if [ -z "${SECTION}" ]; then
extract_firmware "${MY_DIR}/proprietary-firmware.txt" "${SRC}"
fi
"${MY_DIR}/setup-makefiles.sh"

View File

@ -0,0 +1,371 @@
# All blobs below are extracted from the release mentioned in proprietary-files.txt
product/etc/CarrierSettings/1and1_de.pb
product/etc/CarrierSettings/2degrees_nz.pb
product/etc/CarrierSettings/321communications_us.pb
product/etc/CarrierSettings/4ka_sk.pb
product/etc/CarrierSettings/a1_at.pb
product/etc/CarrierSettings/a1_bg.pb
product/etc/CarrierSettings/a1_hr.pb
product/etc/CarrierSettings/a1_mk.pb
product/etc/CarrierSettings/a1_si.pb
product/etc/CarrierSettings/ahamo_jp.pb
product/etc/CarrierSettings/airbus_de.pb
product/etc/CarrierSettings/airbus_fr.pb
product/etc/CarrierSettings/airtel_in.pb
product/etc/CarrierSettings/ais_th.pb
product/etc/CarrierSettings/altice_us.pb
product/etc/CarrierSettings/alticeroaming_us.pb
product/etc/CarrierSettings/andorratelecom_ad.pb
product/etc/CarrierSettings/antel_uy.pb
product/etc/CarrierSettings/appalachian_us.pb
product/etc/CarrierSettings/apt_tw.pb
product/etc/CarrierSettings/asda_gb.pb
product/etc/CarrierSettings/assurance_us.pb
product/etc/CarrierSettings/astca_as.pb
product/etc/CarrierSettings/astoundbroadband_us.pb
product/etc/CarrierSettings/att5g_us.pb
product/etc/CarrierSettings/att5gsa_us.pb
product/etc/CarrierSettings/att_mx.pb
product/etc/CarrierSettings/att_us.pb
product/etc/CarrierSettings/attbootstrap_us.pb
product/etc/CarrierSettings/attmvnos_us.pb
product/etc/CarrierSettings/axis_id.pb
product/etc/CarrierSettings/base_be.pb
product/etc/CarrierSettings/batelco_bh.pb
product/etc/CarrierSettings/bell_ca.pb
product/etc/CarrierSettings/bite_lt.pb
product/etc/CarrierSettings/bite_lv.pb
product/etc/CarrierSettings/bluegrass_us.pb
product/etc/CarrierSettings/bob_at.pb
product/etc/CarrierSettings/boost_us.pb
product/etc/CarrierSettings/boosttmo_us.pb
product/etc/CarrierSettings/bouygues_fr.pb
product/etc/CarrierSettings/bsnl_in.pb
product/etc/CarrierSettings/btb_gb.pb
product/etc/CarrierSettings/btc_gb.pb
product/etc/CarrierSettings/cablemovil_es.pb
product/etc/CarrierSettings/carolinawest_us.pb
product/etc/CarrierSettings/carrier_list.pb
product/etc/CarrierSettings/celcom_my.pb
product/etc/CarrierSettings/cellcom_il.pb
product/etc/CarrierSettings/cellcom_us.pb
product/etc/CarrierSettings/cellcommno_us.pb
product/etc/CarrierSettings/celluarone_us.pb
product/etc/CarrierSettings/chatr_ca.pb
product/etc/CarrierSettings/chinamobile_hk.pb
product/etc/CarrierSettings/cht_tw.pb
product/etc/CarrierSettings/cityfone_ca.pb
product/etc/CarrierSettings/claro_br.pb
product/etc/CarrierSettings/claro_pr.pb
product/etc/CarrierSettings/congstar_de.pb
product/etc/CarrierSettings/consumercellularatt_us.pb
product/etc/CarrierSettings/consumercellulartmo_us.pb
product/etc/CarrierSettings/coopvoce_it.pb
product/etc/CarrierSettings/coppervalley_us.pb
product/etc/CarrierSettings/coriolis_fr.pb
product/etc/CarrierSettings/cox_us.pb
product/etc/CarrierSettings/cricket5g_us.pb
product/etc/CarrierSettings/cricket_us.pb
product/etc/CarrierSettings/cspire_nl.pb
product/etc/CarrierSettings/cspire_us.pb
product/etc/CarrierSettings/default.pb
product/etc/CarrierSettings/digi_hu.pb
product/etc/CarrierSettings/digi_my.pb
product/etc/CarrierSettings/digi_ro.pb
product/etc/CarrierSettings/digimobil_es.pb
product/etc/CarrierSettings/dish5gsa_us.pb
product/etc/CarrierSettings/dishatt_us.pb
product/etc/CarrierSettings/dito_ph.pb
product/etc/CarrierSettings/dna_fi.pb
product/etc/CarrierSettings/docomo_jp.pb
product/etc/CarrierSettings/docomomvno_jp.pb
product/etc/CarrierSettings/docomopacific_us.pb
product/etc/CarrierSettings/dtac_th.pb
product/etc/CarrierSettings/du_ae.pb
product/etc/CarrierSettings/eastlink_ca.pb
product/etc/CarrierSettings/ee_gb.pb
product/etc/CarrierSettings/eir_ie.pb
product/etc/CarrierSettings/elisa1_fi.pb
product/etc/CarrierSettings/elisa2_fi.pb
product/etc/CarrierSettings/elisa_ee.pb
product/etc/CarrierSettings/enreach_nl.pb
product/etc/CarrierSettings/eplus_de.pb
product/etc/CarrierSettings/erate_no.pb
product/etc/CarrierSettings/esn_gb.pb
product/etc/CarrierSettings/etisalat_ae.pb
product/etc/CarrierSettings/euskaltel_es.pb
product/etc/CarrierSettings/evolve_us.pb
product/etc/CarrierSettings/fastweb_it.pb
product/etc/CarrierSettings/fet_tw.pb
product/etc/CarrierSettings/fi_at.pb
product/etc/CarrierSettings/fi_tmo_us.pb
product/etc/CarrierSettings/fido_ca.pb
product/etc/CarrierSettings/finetwork_es.pb
product/etc/CarrierSettings/firstnet_us.pb
product/etc/CarrierSettings/firstnetpacific2_us.pb
product/etc/CarrierSettings/firstnetpacific_us.pb
product/etc/CarrierSettings/fizz_ca.pb
product/etc/CarrierSettings/fl1_li.pb
product/etc/CarrierSettings/free_fr.pb
product/etc/CarrierSettings/free_gp.pb
product/etc/CarrierSettings/free_mq.pb
product/etc/CarrierSettings/free_re.pb
product/etc/CarrierSettings/freedommobile_ca.pb
product/etc/CarrierSettings/gamma_gb.pb
product/etc/CarrierSettings/gci_us.pb
product/etc/CarrierSettings/gibtel_gi.pb
product/etc/CarrierSettings/giffgaff_gb.pb
product/etc/CarrierSettings/giga_sg.pb
product/etc/CarrierSettings/globe_ph.pb
product/etc/CarrierSettings/guuk_es.pb
product/etc/CarrierSettings/h3_at.pb
product/etc/CarrierSettings/h3_gb.pb
product/etc/CarrierSettings/h3_ie.pb
product/etc/CarrierSettings/h3_se.pb
product/etc/CarrierSettings/h3g27202_ie.pb
product/etc/CarrierSettings/halebop_se.pb
product/etc/CarrierSettings/helium_us.pb
product/etc/CarrierSettings/help_at.pb
product/etc/CarrierSettings/homobile_it.pb
product/etc/CarrierSettings/hotmobile_il.pb
product/etc/CarrierSettings/ice_no.pb
product/etc/CarrierSettings/idea_in.pb
product/etc/CarrierSettings/idmobile_gb.pb
product/etc/CarrierSettings/iliad_it.pb
product/etc/CarrierSettings/inland_us.pb
product/etc/CarrierSettings/iwireless_us.pb
product/etc/CarrierSettings/jazztel_es.pb
product/etc/CarrierSettings/kddi_jp.pb
product/etc/CarrierSettings/kddimvno_jp.pb
product/etc/CarrierSettings/kena_it.pb
product/etc/CarrierSettings/koodo_ca.pb
product/etc/CarrierSettings/kpn_nl.pb
product/etc/CarrierSettings/lebara_es.pb
product/etc/CarrierSettings/lebara_fr.pb
product/etc/CarrierSettings/lebara_gb.pb
product/etc/CarrierSettings/liberty_pr.pb
product/etc/CarrierSettings/lifecell_ua.pb
product/etc/CarrierSettings/linemo_jp.pb
product/etc/CarrierSettings/llamaya_es.pb
product/etc/CarrierSettings/lmt_lv.pb
product/etc/CarrierSettings/lowi_es.pb
product/etc/CarrierSettings/luckymobile_ca.pb
product/etc/CarrierSettings/lum_ca.pb
product/etc/CarrierSettings/lyca_es.pb
product/etc/CarrierSettings/lyca_us.pb
product/etc/CarrierSettings/m1_sg.pb
product/etc/CarrierSettings/manxcontract_im.pb
product/etc/CarrierSettings/manxprepaid_im.pb
product/etc/CarrierSettings/masmovil_es.pb
product/etc/CarrierSettings/maxis_my.pb
product/etc/CarrierSettings/melita_mt.pb
product/etc/CarrierSettings/meo_pt.pb
product/etc/CarrierSettings/metropcs_us.pb
product/etc/CarrierSettings/mobifone_vn.pb
product/etc/CarrierSettings/mobily_sa.pb
product/etc/CarrierSettings/monacotelecom_mc.pb
product/etc/CarrierSettings/movistar_es.pb
product/etc/CarrierSettings/movistar_mx.pb
product/etc/CarrierSettings/mvnoconnect_us.pb
product/etc/CarrierSettings/nextech_us.pb
product/etc/CarrierSettings/nos_pt.pb
product/etc/CarrierSettings/nova_gr.pb
product/etc/CarrierSettings/nova_is.pb
product/etc/CarrierSettings/o2_cz.pb
product/etc/CarrierSettings/o2_de.pb
product/etc/CarrierSettings/o2_sk.pb
product/etc/CarrierSettings/o2postpaid_gb.pb
product/etc/CarrierSettings/o2prepaid_de.pb
product/etc/CarrierSettings/o2prepaid_gb.pb
product/etc/CarrierSettings/omantel_om.pb
product/etc/CarrierSettings/one_me.pb
product/etc/CarrierSettings/onecall_no.pb
product/etc/CarrierSettings/ooredoo_kw.pb
product/etc/CarrierSettings/ooredoo_qa.pb
product/etc/CarrierSettings/optus_au.pb
product/etc/CarrierSettings/orange_be.pb
product/etc/CarrierSettings/orange_es.pb
product/etc/CarrierSettings/orange_fr.pb
product/etc/CarrierSettings/orange_gp.pb
product/etc/CarrierSettings/orange_lu.pb
product/etc/CarrierSettings/orange_pl.pb
product/etc/CarrierSettings/orange_re.pb
product/etc/CarrierSettings/orange_ro.pb
product/etc/CarrierSettings/orange_sk.pb
product/etc/CarrierSettings/others.pb
product/etc/CarrierSettings/paradisemobile_bm.pb
product/etc/CarrierSettings/partner_il.pb
product/etc/CarrierSettings/pcmobilebell_ca.pb
product/etc/CarrierSettings/pelephone_il.pb
product/etc/CarrierSettings/pepephone_es.pb
product/etc/CarrierSettings/play_pl.pb
product/etc/CarrierSettings/plintron_us.pb
product/etc/CarrierSettings/plus_pl.pb
product/etc/CarrierSettings/post_lu.pb
product/etc/CarrierSettings/povo_jp.pb
product/etc/CarrierSettings/proximus_be.pb
product/etc/CarrierSettings/publicmobile_ca.pb
product/etc/CarrierSettings/pwg_us.pb
product/etc/CarrierSettings/qlink_us.pb
product/etc/CarrierSettings/r_es.pb
product/etc/CarrierSettings/racc_es.pb
product/etc/CarrierSettings/rakuten_jp.pb
product/etc/CarrierSettings/reachmobileatt_us.pb
product/etc/CarrierSettings/redpocketatt_us.pb
product/etc/CarrierSettings/redpockettmo_us.pb
product/etc/CarrierSettings/republicwireless_us.pb
product/etc/CarrierSettings/rjio_in.pb
product/etc/CarrierSettings/rogers5g_ca.pb
product/etc/CarrierSettings/rogers_ca.pb
product/etc/CarrierSettings/rogerswpn_ca.pb
product/etc/CarrierSettings/salt_ch.pb
product/etc/CarrierSettings/salt_li.pb
product/etc/CarrierSettings/sasktel_ca.pb
product/etc/CarrierSettings/sfr_fr.pb
product/etc/CarrierSettings/shaw_ca.pb
product/etc/CarrierSettings/simba_sg.pb
product/etc/CarrierSettings/siminn_is.pb
product/etc/CarrierSettings/simple_us.pb
product/etc/CarrierSettings/simyo_es.pb
product/etc/CarrierSettings/singtel_sg.pb
product/etc/CarrierSettings/skinny_nz.pb
product/etc/CarrierSettings/skt_kr.pb
product/etc/CarrierSettings/sky_gb.pb
product/etc/CarrierSettings/skylo_zz.pb
product/etc/CarrierSettings/smart_ph.pb
product/etc/CarrierSettings/smartfren_id.pb
product/etc/CarrierSettings/smartone_hk.pb
product/etc/CarrierSettings/smarty_gb.pb
product/etc/CarrierSettings/softbank_jp.pb
product/etc/CarrierSettings/solomobile_ca.pb
product/etc/CarrierSettings/spark_nz.pb
product/etc/CarrierSettings/spectrum_us.pb
product/etc/CarrierSettings/spmtelecom_pm.pb
product/etc/CarrierSettings/sprint_us.pb
product/etc/CarrierSettings/sprintprepaid_us.pb
product/etc/CarrierSettings/sprintwholesale_us.pb
product/etc/CarrierSettings/spusu_at.pb
product/etc/CarrierSettings/starhub_sg.pb
product/etc/CarrierSettings/stc_bh.pb
product/etc/CarrierSettings/stc_kw.pb
product/etc/CarrierSettings/stc_sa.pb
product/etc/CarrierSettings/strata_us.pb
product/etc/CarrierSettings/sunrise_ch.pb
product/etc/CarrierSettings/sweno_es.pb
product/etc/CarrierSettings/swisscom_ch.pb
product/etc/CarrierSettings/swisscom_li.pb
product/etc/CarrierSettings/talkmobile_gb.pb
product/etc/CarrierSettings/tango_lu.pb
product/etc/CarrierSettings/tango_us.pb
product/etc/CarrierSettings/tbaytel_ca.pb
product/etc/CarrierSettings/tchibo_at.pb
product/etc/CarrierSettings/tchibo_de.pb
product/etc/CarrierSettings/tdc_dk.pb
product/etc/CarrierSettings/telavox_se.pb
product/etc/CarrierSettings/telcel_mx.pb
product/etc/CarrierSettings/telco_re.pb
product/etc/CarrierSettings/tele2_ee.pb
product/etc/CarrierSettings/tele2_lt.pb
product/etc/CarrierSettings/tele2_lv.pb
product/etc/CarrierSettings/tele2_se.pb
product/etc/CarrierSettings/telecable2_es.pb
product/etc/CarrierSettings/telekom_de.pb
product/etc/CarrierSettings/telekom_gr.pb
product/etc/CarrierSettings/telekom_hr.pb
product/etc/CarrierSettings/telekom_hu.pb
product/etc/CarrierSettings/telekom_me.pb
product/etc/CarrierSettings/telekom_mk.pb
product/etc/CarrierSettings/telekom_pl.pb
product/etc/CarrierSettings/telekom_ro.pb
product/etc/CarrierSettings/telekom_si.pb
product/etc/CarrierSettings/telekom_sk.pb
product/etc/CarrierSettings/telemach_si.pb
product/etc/CarrierSettings/telenet_be.pb
product/etc/CarrierSettings/telenor_dk.pb
product/etc/CarrierSettings/telenor_no.pb
product/etc/CarrierSettings/telenor_se.pb
product/etc/CarrierSettings/telia_dk.pb
product/etc/CarrierSettings/telia_ee.pb
product/etc/CarrierSettings/telia_fi.pb
product/etc/CarrierSettings/telia_lt.pb
product/etc/CarrierSettings/telia_no.pb
product/etc/CarrierSettings/telia_se.pb
product/etc/CarrierSettings/telkomsel_id.pb
product/etc/CarrierSettings/tello_us.pb
product/etc/CarrierSettings/telstra_au.pb
product/etc/CarrierSettings/telus_ca.pb
product/etc/CarrierSettings/tesco_gb.pb
product/etc/CarrierSettings/three_dk.pb
product/etc/CarrierSettings/tim_it.pb
product/etc/CarrierSettings/tmobile_at.pb
product/etc/CarrierSettings/tmobile_cz.pb
product/etc/CarrierSettings/tmobile_nl.pb
product/etc/CarrierSettings/tmobile_us.pb
product/etc/CarrierSettings/tmomvno_nl.pb
product/etc/CarrierSettings/tmomvno_us.pb
product/etc/CarrierSettings/tracfoneatt_us.pb
product/etc/CarrierSettings/tracfonetmo_us.pb
product/etc/CarrierSettings/tracfoneverizon_us.pb
product/etc/CarrierSettings/truemove_th.pb
product/etc/CarrierSettings/truphone_us.pb
product/etc/CarrierSettings/truphone_zz.pb
product/etc/CarrierSettings/tstar_tw.pb
product/etc/CarrierSettings/turkcell_tr.pb
product/etc/CarrierSettings/turktelekom_tr.pb
product/etc/CarrierSettings/twm_tw.pb
product/etc/CarrierSettings/u264a_ca.pb
product/etc/CarrierSettings/u264a_us.pb
product/etc/CarrierSettings/u264ab_ca.pb
product/etc/CarrierSettings/u264ao_at.pb
product/etc/CarrierSettings/u264ap_at.pb
product/etc/CarrierSettings/ultra_us.pb
product/etc/CarrierSettings/umobile_my.pb
product/etc/CarrierSettings/unifi_my.pb
product/etc/CarrierSettings/unionwireless_us.pb
product/etc/CarrierSettings/uqmobile5gsa_jp.pb
product/etc/CarrierSettings/uqmobile_jp.pb
product/etc/CarrierSettings/uscc_us.pb
product/etc/CarrierSettings/verizon_us.pb
product/etc/CarrierSettings/verymobile_it.pb
product/etc/CarrierSettings/viaero_us.pb
product/etc/CarrierSettings/videotron_ca.pb
product/etc/CarrierSettings/viettel_vn.pb
product/etc/CarrierSettings/vimla_se.pb
product/etc/CarrierSettings/vinaphone_vn.pb
product/etc/CarrierSettings/virgin_ca.pb
product/etc/CarrierSettings/virgin_gb.pb
product/etc/CarrierSettings/virgin_us.pb
product/etc/CarrierSettings/virgintelco_es.pb
product/etc/CarrierSettings/visible_us.pb
product/etc/CarrierSettings/visiblev_us.pb
product/etc/CarrierSettings/viti_pf.pb
product/etc/CarrierSettings/vodafone_au.pb
product/etc/CarrierSettings/vodafone_cz.pb
product/etc/CarrierSettings/vodafone_de.pb
product/etc/CarrierSettings/vodafone_es.pb
product/etc/CarrierSettings/vodafone_gb.pb
product/etc/CarrierSettings/vodafone_gr.pb
product/etc/CarrierSettings/vodafone_hu.pb
product/etc/CarrierSettings/vodafone_ie.pb
product/etc/CarrierSettings/vodafone_in.pb
product/etc/CarrierSettings/vodafone_it.pb
product/etc/CarrierSettings/vodafone_nl.pb
product/etc/CarrierSettings/vodafone_nz.pb
product/etc/CarrierSettings/vodafone_om.pb
product/etc/CarrierSettings/vodafone_pt.pb
product/etc/CarrierSettings/vodafone_qa.pb
product/etc/CarrierSettings/vodafone_ro.pb
product/etc/CarrierSettings/vodafone_tr.pb
product/etc/CarrierSettings/webbing_hk.pb
product/etc/CarrierSettings/windtre_it.pb
product/etc/CarrierSettings/xfinity2_us.pb
product/etc/CarrierSettings/xfinity_us.pb
product/etc/CarrierSettings/yes_my.pb
product/etc/CarrierSettings/yesss_at.pb
product/etc/CarrierSettings/yettel_bg.pb
product/etc/CarrierSettings/yettel_hu.pb
product/etc/CarrierSettings/yoigo_es.pb
product/etc/CarrierSettings/zain_bh.pb
product/etc/CarrierSettings/zain_kw.pb
product/etc/CarrierSettings/zain_sa.pb
product/etc/CarrierSettings/zeop_re.pb

File diff suppressed because it is too large Load Diff

157
lynx/proprietary-files.txt Normal file
View File

@ -0,0 +1,157 @@
# All blobs are extracted from Google factory images for each new ASB
# product partition
# AiAi
product/priv-app/DeviceIntelligenceNetworkPrebuilt-astrea_20240329.00_RC02/DeviceIntelligenceNetworkPrebuilt-astrea_20240329.00_RC02.apk;PRESIGNED
product/priv-app/DevicePersonalizationPrebuiltPixel2022-aiai_20240329.00_RC16/DevicePersonalizationPrebuiltPixel2022-aiai_20240329.00_RC16.apk;PRESIGNED
# Audio
product/etc/ambient/matcher_tah.leveldb
product/etc/firmware/music_detector.descriptor
product/etc/firmware/music_detector.sound_model
product/etc/firmware/music_detector.sound_model_2
product/etc/firmware/music_detector.sound_model_tflite
# Camera extensions
product/etc/permissions/androidx.camera.extensions.impl.xml
product/priv-app/PixelCameraServices/PixelCameraServices.apk;PRESIGNED
# Felica
product/etc/felica/common.cfg
product/etc/felica/mfm.cfg
product/etc/felica/mfs.cfg
# Hardware info
product/etc/permissions/com.google.android.hardwareinfo.xml
product/framework/libhwinfo.jar
product/priv-app/HardwareInfo/HardwareInfo.apk;PRESIGNED
# Hotword
product/priv-app/HotwordEnrollmentOKGoogleFUSIONPro/HotwordEnrollmentOKGoogleFUSIONPro.apk;PRESIGNED
product/priv-app/HotwordEnrollmentXGoogleFUSIONPro/HotwordEnrollmentXGoogleFUSIONPro.apk;PRESIGNED
# IMS
product/etc/sysconfig/allowlist_com.shannon.imsservice.xml
# Permissions
product/etc/permissions/privapp-permissions-google-p.xml:product/etc/permissions/privapp-permissions-google-p-lineage.xml
product/etc/sysconfig/GoogleCamera_6gb_or_more_ram.xml
product/etc/sysconfig/google-hiddenapi-package-whitelist.xml
product/etc/sysconfig/nexus.xml
product/etc/sysconfig/pixel_experience_2017.xml
product/etc/sysconfig/pixel_experience_2018.xml
product/etc/sysconfig/pixel_experience_2019.xml
product/etc/sysconfig/pixel_experience_2019_midyear.xml
product/etc/sysconfig/pixel_experience_2020.xml
product/etc/sysconfig/pixel_experience_2020_midyear.xml
product/etc/sysconfig/pixel_experience_2021.xml
product/etc/sysconfig/pixel_experience_2021_midyear.xml
product/etc/sysconfig/pixel_experience_2022.xml
product/etc/sysconfig/pixel_experience_2022_midyear.xml
product/etc/sysconfig/pixel_experience_2023_midyear.xml
# Radio
product/etc/permissions/com.android.sdm.plugins.connmo.xml
product/etc/permissions/com.android.sdm.plugins.dcmo.xml
product/etc/permissions/com.android.sdm.plugins.diagmon.xml
product/lib/libdmengine.so;SYMLINK=product/priv-app/DMService/lib/arm/libdmengine.so
product/lib/libdmjavaplugin.so;SYMLINK=product/priv-app/DMService/lib/arm/libdmjavaplugin.so
product/lib64/libdmengine.so;SYMLINK=product/priv-app/DMService/lib/arm64/libdmengine.so
product/lib64/libdmjavaplugin.so;SYMLINK=product/priv-app/DMService/lib/arm64/libdmjavaplugin.so
product/priv-app/CarrierSettings_signed_47.0.602606545/CarrierSettings_signed_47.0.602606545.apk;PRESIGNED
product/priv-app/CarrierWifi/CarrierWifi.apk;PRESIGNED
product/priv-app/ConnMO/ConnMO.apk
product/priv-app/DCMO/DCMO.apk
product/priv-app/DMService/DMService.apk
product/priv-app/DiagMon/DiagMon.apk
product/priv-app/EuiccGoogle/EuiccGoogle.apk;PRESIGNED
product/priv-app/TetheringEntitlement/TetheringEntitlement.apk
# VZW
product/app/VZWAPNLib/VZWAPNLib.apk;PRESIGNED
product/etc/permissions/com.android.omadm.service.xml
product/etc/permissions/com.google.omadm.trigger.xml
product/etc/permissions/com.verizon.apn.xml
product/etc/permissions/com.verizon.services.xml
product/etc/permissions/features-verizon.xml
product/etc/sysconfig/allowlist_com.android.omadm.service.xml
product/priv-app/AppDirectedSMSService/AppDirectedSMSService.apk;PRESIGNED
product/priv-app/OemDmTrigger/OemDmTrigger.apk
product/priv-app/WfcActivation/WfcActivation.apk;PRESIGNED
# system_ext partition
# Camera extensions
system_ext/etc/permissions/com.google.android.camera.extensions.xml
system_ext/etc/permissions/com.google.android.camerax.extensions.xml
system_ext/framework/com.google.android.camera.extensions.jar
system_ext/framework/com.google.android.camerax.extensions.jar
# Edge TPU
system_ext/bin/hw/vendor.google.edgetpu_app_service@1.0-service
system_ext/etc/init/vendor.google.edgetpu_app_service@1.0-service.rc
system_ext/etc/public.libraries-google.txt
system_ext/etc/vintf/manifest/vendor.google.edgetpu_app_service@1.0-service.xml
system_ext/lib/libedgetpu_dba.google.so
system_ext/lib64/com.google.edgetpu_app_service-V3-ndk.so
system_ext/lib64/com.google.edgetpu_vendor_service-V2-ndk.so
system_ext/lib64/libedgetpu_dba.google.so
# HBM
system_ext/lib64/libhbmsvmanager_jni.so;SYMLINK=system_ext/priv-app/HbmSVManager/lib/arm64/libhbmsvmanager_jni.so
system_ext/priv-app/HbmSVManager/HbmSVManager.apk
# Hotword
system_ext/etc/permissions/com.android.hotwordenrollment.common.util.xml
system_ext/framework/com.android.hotwordenrollment.common.util.jar
# IMS
system_ext/etc/permissions/com.android.qns.xml
system_ext/etc/permissions/com.shannon.imsservice.xml
system_ext/etc/permissions/com.shannon.rcsservice.xml
system_ext/lib/libmediaadaptor.so
system_ext/lib64/libmediaadaptor.so
system_ext/priv-app/PixelQualifiedNetworksService/PixelQualifiedNetworksService.apk
system_ext/priv-app/ShannonIms/ShannonIms.apk;PRESIGNED
system_ext/priv-app/ShannonRcs/ShannonRcs.apk;PRESIGNED
# Permissions
system_ext/etc/permissions/privapp-permissions-google-se.xml:system_ext/etc/permissions/privapp-permissions-google-se-lineage.xml
# Radio
system_ext/etc/default-permissions/default-permissions-euiccpixel.xml
system_ext/etc/permissions/com.android.omadm.radioconfig.xml
system_ext/etc/permissions/com.google.euiccpixel.permissions.xml
system_ext/etc/permissions/com.google.euiccpixel.xml
system_ext/etc/permissions/google-ril.xml
system_ext/framework/RadioConfigLib.jar
system_ext/framework/google-ril.jar
system_ext/priv-app/CarrierSetup/CarrierSetup.apk;PRESIGNED
system_ext/priv-app/ConnectivityThermalPowerManager/ConnectivityThermalPowerManager.apk
system_ext/priv-app/EuiccGoogleOverlay/EuiccGoogleOverlay.apk
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_DVT.in
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_DVT.up
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_EVT.up
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_P22_DVT.in
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_P22_DVT.up
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_P22_EVT.in
system_ext/priv-app/EuiccSupportPixel/DKA_RC7_P22_EVT.up
system_ext/priv-app/EuiccSupportPixel/EuiccSupportPixel.apk;PRESIGNED
system_ext/priv-app/EuiccSupportPixel/esim-full-ofl-v1.img
system_ext/priv-app/EuiccSupportPixel/esim-full-v0.img
system_ext/priv-app/EuiccSupportPixel/esim-full-v1.img
system_ext/priv-app/EuiccSupportPixelPermissions/EuiccSupportPixelPermissions.apk;PRESIGNED
system_ext/priv-app/RilConfigService/RilConfigService.apk
system_ext/priv-app/grilservice/grilservice.apk;PRESIGNED
# RIL
system_ext/app/OemRilHookService/OemRilHookService.apk
system_ext/etc/permissions/com.samsung.slsi.telephony.oemril.xml
system_ext/etc/permissions/oemrilhook.xml
system_ext/framework/oemrilhook.jar
system_ext/priv-app/OemRilService/OemRilService.apk;PRESIGNED
# VZW
system_ext/etc/permissions/vzw_mvs_permissions.xml
system_ext/priv-app/MyVerizonServices/MyVerizonServices.apk;PRESIGNED

View File

@ -0,0 +1,11 @@
# All firmware images are extracted from Google factory images for each new ASB
abl.img;AB
bl1.img;AB
bl2.img;AB
bl31.img;AB
gsa.img;AB
ldfw.img;AB
modem.img;AB
pbl.img;AB
tzsw.img;AB

82
lynx/setup-makefiles.sh Executable file
View File

@ -0,0 +1,82 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2016 The CyanogenMod Project
# SPDX-FileCopyrightText: 2017-2024 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
set -e
DEVICE=lynx
VENDOR=google
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
ANDROID_ROOT="${MY_DIR}/../../../.."
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}"
exit 1
fi
source "${HELPER}"
function vendor_imports() {
cat <<EOF >>"$1"
"device/google/lynx",
"hardware/google/av",
"hardware/google/gchips",
"hardware/google/graphics/common",
"hardware/google/interfaces",
"hardware/google/pixel",
"hardware/qcom/wlan/wcn6740",
EOF
}
function lib_to_package_fixup_vendor_variants() {
if [ "$2" != "vendor" ]; then
return 1
fi
case "$1" in
com.google.edgetpu_app_service-V3-ndk | \
com.google.edgetpu_vendor_service-V2-ndk)
echo "$1-vendor"
;;
libprotobuf-cpp-full-21.12)
echo "libprotobuf-cpp-full"
;;
libprotobuf-cpp-lite-21.12)
echo "libprotobuf-cpp-lite"
;;
libacryl | \
libexynosv4l2 | \
libwpa_client) ;;
*)
return 1
;;
esac
}
function lib_to_package_fixup() {
lib_to_package_fixup_clang_rt_ubsan_standalone "$1" ||
lib_to_package_fixup_proto_3_9_1 "$1" ||
lib_to_package_fixup_vendor_variants "$@"
}
# Initialize the helper
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}"
# Warning headers and guards
write_headers
write_makefiles "${MY_DIR}/proprietary-files.txt"
write_makefiles "${MY_DIR}/proprietary-files-carriersettings.txt"
write_makefiles "${MY_DIR}/proprietary-files-vendor.txt"
append_firmware_calls_to_makefiles "${MY_DIR}/proprietary-firmware.txt"
# Finish
write_footers

1432
lynx/skip-files-vendor.txt Normal file

File diff suppressed because it is too large Load Diff

13
lynx/vendor.prop Normal file
View File

@ -0,0 +1,13 @@
# DRM
drm.service.enabled=true
media.mediadrmservice.enable=true
# Fingerprint
ro.vendor.fingerprint.ta.name=g7.app
# Radio
persist.vendor.ril.ecc.use.xml=1
persist.vendor.ril.support_nr_ds=1
persist.vendor.ril.use_radio_hal=2.0
ro.vendor.config.build_carrier=europen
vendor.rild.libpath=libsitril.so