Summary: Graphical system installer Name: anaconda Version: 34.25.5.0 Release: 1%{?dist}.oreon License: GPLv2+ and MIT URL: http://fedoraproject.org/wiki/Anaconda # To generate Source0 do: # git clone https://github.com/rhinstaller/anaconda # git checkout -b archive-branch anaconda-%%{version}-%%{release} # ./autogen.sh # make dist Source0: %{name}-%{version}.tar.bz2 # Oreon patches Patch1000: anaconda-oreon-installer-colors.patch Patch1001: anaconda-oreon-disable-subscription.patch Patch1002: anaconda-oreon-disable-cdn-radiobutton.patch Patch1003: anaconda-oreon-remove-visible-fedora-references.patch Patch1004: anaconda-oreon-add-minimal-repo.patch # Versions of required components (done so we make sure the buildrequires # match the requires versions of things). %if ! 0%{?rhel} %define blivetguiver 2.1.12-1 %endif %define dasbusver 1.3 %define dbusver 1.2.3 %define dnfver 3.6.0 %define dracutver 034-7 %define fcoeutilsver 1.0.12-3.20100323git %define gettextver 0.19.8 %define gtk3ver 3.22.17 %define helpver 9.0.0-1 %define isomd5sumver 1.0.10 %define langtablever 0.0.54 %define libarchivever 3.0.4 %define libblockdevver 2.1 %define libreportanacondaver 2.0.21-1 %define libtimezonemapver 0.4.1-2 %define libxklavierver 5.4 %define mehver 0.23-1 %define nmver 1.0 %define pykickstartver 3.32.10-1 %define pypartedver 2.5-2 %define pythonblivetver 1:3.6.0-4 %define rpmver 4.10.0 %define simplelinever 1.8.3-1 %define subscriptionmanagerver 1.29.31 %define utillinuxver 2.15.1 BuildRequires: audit-libs-devel BuildRequires: libtool BuildRequires: gettext-devel >= %{gettextver} BuildRequires: gtk3-devel >= %{gtk3ver} BuildRequires: gtk-doc BuildRequires: gtk3-devel-docs >= %{gtk3ver} BuildRequires: glib2-doc BuildRequires: gobject-introspection-devel BuildRequires: glade-devel BuildRequires: libgnomekbd-devel BuildRequires: libxklavier-devel >= %{libxklavierver} BuildRequires: make BuildRequires: pango-devel BuildRequires: python3-devel BuildRequires: systemd # rpm and libarchive are needed for driver disk handling BuildRequires: rpm-devel >= %{rpmver} BuildRequires: libarchive-devel >= %{libarchivever} %ifarch s390 s390x BuildRequires: s390utils-devel %endif BuildRequires: libtimezonemap-devel >= %{libtimezonemapver} # Tools used by the widgets resource bundle generation BuildRequires: gdk-pixbuf2-devel BuildRequires: libxml2 Requires: anaconda-tui = %{version}-%{release} %description The anaconda package is a metapackage for the Anaconda installer. %package core Summary: Core of the Anaconda installer Requires: python3-libs Requires: python3-dnf >= %{dnfver} Requires: python3-blivet >= %{pythonblivetver} Requires: python3-blockdev >= %{libblockdevver} Requires: python3-meh >= %{mehver} Requires: libreport-anaconda >= %{libreportanacondaver} Requires: libselinux-python3 Requires: python3-rpm >= %{rpmver} Requires: python3-pyparted >= %{pypartedver} Requires: python3-requests Requires: python3-requests-file Requires: python3-requests-ftp Requires: python3-kickstart >= %{pykickstartver} Requires: python3-langtable >= %{langtablever} Requires: util-linux >= %{utillinuxver} Requires: python3-gobject-base Requires: python3-dbus Requires: python3-pwquality Requires: python3-systemd Requires: python3-productmd Requires: python3-dasbus >= %{dasbusver} Requires: flatpak-libs %if %{defined rhel} && %{undefined centos} Requires: subscription-manager >= %{subscriptionmanagerver} %endif # pwquality only "recommends" the dictionaries it needs to do anything useful, # which is apparently great for containers but unhelpful for the rest of us Requires: cracklib-dicts Requires: python3-pytz Requires: teamd %ifarch s390 s390x Requires: openssh %endif Requires: NetworkManager >= %{nmver} Requires: NetworkManager-libnm >= %{nmver} Requires: NetworkManager-team Requires: kbd Requires: chrony Requires: systemd Requires: python3-pid # Required by the systemd service anaconda-fips. Requires: crypto-policies Requires: /usr/bin/update-crypto-policies # required because of the rescue mode and VNC question Requires: anaconda-tui = %{version}-%{release} # Make sure we get the en locale one way or another Requires: (glibc-langpack-en or glibc-all-langpacks) # anaconda literally runs its own dbus-daemon, so it needs this, # even though the distro default is dbus-broker in F30+ Requires: dbus-daemon # Ensure it's not possible for a version of grubby to be installed # that doesn't work with btrfs subvolumes correctly... Conflicts: grubby < 8.40-10 Obsoletes: anaconda-images <= 10 Provides: anaconda-images = %{version}-%{release} Obsoletes: anaconda-runtime < %{version}-%{release} Provides: anaconda-runtime = %{version}-%{release} Obsoletes: booty <= 0.107-1 %description core The anaconda-core package contains the program which was used to install your system. %package live Summary: Live installation specific files and dependencies BuildRequires: desktop-file-utils # live installation currently implies a graphical installation Requires: usermode Requires: zenity %description live The anaconda-live package contains scripts, data and dependencies required for live installations. %package install-env-deps Summary: Installation environment specific dependencies Requires: udisks2-iscsi Requires: libblockdev-plugins-all >= %{libblockdevver} # active directory/freeipa join support Requires: realmd Requires: isomd5sum >= %{isomd5sumver} %ifarch %{ix86} x86_64 Recommends: fcoe-utils >= %{fcoeutilsver} %endif # likely HFS+ resize support %ifarch %{ix86} x86_64 %if ! 0%{?rhel} Requires: hfsplus-tools %endif %endif # kexec support Requires: kexec-tools # needed for proper driver disk support - if RPMs must be installed, a repo is needed Requires: createrepo_c # run's on TTY1 in install env Requires: tmux # install time crash handling Requires: gdb # support for installation from image and live & live image installations Requires: rsync # External tooling for managing NVMe-FC devices in the installation environment Recommends: nvme-cli %description install-env-deps The anaconda-install-env-deps metapackage lists all installation environment dependencies. This makes it possible for packages (such as Initial Setup) to depend on the main Anaconda package without pulling in all the install time dependencies as well. %package install-img-deps Summary: Installation image specific dependencies # This package must have no weak dependencies. Requires: udisks2-iscsi Requires: libblockdev-plugins-all >= %{libblockdevver} # active directory/freeipa join support Requires: realmd Requires: isomd5sum >= %{isomd5sumver} %ifarch %{ix86} x86_64 Requires: fcoe-utils >= %{fcoeutilsver} %endif # likely HFS+ resize support %ifarch %{ix86} x86_64 %if ! 0%{?rhel} Requires: hfsplus-tools %endif %endif # kexec support Requires: kexec-tools # needed for proper driver disk support - if RPMs must be installed, a repo is needed Requires: createrepo_c # run's on TTY1 in install env Requires: tmux # install time crash handling Requires: gdb # support for installation from image and live & live image installations Requires: rsync # only WeakRequires elsewhere and not guaranteed to be present Requires: device-mapper-multipath Requires: zram-generator # Submitting bugs to bugzilla # Requires: libreport-rhel-anaconda-bugzilla # External tooling for managing NVMe-FC devices in the installation environment Requires: nvme-cli %description install-img-deps The anaconda-install-img-deps metapackage lists all boot.iso installation image dependencies. Add this package to an image build (eg. with lorax) to ensure all Anaconda capabilities are supported in the resulting image. %package gui Summary: Graphical user interface for the Anaconda installer Requires: anaconda-core = %{version}-%{release} Requires: anaconda-widgets = %{version}-%{release} Requires: python3-meh-gui >= %{mehver} Requires: adwaita-icon-theme Requires: tigervnc-server-minimal Requires: libxklavier >= %{libxklavierver} Requires: libgnomekbd Requires: libtimezonemap >= %{libtimezonemapver} Requires: nm-connection-editor Requires: keybinder3 %ifnarch s390 s390x Requires: NetworkManager-wifi %endif Requires: anaconda-user-help >= %{helpver} Requires: yelp %if ! 0%{?rhel} Requires: blivet-gui-runtime >= %{blivetguiver} %endif Requires: system-logos # Needed to compile the gsettings files BuildRequires: gsettings-desktop-schemas %description gui This package contains graphical user interface for the Anaconda installer. %package tui Summary: Textual user interface for the Anaconda installer Requires: anaconda-core = %{version}-%{release} Requires: python3-simpleline >= %{simplelinever} %description tui This package contains textual user interface for the Anaconda installer. %package widgets Summary: A set of custom GTK+ widgets for use with anaconda Requires: %{__python3} %description widgets This package contains a set of custom GTK+ widgets used by the anaconda installer. %package widgets-devel Summary: Development files for anaconda-widgets Requires: glade Requires: %{name}-widgets%{?_isa} = %{version}-%{release} %description widgets-devel This package contains libraries and header files needed for writing the anaconda installer. It also contains Python and Glade support files, as well as documentation for working with this library. %package dracut Summary: The anaconda dracut module Requires: dracut >= %{dracutver} Requires: dracut-network Requires: dracut-live Requires: xz Requires: python3-kickstart %description dracut The 'anaconda' dracut module handles installer-specific boot tasks and options. This includes driver disks, kickstarts, and finding the anaconda runtime on NFS/HTTP/FTP servers or local disks. %prep %autosetup -p 1 # Debrand sed -e 's/RHEL/Oreon/g' -i po/*.po sed -e 's/Red Hat Enterprise Linux/Oreon/g' -i po/*.po %build # use actual build-time release number, not tarball creation time release number %configure ANACONDA_RELEASE=%{release} %{__make} %{?_smp_mflags} %install %{make_install} find %{buildroot} -type f -name "*.la" | xargs %{__rm} # Create an empty directory for addons mkdir %{buildroot}%{_datadir}/anaconda/addons # required for live installations desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{buildroot}%{_datadir}/applications/liveinst.desktop # If no langs found, keep going %find_lang %{name} || : # main package and install-env-deps are metapackages %files %files install-env-deps # Allow the lang file to be empty %define _empty_manifest_terminate_build 0 %files install-img-deps # Allow the lang file to be empty here too %define _empty_manifest_terminate_build 0 %files core -f %{name}.lang %license COPYING %{_unitdir}/* %{_prefix}/lib/systemd/system-generators/* %{_bindir}/instperf %{_bindir}/anaconda-disable-nm-ibft-plugin %{_bindir}/anaconda-nm-disable-autocons %{_sbindir}/anaconda %{_sbindir}/handle-sshpw %{_datadir}/anaconda %{_prefix}/libexec/anaconda %exclude %{_datadir}/anaconda/gnome %exclude %{_datadir}/anaconda/pixmaps %exclude %{_datadir}/anaconda/ui %exclude %{_datadir}/anaconda/window-manager %exclude %{_datadir}/anaconda/anaconda-gtk.css %exclude %{_prefix}/libexec/anaconda/dd_* %{python3_sitearch}/pyanaconda %exclude %{python3_sitearch}/pyanaconda/rescue.py* %exclude %{python3_sitearch}/pyanaconda/__pycache__/rescue.* %exclude %{python3_sitearch}/pyanaconda/ui/gui/* %exclude %{python3_sitearch}/pyanaconda/ui/tui/* %{_bindir}/analog %{_bindir}/anaconda-cleanup %dir %{_sysconfdir}/%{name} %config %{_sysconfdir}/%{name}/* %dir %{_sysconfdir}/%{name}/conf.d %config %{_sysconfdir}/%{name}/conf.d/* %dir %{_sysconfdir}/%{name}/product.d %config %{_sysconfdir}/%{name}/product.d/* %files live %{_bindir}/liveinst %{_sbindir}/liveinst %config(noreplace) %{_sysconfdir}/pam.d/* %config(noreplace) %{_sysconfdir}/security/console.apps/* %{_libexecdir}/liveinst-setup.sh %{_datadir}/applications/*.desktop %{_datadir}/anaconda/gnome %{_sysconfdir}/xdg/autostart/*.desktop %files gui %{python3_sitearch}/pyanaconda/ui/gui/* %{_datadir}/anaconda/pixmaps %{_datadir}/anaconda/ui %if 0%{?rhel} # Remove blivet-gui %exclude %{_datadir}/anaconda/ui/spokes/blivet_gui.* %exclude %{python3_sitearch}/pyanaconda/ui/gui/spokes/blivet_gui.* %endif %{_datadir}/anaconda/window-manager %{_datadir}/anaconda/anaconda-gtk.css %files tui %{python3_sitearch}/pyanaconda/rescue.py %{python3_sitearch}/pyanaconda/__pycache__/rescue.* %{python3_sitearch}/pyanaconda/ui/tui/* %files widgets %{_libdir}/libAnacondaWidgets.so.* %{_libdir}/girepository*/AnacondaWidgets*typelib %{python3_sitearch}/gi/overrides/* %files widgets-devel %{_libdir}/libAnacondaWidgets.so %{_libdir}/glade/modules/libAnacondaWidgets.so %{_includedir}/* %{_datadir}/glade/catalogs/AnacondaWidgets.xml %{_datadir}/gtk-doc %files dracut %dir %{_prefix}/lib/dracut/modules.d/80%{name} %{_prefix}/lib/dracut/modules.d/80%{name}/* %{_prefix}/libexec/anaconda/dd_* %changelog * Thu Feb 14 2024 Brandon Lester - 9 - Added to OLR2 Repos * Sun May 12 2024 Brandon Lester - Update package and push to OLR2 repo