EOS
EOS is a dual-core operating system designed specifically for embodied intelligence, suitable for robots, drones, satellites or other scenarios requiring real-time and general capabilities.
Install / Use
/learn @EOS-team/EOSREADME
<img src="https://github.com/EOS-team/EOS/blob/main/images/EOS%401x.png" width="130" height="130" alt="EOS">
Introduction
EOS is an embodied intelligence operating system release based on the dual-kernel real-time kernel RROS. It aims to build an easy-to-use platform to collect all the software needed to create an intelligent robot application. Specifically, there are three important steps:
- Build a robot package manager to collect related libraries/framworks/algorithms
- Improve the RROS ability in the robot development
- Optimize the package performance in the package platform
Usage
[Instructions on how to use the system go here.]
Contributing
How to Contribute Your Package to the User Repository
The EOS user software repository is currently built using the Copr project. If you are already familiar with using Copr, feel free to skip this section and start using the EOS user repository directly.
Preparation
The EOS user repository is built on the Fedora Copr project. You can refer to the official Copr documentation for more detailed guidance on using Copr. First, register for a Fedora account via Fedora Accounts (fedoraproject.org). Then, visit the user repository homepage and log in using your Fedora ID.
<img width="1616" alt="1725976528436" src="https://github.com/user-attachments/assets/5c361a5b-a70f-4ecf-b845-8931689a826c">After successfully logging in, go to your personal dashboard:
Create a New Project
Click the New Project button to create a new project. Enter the project name, select the desired build environment (Chroots) for the package, and configure other optional settings as needed.
After completing the configuration, click Create to create the project.
Build a Package
On the project homepage, select Builds and click New Build.
Here, we will build the package by directly uploading the srpm file. Under the Upload section, click the Browse button to upload your local srpm file. If you're unfamiliar with how to build an srpm package, you can refer to this guide for more details.
Select the local srpm file and click Open to upload.
Finally, click Build to start building the package.
Build successful.
<img width="628" alt="1725979056196" src="https://github.com/user-attachments/assets/f0bb61f9-5ea7-471b-a30f-aeb9f411c4bd">Click on the corresponding Build ID to view the build results.
Copr also supports various other methods to build your package. For more details, please refer to the official documentation.
Using Your Personal Repository
First, return to the project homepage and obtain the repository configuration file for the corresponding version. Click on the version number.
<img width="984" alt="1725979554852" src="https://github.com/user-attachments/assets/93907da0-9d24-4b9f-a419-ca4e87fe91ea">Copy the link.
<img width="643" alt="1725979632482" src="https://github.com/user-attachments/assets/4e9cb374-ffc9-484a-b763-6d6b169c471f">Navigate to the /etc/yum/repos.d/ directory and download the corresponding configuration.
You can then download the package.
How to use community packages integrated with ROS
Currently, we offer a COPR platform for building RPM packages. Support for Deb and other package formats will be added in the future. To install RPM packages, you need to add the EOS repository to your system. Here's an example for Fedora:
sudo wget -O /etc/yum.repos.d/stevenfreeto-hello-eos-fedora-39.repo http://eos.eaishow.com:9250/coprs/stevenfreeto/hello-eos/repo/fedora-39/stevenfreeto-hello-eos-fedora-39.repo
sudo dnf makecache
# sudo yum makecache # or if you use yum
Additionally, you need to add the EOS rosdep to your ROS environment. Edit the rosdep configuration file at /etc/ros/rosdep/sources.list.d/20-default.list and append the following line:
yaml https://raw.githubusercontent.com/EOS-OS/EOS/main/package-manager/rosdep/base.yaml
After these steps, you can use ROS packages that depend on EOS community packages.
Where you can find us
At the EOS Zulip or email eosrros AT gmail.com.
Who are we
We are a group of robotic developers from research institutes, schools, and robotics enterprises.
We hope EOS can unite the strengths of different aspects to accelerate robot development and shorten the communication path between developers and end users.
Roadmap
- Estabiliing a package manager tool for the robot development
- [X] A package image source
- [ ] A client for package management
- [X] Kernel Layer: Integrate core system libraries to ensure system stability and compatibility.
- [X] A platform based on the
Coprto collect packages
- [X] A platform based on the
- [ ] EI Translator (Embodied Intelligence Translator): Convert kernel-layer libraries into internal libraries for the middleware layer, facilitating seamless integration across multiple system layers, including ROS/Dart.
- [ ] Middleware Layer:
- [ ] ROS: Provide middleware support for the Robot Operating System, enhancing automation and robotics development capabilities.
- [ ] Dora: Offer advanced middleware support for distributed systems, increasing system scalability and flexibility.
- [X] Kernel Layer: Integrate core system libraries to ensure system stability and compatibility.
- Use RROS kernel to enhance the realtime ability of robot development
- [ ] Realtime ability
- [ ] Adapt ROS
- [ ] Adapt Dora
- [ ] Adapt EtherCAT protocol
- [ ] Adaptation and optimization for domestic Chips
- [X] x86 Series
- [X] ARM Series
- [X] LoongArch (Works on the single CPU core)
- [ ] RISC-V
- [ ] Realtime ability
- Development of upper-layer applications based on the RROS kernel
- [ ] Provide a rich API to support application developers in fully leveraging the powerful features of the RROS kernel, accelerating application development and deployment.
- [ ] Accelerate the applications with the RROS APIs.
Related Skills
pestel-analysis
Analyze political, economic, social, technological, environmental, and legal forces
next
A beautifully designed, floating Pomodoro timer that respects your workspace.
product-manager-skills
45PM skill for Claude Code, Codex, Cursor, and Windsurf: diagnose SaaS metrics, critique PRDs, plan roadmaps, run discovery, and coach PM career transitions.
task.tpl
use this ALWAYS to create/update a task in json
