1、Zephyr Manifest FilesProject Sanity in theEver-changing Zephyr WorldZephyr Manifest FilesProject Sanity in theEver-changing Zephyr Worldtl;dr:Manifest files deliver the bestrevision control for your projectLets talk aboutWhat Zephyrs manifest files areHow they workWhy we should use them in project r
2、eposHow to set up a manifest-based Zephyr applicationNext-step features you should know and useThings that exist outside the scope of this talkszczyschaos.social on Mastodonszczysbsky.social on BlueskyDeveloper Relations Engineer at Golioth15 years of firmware experiencePreviously:Editor in Chief of
3、 HackadayMike SzczysWhat is Golioth?Golioth is an IoT cloud company.We make it easy for hardware engineers toconnect their sensors and devices to the webwithout needing to be a cloud expert.We use Zephyr to support the widest range ofhardware possible.Manifest files are one bigpiece of that puzzle.W
4、hat is a manifest file?What is a manifest file?Manages Project heiarchyRepositories:URL of each repoRepo branch/tag/commitLocal path for checkoutCommitted to a codebaseAdvanced Manifest Features:InheritanceAllow/Block listsGroupingRepo branch/tag/commitWest support for validationApplications Manifes
5、ts Zephyr tree uses Manifests tomanage versions of modules andlibrariesProjects can(and should)followthe same paradigmIf you are not usingmanifests in your projects.Youre DoingZephyr Wrong!Manifest ExamplesMainZephyrManifest:356 Lines./west.ymlBasic StructureProject Based on DefaultProject with Expl
6、icit PathInheritance,allowlist,commandInheritanceEntire nRFConnect SDKManifest(if onallowlist)Use West Init(not Git Clone)west init Get manifest from repositoryClones the top-level repositoryCreates.west/config file with path to top-level manifest and Zephyr locationwest updateParse manifest fileClo