-
Notifications
You must be signed in to change notification settings - Fork 245
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
40 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,65 +1,77 @@ | ||
# audiowaveform RPM Packaging | ||
# audiowaveform Packaging | ||
|
||
This folder contains scripts and Dockerfiles to create binary RPM packages for Red Hat based systems, including CentOS and Amazon Linux. | ||
This folder contains scripts and Dockerfiles to create binary RPM packages for Red Hat based systems, including CentOS, AlmaLinux, and Amazon Linux, DEB packages for Debian. | ||
|
||
## Prepare | ||
## Scripts | ||
|
||
Edit the files `build_rpm_centos7.sh`, `build_rpm_centos8.sh`, `build_rpm_almalinux9.sh`, and `build_rpm_amazon_linux_2.sh` to set the versions you want to build: | ||
The following scripts are available: | ||
|
||
* Set `AUDIOWAVEFORM_VERSION` to the git branch or tag name (e.g., `master`, `1.5.1`, etc) | ||
* Set `AUDIOWAVEFORM_PACKAGE_VERSION` to the version number for the RPM package | ||
* Set `ARCH` to the architecture to build (e.g., `x86_64`, `amd64`, `aarch64`, `arm64`, etc) | ||
* `build_deb_debian.sh` - Debian (architectures: `amd64` or `arm64`) | ||
* `build_rpm_centos7.sh` - CentOS 7 (architectures: `x86_64` or `aarch64`) | ||
* `build_rpm_centos8.sh` - CentOS 8 (architectures: `x86_64` or `aarch64`) | ||
* `build_rpm_almalinux9.sh` AlmaLinux 9 (architectures: `x86_64` or `aarch64`) | ||
* `build_rpm_amazon_linux_2.sh` - Amazon Linux 2 (architectures: `x86_64` or `aarch64`) | ||
|
||
## Build | ||
## Options | ||
|
||
Use these commands to generate RPM binary packages: | ||
Use the following command line options: | ||
|
||
```bash | ||
./build_rpm_centos7.sh | ||
./build_rpm_centos8.sh | ||
./build_rpm_almalinux9.sh | ||
./build_rpm_amazon_linux_2.sh | ||
``` | ||
* `-v` Sets the audiowaveform package version, e.g., 1.8.0 | ||
|
||
* `-c` Sets the git commit or tag used to build the package | ||
|
||
* `-a` Sets the platform architecture to build, e.g., `x86_64`, `amd64`, `aarch64`, `arm64`, etc. Note that these values vary by Linux distribution | ||
|
||
* `-d` Sets the debian release number, for the `build_deb_debian.sh` script, e.g., `10`, `11`, `12`, etc. | ||
|
||
## Output | ||
|
||
This will produce RPM files such as: | ||
These scripts will produce packages such as: | ||
|
||
* audiowaveform-1.5.1-1-12_amd64.deb (Debian 12) | ||
* audiowaveform-1.5.1-1.el7.x86_64.rpm (CentOS 7) | ||
* audiowaveform-1.5.1-1.el8.x86_64.rpm (CentOS 8) | ||
* audiowaveform-1.5.1-1.el9.x86_64.rpm (AlmaLinux 9) | ||
* audiowaveform-1.5.1-1.amzn2.x86_64.rpm (Amazon Linux 2) | ||
|
||
These files can be uploaded to the [Releases](https://github.com/bbc/audiowaveform/releases) page on GitHub. | ||
These can be uploaded to the [Releases](https://github.com/bbc/audiowaveform/releases) page on GitHub. | ||
|
||
## Install | ||
|
||
Use these commands to install the RPM package, together with all required dependencies. | ||
Use these commands to install the packages, together with all required dependencies. | ||
|
||
For CentOS 7: | ||
|
||
```bash | ||
yum install -y epel-release | ||
yum localinstall audiowaveform-1.5.1-1.el7.x86_64.rpm | ||
sudo yum install -y epel-release | ||
sudo yum localinstall audiowaveform-1.5.1-1.el7.x86_64.rpm | ||
``` | ||
|
||
For CentOS 8: | ||
|
||
```bash | ||
yum install -y epel-release | ||
yum localinstall audiowaveform-1.5.1-1.el8.x86_64.rpm | ||
sudo yum install -y epel-release | ||
sudo yum localinstall audiowaveform-1.5.1-1.el8.x86_64.rpm | ||
``` | ||
|
||
For AlmaLinux 9: | ||
|
||
```bash | ||
sudo yum install -y epel-release | ||
sudo yum localinstall audiowaveform-1.5.1-1.el9.x86_64.rpm | ||
``` | ||
|
||
For AlmaLinux 9 | ||
For Amazon Linux: | ||
|
||
```bash | ||
yum install -y epel-release | ||
yum localinstall audiowaveform-1.5.1-1.el9.x86_64.rpm | ||
sudo amazon-linux-extras install epel | ||
sudo yum localinstall audiowaveform-1.5.1-1.amzn2.x86_64.rpm | ||
``` | ||
|
||
For Amazon Linux | ||
For Debian 12: | ||
|
||
```bash | ||
amazon-linux-extras install epel | ||
yum localinstall audiowaveform-1.5.1-1.amzn2.x86_64.rpm | ||
sudo apt-get update | ||
sudo dpkg -i audiowaveform-1.5.1-1-12.amd64.deb | ||
sudo apt-get -f install -y | ||
``` |