<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hello, Hossein, welcome to GnuCash!<br>
[replying to the gnucash-devel list only, no need for this
discussion to happen on the gnucash-users list also.]<br>
</p>
<div class="moz-cite-prefix">On 2025-07-04 09:45, Hossein via
gnucash-user wrote:<br>
</div>
<blockquote type="cite"
cite="mid:MkOFQCYf7PUdk0Yad483D1pibt9EsPnJOgrnMz9d_RjETN01LI6f7ekj3QAVlCKRHK8GfXrjqsaDzAoa2T-694gH5vxRPveDRF2ZXxORHg4=@pm.me">
<pre wrap="" class="moz-quote-pre">Hello dear devloper team
This is hossein.
Actully i found your software in orevious month. Its so usefull software (GNUcash)
everything is going so well.
only i have a request , could you please add Hijri calendar in your software. its so important for us we only use this calendar in our system. even windows support this calendar.
and also im a devloper , there is so many open source lib to convert this calendar.
if i can help please let me know. only i want ask you to add this calendar to yur software. then in our mind it will be the best accounting software</pre>
</blockquote>
<p>I am not one of the GnuCash developers, and I cannot speak for
the project. But I do know a little about software development,
and about supporting various calendars in software. I have been
watching the GnuCash project for many years. Maybe I can give you
some helpful thoughts.</p>
<p>Adding Hijri calendar support to GnuCash is an interesting
suggestion. Thank you for it. There is some information you can
provide to make it more likely that someone contributes this to
GnuCash.</p>
<p>First, understand that GnuCash is a free software product
developed by volunteers. There are only a few current developers.
They work without pay, because they want GnuCash to succeed. They
have very long task lists already. They are not likely to take on
extra tasks based on one suggestion. So, if you really want to see
a feature in GnuCash, the most certain way is to write the
software yourself, or find someone to write it, and then offer it
for free to the GnuCash project.</p>
<p>Second, you can help prepare the way by being clear about what
you are proposing. My understanding of the Hijri calendar[1] is
that it refers to a lunar calendar. The year is 354 or 355 days
long. There are different forms of Hijri calendar in use, some
which start months based on humans viewing the new moon, some
based on mathematical calculations independent of humans seeing
the moon. So, it would help for you to be clear about which exact
form of Hijri calendar you mean. State the definition of the
calendar. If possible, point to written specifications for how the
calendar works, in languages which developers can understand.<br>
</p>
<p>Third, you can help by explaining the advantages for GnuCash
users of supporting the Hijri calendar. What does it permit that
GnuCash does not achieve simply by displaying Gregorian dates in
the numbers, formatting, and language used in the Arabic language
translation? For example, I read in Wikipedia[1] that "In almost
all countries where the predominant religion is Islam, the civil
calendar is the Gregorian calendar", but the Hijri calendar is "used
to determine the proper days of <a
href="https://en.wikipedia.org/wiki/Islamic_holiday"
class="mw-redirect" title="Islamic holiday">Islamic holidays</a>
and rituals". GnuCash does bookkeeping, which seems more civil
than religious to me. How does using the Hijri calendar help with
bookkeeping?<br>
</p>
<p>Fourth, how does use of Hijri correlate with the UI language of
GnuCash? I speculate that people who want to use Hijri dates with
their bookkeeping are more likely to want the Arabic language UI
for GnuCash, instead of the French or Japanese UI. Do you
personally use GnuCash with English UI, or Arabic, or some other
language? Is the present GnuCash UI localisation sufficient to
deliver the benefit of the Hijri calendar, or would the project
need to improve its UI localisation also?<br>
</p>
<p>Then there are some engineering factors. <br>
</p>
<p>The GnuCash database stores dates in terms of a Gregorian
calendar. It is perhaps possible to add a layer which translates
Gregorian dates to different calendars mathematically. This could
support more calendars than just Hijri: maybe Chinese, Hebrew,
Japanese, etc. as well. However, if the calendar you seek wants to
define days differently than Gregorian days, or if the number of
days per month is not predictable by mathematics, that is more
difficult to support.</p>
<p>GnuCash runs on Windows, Linux, and macOS systems, and its source
code is freely available to compile and run on a variety of other
platforms. It primarily uses C++ code, but other languages as
well. You point out, "there is so many open source lib to convert
this calendar." Great! Please give links for a few of them. How
many run on all these platforms? How many are compatible with
C++?</p>
<p>The GnuCash project tracks enhancement requests like this in the
GnuCash bug database[2]. I don't see a request for Hijri calendar
support there. Perhaps this discussion should continue by email
for a while, but eventually it would be good for you to write your
request as an enhancement request "bug report" in the bug
database. Instructions for this[3] are in the GnuCash wiki.<br>
</p>
<p>I hope this is helpful for you as you refine your interesting
idea.</p>
<p>Best regards,<br>
—Jim DeLaHunt, Vancouver, Canada<br>
</p>
<p>[1] <a class="moz-txt-link-rfc2396E" href="https://en.wikipedia.org/wiki/Islamic_calendar"><https://en.wikipedia.org/wiki/Islamic_calendar></a><br>
[2] <a class="moz-txt-link-rfc2396E" href="https://bugs.gnucash.org/"><https://bugs.gnucash.org/></a><br>
[3] <a class="moz-txt-link-rfc2396E" href="https://wiki.gnucash.org/wiki/Enhancement_Requests"><https://wiki.gnucash.org/wiki/Enhancement_Requests></a><br>
</p>
</body>
</html>