anchao commented on PR #16763: URL: https://github.com/apache/nuttx/pull/16763#issuecomment-3186584098
> @comejv @anchao @xiaoxiang781216 I don't see Nix support as something bad, of course, there are many Package managers out here, but people are free to add it. After all this is an democratic RTOS. I just suggest including the following information in the header of Nix documentation: "Nix is not the official build system of NuttX, this support was contributed to help people to integrate NuttX easily". > > If we need to remove Nix, we need to remove CMakefile, since the official build system is based on Makefile @comejv @acassis > Should I revert and create another repo? Or maybe move it into tools? @anchao > Nix isn't a build system though, it just handles dependencies. But I see your point Nix is a positive change, especially with the detailed documentation provided in this commit. Thank you for your efforts. @comejv > I don't see Nix support as something bad, of course, there are many Package managers out here, but people are free to add it. After all this is an democratic RTOS. I just suggest including the following information in the header of Nix documentation: "Nix is not the official build system of NuttX, this support was contributed to help people to integrate NuttX easily". Similar to Zephyr West, Nuttx doesn't offer official 3-party package management or dependency management framework. If our milestone is Nix, we might need to comprehensively plan the improvements needed for community adoption of this framework (especially since Nuttx-apps has too many of external libraries that require conditional downloads). From the current commit, it seems that nix only locks the download links and revisions of external dependency libraries, but this information is of no value for the Nuttx. Another problem is that it may not be a good choice to put the configuration file in the top-level directory. We could refer to zephyr or linux, whose top-level directory structure rarely changes and basically does not introduce unofficial configuration files. https://github.com/torvalds/linux https://github.com/zephyrproject-rtos/zephyr I think it would be better if it was relocated to tools or other directories. @acassis > If we need to remove Nix, we need to remove CMakefile, since the official build system is based on Makefile The significance of CMake is completely different. It solves the issue that the Makefile build system in Nuttx cannot be out of tree. Today's IoT SOCs are becoming increasingly complex, completely different from the MCU chips of 10 years ago. Taking Espressif as an example, there are multiple MCUs in one chip. Using one set of code to compile the firmware of multiple MCUs at the same time is a big problem that the current system needs to solve. Moreover, the initiator of the CMake improvement is actual user within the community @protobits @dagar . I merely, out of empathy, recognized that this improvement needs to be promoted to prevent NuttX from losing users in multi-MCU architecture SOCs. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org