======Taskwarrior Notes====== My stack so far is: *[[https://taskwarrior.org|Taskwarrior]] 3.4.2 *[[https://github.com/GothenburgBitFactory/taskchampion-sync-server/tree/main|Taskchampion]] server (latest) *lbesnard's [[https://github.com/lbesnard/task-tui|task-tui]] *[[https://play.google.com/store/apps/details?id=tech.strid.taskstrider&hl=en_US&pli=1|Taskstrider]] for Android All operations below were performed under Debian 13.5. Debian 12 appeared to lack the necessary tools or libraries (must test further). ====Server==== We need to install the Task Champion server using Docker, which is opaque and full of danger: apt-get install rust-all rustup git apt install -y ca-certificates curl gnupg lsb-release apt install -m 0755 -d /etc/apt/keyrings apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin systemctl enable --now docker newgrp docker usermod -aG docker git clone https://github.com/GothenburgBitFactory/taskchampion-sync-server.git cd taskchampion-sync-server/ docker build -t taskchampion-sync-server -f Dockerfile-sqlite chown [userid] -R taskchampion-sync-server You can make a startup file like: docker run -t -d --name=taskchampion -e LISTEN=0.0.0.0:9999 -p 9999:9999 taskchampion-sync-server **BE CAREFUL!** If your destroy the Docker image, your database is gone, too! In theory, any up-to-date client could re-populate it by doing a ''sync init'', but this is untested. ====Client==== We must compile the TW client directly since the pre-build Debian package does not include the sync feature: git clone https://github.com/GothenburgBitFactory/taskwarrior.git cd taskwarrior git submodule update --init --recursive apt-get install rust-all cargo cmake gcc build-essential cmake uuid-dev git gnupg apt-get install rustup rustup default stable [may be unnecessary] cmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build cmake --install build In WSL under Windows 11, I had to do this instead. Something to do with rust and corrosion version conflicts: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DRust_CARGO_TARGET=x86_64-unknown-linux-gnu \ -DCorrosion_RUSTC_EXECUTABLE="$HOME/.cargo/bin/rustc" Client setup: task config sync.server.url http://site:port task config sync.server.client_id ====Mobile==== The Android client [[https://play.google.com/store/apps/details?id=tech.strid.taskstrider&hl=en_US&pli=1|Taskstrider]] works with this setup. ====Notes==== [[https://taskwarrior.org/download/task-2.5.3.ref.pdf|Command Reference (for 2.5.3, can't find one for 3.4.x yet)]] Unfortunately, the official taskwarrior-tui does not work with version 3.4 yet, but [[https://github.com/lbesnard/task-tui|this]] works.