add fedora 41
Some checks failed
/ build (push) Failing after 56s

This commit is contained in:
thislight 2024-11-28 19:54:18 +08:00
parent bacbf7d67e
commit 4df05c7457
No known key found for this signature in database
GPG key ID: FCFE5192241CCD4E
8 changed files with 243 additions and 6 deletions

View file

@ -0,0 +1,40 @@
$schema: https://github.com/SchemaStore/schemastore/raw/master/src/schemas/json/github-workflow.json
on:
push:
branches: ['master']
paths:
- "fedora-41/**"
- "fedora-41-minimal/**"
- "shared/**"
- ".forgejo/workflows/build-fedora-41.yml"
schedule:
- cron: "0 0 * * 3" # Every Thursday 00:00
jobs:
build:
runs-on: linux-lg
container:
image: code.lightstands.xyz/standcoded/fedora-minimal:40
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version-file: 'package.json'
- name: Fulfill Package Manager Cache
run: dnf makecache -y --releasever 41
- name: Sign in to Image Index
run: buildah login code.lightstands.xyz --username ${{ env.GITHUB_ACTOR }} --password ${{ secrets.PUBLICATION_TOKEN }}
- name: Build Minimal Images
run: DNF_CACHE_PATH=/var/cache/dnf bun shared/build-image.ts code.lightstands.xyz/standcoded/fedora-minimal:41 fedora-41-minimal
- name: Push Minimal Images
run: buildah manifest push code.lightstands.xyz/standcoded/fedora-minimal:41 --all
- name: Build Complete Images
run: DNF_CACHE_PATH=/var/cache/dnf bun shared/build-image.ts code.lightstands.xyz/standcoded/fedora:41 fedora-41
- name: Push Complete Images
run: buildah manifest push code.lightstands.xyz/standcoded/fedora:41 --all

View file

@ -4,8 +4,10 @@ These images is cached on action runner machines and is able to run most of the
| Name | OS and Distro | Description | Note |
| - | - | - | - |
| `fedora:40` | Fedora 40 | [Description](./fedora-40/README.md) | |
| `fedora-minimal:40` | Fedora 40 | [Description](./fedora-40-minimal/README.md) | |
| `fedora:41` | Fedora 41 | [Description](./fedora-41/README.md) | |
| `fedora-minimal:41` | Fedora 41 | [Description](./fedora-41-minimal/README.md) | |
| `fedora:40` | Fedora 40 | [Description](./fedora-40/README.md) | Deprecated, will be removed after June 2025 |
| `fedora-minimal:40` | Fedora 40 | [Description](./fedora-40-minimal/README.md) | Deprecated, will be removed after June 2025 |
## FAQ

View file

@ -0,0 +1,19 @@
FROM fedora:41
RUN sh /imgbuild/fedora/instpkgs-minimal.sh
# We don't clean up dnf cache since user may want to install packages for their use
ADD containers.conf /etc/containers/
RUN sh /imgbuild/configure-nested-container.sh
VOLUME /var/lib/containers
VOLUME /home/action/.local/share/containers
# Set up environment variables to note that this is
# not starting with usernamespace and default to
# isolate the filesystem with chroot.
ENV _BUILDAH_STARTED_IN_USERNS="" BUILDAH_ISOLATION=chroot
ENTRYPOINT [ "/bin/bash" ]

View file

@ -0,0 +1,64 @@
# fedora-minimal:41
```yaml
container:
image: code.lightstands.xyz/standcoded/fedora-minimal:41
```
## Included Softwares
### General
- coreutils
- bash
- aria2
- jq
- yq
- zstd
- brotil
- sqlite
### Version Control
- git
- git-lfs
- git-ftp
### Container Management
- podman
- buildah
- fuse-overlayfs
### NodeJS
- nodejs
- nodejs-npm
### Python
- python3
- python3-devel
- python3-pip
- pipx
### Perl
- perl
- perl-CPAN
### Ruby
- ruby
- rubygems
### C
- clang
- gcc
## Additional Configuration
### Building Container Images
This images configured buildah to be correctly run under a container. You can use [The workflow of this project](../.forgejo/workflows/build-fedora-41.yml) as an example.

View file

@ -0,0 +1,2 @@
[engine]
cgroup_manager = "cgroupfs"

23
fedora-41/Containerfile Normal file
View file

@ -0,0 +1,23 @@
FROM code.lightstands.xyz/standcoded/fedora-minimal:41
RUN dnf install -y --setopt install_weak_deps=False sqlite-devel binutils
RUN dnf install -y --setopt install_weak_deps=False nodejs-devel poetry perl-devel ruby-devel
RUN dnf install -y --setopt install_weak_deps=False php php-devel composer
RUN dnf install -y --setopt install_weak_deps=False java-1.8.0-openjdk java-1.8.0-openjdk-devel
RUN dnf install -y --setopt install_weak_deps=False java-11-openjdk java-11-openjdk-devel
RUN dnf install -y --setopt install_weak_deps=False java-17-openjdk java-17-openjdk-devel
RUN dnf install -y --setopt install_weak_deps=False java-21-openjdk java-21-openjdk-devel
RUN dnf install -y --setopt install_weak_deps=False qemu-user-static qemu-user-binfmt
RUN dnf install -y --setopt install_weak_deps=False bison flex vcpkg
RUN dnf group install -y --setopt install_weak_deps=False "C Development Tools and Libraries"
RUN npm -g install corepack

91
fedora-41/README.md Normal file
View file

@ -0,0 +1,91 @@
# fedora:41
```yaml
container:
image: code.lightstands.xyz/standcoded/fedora:40
```
## Included Softwares
### General
- coreutils
- bash
- aria2
- jq
- yq
- zstd
- brotil
- sqlite
- sqlite-devel
- binutils
### Version Control
- git
- git-lfs
- git-ftp
### Container Management
- podman
- buildah
- fuse-overlayfs
- qemu-user-static
- qemu-user-binfmt
### NodeJS
- nodejs
- nodejs-npm
- nodejs-devel
- corepack
### Python
- python3-devel
- python3-pip
- pipx
- poetry
### Perl
- perl
- perl-CPAN
- perl-devel
### Ruby
- ruby
- rubygems
- ruby-devel
### C/C++
- clang
- gcc
- bison
- flex
- "C Development Tools and Libraries"
- vcpkg
### PHP
- php
- php-devel
- composer
### Java
| Version | Packages |
| - | - |
| 1.8.0 | java-1.8.0-openjdk, java-1.8.0-openjdk-devel |
| 11 | java-11-openjdk, java-11-openjdk-devel |
| 17 | java-17-openjdk, java-17-openjdk-devel |
| 21 | java-21-openjdk, java-21-openjdk-devel |
## Additional Configuration
### Building Container Images
This images configured buildah to be correctly run under a container. You can use [The workflow of this project](../.forgejo/workflows/build-fedora-41.yml) as an example.

View file

@ -1,4 +0,0 @@
# https://learn.microsoft.com/zh-cn/vcpkg/get_started/get-started?pivots=shell-cmd
echo TODO
exit 1