aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-02-22VARIANTS: Add all the spins officially using kiwi nowGravatar Neal Gompa
2025-02-22VARIANTS: Add Workstation Edition disk imageGravatar Neal Gompa
This was accidentally left off when it shouldn't be.
2025-02-22VARIANTS: Update names for KDE variantsGravatar Neal Gompa
Fedora KDE Plasma Desktop is now an Edition, and KDE Mobile is the Fedora KDE Plasma Mobile Spin.
2025-02-20components/boot, teams/server: Add partitioning hack for the Raspberry Pi 3Gravatar Neal Gompa
The Raspberry Pi 3 does not recognize a FAT filesystem marked with the 0xef type, so until we drop support for this device, hack the partition manually to use a legacy FAT filesystem partition type.
2025-02-20teams/server: Bump the ESP size to 500 MBGravatar Neal Gompa
Now that we have a lot more stuff installed in the ESP, we need the ESP to be bigger. This matches the size used for the desktop disk variants.
2025-02-20components, teams/server: Use a common profile for hardware supportGravatar Neal Gompa
It is hard to ensure that hardware support packages are pulled in universally when it's splintered across different variant profiles. To fix this and ensure Server benefits from this, unify everything into a common profile and make everything require it.
2025-02-20teams/server: Use ext4 for /boot for the AArch64 host disk imageGravatar Neal Gompa
U-Boot does not support XFS and this causes significant issues when trying to boot Fedora Server on single board computers. Resolve this by using ext4 here, as all U-Boot variants generally support this.
2025-02-20components/desktops/lxqt: Replace enki with featherpadGravatar Neal Gompa
Enki is nice and advanced, but it also crashes when you try to use some basic functionality, so let's put back a simpler app that works.
2025-02-19server: Remove console=ttyS0 from riscv64 imagesGravatar Andrea Bolognani
Turns out that different boards needs different values, so hardcoding a specific one here is not a good idea. Luckily, Linux can usually figure things out on its own and automatically provide a working serial console. Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2025-02-19components/liveinstall: Switch to EROFS for live mediaGravatar Neal Gompa
This switches from SquashFS to EROFS using LZMA compression with a 1M chunksize and fragement dedpulication for inodes enabled. This attempts to match the defaults for SquashFS in kiwi and provides a good balance for image compression and creation time. Note that "-Ededupe" is not used because it is not multi-threaded and is currently extremely slow.
2025-02-19users: Fix list of profilesGravatar Andrea Bolognani
Of the profiles that are currently listed, only LiveInstall actually exists. Use BootCore instead, which all profiles derive from. In most cases we'll end up locking the root user as part of config.sh anyway. Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2025-02-18naming: rename `minimal` -> `tiny`Gravatar Simon de Vlieger
This renames the minimal profile to "tiny", it's useful to have a profile that builds quickly and provides a small artifact. However, the minimal name mirrors the Fedora Minimal spin name and might confuse people building images about what they're actually building. The Tiny descriptions do not replicate the Fedora Minimal spin. Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
2025-02-17components/desktops/kde: Add x86-emulation group for AArch64 imagesGravatar Neal Gompa
Reference: https://fedoraproject.org/wiki/Changes/FEX
2025-02-09teams/asahi: Add libgpg-errorGravatar Asahi Lina
This is a tiny package (250kB) that seems to be a relatively common dependency (it just provides error codes and some common helpers, used by stuff other than gpg itself).
2025-02-07Drop basesystem from bootstrap (obsoleted by filesystem)Gravatar Adam Williamson
We decided we don't need two packages like this. See https://src.fedoraproject.org/rpms/filesystem/c/3f741bf2a89c9e1bb685943c41fd298e6683dd50?branch=rawhide Signed-off-by: Adam Williamson <awilliam@redhat.com>
2025-02-07Initial riscv64 supportGravatar David Abdurachmanov
Most of the changes are self-explanatory and just follow what's already happening for existing architectures. Two things are worth pointing out: * we need to use shim-unsigned instead of shim-signed because riscv64 is not fully integrated into Fedora yet and so we can't do Secure Boot signing for the time being; * we use ext4 as bootfilesystem since in most cases the underlying firmware is going to be U-Boot, which needs to be able to load the board's DTB from /boot and doesn't support XFS. Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2025-01-31Add a WSL definition and config snippetsGravatar Jeremy Cline
This introduces the beginnings of an image definition for Windows Subsystem for Linux (WSL). The package list is based on the core and standard grouplists. Some packages, like the kernel, dracut, and so on, are omitted as they are unnecessary. Others, like audit, don't work in the environment. Finally, many packages are omitted since I thought "people probably won't want that", so the package list is completely up for debate. This is just a reasonable starting point that works. Build/test instructions: To build the tarball: $ ./kiwi-build --image-profile=WSL-Base --image-type=tbz --output-dir=./build/ Get it to a Windows host with WSL installed. To boot it with cgroupsv2, add the following to `.wslconfig` in the Windows host home folder: [wsl2] kernelCommandLine=systemd.unified_cgroup_hierarchhy=1 cgroup_no_v1=all This assumes the latest WSL release is installed, at least version 2.4.4: $ wsl --install --from-file .\path\to\the\fedora.tar.xz Alternatively, if you're using something prior to version 2.4.4: $ wsl --import --version=2 Fedora C:\path\to\storage\Fedora\ .\path\to\the\fedora.tar.xz Finally, run it with: $ wsl -d Fedora If you are using 2.4.4+, you will be prompted for a username and then dropped into an interactive shell with that user and passwordless sudo access. If you're using an older version, you need to do: $ wsl -d Fedora -u root # /usr/libexec/wsl/oobe.sh Signed-off-by: Jeremy Cline <jeremycline@linux.microsoft.com>
2025-01-27Add Fedora Scientific variantsGravatar Neal Gompa
This is ported over from the kickstart definitions.
2025-01-27server: Set bootloader timeout to 3s and show menuGravatar Andrea Bolognani
While cloud images can usually be booted without any issues and for workstation installs we want a visually polished experience, in the case of server installs on real hardware it is generally expected to have convenient access to the bootloader menu for troubleshooting purposes. Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2025-01-24config: Resize root partition on first bootGravatar Andrea Bolognani
Disk images are usually flashed to media which is much larger than they are, and all that additional space goes unused until the user intervenes. Configure things so that systemd-repart, which runs by default, automatically takes care of resizing the root partition. systemd-growfs, which also runs by default, will subsequently take care of resizing the filesystem to fill the newly-enlarged partition. Note that we don't do this for cloud images, since in that case cloud-init takes care of resizing the root filesystem and the underlying partition together with all the other setup tasks. Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2025-01-23teams/eln/container: Install standalone sysusers for base containersGravatar Yaakov Selkowitz
This avoids a dependency on the full systemd package for non-init containers.
2025-01-22Add Minimal disk imageGravatar Neal Gompa
This is an example that can be used for creating small disk images to verify that the basics work.
2025-01-22teams/cloud/container: Install standalone sysusers for base containersGravatar Neal Gompa
This avoids a dependency on the full systemd package for non-init containers.
2025-01-14Add Python Classroom Lab variantGravatar Neal Gompa
This is a port over from the kickstart definitions.
2025-01-13teams/workstation: Use web-based Anaconda UI by default for live mediaGravatar Neal Gompa
Reference: https://fedoraproject.org/wiki/Changes/AnacondaWebUIforFedoraWorkstation
2025-01-13tmt: Add build verification for Fedora WorkstationGravatar Neal Gompa
2025-01-13teams/asahi: FEX: Switch SDL2 for sdl2-compatGravatar Neal Gompa
Reference: https://fedoraproject.org/wiki/Changes/SDL2onSDL3
2025-01-10Add COSMIC spin variantsGravatar Neal Gompa
Reference: https://fedoraproject.org/wiki/Changes/FedoraCOSMIC
2024-12-18teams/asahi: Add readlink binaryGravatar Asahi Lina
Potentially needed for path resolution to work properly in scripts.
2024-12-16components/liveinstall: Use GPT for UEFI-enabled ISO imagesGravatar Neal Gompa
This mimics the previous state with Lorax-based images.
2024-12-13components/common: Exclude qemu-user-staticGravatar Neal Gompa
This metapackage pulls in tons of unwanted emulators which can add up to 100MB of additional space.
2024-12-13components: Introduce a BaseCommon profileGravatar Neal Gompa
This is where the lowest level common denominator configuration goes for most images go.
2024-12-12teams/asahi: FEX: Add glxinfo/eglinfo/clinfo to bin includesGravatar Asahi Lina
2024-12-09teams/asahi: FEX: Minimize rootfs by removing most data files and executablesGravatar Asahi Lina
We only really need i686/x86_64 libraries, and executables which do not exist (or do not work equivalently) on the arm64 host system. In particular, removing libexec avoids situations where random dbus services are started under emulation for no reason.
2024-12-09teams/asahi: FEX: Add xim support for GTK2/3Gravatar Asahi Lina
We're currently shipping GTK2/3 libs in the rootfs. While we're doing that, let's also install XIM support, which actually works through X11 passthrough with muvm. This should generally make legacy GTK x86_64 apps have input method support the old-fashioned way. Modern apps should use the Wayland input method protocol stuff, which is already built into GTK3/GTK4 and should not require any extra shared libraries for FEX. For muvm, that will work once we have Wayland passthrough.
2024-11-27Disable group and related exclusions in LXQt definitionGravatar Adam Williamson
Per #112, excluding group specs just does not work in Kiwi at present. For LXQt this is especially a problem because it means the image fails to compose. The exclusion of m17n* *does* work as it's a package spec, but because the exclusion of the input-methods group does not work, dnf wants to install ibus-typing-booster (part of input-methods), which requires m17n-lib, and these conflicting requirements cause it to blow up. So at least until the problem of not being able to exclude groups is resolved, we should drop these. Arguably, we should permanently stop excluding input-methods, at least. Space constraints aren't as huge of a deal these days as they used to be, on the whole; lots of folks have decent bandwidth, lots of disk space, and large USB sticks. Input methods are critical for CJK users; leaving them off the image makes it more or less useless for them, which is a significant impairment. (Unless, that is, input methods don't work properly in LXQt even if included - I haven't tested this). Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-11-26teams/server: Split out ServerDisk aarch64 profile to force MBRGravatar Neal Gompa
Many of the older supported AArch64 systems (particularly single board computers) require a legacy MBR (Master Boot Record) type partitioning to successfully boot.
2024-11-26components/boot: Split out BootDiskCore aarch64 profile to force MBRGravatar Neal Gompa
Many of the older supported AArch64 systems (particularly single board computers) require a legacy MBR (Master Boot Record) type partitioning to successfully boot.
2024-11-23Fix a line ordering error in lxde.xmlGravatar Adam Williamson
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-11-23scripts/fedora-live-iso-label-generator: Add Workstation->WS mappingGravatar Neal Gompa
This ensures that live media produced for Workstation Edition has a valid volume ID.
2024-11-23scripts/fedora-live-iso-label-generator: Account for unknown profilesGravatar Neal Gompa
This way it does not fail and produces something that makes sense.
2024-11-23teams: Add install disk profiles for all desktop teamsGravatar Neal Gompa
KDE and MiracleWM teams already have it, so this just fills it in for the rest of them.
2024-11-23tmt: Purge work area contents to free up space on archivingGravatar Neal Gompa
We only need to preserve the log file anyway.
2024-11-23components/desktops/common: Ensure Fedora Media Writer is installedGravatar Neal Gompa
We want this on all deliverables.
2024-11-23components/liveinstall: Exclude uncommon and unneeded storage toolsGravatar Neal Gompa
This saves some space and brings us closer to the old Lorax-based live media.
2024-11-23components/desktops/kde: Refactor and flesh out package exclusionsGravatar Neal Gompa
Group exclusions do not seem to work anymore with DNF5, so explicitly filter out unwanted packages. Additionally, add missing unwanted packages from the kickstarts and refactor it to apply to both KDE Desktop and KDE Mobile profiles.
2024-11-23components/desktops/kde: Install KDE PIMGravatar Neal Gompa
This was always supposed to be present, but was somehow missed.
2024-11-23components/liveinstall: Use plain squashfs instead of ext4-in-squashfsGravatar Neal Gompa
It results in higher compression ratios.
2024-11-22Revert "components/liveinstall: Switch to EROFS for live media"Gravatar Neal Gompa
As it currently stands, this doubles the size of the live ISOs, which is completely unacceptable. We will need to make the switch eventually, but we need to figure out how to compress better first. This reverts commit 1457e97008f15064dcc30aaca9977ffa1ec66572.
2024-11-17scripts/fedora-kiwi-bundle-format-generator: Fix program descriptionGravatar Neal Gompa
This script was cloned from the iso label generator, but the program description in the argument parser was not changed.