Skip to content

Commit f976086

Browse files
Update GitHub Actions workflow to use Arch Linux container and simplify ISO build process
1 parent ca52bc4 commit f976086

File tree

2 files changed

+21
-22
lines changed

2 files changed

+21
-22
lines changed

.github/workflows/build.yaml

Lines changed: 11 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,36 +8,32 @@ on:
88
jobs:
99
build:
1010
runs-on: ubuntu-latest # Use a standard runner
11+
container:
12+
image: archlinux:latest
1113

1214
steps:
1315
- name: Checkout Repository
1416
uses: actions/checkout@v4
1517

16-
- name: Set up Arch Linux Container
18+
- name: Update Arch Linux and install dependencies
1719
run: |
18-
docker run --privileged --name arch-container -d -v ${{ github.workspace }}:/workdir archlinux:latest sleep infinity
20+
pacman -Syu --noconfirm &&
21+
pacman -S --noconfirm git archiso grub
1922
20-
- name: Build ISO in Arch Container
23+
- name: Build ISO
2124
run: |
22-
docker exec arch-container bash -c "
23-
pacman -Syu --noconfirm &&
24-
pacman -S --noconfirm git archiso grub &&
25-
cd /workdir &&
26-
mkarchiso -v -w workdir/ -o out/ .
27-
"
25+
mkarchiso -v -w workdir/ -o out/ .
2826
29-
30-
- name: Copy ISO to Host
27+
- name: Rename ISO
3128
run: |
32-
docker cp arch-container:/workdir/out/Arch.iso ${{ github.workspace }}/
29+
mv out/*.iso out/Arch.iso
3330
3431
- name: Get current date
3532
id: date
3633
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
3734

38-
# Create a release on GitHub using GITHUB_TOKEN
3935
- name: Create GitHub Release
40-
id: create_release # Adding an ID to reference the release step
36+
id: create_release
4137
uses: actions/[email protected]
4238
env:
4339
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -49,18 +45,12 @@ jobs:
4945
draft: false
5046
prerelease: false
5147

52-
# Upload the ISO to the GitHub release with a specific, predictable name
5348
- name: Upload ISO to GitHub Release
5449
uses: actions/upload-release-asset@v1
5550
env:
5651
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5752
with:
5853
upload_url: ${{ steps.create_release.outputs.upload_url }}
59-
asset_path: ${{ github.workspace }}/Arch.iso
54+
asset_path: out/Arch.iso
6055
asset_name: Arch.iso
6156
asset_content_type: application/octet-stream
62-
63-
- name: Clean Up
64-
run: |
65-
docker stop arch-container
66-
docker rm arch-container

README.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,16 @@
44

55
This repository provides a customized Arch Linux ISO with the system beeps disabled, ideal for users who prefer a quieter environment.
66

7-
## Features
7+
## Table of Contents
8+
- [Features](#features)
9+
- [How to Build the ISO Locally](#how-to-build-the-iso-locally)
10+
- [Prerequisites](#prerequisites)
11+
- [Steps to Build Locally](#steps-to-build-locally)
12+
- [How to Use GitHub Actions (Automated Workflow)](#how-to-use-github-actions-automated-workflow)
13+
- [How It Works](#how-it-works)
14+
- [GitHub Actions Workflow Overview](#github-actions-workflow-overview)
15+
- [How to Trigger the GitHub Workflow](#how-to-trigger-the-github-workflow)
16+
- [License](#license)
817

918
- **Silent Mode**: The systemd-boot beep and other annoying beeps are completely disabled.
1019
- **Arch Linux Base**: Built on the latest Arch Linux, providing a clean and minimal system.

0 commit comments

Comments
 (0)