initial commit
This commit is contained in:
commit
6cb3f7d952
4
README.md
Normal file
4
README.md
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
# TaskWarrior for Almalinux 9
|
||||
|
||||
This project contains ready-to-install TaskWarrior RPMs as well as the
|
||||
resources to build TaskWarrior from scratch.
|
||||
30
builders/README.md
Normal file
30
builders/README.md
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# 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:
|
||||
|
||||
1. The Fish shell must be installed. It is not one of the standard shells, but
|
||||
can be installed from the EPEL repository.
|
||||
1. 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 ``rustup``
|
||||
process 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. 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.
|
||||
|
||||
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.
|
||||
26
builders/brute_build.sh
Normal file
26
builders/brute_build.sh
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
#!/bin/sh
|
||||
# Brute-force builder fot Taskwarrior
|
||||
# 2026-98-22, Tim Holloway
|
||||
#
|
||||
sudo dnf -y iinstalll git
|
||||
git clone https://github.com/GothenburgBitFactory/taskwarrior.git
|
||||
cd taskwarrior
|
||||
#
|
||||
# NOTE: do a "git checkout" if you want to build a specific version by tag_id
|
||||
#
|
||||
sudo dnf -y install epel-release
|
||||
sudo dnf -y install fish
|
||||
|
||||
sudo dnf -y groupinstall "Development Tools"
|
||||
sudo dnf -y install cmake gnutls-devel libuuid-devel
|
||||
|
||||
|
||||
#curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -y
|
||||
# Hit Enter, above (-y)
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs -o /tmp/rustup.sh && . /tmp/rustup.sh -y
|
||||
. "$HOME/.cargo/env"
|
||||
#source "$HOME/.cargo/env"
|
||||
|
||||
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
sudo cmake --install build
|
||||
224
builders/makebuilder
Executable file
224
builders/makebuilder
Executable file
|
|
@ -0,0 +1,224 @@
|
|||
#!/bin/sh
|
||||
# Setup RPM build for TaskWarrior.
|
||||
#
|
||||
# 2026-08-22 Tim Holloway
|
||||
#
|
||||
# NOTE: the %files list may add/remove entries between releases. Adjust as needed.
|
||||
#
|
||||
rpmbuild=$HOME/rpmbuild
|
||||
version=3.5.0
|
||||
# create build base if it doesn't exist
|
||||
mkdir -p $rpmbuild
|
||||
cd $rpmbuild
|
||||
#
|
||||
# Pull source
|
||||
#
|
||||
git clone https://github.com/GothenburgBitFactory/taskwarrior.git
|
||||
#
|
||||
# Build version archive
|
||||
#
|
||||
mkdir -p SOURCES SPECS
|
||||
cd taskwarrior
|
||||
git archive --format=tgz -o ${rpmbuild}/SOURCES/taskwarrior-${version}.tgz --prefix=taskwarrior-${version} v${version}
|
||||
#
|
||||
# customize specfile
|
||||
#
|
||||
cd ${rpmbuild}
|
||||
rm -rf taskwarrior
|
||||
|
||||
sed -e "s/@@VERSION@@/${version}/" >${rpmbuild}/SPECS/taskwarrior.spec <<EOF
|
||||
#
|
||||
# spec file for Taskwarrior app...
|
||||
#
|
||||
Summary: CLI-based todo/reminders
|
||||
Name: taskwarrior
|
||||
Version: @@VERSION@@
|
||||
Release: 0
|
||||
License: GPL
|
||||
Group: Applications/Utilities
|
||||
Source: taskwarrior-@@VERSION@@.tgz
|
||||
# https://github.com/GothenburgBitFactory/taskwarrior/archive/refs/heads/develop.zip
|
||||
#https://github.com/GothenburgBitFactory/taskwarrior
|
||||
URL: http://www.taskwarrior.org
|
||||
Distribution: CentOS 9
|
||||
#Vendor: Tim Holloway
|
||||
Packager: Tim Holloway <timh@mousetech.com>
|
||||
Requires: git epel-release fish cmake gnutls-devel libuuid-devel
|
||||
%description
|
||||
A CLI-based manager for tasks and to-dos with scheduling.
|
||||
|
||||
%prep
|
||||
|
||||
%setup
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs -o /tmp/rustup.sh && . /tmp/rustup.sh -y
|
||||
. "$HOME/.cargo/env"
|
||||
|
||||
%build
|
||||
%cmake -DCMAKE_BUILD_TYPE=Release
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
%files
|
||||
/usr/bin/task
|
||||
/usr/lib/debug/usr/bin/task-@@VERSION@@-0.x86_64.debug
|
||||
/usr/share/bash-completion/completions/task
|
||||
/usr/share/doc/task/AUTHORS
|
||||
/usr/share/doc/task/ChangeLog
|
||||
/usr/share/doc/task/INSTALL
|
||||
/usr/share/doc/task/LICENSE
|
||||
/usr/share/doc/task/README.md
|
||||
/usr/share/doc/task/rc/bubblegum-256.theme
|
||||
/usr/share/doc/task/rc/dark-16.theme
|
||||
/usr/share/doc/task/rc/dark-256.theme
|
||||
/usr/share/doc/task/rc/dark-blue-256.theme
|
||||
/usr/share/doc/task/rc/dark-gray-256.theme
|
||||
/usr/share/doc/task/rc/dark-gray-blue-256.theme
|
||||
/usr/share/doc/task/rc/dark-green-256.theme
|
||||
/usr/share/doc/task/rc/dark-red-256.theme
|
||||
/usr/share/doc/task/rc/dark-violets-256.theme
|
||||
/usr/share/doc/task/rc/dark-yellow-green.theme
|
||||
/usr/share/doc/task/rc/default.theme
|
||||
/usr/share/doc/task/rc/holidays.cs-CZ.rc
|
||||
/usr/share/doc/task/rc/holidays.da-DK.rc
|
||||
/usr/share/doc/task/rc/holidays.de-AT.rc
|
||||
/usr/share/doc/task/rc/holidays.de-BE.rc
|
||||
/usr/share/doc/task/rc/holidays.de-CH.rc
|
||||
/usr/share/doc/task/rc/holidays.de-DE.rc
|
||||
/usr/share/doc/task/rc/holidays.el-GR.rc
|
||||
/usr/share/doc/task/rc/holidays.en-CA.rc
|
||||
/usr/share/doc/task/rc/holidays.en-GB.rc
|
||||
/usr/share/doc/task/rc/holidays.en-NZ.rc
|
||||
/usr/share/doc/task/rc/holidays.en-US.rc
|
||||
/usr/share/doc/task/rc/holidays.es-CO.rc
|
||||
/usr/share/doc/task/rc/holidays.es-ES.rc
|
||||
/usr/share/doc/task/rc/holidays.es-US.rc
|
||||
/usr/share/doc/task/rc/holidays.fi-FI.rc
|
||||
/usr/share/doc/task/rc/holidays.fr-BE.rc
|
||||
/usr/share/doc/task/rc/holidays.fr-CA.rc
|
||||
/usr/share/doc/task/rc/holidays.fr-FR.rc
|
||||
/usr/share/doc/task/rc/holidays.hr-HR.rc
|
||||
/usr/share/doc/task/rc/holidays.hu-HU.rc
|
||||
/usr/share/doc/task/rc/holidays.is-IS.rc
|
||||
/usr/share/doc/task/rc/holidays.it-IT.rc
|
||||
/usr/share/doc/task/rc/holidays.nb-NO.rc
|
||||
/usr/share/doc/task/rc/holidays.nl-BE.rc
|
||||
/usr/share/doc/task/rc/holidays.nl-NL.rc
|
||||
/usr/share/doc/task/rc/holidays.pl-PL.rc
|
||||
/usr/share/doc/task/rc/holidays.por-PRT.rc
|
||||
/usr/share/doc/task/rc/holidays.pt-BR.rc
|
||||
/usr/share/doc/task/rc/holidays.pt-PT.rc
|
||||
/usr/share/doc/task/rc/holidays.ru-RU.rc
|
||||
/usr/share/doc/task/rc/holidays.sk-SK.rc
|
||||
/usr/share/doc/task/rc/holidays.sv-FI.rc
|
||||
/usr/share/doc/task/rc/holidays.sv-SE.rc
|
||||
/usr/share/doc/task/rc/holidays.tr-TR.rc
|
||||
/usr/share/doc/task/rc/light-16.theme
|
||||
/usr/share/doc/task/rc/light-256.theme
|
||||
/usr/share/doc/task/rc/no-color.theme
|
||||
/usr/share/doc/task/rc/refresh
|
||||
/usr/share/doc/task/rc/solarized-dark-256.theme
|
||||
/usr/share/doc/task/rc/solarized-light-256.theme
|
||||
/usr/share/doc/task/scripts/add-ons/README
|
||||
/usr/share/doc/task/scripts/add-ons/update-holidays.pl
|
||||
/usr/share/doc/task/scripts/hooks/README
|
||||
/usr/share/doc/task/scripts/hooks/on-add
|
||||
/usr/share/doc/task/scripts/hooks/on-add.the
|
||||
/usr/share/doc/task/scripts/hooks/on-exit
|
||||
/usr/share/doc/task/scripts/hooks/on-exit.shadow-file
|
||||
/usr/share/doc/task/scripts/hooks/on-launch
|
||||
/usr/share/doc/task/scripts/hooks/on-modify
|
||||
/usr/share/doc/task/scripts/vim/README
|
||||
/usr/share/doc/task/scripts/vim/ftdetect/task.vim
|
||||
/usr/share/doc/task/scripts/vim/syntax/taskdata.vim
|
||||
/usr/share/doc/task/scripts/vim/syntax/taskedit.vim
|
||||
/usr/share/doc/task/scripts/vim/syntax/taskrc.vim
|
||||
/usr/share/doc/task/task-ref.pdf
|
||||
/usr/share/fish/vendor_completions.d/task.fish
|
||||
/usr/share/man/man1/task.1.gz
|
||||
/usr/share/man/man5/task-color.5.gz
|
||||
/usr/share/man/man5/task-sync.5.gz
|
||||
/usr/share/man/man5/taskrc.5.gz
|
||||
/usr/share/zsh/site-functions/_task
|
||||
/usr/bin/task
|
||||
/usr/lib/debug/usr/bin/task-@@VERSION@@-0.x86_64.debug
|
||||
/usr/share/bash-completion/completions/task
|
||||
/usr/share/doc/task/AUTHORS
|
||||
/usr/share/doc/task/ChangeLog
|
||||
/usr/share/doc/task/INSTALL
|
||||
/usr/share/doc/task/LICENSE
|
||||
/usr/share/doc/task/README.md
|
||||
/usr/share/doc/task/rc/bubblegum-256.theme
|
||||
/usr/share/doc/task/rc/dark-16.theme
|
||||
/usr/share/doc/task/rc/dark-256.theme
|
||||
/usr/share/doc/task/rc/dark-blue-256.theme
|
||||
/usr/share/doc/task/rc/dark-gray-256.theme
|
||||
/usr/share/doc/task/rc/dark-gray-blue-256.theme
|
||||
/usr/share/doc/task/rc/dark-green-256.theme
|
||||
/usr/share/doc/task/rc/dark-red-256.theme
|
||||
/usr/share/doc/task/rc/dark-violets-256.theme
|
||||
/usr/share/doc/task/rc/dark-yellow-green.theme
|
||||
/usr/share/doc/task/rc/default.theme
|
||||
/usr/share/doc/task/rc/holidays.cs-CZ.rc
|
||||
/usr/share/doc/task/rc/holidays.da-DK.rc
|
||||
/usr/share/doc/task/rc/holidays.de-AT.rc
|
||||
/usr/share/doc/task/rc/holidays.de-BE.rc
|
||||
/usr/share/doc/task/rc/holidays.de-CH.rc
|
||||
/usr/share/doc/task/rc/holidays.de-DE.rc
|
||||
/usr/share/doc/task/rc/holidays.el-GR.rc
|
||||
/usr/share/doc/task/rc/holidays.en-CA.rc
|
||||
/usr/share/doc/task/rc/holidays.en-GB.rc
|
||||
/usr/share/doc/task/rc/holidays.en-NZ.rc
|
||||
/usr/share/doc/task/rc/holidays.en-US.rc
|
||||
/usr/share/doc/task/rc/holidays.es-CO.rc
|
||||
/usr/share/doc/task/rc/holidays.es-ES.rc
|
||||
/usr/share/doc/task/rc/holidays.es-US.rc
|
||||
/usr/share/doc/task/rc/holidays.fi-FI.rc
|
||||
/usr/share/doc/task/rc/holidays.fr-BE.rc
|
||||
/usr/share/doc/task/rc/holidays.fr-CA.rc
|
||||
/usr/share/doc/task/rc/holidays.fr-FR.rc
|
||||
/usr/share/doc/task/rc/holidays.hr-HR.rc
|
||||
/usr/share/doc/task/rc/holidays.hu-HU.rc
|
||||
/usr/share/doc/task/rc/holidays.is-IS.rc
|
||||
/usr/share/doc/task/rc/holidays.it-IT.rc
|
||||
/usr/share/doc/task/rc/holidays.nb-NO.rc
|
||||
/usr/share/doc/task/rc/holidays.nl-BE.rc
|
||||
/usr/share/doc/task/rc/holidays.nl-NL.rc
|
||||
/usr/share/doc/task/rc/holidays.pl-PL.rc
|
||||
/usr/share/doc/task/rc/holidays.por-PRT.rc
|
||||
/usr/share/doc/task/rc/holidays.pt-BR.rc
|
||||
/usr/share/doc/task/rc/holidays.pt-PT.rc
|
||||
/usr/share/doc/task/rc/holidays.ru-RU.rc
|
||||
/usr/share/doc/task/rc/holidays.sk-SK.rc
|
||||
/usr/share/doc/task/rc/holidays.sv-FI.rc
|
||||
/usr/share/doc/task/rc/holidays.sv-SE.rc
|
||||
/usr/share/doc/task/rc/holidays.tr-TR.rc
|
||||
/usr/share/doc/task/rc/light-16.theme
|
||||
/usr/share/doc/task/rc/light-256.theme
|
||||
/usr/share/doc/task/rc/no-color.theme
|
||||
/usr/share/doc/task/rc/refresh
|
||||
/usr/share/doc/task/rc/solarized-dark-256.theme
|
||||
/usr/share/doc/task/rc/solarized-light-256.theme
|
||||
/usr/share/doc/task/scripts/add-ons/README
|
||||
/usr/share/doc/task/scripts/add-ons/update-holidays.pl
|
||||
/usr/share/doc/task/scripts/hooks/README
|
||||
/usr/share/doc/task/scripts/hooks/on-add
|
||||
/usr/share/doc/task/scripts/hooks/on-add.the
|
||||
/usr/share/doc/task/scripts/hooks/on-exit
|
||||
/usr/share/doc/task/scripts/hooks/on-exit.shadow-file
|
||||
/usr/share/doc/task/scripts/hooks/on-launch
|
||||
/usr/share/doc/task/scripts/hooks/on-modify
|
||||
/usr/share/doc/task/scripts/vim/README
|
||||
/usr/share/doc/task/scripts/vim/ftdetect/task.vim
|
||||
/usr/share/doc/task/scripts/vim/syntax/taskdata.vim
|
||||
/usr/share/doc/task/scripts/vim/syntax/taskedit.vim
|
||||
/usr/share/doc/task/scripts/vim/syntax/taskrc.vim
|
||||
/usr/share/doc/task/task-ref.pdf
|
||||
/usr/share/fish/vendor_completions.d/task.fish
|
||||
/usr/share/man/man1/task.1.gz
|
||||
/usr/share/man/man5/task-color.5.gz
|
||||
/usr/share/man/man5/task-sync.5.gz
|
||||
/usr/share/man/man5/taskrc.5.gz
|
||||
/usr/share/zsh/site-functions/_task
|
||||
EOF
|
||||
Loading…
Reference in New Issue
Block a user