# We ship a .pc file but don't want to have a dep on pkg-config. We # strip the automatically generated dep here and instead co-own the # directory. %global __requires_exclude pkg-config %global libmajor 13 %global libminor 0 # Use the same directory of the main package for subpackage licence and docs %global _docdir_fmt %{name} Name: pacman Version: 6.0.1 Release: %mkrel 1 Source0: https://gitlab.archlinux.org/pacman/pacman/-/archive/v%{version}/pacman-v%{version}.tar.gz Source1: https://www.archlinux.org/mirrorlist/all Url: https://www.archlinux.org/pacman License: GPLv2+ Summary: Package manager for the Arch distribution BuildRequires: gcc BuildRequires: meson BuildRequires: m4 BuildRequires: bsdtar BuildRequires: gettext-devel BuildRequires: asciidoc BuildRequires: doxygen BuildRequires: libarchive-devel BuildRequires: libgpgme-devel BuildRequires: openssl-devel BuildRequires: libcurl-devel BuildRequires: rpm-build Requires: %{name}-filesystem = %{version}-%{release} Requires: bsdtar Recommends: arch-install-scripts %description Pacman is the package manager used by the Arch distribution. It can be used to install Arch into a container or to recover an Arch installation from a Fedora system (see arch-install-scripts package for instructions). Pacman is a frontend for the ALPM (Arch Linux Package Management) library Pacman does not strive to "do everything." It will add, remove and upgrade packages in the system, and it will allow you to query the package database for installed packages, files and owners. It also attempts to handle dependencies automatically and can download packages from a remote server. Arch packages are simple archives, with .pkg.tar.gz extension for binary packages and .src.tar.gz for source packages. %package -n libalpm Summary: Arch Linux Package Management library %description -n libalpm This library is the backend behind Pacman — the package manager used by the Arch distribution. It uses simple compressed files as a package format, and maintains a text-based package database. %package -n libalpm-devel Summary: Development headers for libalpm Requires: libalpm%{_isa} = %{version}-%{release} %description -n libalpm-devel This package contains the public headers necessary to use libalpm. %package filesystem Summary: Pacman filesystem layout License: Public Domain BuildArch: noarch %description filesystem This package provides some directories used by pacman and related packages. %prep %autosetup -p1 -n pacman-v%{version} # Enable some servers by default. rackspace.com is in the "worldwide" section, # and "kernel.org" seems to be a good default too. sed -r 's+^#(Server = https://(mirrors.kernel.org|mirror.rackspace.com)/)+\1+' <%{SOURCE1} >mirrorlist %build CONFIGURE_OPTS=( -Ddoxygen=enabled ) %meson "${CONFIGURE_OPTS[@]}" %meson_build %install %meson_install %find_lang pacman %find_lang pacman-scripts %find_lang libalpm cat pacman-scripts.lang >>pacman.lang install -Dm0644 mirrorlist %{buildroot}%{_sysconfdir}/pacman.d/mirrorlist cat >>%{buildroot}%{_sysconfdir}/pacman.conf <