Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/steleman/xenomai-fc39
Xenomai / EVL Real-Time Linux Kernel on Fedora 39
https://github.com/steleman/xenomai-fc39
dovetail evl fedora fedora39 linux linux-kernel preempt-rt real-time real-time-systems xenomai
Last synced: 3 days ago
JSON representation
Xenomai / EVL Real-Time Linux Kernel on Fedora 39
- Host: GitHub
- URL: https://github.com/steleman/xenomai-fc39
- Owner: steleman
- License: gpl-2.0
- Created: 2024-09-22T17:38:24.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-30T22:21:14.000Z (about 2 months ago)
- Last Synced: 2024-10-30T23:23:08.493Z (about 2 months ago)
- Topics: dovetail, evl, fedora, fedora39, linux, linux-kernel, preempt-rt, real-time, real-time-systems, xenomai
- Language: Python
- Homepage:
- Size: 1.45 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Xenomai4 / Dovetail / EVL on Fedora 39
This is a port of [Xenomai 4 / EVL](https://v4.xenomai.org/) to Linux Kernel 6.10.10 for Fedora 39.
The `kernel-6.10.10-100.fc39.src.rpm` found here comes directly from Fedora. You do not need to unpack it, I've already done that. I've included it here for completeness.
Building a Xenomai4-enabled Fedora Kernel is quite simple:
1. The build system used here is based on Fedora's own build system. It uses `fedpkg` and `kernel.spec`. It's quite a nice build system, very easy to use, and it works. One of the things I like most is that it does quite a bit of sanity checking on your `defconfig` files.
To install all the required prerequisites for using `fedpkg`, please run the script named`install-fedora-dependencies.sh` found here.
2. This is not an official Fedora project. I have no association or affiliation with either RedHat, or Fedora, or IBM. I used to work at IBM TJ Watson Research, in IBM Quantum, as a Compiler Engineer. I left because it was a toxic place to work.
# How To Build a Xenomai4 Kernel:
1. Run the `do-fedpkg-prep.sh` script. This script checks that all the patches apply correctly and that the kernel can be built - in principle. The output of `do-fedpkg-prep.sh` is captured in `fedpkg-prep.log`.
2. Cleanup after `do-fedpkg-prep.sh` by running the `cleanup-kernel.sh` script.
3. Run the `do-fedpkg-local.sh` script. This will build the kernel. When it's finished, you will have a directory named `x86_64`. This is where all the RPMs will be. The output of `do-fedpkg-local.sh` is captured in `fedpkg-local.log`.
4. To avoid packaging namespace conflicts with the upstream Fedora kernel RPMs, the `.buildid` for this kernel is set to `.xenomai`, and the `pkgrelease` is set to `300`. You will see this in the names of the resulting RPMs.
5. The patch that imports and applies all the Xenomai changes, found here, is named `patch-6.10-dovetail-evl.patch`.
6. Don't forget to disable EFI Secure Boot to install the RPMs. You can use the `install-xenomai-kernel.sh` script found here to install the RPMs after they are built.
7. I've done some preliminary testing on `x86_64`, but not fully comprehensive testing. This is an ongoing project for me, and I will be doing more testing along the way, which means it's very likely there will be updates.
8. Update 10/30/2024: I've been running this Kernel for over a month now with zero problems.