FBT: Optimize icons blob -4KB DFU, scrub unused icons (#291)

* Unused icons to check later

* Exclude disabled icons from firmware

* Format

* Also report free flash in gh comment

* Fix free flash calc

* Fix?

* Fix??

* Split to next line

* Remove dead icons

* Some spring cleaning of icons cooker

* Improve unused icons script

* Disable icons that cant be used in asset packs

* These will need a workaround for external

* Revert "These will need a workaround for external"

This reverts commit fb23d97952.

* Here's the workaround: split assets lib

now there is "assets" and "fwassets"

firmware links with fwassets and includes all icons
however not all of them are exposed to api

if an app needs a firmware icon not in api, it can use fap_libs=["assets"]
this will link against this dummy assets lib
it only contains the icons that arent exposed to api

this way, an app using assets lib will still benefit from asset packs
but at same time, we can remove pointless icons from dfu blob

* Update changelog
This commit is contained in:
WillyJL
2024-11-05 07:32:24 +00:00
committed by GitHub
parent 78f517b294
commit 3ef283824d
24 changed files with 183 additions and 77 deletions
+22 -32
View File
@@ -3919,12 +3919,12 @@ Variable,+,I_CC_LefthandedMode_16x16,const Icon,
Variable,+,I_CC_Lock_16x16,const Icon,
Variable,+,I_CC_Momentum_16x16,const Icon,
Variable,+,I_CC_Settings_16x16,const Icon,
Variable,+,I_Certification1_103x56,const Icon,
Variable,+,I_Certification2_46x33,const Icon,
Variable,+,I_CertificationChina0_121x41,const Icon,
Variable,+,I_CertificationChina1_124x47,const Icon,
Variable,+,I_CertificationMexico_98x41,const Icon,
Variable,+,I_CertificationTaiwan_33x32,const Icon,
Variable,-,I_Certification1_103x56,const Icon,
Variable,-,I_Certification2_46x33,const Icon,
Variable,-,I_CertificationChina0_121x41,const Icon,
Variable,-,I_CertificationChina1_124x47,const Icon,
Variable,-,I_CertificationMexico_98x41,const Icon,
Variable,-,I_CertificationTaiwan_33x32,const Icon,
Variable,+,I_Charging_lightning_9x10,const Icon,
Variable,+,I_Charging_lightning_mask_9x10,const Icon,
Variable,+,I_Circles_47x47,const Icon,
@@ -3932,7 +3932,7 @@ Variable,+,I_Clock_18x18,const Icon,
Variable,+,I_Connect_me_62x31,const Icon,
Variable,+,I_Connected_62x31,const Icon,
Variable,+,I_Cos_9x7,const Icon,
Variable,+,I_DFU_128x50,const Icon,
Variable,-,I_DFU_128x50,const Icon,
Variable,+,I_DolphinDone_80x58,const Icon,
Variable,+,I_DolphinMafia_119x62,const Icon,
Variable,+,I_DolphinReadingSuccess_59x63,const Icon,
@@ -3941,7 +3941,7 @@ Variable,+,I_DolphinSuccess_91x55,const Icon,
Variable,+,I_DolphinWait_59x54,const Icon,
Variable,+,I_Drive_112x35,const Icon,
Variable,+,I_Dynamic_9x7,const Icon,
Variable,+,I_Erase_pin_128x64,const Icon,
Variable,-,I_Erase_pin_128x64,const Icon,
Variable,+,I_Error_18x18,const Icon,
Variable,+,I_Error_62x31,const Icon,
Variable,+,I_EviSmile1_18x21,const Icon,
@@ -3975,7 +3975,7 @@ Variable,+,I_Left_mouse_icon_9x9,const Icon,
Variable,+,I_LoadingHourglass_24x24,const Icon,
Variable,+,I_Lock_7x8,const Icon,
Variable,+,I_Lockscreen,const Icon,
Variable,+,I_MFKey_qr_25x25,const Icon,
Variable,-,I_MFKey_qr_25x25,const Icon,
Variable,+,I_MHz_25x11,const Icon,
Variable,+,I_Modern_reader_18x34,const Icon,
Variable,+,I_More_data_placeholder_5x7,const Icon,
@@ -3990,11 +3990,8 @@ Variable,+,I_Percent_10x14,const Icon,
Variable,+,I_Pin_arrow_up_7x9,const Icon,
Variable,+,I_Pin_attention_dpad_29x29,const Icon,
Variable,+,I_Pin_back_arrow_10x8,const Icon,
Variable,+,I_Pin_cell_13x13,const Icon,
Variable,+,I_Pin_pointer_5x3,const Icon,
Variable,+,I_Pin_star_7x7,const Icon,
Variable,+,I_Play_25x27,const Icon,
Variable,+,I_Play_hvr_25x27,const Icon,
Variable,+,I_Pressed_Button_13x13,const Icon,
Variable,+,I_Quest_7x8,const Icon,
Variable,+,I_RFIDDolphinReceive_97x61,const Icon,
@@ -4005,7 +4002,7 @@ Variable,+,I_Release_arrow_18x15,const Icon,
Variable,+,I_Right_mouse_icon_9x9,const Icon,
Variable,+,I_Rpc_active_7x8,const Icon,
Variable,+,I_SDQuestion_35x43,const Icon,
Variable,+,I_SDcardFail_11x8,const Icon,
Variable,-,I_SDcardFail_11x8,const Icon,
Variable,+,I_SDcardMounted_11x8,const Icon,
Variable,+,I_Sats_6x9,const Icon,
Variable,+,I_Scanning_123x52,const Icon,
@@ -4018,15 +4015,15 @@ Variable,+,I_Temperature_16x16,const Icon,
Variable,+,I_Unlock_7x8,const Icon,
Variable,+,I_Unplug_bg_bottom_128x10,const Icon,
Variable,+,I_Unplug_bg_top_128x14,const Icon,
Variable,+,I_Updating_32x40,const Icon,
Variable,+,I_Updating_Logo_62x15,const Icon,
Variable,-,I_Updating_32x40,const Icon,
Variable,-,I_Updating_Logo_62x15,const Icon,
Variable,+,I_UsbTree_48x22,const Icon,
Variable,+,I_Voldwn_6x6,const Icon,
Variable,+,I_Voltage_16x16,const Icon,
Variable,+,I_Volup_8x6,const Icon,
Variable,+,I_WarningDolphinFlip_45x42,const Icon,
Variable,+,I_WarningDolphin_45x42,const Icon,
Variable,+,I_Warning_30x23,const Icon,
Variable,-,I_Warning_30x23,const Icon,
Variable,+,I_Weather_7x8,const Icon,
Variable,+,I_arrow_nano_down,const Icon,
Variable,+,I_arrow_nano_up,const Icon,
@@ -4053,14 +4050,14 @@ Variable,+,I_dry_text_15x5,const Icon,
Variable,+,I_eject_19x20,const Icon,
Variable,+,I_eject_hover_19x20,const Icon,
Variable,+,I_eject_text_19x5,const Icon,
Variable,+,I_err_01,const Icon,
Variable,+,I_err_02,const Icon,
Variable,+,I_err_03,const Icon,
Variable,+,I_err_04,const Icon,
Variable,+,I_err_05,const Icon,
Variable,+,I_err_06,const Icon,
Variable,+,I_err_07,const Icon,
Variable,+,I_err_09,const Icon,
Variable,-,I_err_01,const Icon,
Variable,-,I_err_02,const Icon,
Variable,-,I_err_03,const Icon,
Variable,-,I_err_04,const Icon,
Variable,-,I_err_05,const Icon,
Variable,-,I_err_06,const Icon,
Variable,-,I_err_07,const Icon,
Variable,-,I_err_09,const Icon,
Variable,+,I_exit_19x20,const Icon,
Variable,+,I_exit_hover_19x20,const Icon,
Variable,+,I_exit_text_18x5,const Icon,
@@ -4077,13 +4074,6 @@ Variable,+,I_floppydisk_10px,const Icon,
Variable,+,I_green_19x20,const Icon,
Variable,+,I_green_hover_19x20,const Icon,
Variable,+,I_heat_30x51,const Icon,
Variable,+,I_hourglass0_24x24,const Icon,
Variable,+,I_hourglass1_24x24,const Icon,
Variable,+,I_hourglass2_24x24,const Icon,
Variable,+,I_hourglass3_24x24,const Icon,
Variable,+,I_hourglass4_24x24,const Icon,
Variable,+,I_hourglass5_24x24,const Icon,
Variable,+,I_hourglass6_24x24,const Icon,
Variable,+,I_iButtonDolphinVerySuccess_92x55,const Icon,
Variable,+,I_iButtonKey_49x44,const Icon,
Variable,+,I_ibutt_10px,const Icon,
@@ -4136,7 +4126,7 @@ Variable,+,I_power_text_24x5,const Icon,
Variable,+,I_prev_19x20,const Icon,
Variable,+,I_prev_hover_19x20,const Icon,
Variable,+,I_prev_text_19x5,const Icon,
Variable,+,I_qr_benchmark_25x25,const Icon,
Variable,-,I_qr_benchmark_25x25,const Icon,
Variable,+,I_red_19x20,const Icon,
Variable,+,I_red_hover_19x20,const Icon,
Variable,+,I_rotate_19x20,const Icon,
1 entry status name type params
3919 Variable + I_CC_Lock_16x16 const Icon
3920 Variable + I_CC_Momentum_16x16 const Icon
3921 Variable + I_CC_Settings_16x16 const Icon
3922 Variable + - I_Certification1_103x56 const Icon
3923 Variable + - I_Certification2_46x33 const Icon
3924 Variable + - I_CertificationChina0_121x41 const Icon
3925 Variable + - I_CertificationChina1_124x47 const Icon
3926 Variable + - I_CertificationMexico_98x41 const Icon
3927 Variable + - I_CertificationTaiwan_33x32 const Icon
3928 Variable + I_Charging_lightning_9x10 const Icon
3929 Variable + I_Charging_lightning_mask_9x10 const Icon
3930 Variable + I_Circles_47x47 const Icon
3932 Variable + I_Connect_me_62x31 const Icon
3933 Variable + I_Connected_62x31 const Icon
3934 Variable + I_Cos_9x7 const Icon
3935 Variable + - I_DFU_128x50 const Icon
3936 Variable + I_DolphinDone_80x58 const Icon
3937 Variable + I_DolphinMafia_119x62 const Icon
3938 Variable + I_DolphinReadingSuccess_59x63 const Icon
3941 Variable + I_DolphinWait_59x54 const Icon
3942 Variable + I_Drive_112x35 const Icon
3943 Variable + I_Dynamic_9x7 const Icon
3944 Variable + - I_Erase_pin_128x64 const Icon
3945 Variable + I_Error_18x18 const Icon
3946 Variable + I_Error_62x31 const Icon
3947 Variable + I_EviSmile1_18x21 const Icon
3975 Variable + I_LoadingHourglass_24x24 const Icon
3976 Variable + I_Lock_7x8 const Icon
3977 Variable + I_Lockscreen const Icon
3978 Variable + - I_MFKey_qr_25x25 const Icon
3979 Variable + I_MHz_25x11 const Icon
3980 Variable + I_Modern_reader_18x34 const Icon
3981 Variable + I_More_data_placeholder_5x7 const Icon
3990 Variable + I_Pin_arrow_up_7x9 const Icon
3991 Variable + I_Pin_attention_dpad_29x29 const Icon
3992 Variable + I_Pin_back_arrow_10x8 const Icon
Variable + I_Pin_cell_13x13 const Icon
3993 Variable + I_Pin_pointer_5x3 const Icon
3994 Variable + I_Pin_star_7x7 const Icon
Variable + I_Play_25x27 const Icon
Variable + I_Play_hvr_25x27 const Icon
3995 Variable + I_Pressed_Button_13x13 const Icon
3996 Variable + I_Quest_7x8 const Icon
3997 Variable + I_RFIDDolphinReceive_97x61 const Icon
4002 Variable + I_Right_mouse_icon_9x9 const Icon
4003 Variable + I_Rpc_active_7x8 const Icon
4004 Variable + I_SDQuestion_35x43 const Icon
4005 Variable + - I_SDcardFail_11x8 const Icon
4006 Variable + I_SDcardMounted_11x8 const Icon
4007 Variable + I_Sats_6x9 const Icon
4008 Variable + I_Scanning_123x52 const Icon
4015 Variable + I_Unlock_7x8 const Icon
4016 Variable + I_Unplug_bg_bottom_128x10 const Icon
4017 Variable + I_Unplug_bg_top_128x14 const Icon
4018 Variable + - I_Updating_32x40 const Icon
4019 Variable + - I_Updating_Logo_62x15 const Icon
4020 Variable + I_UsbTree_48x22 const Icon
4021 Variable + I_Voldwn_6x6 const Icon
4022 Variable + I_Voltage_16x16 const Icon
4023 Variable + I_Volup_8x6 const Icon
4024 Variable + I_WarningDolphinFlip_45x42 const Icon
4025 Variable + I_WarningDolphin_45x42 const Icon
4026 Variable + - I_Warning_30x23 const Icon
4027 Variable + I_Weather_7x8 const Icon
4028 Variable + I_arrow_nano_down const Icon
4029 Variable + I_arrow_nano_up const Icon
4050 Variable + I_eject_19x20 const Icon
4051 Variable + I_eject_hover_19x20 const Icon
4052 Variable + I_eject_text_19x5 const Icon
4053 Variable + - I_err_01 const Icon
4054 Variable + - I_err_02 const Icon
4055 Variable + - I_err_03 const Icon
4056 Variable + - I_err_04 const Icon
4057 Variable + - I_err_05 const Icon
4058 Variable + - I_err_06 const Icon
4059 Variable + - I_err_07 const Icon
4060 Variable + - I_err_09 const Icon
4061 Variable + I_exit_19x20 const Icon
4062 Variable + I_exit_hover_19x20 const Icon
4063 Variable + I_exit_text_18x5 const Icon
4074 Variable + I_green_19x20 const Icon
4075 Variable + I_green_hover_19x20 const Icon
4076 Variable + I_heat_30x51 const Icon
Variable + I_hourglass0_24x24 const Icon
Variable + I_hourglass1_24x24 const Icon
Variable + I_hourglass2_24x24 const Icon
Variable + I_hourglass3_24x24 const Icon
Variable + I_hourglass4_24x24 const Icon
Variable + I_hourglass5_24x24 const Icon
Variable + I_hourglass6_24x24 const Icon
4077 Variable + I_iButtonDolphinVerySuccess_92x55 const Icon
4078 Variable + I_iButtonKey_49x44 const Icon
4079 Variable + I_ibutt_10px const Icon
4126 Variable + I_prev_19x20 const Icon
4127 Variable + I_prev_hover_19x20 const Icon
4128 Variable + I_prev_text_19x5 const Icon
4129 Variable + - I_qr_benchmark_25x25 const Icon
4130 Variable + I_red_19x20 const Icon
4131 Variable + I_red_hover_19x20 const Icon
4132 Variable + I_rotate_19x20 const Icon
+1 -1
View File
@@ -35,7 +35,7 @@
"microtar",
"usb_stm32",
"infrared",
"assets",
"fwassets",
"one_wire",
"ibutton",
"music_worker",