Skip to content

A program that shows prayer times for Muslims presented in a unique graphical layout. Prayer times are drawn on a horizontal timeline representing a day, with spaces separating them that are proportional to the actual periods of time between the prayers.

License

Notifications You must be signed in to change notification settings

akhayyat/mihrab

Repository files navigation

Mihrab

Mihrab is a Muslim prayer times program written in C. A mihrab is semicircular niche in the wall of a mosque that indicates the qibla; that is, the direction of the Kaaba in Mecca and hence the direction that Muslims should face when praying [Wikipedia].

Features

Current

  • Unique presentation.
  • Preset library of known locations.
  • Custom location option: latitude, longitude, timezone, daylight saving time (DST).
  • Automatic detection of daylight saving time (DST) status for known locations.

Planned

  • Stack multiple timelines to show multiple locations at once.
  • Add support for playing Athan audio.
  • Add support for a notification area icon.
  • Desktop notification popups.
  • Improved layout.

Requirements

  • GTK+ version 2 (default branch) or 3 (branch gtk-3).

    Debian package: libgtk2.0-dev or libgtk-3-dev.

  • The Islamic Tools Library libitl.

    Debian package: libitl-dev.

  • libgweather: a weather library for the Gnome desktop.

    Debian package: libgweather-dev or libgweather-3-dev.

Usage

$ hg clone https://[email protected]/akhayyat/mihrab
$ cd mihrab
$ make
$ ./bin/release/mihrab

Translation

Arabic translation of all strings is included. make will generate an Arabic message catalog. To run Mihrab in Arabic:

$ LANGUAGE=ar ./bin/release/mihrab

If you would like to add a new language translation, follow these steps:

  1. Generate a pot file (Portable Object Template):

     $ make pot
    

    This will generate mihrab.pot in the project's root directory.

  2. Use your favorite po file editor, e.g. POEdit, to create the translated strings based on the pot template.

  3. Add the two-letter language code to the LANGS macro in the Makefile. For example:

     LANGS = ar de
    

    In this example, the Makefile expects to find the files ./ar/mihrab.po and ./de/mihrab.po in the project's root directory. Any subsequent make will generate the required catalogs to use these languages.

Screenshots

English Screenshot

Arabic Screenshot

About

A program that shows prayer times for Muslims presented in a unique graphical layout. Prayer times are drawn on a horizontal timeline representing a day, with spaces separating them that are proportional to the actual periods of time between the prayers.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages