Commit Graph
181 Commits
Author SHA1 Message Date
Timothée Ravier b1e2456529 maintainers: Remove PPC64LE Atomic Desktops
See: https://fedoraproject.org/wiki/Changes/AtomicDesktopsNoPpc64le
2025-03-10 11:59:22 +01:00
Miro Hrončok 3fe7a48178 Block pypy3.10 from Python Classroom Lab
We have pypy3.11.
pypy3.9 was retired.

See https://bugzilla.redhat.com/2348737
2025-03-06 19:55:37 +01:00
Neal Gompa 0e959df19b config.sh: Drop unnecessary initrd rebuild logic for SoaS
The initramfs is built after config.sh is run anyway.
2025-03-01 08:30:02 -05:00
Neal Gompa 832be6c098 config.sh: Configure the Xfce polkit agent to run on SoaS
The Xfce polkit agent configuration was missed in the initial port
from the kickstarts.
2025-03-01 06:33:04 -05:00
Neal Gompa cd8fae1546 config.sh: Drop livesys scriptlets for SoaS
Some of	this was already present in livesys-scripts and	the rest
was migrated.
2025-03-01 06:33:04 -05:00
Neal Gompa 960270bb86 components/desktops/kde: Only install KDE PIM on x86_64, AArch64, and POWER
This group is currently not available for any other architectures.
2025-02-22 20:42:32 -05:00
Neal Gompa 4d0315767d components/desktops: Drop duplicate unused DesktopCommon profile entries
This is principally to avoid confusion as the DesktopCommon profile
is defined in one place and used across the board.

No functional changes.
2025-02-22 04:05:41 -05:00
Neal Gompa 914e61919e VARIANTS: Add Python Classroom Lab and reformat table
The Fedora Python Classroom Lab moved to kiwi with Fedora Linux 42.
2025-02-22 01:22:56 -05:00
Neal Gompa ecd07afee9 VARIANTS: Add all the spins officially using kiwi now 2025-02-22 01:17:14 -05:00
Neal Gompa f06dd20ad5 VARIANTS: Add Workstation Edition disk image
This was accidentally left off when it shouldn't be.
2025-02-22 01:16:24 -05:00
Neal Gompa 1cc05ef282 VARIANTS: Update names for KDE variants
Fedora KDE Plasma Desktop is now an Edition, and KDE Mobile is the
Fedora KDE Plasma Mobile Spin.
2025-02-22 01:11:44 -05:00
Neal Gompa fcdcd34d50 components/boot, teams/server: Add partitioning hack for the Raspberry Pi 3
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-20 14:46:28 -05:00
Neal Gompa 5844c5c608 teams/server: Bump the ESP size to 500 MB
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-20 14:15:26 -05:00
Neal Gompa ada197be81 components, teams/server: Use a common profile for hardware support
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-20 14:15:26 -05:00
Neal Gompa 2cb33874d1 teams/server: Use ext4 for /boot for the AArch64 host disk image
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-20 07:55:35 -05:00
Neal Gompa 04baf2e19b components/desktops/lxqt: Replace enki with featherpad
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-20 07:33:54 -05:00
Andrea Bolognani 7bbf6475e8 server: Remove console=ttyS0 from riscv64 images
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-19 19:15:14 +01:00
Neal Gompa 3d2b7b0dc4 components/liveinstall: Switch to EROFS for live media
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-19 12:19:53 -05:00
Andrea Bolognani dbed27c61e users: Fix list of profiles
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-19 01:28:19 +01:00
Simon de Vlieger 32a5d56825 naming: rename minimal -> tiny
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-18 13:08:03 +00:00
Neal Gompa a442d1b21e components/desktops/kde: Add x86-emulation group for AArch64 images
Reference: https://fedoraproject.org/wiki/Changes/FEX
2025-02-17 19:30:30 -05:00
Asahi Lina 737d8274e0 teams/asahi: Add libgpg-error
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-09 18:50:43 +09:00
Adam Williamson c0a77191ff Drop basesystem from bootstrap (obsoleted by filesystem)
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-07 09:12:30 -08:00
David Abdurachmanov b5d377d912 Initial riscv64 support
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-02-07 15:06:22 +01:00
Jeremy Cline 4b4a83b33f Add a WSL definition and config snippets
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-31 10:52:54 -05:00
Neal Gompa 90f4f3a820 Add Fedora Scientific variants
This is ported over from the kickstart definitions.
2025-01-27 19:38:49 -05:00
Andrea Bolognani b81b830770 server: Set bootloader timeout to 3s and show menu
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-27 14:36:05 +01:00
Andrea Bolognani d33836e560 config: Resize root partition on first boot
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-24 16:23:26 +01:00
Yaakov Selkowitz 9fed79138a teams/eln/container: Install standalone sysusers for base containers
This avoids a dependency on the full systemd package for non-init
containers.
2025-01-23 18:46:23 -05:00
Neal Gompa a74ebe5098 Add Minimal disk image
This is an example that can be used for creating small disk images
to verify that the basics work.
2025-01-22 19:58:08 +00:00
Neal Gompa 1f35331b84 teams/cloud/container: Install standalone sysusers for base containers
This avoids a dependency on the full systemd package for non-init
containers.
2025-01-22 13:01:27 -05:00
Neal Gompa 01b6f436c2 Add Python Classroom Lab variant
This is a port over from the kickstart definitions.
2025-01-14 12:30:13 -05:00
Neal Gompa fe9f770c85 teams/workstation: Use web-based Anaconda UI by default for live media
Reference: https://fedoraproject.org/wiki/Changes/AnacondaWebUIforFedoraWorkstation
2025-01-13 11:47:38 -05:00
Neal Gompa 9aeb2773a9 tmt: Add build verification for Fedora Workstation 2025-01-13 13:55:28 +00:00
Neal Gompa e69c665481 teams/asahi: FEX: Switch SDL2 for sdl2-compat
Reference: https://fedoraproject.org/wiki/Changes/SDL2onSDL3
2025-01-13 08:37:54 -05:00
Neal Gompa 7f04952a02 Add COSMIC spin variants
Reference: https://fedoraproject.org/wiki/Changes/FedoraCOSMIC
2025-01-10 15:11:08 -05:00
Asahi Lina 88b268c9f1 teams/asahi: Add readlink binary
Potentially needed for path resolution to work properly in scripts.
2024-12-18 21:21:48 +09:00
Neal Gompa a10cb63d95 components/liveinstall: Use GPT for UEFI-enabled ISO images
This mimics the previous state with Lorax-based images.
2024-12-16 06:03:28 -05:00
Neal Gompa f8b3926a82 components/common: Exclude qemu-user-static
This metapackage pulls in tons of unwanted emulators which can
add up to 100MB of additional space.
2024-12-13 10:18:06 -05:00
Neal Gompa 1f496fc743 components: Introduce a BaseCommon profile
This is where the lowest level common denominator configuration
goes for most images go.
2024-12-13 10:18:06 -05:00
Asahi Lina ed9909ea20 teams/asahi: FEX: Add glxinfo/eglinfo/clinfo to bin includes 2024-12-12 00:18:35 +09:00
Asahi Lina 9f4dd7cb88 teams/asahi: FEX: Minimize rootfs by removing most data files and executables
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-09 20:00:23 +00:00
Asahi Lina bb3a746dda teams/asahi: FEX: Add xim support for GTK2/3
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-12-09 23:53:30 +09:00
Adam Williamson f4fe89ae90 Disable group and related exclusions in LXQt definition
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-27 16:37:13 -08:00
Neal Gompa 649ac3e121 teams/server: Split out ServerDisk aarch64 profile to force MBR
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-26 06:40:06 -05:00
Neal Gompa e81733710d components/boot: Split out BootDiskCore aarch64 profile to force MBR
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-26 06:39:45 -05:00
Adam Williamson 4943dc58a8 Fix a line ordering error in lxde.xml
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-11-23 15:02:47 -08:00
Neal Gompa 21a2d09ca2 scripts/fedora-live-iso-label-generator: Add Workstation->WS mapping
This ensures that live media produced for Workstation Edition has a
valid volume ID.
2024-11-23 17:06:55 -05:00
Neal Gompa b1359b9f68 scripts/fedora-live-iso-label-generator: Account for unknown profiles
This way it does not fail and produces something that makes sense.
2024-11-23 17:04:40 -05:00
Neal Gompa 6816c7d501 teams: Add install disk profiles for all desktop teams
KDE and MiracleWM teams already have it, so this just fills it in
for the rest of them.
2024-11-23 16:41:30 -05:00