feat: break down core into explicit packages for Fedora remix compatibility

generic-release conflicts with fedora-release and generic-logos conflicts
with fedora-logos, so dishes shipping the remix packages cannot coexist
with @core pulling Fedora branding — the RPM transaction fails at prepare
time. Replace @core with the explicit core package list (mandatory +
default, plus basesystem/kernel/dhcp-client), add fedora-repos explicitly,
and deselect fedora-release/fedora-logos; the remix packages provide
system-release, system-release(44) and system-logos instead.

Verified on nuc6i7kyb: a Fedora 44 GNOME hypervisor desktop VM installed
cleanly from this configuration (982-package resolution scratch-tested
before the install).
This commit is contained in:
Lukas Greve
2026-09-11 20:39:54 +02:00
parent 698c7679be
commit ccf4f9d881
2 changed files with 83 additions and 1 deletions
@@ -0,0 +1,82 @@
# __ ____ ____ _____
# ____ / /_ __ __/ / /___ ____ ___ ___ / __ \/ ___/
# / __ \/ __ \/ / / / / / __ \/ __ `__ \/ _ \ / / / /\__ \
# / /_/ / / / /_/ / / / /_/ / / / / / / __/ / /_/ /___/ /
# / .___/_/ /_/\__, /_/_/\____/_/ /_/ /_/\___/ \____//____/
# /_/ /____/
# Core packages, broken down explicitly instead of using the `@core` group.
#
# Why: dishes that keep the Fedora remix packages (generic-release,
# generic-logos, fedora-remix-logos) cannot coexist with fedora-release /
# fedora-logos — both pairs hard-conflict. Listing the core packages
# explicitly deselects the Fedora release/branding packages while the
# remix packages provide `system-release`, `system-release(44)`,
# `fedora-release-identity` and `system-logos` in their place.
#
# Package list mirrors the Fedora 44 `core` comps group (mandatory +
# default packages), plus `basesystem`, `kernel` and `dhcp-client` from
# the hidden core group, plus `fedora-repos` (usually pulled in via
# fedora-release-common, which is deselected here).
%packages --exclude-weakdeps # Beginning of the packages section. Package description courtesy of the Fedora project
## Mandatory packages found in `core` group (dnf group info --hidden core)
audit # User space tools for kernel auditing
basesystem # The skeleton package which defines a simple Fedora system
bash # The Bourne Again SHell, a command-line interpreter.
coreutils # A set of basic GNU tools commonly used in shell scripts
curl # A utility for getting files from remote servers (FTP, HTTP, and others)
dhcp-client # Provides the ISC DHCP client daemon and dhclient-script
dnf5 # Command-line package manager
e2fsprogs # Utilities for managing ext2, ext3, and ext4 file systems
filesystem # The basic directory layout for a Linux system
glibc # The GNU libc libraries
hostname # Utility to set/show the host name or domain name
iproute # Advanced IP routing and network device configuration tools
iputils # Network monitoring tools including ping
kbd # Tools for configuring the console (keyboard, virtual terminals, etc.)
kernel # The Linux kernel
less # A text file browser similar to more, but better. Can be excluded
man-db # Tools for searching and reading man pages. Can be excluded
ncurses # Ncurses support utilities
openssh-clients # An open source SSH client applications. Can be excluded
openssh-server # An open source SSH server daemon. Can be excluded
parted # The GNU disk partition manipulation program
policycoreutils # SELinux policy core utilities. Can be excluded
procps-ng # System and process monitoring utilities
rootfiles # The basic required files for the root user's directory
rpm # The RPM package management system
selinux-policy-targeted # SELinux targeted policy. Can be excluded
setup # A set of system configuration and setup files
shadow-utils # Utilities for managing accounts and shadow password files
sssd-common # Common files for the SSSD. Can be excluded
sssd-kcm # An implementation of a Kerberos KCM server. Can be excluded
sudo # Allows restricted root access for specified users
systemd # System and Service Manager
util-linux # Collection of basic system utilities
vim-minimal # A minimal version of the VIM editor
## Default packages found in `core` group (dnf group info --hidden core)
NetworkManager # Network connection manager and user applications
dnf5-plugins # Plugins for dnf5
dracut-config-rescue # dracut configuration to turn on rescue image generation
firewalld # A firewall daemon with D-Bus interface providing a dynamic firewall
fwupd # Firmware update daemon
plymouth # Graphical Boot Animation and Logger
prefixdevname # Udev helper utility that provides network interface naming using user defined prefix
systemd-resolved # Network Name Resolution manager
zram-generator-defaults # Default configuration for zram-generator
## Repository definitions, pulled explicitly since fedora-release is deselected
fedora-repos # Fedora package repositories
## Deselect Fedora release/branding packages — the remix packages below
## provide system-release, system-release(44), fedora-release-identity and
## system-logos instead
-fedora-release
-fedora-release-common
-fedora-release-identity-basic
-fedora-logos
%end # End of the packages section