parent
bacbf7d67e
commit
4df05c7457
8 changed files with 243 additions and 6 deletions
40
.forgejo/workflows/build-fedora-41.yml
Normal file
40
.forgejo/workflows/build-fedora-41.yml
Normal 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
|
||||||
|
|
|
@ -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 |
|
| Name | OS and Distro | Description | Note |
|
||||||
| - | - | - | - |
|
| - | - | - | - |
|
||||||
| `fedora:40` | Fedora 40 | [Description](./fedora-40/README.md) | |
|
| `fedora:41` | Fedora 41 | [Description](./fedora-41/README.md) | |
|
||||||
| `fedora-minimal:40` | Fedora 40 | [Description](./fedora-40-minimal/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
|
## FAQ
|
||||||
|
|
||||||
|
|
19
fedora-41-minimal/Containerfile
Normal file
19
fedora-41-minimal/Containerfile
Normal 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" ]
|
64
fedora-41-minimal/README.md
Normal file
64
fedora-41-minimal/README.md
Normal 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.
|
2
fedora-41-minimal/containers.conf
Normal file
2
fedora-41-minimal/containers.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[engine]
|
||||||
|
cgroup_manager = "cgroupfs"
|
23
fedora-41/Containerfile
Normal file
23
fedora-41/Containerfile
Normal 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
91
fedora-41/README.md
Normal 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.
|
|
@ -1,4 +0,0 @@
|
||||||
# https://learn.microsoft.com/zh-cn/vcpkg/get_started/get-started?pivots=shell-cmd
|
|
||||||
|
|
||||||
echo TODO
|
|
||||||
exit 1
|
|
Loading…
Reference in a new issue