A developer made Claude port omawrite to windows
The build system executes inside Docker to output a 109MB distribution directory, which is stripped using strip --strip-unneeded to reduce binary size.
By Dillip Chowdary β’ Oct 10, 2026 β’ Source: github.com
A developer under the handle WhiskeyTuesday released a 42-line cross-compilation port of omawrite to Windows, packaged into standalone executable builds without requiring a full Qt compilation toolchain from source. Detailed in github.com's report, the port brings the default markdown editor from Omarchy 4 "Quattro" over to the Windows operating system using prebuilt Fedora packages and custom deployment scripts.
This article details how the omawrite Windows port was built, the architecture that allowed a small patch footprint, key features like PDF printing and theme integration, target user impacts, and what developments to monitor next. It is intended for software developers, C++ programmers, Qt developers, and open-source software enthusiasts looking for portable Windows desktop tools and efficient cross-compilation patterns.
A developer made Claude port omawrite: what actually changed
The entire port consists of 42 total lines of code changes, with 30 of those lines dedicated to #ifndef preprocessor directives. None of the core editor logic, syntax highlighter routines, or Qt Quick QML files required modification to build on Windows. The port compiled cleanly in about 15 seconds during automated testing.
The primary platform-specific requirement in the original codebase was an xdg-desktop-portal block located within src/systemtheme.cpp. Because Qt already provides a native fallback for system color schemes via QStyleHints::colorScheme() across platforms, the core modification involved removing the Linux D-Bus call and enabling the pre-existing fallback logic. Standard Qt modules including QProcess, QSaveFile, QStandardPaths, and the PDF print pipeline functioned without code changes on Windows.
A developer made Claude port omawrite: how it works

Building the application avoids compiling the Qt framework from source by utilizing Fedora's mingw SIG prebuilt repository packages, including mingw64-gcc-c++, mingw64-qt6-qtbase, and mingw64-qt6-qtdeclarative. Because Fedora does not package windeployqt, a custom Python script named deploy.py walks the PE import table using objdump -p to resolve dependency closure against the sysroot. The build system executes inside Docker to output a 109MB distribution directory, which is stripped using strip --strip-unneeded to reduce binary size.
Packaging scripts generate two distinct single-file executable wrappers sized at approximately 26MB each using LZMA2 compression. The omawrite-portable.exe executable extracts temporary runtime files to %TEMP% on launch and cleans up upon exit, paying an unpacking penalty on every execution. The omawrite-setup.exe variant extracts once to %LOCALAPPDATA%, creates system shortcuts, and supports file association routing for .md files.
Advertisement
Tech Pulse Daily
Get tomorrow's pulse first
Join engineers who read Tech Pulse before stand-up. Free, weekday mornings.
A developer made Claude port omawrite: why it matters now
The port demonstrates how standard Qt abstractions maintain cross-platform capabilities when Linux-specific D-Bus integrations are properly guarded. The print system generates PDF documents by instantiating a QTextDocument and calling setMarkdown(), creating structured heading hierarchies in exported files. Conversely, the editor canvas operates as a syntax highlighter over raw text rather than a full WYSIWYG editor.
Inline markdown elements like bold markers are rendered at 1pt font size using the background color and negative letter-spacing to collapse their width while keeping text bolded. Headings remain formatted in bold without font size adjustments. The application follows system light and dark modes natively on Windows 11, using helper scripts set-light.cmd and set-dark.cmd to write registry values directly when testing unactivated Windows installations.
A developer made Claude port omawrite: who is affected
Windows users seeking a lightweight markdown editor gain access to standalone single-file executables that do not require local installation or system administrative privileges. Because the binaries are unsigned, users launching the application will encounter Windows SmartScreen warnings requiring manual confirmation via the "Run anyway" prompt.
The application is distributed under the MIT license originally authored by David Heinemeier Hansson, dynamically linked against Qt under LGPLv3 license terms, and bundles iA Writer Mono under OFL 1.1. Upstream maintainers at Omacom can apply the changes directly from windows-port.patch, as the patch maintains full bit-for-bit compatibility with Linux builds by preserving libQt6DBus linking on non-Windows targets.
A developer made Claude port omawrite: what to watch
Future updates depend on whether upstream maintainers choose to merge the Windows compatibility patch into the main repository branch. The current binaries were compiled against Qt 6.8.3 from Fedora packages rather than upstream's Qt 6.11 release, leaving potential API differences unverified across newer framework versions.
The distribution binary footprint remains bounded by core Qt libraries such as icudata74.dll, which accounts for 30MB of space unless compiled statically with -no-icu. Further developments will indicate whether official releases adopt static builds, sign Windows executables to clear SmartScreen prompts, or add native file argument handling to the portable executable wrapper.
Developer Action Items
- β Diff the official changelog for Claude / GitHub / Docker before you bump β APIs, defaults, and removed flags only.
- β Install through the vendor's documented channel in staging; keep a one-command rollback and time-box the canary.
- β Grep your repo for old flag names, lockfile pins, and plugin versions that the notes mark as breaking.
- β Prefer the first patch cut over the day-zero tag unless you have a reason to be on the leading edge.
- β If HN Claude/Codex/Fable did not name a region, plan, or SKU, screenshot the official availability line before you promise it to users.
A developer made Claude port omawrite FAQ
What is omawrite-win?
It is a 42-line cross-compilation port of the omawrite markdown editor from Omarchy 4 "Quattro" to Windows, packaged into standalone executable files.
How large are the executable downloads for Windows?
The compressed single-file executables are approximately 26MB each, reduced from an uncompressed 165MB distribution folder using binary stripping and LZMA2 compression.
Does omawrite-win require compiling Qt from source?
No, the build pipeline uses prebuilt Qt binaries from Fedora's mingw package repository inside a Docker container alongside a custom deployment script.
What license applies to the omawrite Windows port?
The application logic is MIT licensed, Qt libraries are dynamically linked under LGPLv3, and the bundled iA Writer Mono font uses OFL 1.1.
Sources
Author
Dillip Chowdary
Writes Tech Bytes coverage of AI, engineering, and the tools that actually ship. Editor of Tech Pulse Daily.
Related on Tech Bytes
Fairphone is launching its latest repairable phone in the US too
Read β
Detroit startup Grounded raises $5M to customize electric and gas-powered vans
Read β
BGP Role model: tracking the adoption of RFC 9234
Read β
We still donβt know how people are really using AI
Read β
Today's Tech Pulse briefing
Full briefing β
Advertisement