| .. | ||
| brute_build.sh | ||
| makebuilder | ||
| README.md | ||
| setupbuild.sh | ||
Building TaskWarrior on AlmaLinux 9 and similar RHEL-style OS's
This directory contains 2 different ways to build and install TaskWarrior.
These builders were designed to run on a basic AlmaLinux 9 VM. I downloaded the "boot" ISO, spawned a VM using it as the install media and everything else is provided by the builder.
Note that TaskWarrior has two special requirements to build:
- The Fish shell must be installed. It is not one of the standard shells, but can be installed from the EPEL repository.
- The Rust language system provided with AlmaLinux 9 is too old to build. If
you have the stock Rust RPM installed, uninstall it and use the
rustupprocess to get the latest one.
Both of these issues are resolved in the brute_build script.
The "brute_build" file is a shell script that builds and installs by brute force. If you have trouble building the RPM, use it.
Obsolete Note that the RPM uses
an explicit file list and rpmbuild will complain if you build a release that
adds or removes files from this list. In that case, just edit the %files
section of the RPM spec file. Case in point: bash completions are not present
in the 3.5.0 build but present in the current devel build.
The makebuilder script witll setup for rpmbuild. It downloads the source
code to the rpmbuild SOURCES directory and creates a custom spec file in the
SPECS directory. Select the version of TaskWarrior you want to build by
editng the version variable in makebuilder. By default the RPM will build
your $HOME/rpmbuild directory, but you can change that in the makebuilder.
All necessary directories will be created automatically, including the
rpmbuild directory.
IMPORTANT NOTE
The build process invokes git to pull submodules. Therefore, whether using the brute-force builder or the RPM builder it is essential that the source code directory is a git project directory and not just bare source!