Build Fedora aarch64 images for the Lenovo Yoga C630
Assembles a ready-to-write disk image via Gitea Actions. Mainline has carried sdm850-lenovo-yoga-c630.dts since 5.5 and Fedora ships it in kernel-core, so unlike aarch64-laptops/build there is no kernel or GRUB to compile — what is left is producing an image that boots on firmware which hands Linux no device tree. The build runs in an aarch64 container under qemu-user and builds filesystems from directory trees with mke2fs -d and mcopy rather than mounting loop devices, so it works on runners that will not hand out /dev/loop-control. A kernel-install hook writes the devicetree line into each BLS entry; without it the first `dnf update kernel` would produce an unbootable system. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XWRjNJMistCy6ngXH5aJLS
This commit is contained in:
65
config/packages/base.pkgs
Normal file
65
config/packages/base.pkgs
Normal file
@@ -0,0 +1,65 @@
|
||||
# Packages common to every variant.
|
||||
# Lines are stripped of '#' comments and blanks before being handed to dnf.
|
||||
|
||||
# --- core ---------------------------------------------------------------
|
||||
@core
|
||||
fedora-release-common
|
||||
glibc-langpack-en
|
||||
tzdata
|
||||
|
||||
# --- kernel + firmware --------------------------------------------------
|
||||
kernel
|
||||
kernel-modules
|
||||
kernel-modules-extra
|
||||
linux-firmware
|
||||
|
||||
# qcom-firmware carries the Adreno 630 bits (a630_gmu.bin, a630_sqe.fw,
|
||||
# sdm845/a630_zap.mbn) that freedreno needs for accelerated graphics.
|
||||
# atheros-firmware carries ath10k WCN3990 including wlanmdsp.mbn, so WiFi
|
||||
# works without touching the Windows partition.
|
||||
qcom-firmware
|
||||
atheros-firmware
|
||||
|
||||
# Pulls the model-specific SDM850 DSP/display blobs off the Windows
|
||||
# partition. See docs/firmware.md — those cannot be redistributed.
|
||||
qcom-firmware-extract
|
||||
|
||||
# --- boot ---------------------------------------------------------------
|
||||
grub2-efi-aa64
|
||||
grub2-efi-aa64-modules
|
||||
grub2-tools
|
||||
grub2-tools-minimal
|
||||
shim-aa64
|
||||
efibootmgr
|
||||
dracut
|
||||
dracut-config-generic
|
||||
|
||||
# --- filesystem + growth ------------------------------------------------
|
||||
e2fsprogs
|
||||
dosfstools
|
||||
gdisk
|
||||
parted
|
||||
cloud-utils-growpart
|
||||
|
||||
# --- selinux ------------------------------------------------------------
|
||||
selinux-policy-targeted
|
||||
policycoreutils
|
||||
|
||||
# --- networking ---------------------------------------------------------
|
||||
NetworkManager
|
||||
NetworkManager-wifi
|
||||
wpa_supplicant
|
||||
iw
|
||||
openssh-server
|
||||
|
||||
# --- power / peripherals ------------------------------------------------
|
||||
bluez
|
||||
alsa-utils
|
||||
libqmi-utils
|
||||
|
||||
# --- basics -------------------------------------------------------------
|
||||
sudo
|
||||
shadow-utils
|
||||
vim-minimal
|
||||
less
|
||||
bash-completion
|
||||
12
config/packages/minimal.pkgs
Normal file
12
config/packages/minimal.pkgs
Normal file
@@ -0,0 +1,12 @@
|
||||
# Bring-up variant: small enough to iterate on quickly, enough tooling to
|
||||
# diagnose whatever does not work on the first boot.
|
||||
|
||||
tmux
|
||||
htop
|
||||
pciutils
|
||||
usbutils
|
||||
lshw
|
||||
dmidecode
|
||||
strace
|
||||
tcpdump
|
||||
dtc
|
||||
7
config/packages/workstation.pkgs
Normal file
7
config/packages/workstation.pkgs
Normal file
@@ -0,0 +1,7 @@
|
||||
# Full GNOME desktop. Build this once the minimal image is confirmed to boot.
|
||||
|
||||
@^workstation-product-environment
|
||||
gnome-initial-setup
|
||||
mesa-dri-drivers
|
||||
mesa-vulkan-drivers
|
||||
iio-sensor-proxy
|
||||
Reference in New Issue
Block a user