The documentation says
(first steps)
Get the Zephyr source code:
cd %HOMEPATH%
west init zephyrproject
cd zephyrproject
west update
I understand this as setting west workspace is referred to as a Zephyr repository application
which is as indicated: Application type: repository (T1: star topology)
and creates a folder structure
zephyrproject/
├─── .west/
│ └─── config
└─── zephyr/
├── west.yml
But in which folder to place my projects in this structure?
If you create a folder for your projects in zephyrproject folder.
There will be a case like this.
An application located within the zephyr source code repository in a Zephyr west workspace is referred to as a Zephyr repository application.
Zephyr workspace application (T2: star topology, a Zephyr application is the manifest repository)
zephyrproject/
├─── .west/
│ └─── config
├─── zephyr/
└─── applications/
└── app/
└── west.yml
In which folder should I run the west init command in this case?
In this case there will be all the code that west init brought when installing? (first steps)
Will there be duplication?
Does this mean that the first steps are redundant?
But comparing the first steps and the description of the west init command it will appear that a T2 - zephyr workspace application is created.
Which does not correspond to what was written earlier:
T1: Star topology, zephyr is the manifest repository
This is the default.
Zephyr freestanding application
<home>/
├─── zephyrproject/
│ ├─── .west/
│ │ └─── config
│ ├── zephyr/
│
└─── app/
but the other page has a slightly different structure
_(T3: Forest topology)
A workspace using this topology looks like this:_
west-workspace/
├── app1/ # .git/ project
├── app2/ # .git/ project
├── manifest-repo/ # .git/ never modified by west
│ └── west.yml # main manifest with optional import(s) and override(s)
│
└── zephyr/ # .git/ project
└── west.yml
In this case in which folder to run the west init command?
(in the installation instructions it was run in <zephyrproject> folder)
(with this folder organization and copying examples to app1, app2 the examples compile without errors.
But when using example-application structure in app1, compilation leads to unexpected errors.)
What value should then be in ZEPHYR_BASE?
What does manifest-repo mean here?
What should manifest look like if I don’t have access to github?
All examples contain github. Does anything work without it?
Is it possible to work with Zephyr without access to github?
Does the manifest have to be in every app folder?
(https://docs.zephyrproject.org/latest/develop/manifest/index.html)
In which folder do I need to run “west config manifest.project-filter – -hal_FOO”?
Thank you so much for your videos.