Hello,
I am trying to set the `BT_SHELL_NUS` project up as a standalone repository. My requirements for this are as follows: I only want to commit application code to git, not the entire zephyr sdk or nordic sdk. I do not want to fork the nordic sdk. I do not want to set environment variables. So I tried to use the west out of tree approach.
I have created a file structure that looks like this:
application/ - directory, includes a complete copy of the shell_bt_nus sample folder. west.yml - my west.yml file.
Then the west.yml file is set up as follows following the wiki:
manifest: remotes: - name: ncs url-base: https://github.com/nrfconnect defaults: remote: ncs projects: - name: nrf remote: ncs repo-path: sdk-nrf revision: v1.9.0 import: true self: path: application
Now, when I run west init, west immediately clones the zephyr-rtos manifest repository instead of the one specified here. I have tried supplying this file on the command like --mf, and again the same issue occurs.
Finally, I have also tried placing the west.yml into application/ and then initializing with west init -l. This seems to get closest, and actually clones all of nrf, however, it then gets stuck on "recursive zephyr source" issues. In this case, I change the manifest slightly: self: path becomes "." instead of application. I am not sure if this is the right thing to do but it seems to make logical sense.
It appears I'm not the only one and someone opened an issue in upstream zephyr, see here: https://github.com/zephyrproject-rtos/zephyr/issues/35075 however I couldn't parse anything in this issue at all.
Can someone please correct whatever misunderstanding I have of west and how I am supposed to set up a west.yml such that I can west init/west update/west build from scratch? Just to reiterate the above, I'm not looking to clone the whole SDK and I would rather use west, for better or worse, than manage messy environment variable setups. IDEs are a no-go.
Specifically, the issue is that west is not treating my yaml file as something it should read in the layout I think is correct having read the nordic wiki. When I place the yml file in a subfolder it does actually follow it, but the resulting project is unbuildable due to recursive imports of zephyr (and I don't know why).
I'm a bit disappointed even a simple standalone sample doesn't appear to work.
Thanks.