Tutorial: Configure SPAL repository on AL2023
Supplementary Packages for Amazon Linux (SPAL) is an additional package repository for AL2023 that provides customers access to thousands of open-source packages.
The following tutorial helps you configure the SPAL repository on your AL2023 instance. By installing the repository, you will gain access to all RPM packages available in SPAL. Once installed, you can use your package manager to install and use these packages on your system.
Contents
Prerequisites
This tutorial assumes that you have already launched an instance using
AL2023 release version 2023.9.20251117 or later.
For more information, see the AL2023 on Amazon EC2 and
Updating AL2023 pages.
Checking prerequisites
-
To verify your instance satisfies the prerequisites, you can check the version of
system-releaseinstalled on your system.To check the version of the package, you can use the following command.
[ec2-user ~]$rpm -qi system-releaseThe command will display information about the package, including the major version.
Name : system-release Version : 2023.9.20251117 ...Note
Make sure to have the latest version of
system-releaseinstalled. You can runsudo dnf upgradeto update to the latest version.
Installing SPAL on your system
-
Install the
spal-releasepackage on your system. This adds the.repoconfiguration file and the GPG keys to your system.[ec2-user ~]$sudo dnf install spal-releaseNote
During the installation, the support statement will be displayed. The statement explains SPAL's scope of support and limitations. Please take time to review this information carefully.
-
Verify the SPAL repository configuration was successfully added to your system.
[ec2-user ~]$cat /etc/yum.repos.d/amazonlinux-spal.repoYou should see the two repositories configured on your system:
amazonlinux-spalandamazonlinux-spal-sourceYou can also check the list of configured repositories by running
dnf repolist.[ec2-user ~]$dnf repolist --allNote
The
--allflag is required to see both enabled and disabled repositories.Both SPAL repositories should be available. Note that the Amazon Linux 2023 SPAL repository - Source packages repository is disabled by default.
repo id repo name status amazonlinux-spal Amazon Linux 2023 SPAL repository enabled amazonlinux-spal-source Amazon Linux 2023 SPAL repository - Source packages disabled -
(Optional) Enable the source repository.
Note
RPM source (SRPM) repositories are typically disabled by default because they are primarily used by developers for building packages, not by end-users for software installation. DNF automatically enables source repositories when you use commands that require source packages, such as
dnf download --source.packageYou do not need to manually enable the source repository for one-off source package operations. Follow this step only if you want to rebuild SRPMs from SPAL on your system.
To permanently enable the Amazon Linux 2023 SPAL repository - Source packages repository on your system, run the following command:
[ec2-user ~]$sudo dnf config-manager --enable amazonlinux-spal-source
Installing SPAL packages
-
Install SPAL packages on your system by running
dnf installcommand.[ec2-user ~]$sudo dnf installpackageNote
You can use
dnf listto see a complete list of SPAL packages.[ec2-user ~]$dnf list --repo=amazonlinux-spalNote
SPAL is a versioned repository. Make sure to have the latest version of
system-releaseinstalled to see the most recent list of packages.For more information on deterministic updates, you can check Deterministic upgrades through versioned repositories on AL2023
Uninstalling SPAL repository from your system
-
Remove the SPAL repository configuration using
dnf removecommand.[ec2-user ~]$sudo dnf remove spal-release -
Verify the repository was removed by running
dnf repolistcommand.[ec2-user ~]$dnf repolistImportant
Removing the SPAL repository configuration from your system does not remove any SPAL packages installed on the system.
Related topics
For more information about the Supplementary Packages for Amazon Linux repository, see the following documentation: