When you start to use or develop projects with ROS, you will start to see this concept that could sound strange in the beginning, but as you use ROS, it will begin to become familiar to you.
Similar to an operating system, an ROS program is divided into folders, and these folders have some files that describe their functionalities:
Packages: Packages form the atomic level of ROS. A package has the minimum structure and content to create a program within ROS. It may have ROS runtime processes (nodes), configuration files, and so on.
Manifests: Manifests provide information about a package, license information, dependencies, compiler flags, and so on. Manifests are managed with a file called
manifests.xml
.Stacks: When you gather several packages with some functionality, you will obtain a stack. In ROS, there exists a lot of these stacks with different uses, for example, the navigation stack.
Stack manifests: Stack manifests (
stack.xml
) provide data about...