diff --git a/cook/ingredients/packages/core-explicit.ks b/cook/ingredients/packages/core-explicit.ks new file mode 100644 index 0000000..7e5c7b3 --- /dev/null +++ b/cook/ingredients/packages/core-explicit.ks @@ -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 \ No newline at end of file diff --git a/cook/recipe_templates.yaml b/cook/recipe_templates.yaml index a0921a4..909af22 100644 --- a/cook/recipe_templates.yaml +++ b/cook/recipe_templates.yaml @@ -23,7 +23,7 @@ base: - core/locale.ks - core/network.ks - core/services.ks - - packages/core.ks + - packages/core-explicit.ks - packages/fedora-remix.ks - packages/hand-picked.ks