4 releases

0.1.9 Nov 14, 2021
0.1.8 Apr 22, 2021
0.1.7 Apr 20, 2021
0.1.6 Apr 19, 2021

#41 in Date and time

27 downloads per month

GPL-3.0-only

175KB
1K SLoC

Bilal

Sponsor me

demo


bilal is a CLI salah time.

Features

  • Show all salah time in current day
  • Show current salah time and its remaining time
  • Show next salah time

Usage

Usage Examples

bilal all                            Show all salahs time
bilal current                        ... current salah time
bilal current --json                  .... with JSON format

Create a file named bilal.toml in ~/.config/bilal/. If you are on Windows, put it under \AppData\Bilal\. Then add your configuration:

timezone = 7
latitude = -6.18233995
longitude = 106.84287154
madhab = "Shafi"
method = "Egyptian"

To see more options, please read the wiki

Command-line options

USAGE:
    bilal [FLAGS] [OPTIONS] [salah]

ARGS:
    <salah>    A Salah to show [default: all]

FLAGS:
    -h, --help       Prints help information
    -J, --json       Display Salah in JSON formatted string
    -V, --version    Prints version information

OPTIONS:
        --color <WHEN>    Display Salah in colored output [default: always]

Usage with other tools

You can use Bilal with i3status-rust to show salah time in your status.

i3status-rust-bilal

i3status-rust-bilal-urgent

i3status-rurts configuration Example:

[[block]]
block = "custom"
cycle = [
        "bilal current -J",
        "bilal next -J",
        ]
on_click = "<command>"
interval = 300
json = true

See more examples to learn other variations.

If you like bilal to support your favourite status-bar, please hit me in the [mailing-list][mailing-list] with the valid input of your status-bar. In i3status-rust the valid input it would be {"icon": "ICON", "state": "STATE", "text": "YOURTEXT"}.

Installation

From binaries

The release page includes pre-compiled binaries for GNU/Linux, macOS and Windows.

From source

Using Rust's package manager cargo:

cargo install bilal

Development

git clone https://git.sr.ht/~azzamsa/bilal.rs
cd bilal.rs

# Run unit tests and integration tests
cargo test

# Install
cargo install --path .

Contributing

To learn more read contributing.md

Origin of the name

The name Bilal was chosen in reference to the Bilal bin Rabah. The first mu'azzin, chosen by Muhammad PBUH himself.

License

Copyright (c) 2020 Azzamsa

Bilal is distributed under the terms of GPL V3 License.

Dependencies

~2.3–3.5MB
~63K SLoC