LEFTEROS / PERSONAL ARCHIVE
CrossInk in Greek
29 September 2026 / Lefteris Iliadis / SomniusX
CrossInk is open firmware (MIT licence) for the small Xteink e-ink readers, built on CrossPoint Reader. Until now it didn’t speak Greek: Greek books came out as ◆ boxes, and neither the menu nor the hyphenation knew the language. I built Greek support in under 24 hours, and it is out today as a test build for the Xteink X4 Pro.

Cavafy’s Ithaka in the Bitter font: left, the official 1.6.0; right, the Greek build.
What it adds
- Greek in the reading fonts. Bitter and Lexend Deca have no Greek at all. Greek subsets of Noto Serif and Noto Sans now sit next to them, in every style, so Greek matches the rest of the text. Inter, the menu font, already had Greek; it just wasn’t being converted.
- Greek hyphenation. With justified text, words break where they should: κα-λη-μέ-ρα, ηλε-κτρο-νι-κός, Κων-στα-ντι-νού-πο-λη, προ-ϋ-πό-θε-ση.
- A Greek menu. All 843 interface strings, under Settings > System > Device > Language > Ελληνικά.
- Greek titles everywhere. The home screen, descriptions and clippings show Greek titles and authors properly, even with an English menu.
- Room to spare. With Greek in, the firmware still comes out smaller than the official 1.6.0, because Vietnamese and Arabic were taken out.
Screens


From the CrossInk X4 Pro simulator: hyphenation in Bitter and Lexend Deca, the home screen with a Greek book, and the Greek settings menu.
The stages
- 23 September 2026: the request. An X4 Pro owner opened #767: Greek on the home screen and in book descriptions showed up as diamonds with question marks. The answer from CrossInk was that Greek would be considered if it didn’t add too much to the firmware.
- The evening of the 28th: the work. On a fork, one branch in five small steps: hyphenation, fonts, the menu translation, docs, and an optional step that takes out Vietnamese and Arabic to make room.
- Measuring. Greek on its own adds about 195 KB to each build, and every build still fits the app partition. With the optional step, each build comes out about 57 KB smaller than 1.6.0.
- Testing. Builds for all four devices (X3/X4, X4 Pro, Sticky, X4 Classic), the project’s hyphenation tests for every language plus a new Greek set, its formatting and static-analysis checks, and the simulator with a Greek EPUB.
- 29 September, 01:23: v1.6.0-greek. The first test build for the X4 Pro, on my fork.
- Early on the 29th: the proposal. All of it, with sizes, tests and screenshots, in CrossInk’s discussion #789, to take whole or piece by piece. CrossInk doesn’t accept pull requests.
- 29 September, 11:28: v1.6.0-greek2. Many Greek EPUBs, translations especially, say their language is
enor nothing at all, so they weren’t being hyphenated. Now every Greek word gets the Greek rules, whatever the book says. - First feedback. The account that had opened #767 wrote in the discussion: “works great, thank you”.
Install
For the Xteink X4 Pro only. If the reader already runs CrossInk:
- Download
firmware-x4-pro-v1.6.0-greek2.binfrom my fork’s releases and put it anywhere on the SD card. - Settings > System > SD Card Firmware Update, and pick the file.
Before writing anything, the updater checks the chip, the board tag (x4pro), the checksum and the SHA-256, and writes to the spare slot. A bad file is refused instead of flashed, and other models (X3/X4, Sticky, X4 Classic) won’t accept it. If the reader is still on the stock Xteink firmware, install the official CrossInk first from the flash tools.
To go back, flash the official firmware-x4-pro-v1.6.0.bin the same way.
Two settings to check, under Settings > Reader > Page Layout (Ρυθμίσεις > Ανάγνωση > Διάταξη σελίδας in Greek): Hyphenation on, and Paragraph Alignment set to Justify. With left alignment the lines stay ragged, however good the hyphenation.
How it works
Fonts
CrossInk turns its fonts into bitmaps inside the firmware and keeps only the character ranges you ask for. Each reading font got a Greek subset of Noto next to it (about 20 KB of source each, OFL licence), monotonic Greek only. The font converter gained an option to exclude ranges, so the few Greek letters Bitter and Lexend already had (Δ, Ω, μ, π) also come from Noto; otherwise a word like “Πόλη” would mix two designs. Kerning and ligatures follow the same rules, and with the old settings the output stays byte for byte the same.
Hyphenation
The rules are the standard hyph-el-monoton patterns, from the same source as CrossInk’s other languages, in a trie of just 2 KB. The code recognises Greek letters (capitals with tonos included), treats them as alphabetic, and trims the Greek question mark and ano teleia like other punctuation. Since greek2 the Greek rules apply to every Greek word, and books already opened are laid out again automatically on first open. ια/ιο stay together (βι-βλιο-θή-κη), as the patterns define.
Size
| Device | Official 1.6.0 | With Greek | With Greek, without vi/ar |
|---|---|---|---|
| X3/X4 | 6,105,600 | 6,300,512 (+195 KB) | 6,048,224 (−57 KB) |
| X4 Pro | 6,072,544 | 6,267,600 (+195 KB) | 6,015,296 (−57 KB) |
| Sticky | 5,981,856 | 6,176,880 (+195 KB) | 5,924,576 (−57 KB) |
| X4 Classic | 5,906,384 | 6,101,456 (+195 KB) | 5,849,136 (−57 KB) |
In bytes. The app partition is 6,553,600 bytes. Of the 195 KB, about 165 KB is Greek in 32 reading fonts and 5 menu fonts, 28 KB the Greek strings and 2 KB the hyphenation.
Left out on purpose
- Polytonic Greek. It would take about 230 more characters in every font. SD card fonts already cover it.
- Vietnamese and Arabic in the built-in fonts. Books in those languages still read fine with SD card fonts.
Status
A test build: tried in the simulator and on a friend’s device, not yet on my own. Greek will reach the official CrossInk only if its maker takes it on; until then, the Greek builds come from my fork.
Sources
- The Greek builds on GitHub
- The feat/greek-support branch
- The proposal on CrossInk (#789)
- The original request (#767)
- CrossInk
Your language missing? Not for long 😉
If Greek took under 24 hours, your language isn’t that far off either. For any language CrossInk doesn’t have yet, I take commissions: its letters in the fonts, hyphenation wherever open rules exist, a menu in your language and a ready-to-flash firmware for your device, with the code open for everyone. How it works and how to ask for a quote are on the An X4 Pro with Greek 🇬🇷 and language commissions page.
If you’d like to help
So far I test Greek on a borrowed device. If you use it and would like to buy me a Ko-fi towards an X4 Pro of my own, so every build gets tested on real hardware, the fundraiser page has all the details.