This repository tries to keep track of AsteroidOS unofficial watchfaces. Watchface creation in QtQuick is really easy! You can learn how to make your own by following the Watchface Creation Guide. The creators of the below listed watchfaces are happy to answer your questions and you are free to use their contributions as base for your own work. Feel free to pull request your work here and if it suits the graphic guidelines of AsteroidOS, it can eventually be merged into the default set of watchfaces shipped with asteroid-launcher.
- Open a terminal and clone this unofficial-watchfaces repo to a new subfolder from your current location.
git clone https://github.com/AsteroidOS/unofficial-watchfaces - Cd into unofficial-watchfaces folder.
cd unofficial-watchfaces/ - Connect your AsteroidOS Watch, configured to either ADB Mode (ADB transfer) or Developer Mode (SCP transfer) in Settings -> USB.
- Start
./watchfaceto use SCP commands or./watchface -afor ADB commands. - You can also use
./watchface --helpto get a list of available options. - Select a single watchface to deploy to the watch with its given number or copy multiple watchfaces at once
- The first selected watchface (if more than one is selected) will be activated
Note that restarting the ceres session might be necessary when new fonts were installed along with the new watchfaces, so the script automatically restarts the ceres session after deploying one or more watchfaces.
Restarting the ceres session might break things like Always On Mode or the battery display for the remaining uptime. Reboot the watch in that case.
You may reboot the watch manually, or you may use the --boot option of watchface.
If invoked without arguments, the watchface command will start a text menu (using dialog if available, otherwise using whiptail). A GUI based menu (using zenity is also available using the -g option.
watchface v1.2
watchface [option] [command...]
Utility functions for AsteroidOS watchfaces. By default, uses "SSH Mode"
over ssh, but can also use "ADB Mode" using ADB.
Available options:
-h or --help print this help screen and quit
-a or --adb use ADB command to communicate with watch
-b or --boot reboot watch after deploying multiple watchfaces
-c or --circlewall WP set the wallpaper for circular watchface thumbnail to the named file (WP)
-e or --every select every watchface (deploy only)
-g or --gui use the GTK+ gui
-p or --port specify an IP port to use for ssh and scp commands
-q or --qemu communicate with QEMU emulated watch (same as -r localhost -p 2222 )
-r or --remote specify the remote (watch) name or address for ssh and scp commands
-t or --transport when used win ADB mode, specifies the transport id
-w or --wall WP set the wallpaper for deploy or test to the named file (WP)
-v or --verbose print verbose messages (useful for debugging)
Available commands:
update use git to update your local copy of the unoffical-watchfaces repository
version display the version of this program and exit
deploy WF push the named watchface to the watch and activate it
deployall deploy all watchfaces
clone WF NEWWF clone the named watchface WF to new watchface NEWWF
test WF test the named watchface on the computer using qmlscene
raw QMLFILE test a raw QML file without the standard directory structure
Cloning a watchface can be done either via either of the two gui options mentioned above or by the command line argument listed above.
The script will search for the source watchface in the current working directory first, and then in the script's directory. The cloned watchface will always be created in the current working directory.
Example:
./watchface clone decimal-time mister-snerd
This will clone the decimal-time watchface into a new watchface named mister-snerd and make the appropriate substitutions within paths and qml files. You can now make changes to your new mister-snerd and make it your own.
See the Watchface Creation Guide for more details.
Testing a watchface can be done either via either of the two gui options mentioned above or by the command line argument listed above.
The script will automatically search for watchfaces in the current working directory first, and then in the script's directory. This allows you to work on watchfaces in any location.
Example:
./watchface test decimal-time
This will start up a qmlscene tester for the named watch (decimal-time in this case) and allow you to see it operating or observe the effects of changes you make. There are some limitations to the existing test script. See the Watchface Creation section on using the test script for details.
You can also test a standalone QML file that doesn't follow the standard watchface directory structure using the raw command. This is useful for quick prototyping or testing QML files directly.
Example:
./watchface raw my-watchface.qml
This will test the QML file directly without requiring the usr/share/asteroid-launcher/watchfaces/ directory structure. If you have custom fonts, place them in a fonts/ subdirectory next to your QML file.
This repository includes an automated test suite for the watchface script to ensure reliability and catch regressions.
To run the test suite:
./tests/test_watchface.shThe test suite validates:
- Command-line argument parsing
- Watchface cloning functionality
- Error handling for invalid inputs
- Help and version commands
- File operations and validation
Tests run automatically on every push and pull request via GitHub Actions.
For more details about the test suite, see tests/README.md.
| Watchface - File | License |
|---|---|
| analog-boombox - Dangrek | The font "Dangrek" is licensed under SIL Open Font License and was created by The Dangrek Project Authors. license |
| digital-pop-space - Baloo Tammudu 2 | The font "Baloo Tammudu 2" is licensed under SIL Open Font License and was created by Ek type. license |
| digital-pop-space - Outrun future | The font "Outrun future" is licensed under a custom license that allows "Anyone may use these fonts for non-profit projects". It was created by Press Gang Studios. license |
| analog-duppy-vintage - Kumar One Kumar One Outline | The font "Kumar One" is licensed under SIL Open Font License and was created by Indian Type Foundry. license |
| analog-duppy-vintage - Varieté - Regular | The font "Varieté" is licensed under SIL Open Font License and was created by Peter Wiegel. license |
| digital-fat-bwoy-slim - NASDAQER | The font "NASDAQER" is licensed under CC BY 3.0 License and was created by Gustavo Paz L. license |
| analog-neon-diver - Bebas Neue | The font "Bebas Neue" is licensed under SIL Open Font License and was created by Dharma Type. license |
| analog-classy-roman - Roboto Condensed - Bold | The font "Roboto Condensed" is licensed under Apache License, Version 2.0 and was created by Christian Robertson. license |
| analog-commander - Michroma - Regular | The font "Michroma - Regular" is licensed under SIL Open Font License and was created by Vernon Adams. license |
| analog-commander - Teko | The font "Teko" is licensed under SIL Open Font License and was created by Indian Type Foundry. license |
| analog-modern-steel - Michroma - Regular | The font "Michroma" is licensed under SIL Open Font License and was created by Vernon Adams. license |
| analog-silly-walks - Varieté - Regular | The font "Varieté" is licensed under SIL Open Font License and was created by Peter Wiegel. license |
| analog-red-handed - PTSans - Bold | The font "PTSans" is licensed under SIL Open Font License and was created by Alexandra Korolkova, Olga Umpeleva and Vladimir Yefimov and released by ParaType. license |
| analog-red-handed - Russo One - Regular | The font "Russo One" is licensed under SIL Open Font License and was created by Jovanny Lemonad. license |
| pulsedot - Source Sans Pro - Semibold Source Sans Pro - Regular | The font "Source Sans Pro" is licensed under SIL Open Font License and was created by Paul D Hunt. license |
| retro-lcd - Digital-7 (Mono) | The font "Digital-7" is freeware for home use and was created by Sizenko Alexander. |
| binary-lcd - Digital-7 (Mono) | The font "Digital-7" is freeware for home use and was created by Sizenko Alexander. |
| analog-rings SlimSans | The font "SlimSans" was created by Manfred Klein. Manfred’s fonts are free for private and charity use. They are even free for commercial use – but if there’s any profit, pls make a donation to organizations like Doctors Without Borders |
| day-clock-24h - Vollkorn-Regular | The font "Vollkorn" is licensed under SIL Open Font License and was created by Friedrich Althausen. license |
| digital-charge-state - Titillium-Bold, Titillium-Light | The font "Titillium" is licensed under SIL Open Font License and was created at the Accademia di Belle Arti di Urbino. license |
| sporty-round, sporty-round-v2 SlimSans | The font "SlimSans" was created by Manfred Klein. Manfred’s fonts are free for private and charity use. They are even free for commercial use – but if there’s any profit, pls make a donation to organizations like Doctors Without Borders |
| numerals-duo-neon-green - Assets | Assets are originally adapted from mo_sandhu |
| orbiting-asteroids - Blue Marble | The image "Blue Marble", Eastern Hemisphere March 2014, Photo from NASA Goddard Space Flight Center is available under creative commons license |
| binary-digital - Simpleness | The font "Simpleness" is licensed under SIL Open Font License and was created by Valentin Francois. license |
| humongous - Item-Black | The font "Item" is Public Domain and was created by Bojmic Interpro. |
| logo-45degree - Sinner | The font "Sinner" is freeware for personal, non-commercial use only and was created by Helge Barske. license-info |
| motivational-quotes - Lobster | The font "Lobster" is licensed under SIL Open Font License and was created by Impallari Type. license |
| nixie-delight - Feronia | The font "Feronia" is licensed under GPL with font exception and SIL Open Font License and was created by Peter Wiegel. license |
| clean-bars, decimal-time - CPMono_v07 | The font "CPMono_v07" is licensed under CC-BY-3.0 and was created by Tino Meinert, Liquitype. license |
| analog-scientific - Reglo | The font "Reglo" is licensed under SIL Open Font License and was created by sebsan, Sebastien Sanfilippo. license |
| karlos-matrix - Elektra SH | According to fonts4free.net, the font "Elektra SH" is free for both personel and commercial usages and was created by Samy Halim. license |
| alternative-digital-mosen - GeneraleMono | The font "GeneraleMono" is licensed under SIL Open Font License and was created by ARIEL MARTÍN PÉREZ. license |
| digital-weather-hrm-steps - Cantarell | The font "Cantarell" is license under SIL Open Font License and was created by Dave Crossland. license |