Merge pull request 'main' (#1) from skip/fasttrack_wiki:main into main
mkdocs build / build (push) Successful in 42s Details

Reviewed-on: #1
Reviewed-by: Neil Hanlon <neil@noreply@resf.org>
This commit is contained in:
Neil Hanlon 2023-10-17 16:49:49 +00:00
commit c342cfca8c
7 changed files with 122 additions and 5 deletions

15
Dockerfile Normal file
View File

@ -0,0 +1,15 @@
FROM rockylinux:9
RUN dnf update -y &&\
dnf install -y git python3-pip &&\
dnf clean all
# bind volume $CWD > /wiki exists in docker-compose.yml
RUN mkdir /wiki
COPY requirements.txt /wiki
WORKDIR /wiki
RUN pip3 install -r requirements.txt
EXPOSE 8000
CMD mkdocs serve -a 0.0.0.0:8000

View File

@ -10,3 +10,7 @@
## Continuous Integration / Continuous Deployment
Actions Runner executes workflow to publish to https://sig-fasttrack.rocky.page on push to main.
## Local testing
A Dockerfile and docker-compose are included for local testing. "docker-compose up" (or "podman-compose up") should be enough to launch this wiki locally. Point your browser to http://localhost:8000 to view.

12
docker-compose.yml Normal file
View File

@ -0,0 +1,12 @@
version: '3.2'
services:
wiki:
volumes:
- type: bind
source: .
target: /wiki
build:
context: .
ports:
- 8000:8000

View File

@ -1,14 +1,44 @@
# SIG/FastTrack Wiki
FastTrack, as an ode to a past CentOS repository of a similar name, is a SIG to attempt to provide the following:
## A Package Bazaar, not a Package Cathedral
FastTrack, as an ode to a past CentOS repository of a similar name, is a SIG that attempts to provide:
* Fixes, customizations, upgrades, and improvements to existing Rocky packages that the community would like to see
* Backports of patches that may not be released by our upstreams (RHEL, CentOS Stream, or even Fedora) to address bugs or functionality
* New original packages for Rocky. It's possible new ones could eventually make it into CentOS Stream or EPEL.
* Newer major versions of software that override the base Rocky repositories - even versions so new they will likely never land in RHEL, CentOS Stream, or EPEL
## Philosophy
The goal is to have a place in the Rocky project where experimental new packages and updates to existing ones can be published. Philosophically, this SIG should be wide open to contributions, with much less rigor or vetting than repositories such as EPEL. Newer versions of existing Rocky Linux packages, as well as brand new packages are both welcome. **We don't need reasons to add a package, we need reasons to *not* add it.
Having said that, we can't have absolute anarchy. There must be some kind of a guideline to what can and cannot be accepted.
### Reasons for FastTrack Package Rejection:
- **Broken dependencies:** `dnf repoclosure` must succeed on publication. If some packages are not installable under default Rocky Linux, we cannot include the package until that's fixed
- **Malicious or severe security risk:** We should not publish anything that presents a severe security risk to the user (think remotely-exploitable-by-default code).
- **Changes a core package in a questionable way:** Related to the security risk issue. We cannot override `openssl` or `glibc` with questionable behavior or API updates. "Core" is in the eye of the beholder, but generally we want FastTrack users to continue using the solid Rocky Linux base.
- **We don't have permssion to redistribute:** Self-explanatory. Contributions don't necessarily have to be 100% open source, but the Rocky project cannot and will not host copyrighted, non-redistributable content.
- **It already exists in EPEL, RPMFusion, or another 3rd-party repo**: The intention of this SIG is to provide as much "new and cool" stuff to Rocky Linux users as possible. If people can already get software from one of the popular 3rd-party repos, that's probably the best place to go. An exception to this is when dependencies are needed that already exist in another repo, that are needed to build the new package we want.
- **Package clearly belongs in another SIG:** The goal of this SIG is to be a "catchall" for desirable new packages or updates. However, many times a package clearly doesn't belong in FastTrack, but in another SIG already set up for that purpose. Enhanced kernels should probably go in SIG/Kernel, embedded or single-board specific packages should go in SIG/AltArch, etc.
Outside of these guidelines, package contributions should always be welcome!
* Fixes, customizations, improvements to packages that the community would like to see
* This also includes doing backports of patches that may not be released by our upstreams to address any type of bugs
* Potential packages that could potentially make it to CentOS Stream or EPEL
* Newer versions of software that override the base repositories that would likely never land in RHEL, CentOS Stream, or EPEL
## Links
- **SIG-FastTrack Wiki:** [https://sig-fasttrack.rocky.page/](https://sig-fasttrack.rocky.page/)
- **MatterMost Chat Channel:** [https://chat.rockylinux.org/rocky-linux/channels/sig-fasttrack](https://chat.rockylinux.org/rocky-linux/channels/sig-fasttrack)
- **FastTrack Git Group:** [https://git.resf.org/sig_fasttrack/](https://git.resf.org/sig_fasttrack/) (New package requests can be in meta/, wiki source under wiki/ )
- **FastTrack Package Sources:** [https://git.rockylinux.org/sig/fasttrack/](https://git.rockylinux.org/sig/fasttrack/)
- **Peridot RPM Build System:** [https://peridot.build.resf.org/](https://peridot.build.resf.org/)
## Responsibilities
## Meetings / Communications

View File

@ -0,0 +1,23 @@
---
title: Package List
---
# FastTrack Package List
## FastTrack-Updates
| Package | Major Version | Reason | Extra Notes | Date Added |
|---------- | -------------- | -------- | ------------ | ---------- |
| | | | | |
| | | | | |
| | | | | |
## FastTrack-New
| Package | Major Version | Reason | Extra Notes | Date Added |
|---------- | -------------- | -------- | ------------ | ---------- |
| | | | | |
| | | | | |
| | | | | |

View File

@ -0,0 +1,32 @@
---
title: Repositories and Packages
---
# Repositories
There are 2 main FastTrack repositories: **FastTrack-Updates** and **FastTrack-New** .
The -Updates repository contains newer versions of packages found in Rocky Linux, while the -New repository is exclusively new packages.
## Updates Repo: Includes and Excludes
The FastTrack-Updates repository in particular could be an issue for some users - what if you are only interested in updating certain packages on your system, but leaving others alone? This is not a problem for FastTrack-New , as you can simply opt to not install packages you don't want.
To assist users, the FastTrack.repo file will have a couple comments explaining how to `includepkgs` and `excludepkgs` in DNF. Specifying includepkgs allows users to only receive updates for the listed packages, while excludepkgs allows them to ignore FastTrack updates of things they prefer to keep on the stock Rocky ones.
# Packages
## Suggestions/Requests
New packages can always be discussed for inclusion via issues at: [https://git.resf.org/sig_fasttrack/meta/issues](https://git.resf.org/sig_fasttrack/meta/issues)
The best/fastest way to get a package included in the SIG is to have the build pre-complete in tested. That is, have a working git repository or SRPM somewhere that you've confirmed builds properly against Rocky Linux. We can then bring the package into dist-git under https://git.rockylinux.org/sig/fasttrack/src/PACKAGE and build + publish in the Rocky build system.
## Builds
Package builds *must* build with Rocky Linux dependencies only. (BaseOS/AppStream/PowerTools/Devel/etc.)
Using 3rd party repos such as EPEL as dependencies is not allowed. 3rd party repositories are subject to change, and we do not want to depend on external packages in order to use SIG-FastTrack. If a package is dependent on other packages found in EPEL or other repos, these dependencies can be re-built and made available in the FastTrack repositories as well.
A standard Mock config will be made available in the SIG's Git space for each major version of Rocky Linux. These Mock configs will reflect the SIG's Peridot build settings, so proper apples-to-apples testing of builds can be done locally by contributors.

View File

@ -62,6 +62,7 @@ plugins:
- awesome-pages
- git-revision-date-localized:
type: date
fallback_to_build_date: true
- search
# Extensions