Skip to content

Releases: rogeruiz/tick

Release v1.0.0

04 Jun 20:36
41259a5
Compare
Choose a tag to compare

Release v1.0.0

This release for Tick includes embedded migrations and a configuration file workflow for setting the database. There is no longer a need to set a DATABASE_URL environment file to use Tick. Tick will read from a config.yaml file located at ~/.config/tick/. For now, this configuration file is not configurable. Before starting Tick for the first time, create a ~/.config/tick directory and place a config.yaml file with a key of database_path set to where the SQLite database will be stored.

Setting up the configuration file and database directory

# Setup your Tock configuration file
>_ mkdir -p ~/.config/tick
>_ echo "database_path: ${_}/main.db" > "${_}/config.yaml"

Build the project from source for your platform.

# Clone the repository.
>_ git clone https://github.com/rogeruiz/tick.git
>_ cd tick

# Build the release.
>_ cargo build --release

# Install in your path.
>_ cp ./target/release/tick /usr/local/bin/tick

Happy time-keeping! 🕙

Initial release

25 Jun 03:39
5a7cfa6
Compare
Choose a tag to compare

Release v0.2.0

The initial release for tick. It does the basic things like: start, stop, status, list, and remove.

Installation

To install Tick, you can either compile it from source or download the binary
from the releases page for the release you want and the
platform you need.

Compiling Tick from source

The steps are pretty straight-forward as long as you are within the realm of
Tier 1 support for the Rust compiler.

# Clone the repository.
$ git clone https://github.com/rogeruiz/tick.git

$ cd tick

# Setup the database, environment, and run any migrations.
$ cargo install diesel_cli
$ cp ./.env.example ./.env
$ diesel setup

# Build the release.
$ cargo build --release

# Install in your path.
$ cp ./target/release/tick /usr/local/bin/tick

Troubleshooting the first run of tick

Currently when you run Tick for the first time and haven't setup the database
tables for the timers nor exported the path to your database via $DATABASE_URL
in your shell, you're going to run into a Rust panic. Remember to setup your
environment with the right variable set to the path to your SQLite database and
make sure you've run the migration found in this repository. Use the
diesel_cli cargo package to setup the database from within the cloned project.

$ cargo install diesel_cli
$ cp ./.env.example ./.env
$ diesel setup

Commands

Run tick --help to see all the available commands you can use. Below is an
example workflow of how you would use Tick.

$ tick [ -v ] start --name my-timer [ --message "I can do the thing!" ]
$ tick [ -v ] status
$ tick [ -v ] stop --name my-timer [ --message "I did the thing!" ]
$ tick [ -v ] stop [ --message "I did the thing!" ] # without a name argument stops the latest running timer
$ tick [ -v ] list
$ tick [ -v ] remove --id $( tick list | tail -1 | awk '{ print $1 }' ) # delete the latest timer by Timer ID