51 lines
2.2 KiB
Python
51 lines
2.2 KiB
Python
"""项目里所有脚本的路径入口 —— 换机器 / 换目录只看这一个文件。
|
||
|
||
默认布局(都相对项目根):
|
||
inputs/target/ 目标固件的分区镜像(要自己放,见 README)
|
||
inputs/source/ 素材来源的分区镜像(要自己放)
|
||
inputs/fonts/ 可选:MiSans-*.ttf(渲染预览用;不给就从 vela_font.bin 里取)
|
||
vendor/ 第三方 LuaDevTemplate-main(里面有 Compiler.exe,要自己放)
|
||
.work/ 构建工作区(产物,可删)
|
||
dist/ 交付的 .face
|
||
docs/ 说明与预览图
|
||
|
||
环境变量可覆盖:ICON_EDIT_INPUTS / ICON_EDIT_VENDOR / ICON_EDIT_WORK /
|
||
ICON_EDIT_DIST / ICON_EDIT_DOCS / ICON_EDIT_FONTS
|
||
"""
|
||
import os
|
||
|
||
PROJ = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||
|
||
|
||
def _p(env, default):
|
||
return os.environ.get(env) or os.path.join(PROJ, default)
|
||
|
||
|
||
INPUTS = _p('ICON_EDIT_INPUTS', 'inputs')
|
||
VENDOR = _p('ICON_EDIT_VENDOR', 'vendor')
|
||
WORK = _p('ICON_EDIT_WORK', '.work')
|
||
DIST = _p('ICON_EDIT_DIST', 'dist')
|
||
DOCS = _p('ICON_EDIT_DOCS', 'docs')
|
||
FONTS = os.environ.get('ICON_EDIT_FONTS') or os.path.join(INPUTS, 'fonts')
|
||
TEMPLATE = os.path.join(VENDOR, 'LuaDevTemplate-main')
|
||
INPUT_TARGET = os.path.join(INPUTS, 'target')
|
||
INPUT_SOURCE = os.path.join(INPUTS, 'source')
|
||
ASSETS = os.path.join(PROJ, 'assets')
|
||
|
||
for _d in (WORK, DIST, DOCS, INPUT_TARGET, INPUT_SOURCE):
|
||
os.makedirs(_d, exist_ok=True)
|
||
|
||
# ------------------------------------------------------------------ 本项目的事实
|
||
# 目标:Xiaomi Watch S5 eSIM 46mm(p62lte, 480x480, Lua 5.4 宿主)
|
||
# 素材来源:Xiaomi Watch S5 41mm(q63, v4.101.020)
|
||
TARGET_IMAGE = os.path.join(INPUT_TARGET, 'vela_health.bin') # 要改的分区(卷名就是 health)
|
||
SOURCE_IMAGE = os.path.join(INPUT_SOURCE, 'vela_app.bin') # q63 的 100 帧在这里
|
||
TARGET_VOLUME = 'health'
|
||
DIRP = 'pressure/measure/'
|
||
FACE_W = FACE_H = 464 # 槽位是 464x464 I8 + RLE
|
||
SRC_W = SRC_H = 480 # q63 的帧是 480x480
|
||
SCREEN = 480 # 表盘界面 480x480
|
||
WF_ID = '462150102' # 两份盘共用(462 = S5 家族)
|
||
DEVICE_TYPE = '462'
|
||
PREVIEW = 326 # Compiler.exe 对 462 设备强制 326x326
|