I am writing this article on October 6, 2025, the night of October’s Harvest Moon. I decided to commemorate the event with a review of the iMoon app for Ubuntu Touch.

iMoon app page in the Ubuntu Touch OpenStore. Screenshot captured on a Google Pixel 3a XL running Ubuntu Touch. There is a button which says "Open" evincing that it is installed.
iMoon’s OpenStore page. Captured on my Google Pixel 3a XL running Ubuntu Touch.

The app was originally created by user fulvio and is now maintained by Weston Howard.

Brief Introduction to Ubuntu Touch

Ubuntu Touch is a free and open source Linux operating system targeted at phones and it is maintained by UBports (see the official Ubuntu Touch website). It is officially supported on a relatively small number of devices, most of which run Android (thanks to Halium).

Testing Environment

I am running Ubuntu Touch, and by extension the iMoon app, on a Google Pixel 3a XL. I indirectly discussed installing Ubuntu Touch on my 3a XL in a recent article about testing a different mobile Linux distribution on the same device. I tested version 1.3 of the iMoon app on Ubuntu Touch 24.04-1.0 (see the official news release Ubuntu Touch 24.04-1.0). I also tested an older version of the app on my Google Nexus 7 Wi-Fi (2013) tablet running Ubuntu Touch 16.04.

Introducing Weston Howard’s iMoon App

iMoon is a free and open source app for Ubuntu Touch maintained by Weston Howard. The source code is available on GitLab under the GNU General Public License v3.

Ubuntu Touch comes with an app store called OpenStore (think of it as Ubuntu Touch’s Google Play Store or App Store, although it has more similarities to F-Droid due to the fact that all of its apps are open source). iMoon is available in OpenStore. Note that an online search for iMoon returns two apps with the same icon. I am reviewing the version maintained by Weston Howard (see Weston Howard’s iMoon on OpenStore).

On the OpenStore page for the new iMoon, maintainer Weston Howard notes that “[t]his app was originally released by Fulvio, and all credit for this app goes to them.” Mr. Howard noted that he created the new iMoon app because the original iMoon was not updated for Focal, which refers to version 20.04.

If you search for iMoon online in the OpenStore, both the new version of iMoon and the former version will appear. The original version of iMoon maintained by fulvio was last updated in 2019 (see fulvio’s iMoon in OpenStore). The source code for fulvio’s iMoon is available on GitHub under the same license as the currently maintained version. On my Pixel 3a XL, which is running Ubuntu Touch 24.04, only the new iMoon is available in the store. I also have Ubuntu Touch on a Google Nexus 7 tablet (see my 2021 article about the installation process). The tablet is stuck on Ubuntu Touch 16.04 (UBports did build a 20.04 version for it). In that case, Fulvio’s iMoon is available in the store but the new version is not.

Note on the Older iMoon

While this article focuses on the new version of iMoon maintained by Weston Howard, I tested Fulvio’s iMoon on my Google Nexus 7, which runs Ubuntu Touch 16.04 (see my article on installing Ubuntu Touch on the Nexus 7 tablet).

Screenshot of the OpenStore page for fulviou's iMoon App taken from a Google Nexus 7 2013 tablet running Ubuntu Touch.
I captured this screenshot on my Google Nexus 7 tablet running Ubuntu Touch.

The older iMoon works as expected on my Nexus 7, so it remains a good choice for people running Ubuntu Touch 16.04 or older. It is functionally identical to the new version and works better in one respect regarding scaling that I will note further down. However, this short review is based on running the new iMoon on my Pixel 3a XL.

Introducing iMoon

The OpenStore page for iMoon describes it as “[a] simple offline tool to calculate moon phases, sun parameter of many world city…”

Using iMoon

Below, I write about my experiences using and testing the iMoon app. Please note that the screenshots are from my Google Pixel 3a XL except for two cases where I note they are from my Nexus 7 2013 tablet.

First Launch

I installed and opened the iMoon app. I was not sure if it would work since some apps which worked for me on Ubuntu Touch 20.04 LTS are not yet working on 24.04, but iMoon opened as expected. I was first greeted with a screen to select a country, city, and date for where I want Moon phase information. The country, city, and date are all chosen from drop-down menus with pre-set options. There is no search functionality, so you have to scroll through the menus to find the correct country and city.

Country select scroll menu on iMoon for Ubuntu Touch, captured on a Google Pixel 3a XL phone. The visible countries are Uganda, Ukraine, United Kingdom, United States, Uruguay, and Venezuela.
It took quite a bit of scrolling to get here. There is an identically structured menu for choosing a city but the available cities depends on the selected country.
Menu for choosing a date in the iMoon app for Ubuntu Touch. It has three scroll menus for month, day, and year.
Selecting a date is less irritating than selecting a country and city.

I entered United States and New York City and started with October 5, 2025, which was when I first tested it. I then hit calculate.

iMoon for Ubuntu Touch information about the Sun in New York City on October 5, 2025. There is an image of the Sun and next to it information about the Sunrise, Sunset, Solar Noon, Altitude, and Azimuth.
iMoon for Ubuntu Touch information about the Moon in New York City on October 5, 2025. There is an image of the Moon and next to it information about Moon Rise, Moon Set, Altitude, Distance, Azimuth, Parallactic Angle, Illuminated fraction, Phase, Angle, Trajectory, and Constellation.

As you can see, it returns information about the Sun and Moon, as expected. I also tried it for October 6, 2025, knowing that would be a full Moon.

Changing the date in the iMoon app for Ubuntu Touch from October 5, 2025 to October 6 using the app's menu, which allows for toggling month, day, and year.
iMoon for Ubuntu Touch information about the Moon in New York City on October 6, 2025. There is an image of the Moon and next to it information about Moon Rise, Moon Set, Altitude, Distance, Azimuth, Parallactic Angle, Illuminated fraction, Phase, Angle, Trajectory, and Constellation. The Moon is listed as FULL.

Sun and Moon Information

For the Sun we have:

  • Sunrise
  • Sunset
  • Solar Noon
  • Altitude
  • Azimuth

For the Moon:

  • MoonRise
  • MoonSet
  • Altitude
  • Distance
  • Parallactic Angle
  • Illuminated fraction
  • Phase
  • Angle
  • Moon trajectory
  • Constellation

There is a “display” button under the Moon section. Clicking it pulls up a constellation view:

Star chart in Ubuntu Touch iMoon app for October 5, 2025. The chart indicates that the Pisces constellation is visible over New York City.
The chart says and shows Pisces.

The app also provides information about the above information. For reasons I will explain in the next section, my screenshot of the information comes from the old version of iMoon on the Nexus 7 tablet (the text is the same as the new version).

Terminology and notes page for Ubuntu Touch iMoon app as seen on a Google Nexus 7 2013 running UT. The page reads: "Solar-moon: time when the sun is in the highest position / Azimuth: angular measurement in a spherical coordinate system / Latitude and Longitude values uses Decimal Degree (DD) scale / Sun and Moon parameters are show with 4 decimal digits / Day ligh saving (DLS): advancing clocks during summer months / Showed times don't consider DLS (add +1 hour to get it) / 1 rad = 180 degrees/n = 57.295779513.  There is also an illustration demonstrating these concepts.
The English prose could be improved for clarity and phrasing.

iMoon Display Issues on Google Pixel 3a XL

There are a few minor visual defects when we hold the phone vertically, at least without any additional configuration. The four buttons at the top for choosing a location and time to calculate appear to run just over the edge of the screen. Moreover, one line of text just above the Sun section cuts off on both ends and the Latitude and Longitude information just under the buttons creeps right up to the edge of the screen. See this screen capture from earlier in the article for both issues. These visual defects are not present in horizontal/landscape orientation.

iMoon for Ubuntu Touch as seen on a Google Pixel 3a XL in landscape orientation.
The buttons and texts are properly centered and fit the screen in landscape orientation.
iMoon for Ubuntu Touch Moon information shown in landscape mode. Only half the screen is used.
I dare say in this case iMoon should use more of the screen, but everything fits.

We have a similar display issue present in the information section of iMoon:

Terminology and notes page in iMoon for Ubuntu Touch as seen in portrait orientation on Google Pixel 3a XL. The text goes slightly over the edge of the screen.
See the text spill over in portrait mode.
The terminology and notes page for Ubuntu Touch iMoon app on Google Pixel 3a XL. Everything fits and is properly aligned in landscape orientation.
Everything fits with room to spare in ladscape mode.

It is worth noting that these display issues do not occur on the older version of iMoon on my Nexus 7 tablet (see the terminology page again), but I am unsure whether it is an issue with the new version on Ubuntu Touch 20.04 or with the fact that my Pixel 3a XL has a smaller screen than the Nexus 7.

iMoon Ubuntu Touch page in Google Nexus 7 (2013) tablet showing Sun and Moon information for October 6, 2025. It is in portrait mode and everything fits the screen.

Adding Locations

Finally, at the top right of the screen, we have a plus sign and bookmark icon. The plus sign can be used to add new locations. It was not immediately clear to me how this worked, but I figured it out.

UI for adding a new city in iMoon for Ubuntu Touch. There are fields for Country (drop-down menu), City, Latitude, Longitude, and TimeZone (drop-down menu). UTC offset is auto-filled.
Every field is required.

The iMoon app comes with a large number of locations by default. It has 156 countries. While I did not go through every country, I noted that it has 100 pre-configured United States cities by default. The plus sign allows you to add new locations that are not already in the app by default. In order to add a new location, you must choose one of the 156 pre-loaded countries, give your location a name, set its latitude and longitude, and choose its time zone (available time zone options depend on which country you select). I decided to create a location for the Brooklyn neighborhood of Brooklyn Heights, choosing a set of coordinates on Montague Street, which is roughly in the center of the neighborhood.

Adding Brooklyn Heights (NYC) to Ubuntu Touch iMoon app. Fields are as follows: Country - United States, City - Brooklyn Heights, Latitude - 40.69470, Longitude - -73.99693, TimeZone: America/New_York.

I hit confirm and was told that I added the location successfully. However, there was no obvious change and it did not immediately appear as a selectable location within the United States. I tried closing the app and re-opening it. When I re-opened the app, I found that I could select Brooklyn Heights.

Selecting "Brooklyn Heights" from a list of 101 United States cities in the Ubuntu Touch iMoon app. This city was added using the app's UI.
The other 100 cities were available from the beginning.
Ubuntu Touch iMoon Sun and Moon information for Brooklyn Heights (Latitude: 40.69479; Longitude: -73.99693)

One note of caution: I do not see any way to delete a new location in the UI (it may be possible to do so by tinkering with the app’s files). So it is good to make sure that everything about the location is correct before adding it. I tested creating a location with the same name as a pre-configured location, using Newark (New Jersey) as an example. In that case the app rejected my new location because it was already present.

Menu for designating a location as favorite in the Ubuntu Touch iMoon app.

The bookmark can be used to mark the current location as your favorite. This means the bookmarked city will appear when the app opens. This works as expected. Without a “favorite” location, the app opens without a set location.

Conclusion

iMoon is a fun little app that generally works as expected on my Google Pixel 3a XL running the latest stable version of Ubuntu Touch. I would recommend addressing the following issues to improve the app:

  1. The text and icon orientation should be adjusted to fit phone screens in portrait mode.
  2. The documentation for adding new locations should be clearer. It should also be possible to delete new or misconfigured locations from the UI.
  3. It should be possible to save multiple “favorite” locations. For example, someone may want to be able to easily check Sun/Moon information for where he or she currently lives and where a friend or relative lives. As it stands, the app only supports one favorite location, so one would have to go through the menus to check additional locations.
  4. Speaking of menus, adding search functionality for countries and cities would be a significant quality of life improvement. For example, because the 156 countries are listed in alphabetical order, I had to do quite a bit of swiping to reach the United States.
  5. Some of the writing does not read well in English. The app would benefit from a small amount of editing.

One problem with Ubuntu Touch is that it has a very limited app selection compared to Android and iOS. That problem is made worse by some apps becoming nonfunctional when a new major version of Ubuntu Touch is released.

Ubuntu Touch iMoon App information. Version: 1.6.3. Author: fulvio. Maintainer: Alaskalinuxuser.

For that reason, I am glad to see the work being done to ensure that apps like iMoon do not fall by the wayside as Ubuntu Touch races to keep up with upstream Ubuntu. It is a nice addition to OpenStore and I hope the app receives some additional development in line with my recommended improvements.