||2 weeks ago|
|assets||1 year ago|
|completions||5 months ago|
|docs||4 months ago|
|scripts||4 months ago|
|src||2 weeks ago|
|.gitignore||4 months ago|
|.gitlab-ci.yml||4 months ago|
|CHANGELOG.md||4 months ago|
|Cargo.lock||1 month ago|
|Cargo.toml||2 weeks ago|
|Containerfile||4 months ago|
|LICENSE||1 year ago|
|README.md||2 months ago|
A timetrap compatible command line time tracking application. Read the fine manual.
For Archlinux (and derivatives) users
There are both binary and source packages in the AUR:
For all other linux users
Go to gitlab releases page
and grab the latest binary for your linux. There is a
.deb file for Debian and
Ubuntu as well as a binary for any
In the case of the tar archive you just need to run the included
For Rust developers
cargo! you can run:
cargo install tiempo
However that will not install the beautiful man page. Although you can still see it at https://tiempo.categulario.xyz .
For everyone else
You need to compile
tiempo by yourself. But don't worry! It is not that hard.
Just clone the repository, make sure
you have rust installed and run:
cargo build --release
inside the repository. The binary will be named
t.exe if you use
windows) and it is located inside the
target/release directory that was
created during compilation.
How to build
You need rust, then clone the repo and simply run
to check that everything is working, and then
cargo build --release
to have a binary at
target/release/t that you can then move to a
directory in your
PATH or use it by its absoulte or relative paths.
to see the options.
When developing I prefer not to mess with my own database, so I use this
export TIMETRAP_CONFIG_FILE=/absolute/path/to/repo/dev_config.toml PS1="$ "
and when I want to test some commands against such config file I just source it:
source .env cargo run -- in 'hola'
The docs are written using sphinx. To
install the required dependencies enter the
docs directory and create a virual
then activate it and install the dependencies:
source .venv/bin/activate pip install -r requirements.txt
To build the docs just do:
for the html version (output located at
for the man page (output located at
docs/build/man/tiempo.1). To test the man
page you can do:
man -l build/man/tiempo.1
To get a live-reloaded server with the html docs do:
sphinx-autobuild source/ build/html/
The contents of the man page are located in
Building the packages like in CI but locally
First pull the image:
podman pull tiempo-build-env
Or build it yourself from this repo:
podman build -t tiempo-build-env .
Then build the artifacts:
To build the archlinux PKGBUILDs (depends on the artifacts folder created by the previous command):
Both of the previous commands produce PKGBUILDs in the current directory so if you run both sequentially you'll lose the PKGBUILD of the first command.
To timetrap for existing, to samg for creating it. It is the tool I was looking for and whose design I took as reference, keeping compatibility when possible.
What I'm working on
(more or less ordered by priority)
- fix the pipeline because it's broken. The last release and its artifacts are wrong.
- add an install/uninstall script to the any-linux package.
- finish the
- match formatters by prefix (so there's no need to type all of its name if the prefix is unambiguous).
- let resume --interactive receive a string as the text for a new entry.
- add a command that opens the doc in the browser just like fish
- compile a package for windows in CI
(mostly to remind myself)
- Ensure tests pass and that clippy doesn't complain
- Add documentation about the new features
- Create an entry in
CHANGELOG.mdwith the target version, commit it
- git push && git push --tags && cargo publish
- wait for release and then test the releases (aur bin and git and packaged).