TaskCollect
Toggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

Building

You will need the following to successfully build TaskCollect:

  • Git
  • Go 1.18+
  • Python 3.9+
  • Sass 1.57+

TaskCollect has very simple build and deployment mechanisms. To build everything automatically across multiple platforms (including managing resource dependencies), a Python build script is used. See build script for more information.

Simply clone this Git repository and run python3 build.py -u (or py build.py -u on Windows).

git clone https://codeberg.org/kvo/taskcollect.git
cd taskcollect
python3 build.py -u
git clone https://codeberg.org/kvo/taskcollect.git
cd taskcollect
py build.py -u

If all the build dependencies are installed and no errors occur, the folder prg/ should appear in the root folder of the repository, containing the executable program for the current system. The -u flag in the build script additionally copies across the assets that are required to run TaskCollect from the res/ folder to $home/res/taskcollect. For more information on how to use the build script, run python3 build.py help

Build script

To invoke the command on Unix-like systems (Linux, MacOS), invoke the script via python3 build.py or chmod the script and invoke it via ./build.py. It’s up to you, really. For Windows, invoke it via py build.py, or if you are using Command Prompt, simply typing build should run the script in most cases. For brevity, invocation of the script will be written as build.py henceforth.

Use the help command (build.py help) to see the list of supported platforms and available commands/options.

For convenience, the build script also has the option to copy across resources from the project’s res/ directory to ~/res/taskcollect/:

  • use -u to build the TaskCollect binary while also copying across resource files; OR
  • use -U to only copy resources files

Simply invoking the script with no arguments will build TaskCollect for the host system. For instance, if you are on 64-bit Windows, the script will automatically detect this and build for windows/amd64:

To build for a specific OS and architecture, invoke using the following pattern:

build.py os/arch

Multiple OSes and architectures can be built at once. For example:

build.py windows/amd64 darwin/arm64 linux/amd64

Supported architectures

TaskCollect currently supports Linux, MacOS, and Windows.

OSArchitecture
Linux (linux)386, amd64, arm, arm64
MacOS (darwin)amd64, arm64
Windows (windows)386, amd64

To build executable programs for all major operating systems and CPU architectures, run build.py all.

Compiling for all operating systems and architectures will take a while.