Toolchain Setup
Install RPM building tools with
dnf install gcc rpm-build rpm-devel rpmlint make python bash coreutils diffutils patch rpmdevtools
and create building scaffold folders with rpmdev-setuptree
.
Analyze Source Spec Files
Learn how to write source spec files from existing ones. For example, searching application taskwarrior with architecture aarch64 on the rpmfind, you get taskwarrior-2.5.1-1.18 RPM for aarch64. Download the source rpm with its Source RPM:
wget https://download.opensuse.org/ports/aarch64/source/tumbleweed/repo/oss/src/taskwarrior-2.5.1-1.18.src.rpm
rpm -qpl taskwarrior-2.5.1-1.18.src.rpm # list file in the archive file
rpm -ivh taskwarrior-2.5.1-1.18.src.rpm # extract files for building
rpm2cpio htop-2.2.0-8.fc32.src.rpm | cpio -idmv # extract files to current folder
For a complete example, see dsnote "Package File Watcher entr to RPM".