Skip to content

Commit

Permalink
Updated packaging documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
chrisn committed Sep 30, 2023
1 parent b62c715 commit 5c223b5
Showing 1 changed file with 40 additions and 28 deletions.
68 changes: 40 additions & 28 deletions rpm/README.md
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
```

0 comments on commit 5c223b5

Please sign in to comment.