From development to deployment, all you need in one single platform. Ubuntu provides robotics companies with a worldwide-use infrastructure to deploy and maintain your robot.
Ubuntu Core and snaps are the tools used by global organisations to deploy and manage their software on embedded devices. Ubuntu Core is the optimised version of Ubuntu for edge devices and robotics. Snaps, the de facto container for packaging software on Ubuntu, enhanced to support ROS applications. Finally, together with the IoT App Store, businesses can manage software updates in their fleet of devices using a globally distributed and reliable infrastructure.
Robotics developers know app development inside-out, but deploying a robotics application can be challenging. It’s not uncommon to compile the code on robots, copy/paste compiled packages and end up with unknown versions of software. Implementing an infrastructure to track and deploy software updates increases overhead and time, not guaranteeing a reliable and widely tested infrastructure. Providing security to each phase of deployment just increases the difficulty of the task. Our open source tools provide a complete DevOps infrastructure, secure, globally used and easy, and really easy to use.
Ubuntu Core is the OS for anyone building embedded Linux devices. Snaps are the best way of packaging and distributing software compatible with dozens of Linux distributions. IoT App Store is the platform for companies looking for a production-grade software management solution.
Tutorials Get started - hands-on introductions for robotics to the different product |
How-to guides Step-by-step guides covering key operations and common tasks |
Explanation Concepts - discussion and clarification of key topics |
Reference Technical information - specifications, APIs, architecture |
Project and community
Snap, snapcraft and Ubuntu Core Projects are members of the Ubuntu family. They are open source projects that warmly welcomes community projects, contributions, suggestions, fixes and constructive feedback.
Get involved by:
-
Reporting bugs: we want to know about the problems so we can fix them.
If you find a bug while following any of the documentation pages, you can report this by following the link at the bottom of the page saying “Help improve this document in the forum”. You will be taken to the discourse page hosting the documentation that you want to report the bug. Simply log-in to your account and click on reply to leave a comment explaining the issue. -
Quality assurance: before releasing new features we make a “Call for Testing” a week prior to each update reaching “stable”. This is your opportunity to discover and report any problems.
-
Documentation: there are lots of ways to use Canonical Robotics solutions and we try to describe the important ones, but maybe we missed yours.
When you are following any of the documentation pages, you will find at the bottom of the page a link saying “Help improve this document in the forum”. By clicking there, you will be taken to the discourse page hosting the documentation that you want to help us improve. Simply log-in to your account and click on reply to leave a comment proposing improvement or anything else. -
Feature requests: we have a lot of ideas on what to do next but you know what you need. If you want a change in the documentation, please read the bullet point above. If you want to request a feature for the technologies we covered in this documentation, you can do it in our GitHub repository.
-
Code changes: the code used in our documentation pages is open and we are open to accepting changes to it. So let’s work together. Please use GitHub issues and the PR mechanism to raise code problems and propose improvements.
-
Requesting workshops: If an organization, open source community, or educational entity wants us to provide a workshop about the technologies covered on this documentation page, please get in touch!
Our projects are going to continue growing with our community. If you want to get involved:
Thinking about using one of these product for your next project? Get in touch!
Navigation
Navigation
Level | Path | Navlink |
---|---|---|
0 | Home | |
0 | tutorials | Tutorials |
1 | Snapcraft | |
2 | ros-deployment-with-snaps-part-1 | Part 1: Packaging our first ROS application as a snap |
3 | developer-guide-part-1-exercise | Part 1: exercise |
2 | ros-deployment-with-snaps-part-2 | Part 2: Packaging complex robotics software with snaps |
3 | developer-guide-part-2-exercise | Part 2: exercise |
2 | ros-deployment-with-snaps-part-3 | Part 3: Distribute ROS applications with the Snap Store |
2 | ros-deployment-with-snaps-part-4 | Part 4: Building ROS snaps with content sharing |
2 | ros-deployment-with-snaps-part-5 | Part 5: Create an Ubuntu Core image for the TurtleBot3 |
1 | ubuntu-pro | Ubuntu Pro |
2 | tutorial-ros-esm | ROS ESM - User Introduction |
0 | how-to-guides | How-to guides |
1 | Snapcraft | |
2 | build-and-publish-a-ros-snap-with-github-actions | Build and publish a snap with GitHub Actions |
2 | migrate-from-docker-to-snap | Migrate from docker to snap |
2 | ros-2-shared-memory-in-snaps | ROS 2 shared memory in snaps |
2 | ros-distributions-with-no-extensions | ROS distributions with no extensions |
2 | configure-a-snap-pull-a-configuration-from-a-server | Configure a snap: pull a configuration from a server |
2 | configure-a-snap-using-a-content-snap | Configure a snap: using a content snap |
2 | configure-a-snap-make-the-snap-configuration-overwritable | Configure a snap: Make the snap configuration overwritable |
1 | Ubuntu Core | |
0 | references | References |
1 | Snapcraft | |
2 | plugins | Plugins |
2 | extensions | Extensions |
2 | faq-and-troubleshooting | FAQ and troubleshooting |
0 | explanation | Explanation |
1 | Ubuntu Core | |
1 | Security | |
2 | securing-ros-robotic-platforms | Securing ROS robotic platforms |
1 | Snaps | |
2 | ros-architectures-with-snaps | ROS architectures with snaps |
2 | identify-functionalities-and-applications-of-a-robotics-snap | Identify functionalities and applications of a robotics snap |
2 | snap-configurations-and-hooks | Snap configurations and hooks |
2 | snap-data-and-file-storage | Snap data and file storage |
2 | snap-environment-variables | Snap environment variables |
2 | application-orchestration | Application orchestration |
2 | vcstool-and-rosinstall-file | Vcstool and rosinstall file |
2 | debug-the-build-of-a-snap | Debug the build of a snap |
2 | debug-a-snap-application | Debug a snap application |
1 | IoT App Store |
Redirects
Mapping table
Old path | New URL |
---|