News
Uno Platform Ports Windows Calculator to Linux
Uno Platform has ported the famed Windows Calculator, open sourced last year, to Linux as part of a continuing "proof point" effort to demonstrate the reach of what it describes as the sole UI offering available to target Windows, WebAssembly, iOS, macOS, Android and Linux with single-codebase applications coded in C# and XAML.
Uno Platform undertook that effort after Microsoft open sourced the calculator in March 2019 (find it on GitHub). A few months later, it ported the calculator to the web (via WebAssembly) along with iOS and Android. That was a nontrivial project in that the calculator is largely built with decades-old C++ code that needed to be translated to C#.
"The Windows Calculator is an interesting and not-so-simple piece of software," said Jérôme Laban, CTO of Uno Platform, at the time. "The simple initial UI you see upon launch can be deceiving. Of course, that is a good UX choice Microsoft made as most uses of the calculator are rather simple ones. However, the calculator is complex both in the way it was coded over the years, as well as the advanced functions it has."
Last week, Laban announced that Linux was the latest on the list of Windows Calculator porting targets, a list that also includes macOS.
"Partnering with the Canonical team, we created and published it to the Ubuntu Snap Store so you can easily download and install it. Thanks a lot Ubuntu team for assisting us in this process, as well as blogging about Uno calculator at Ubuntu blogs."
That Oct. 15 blog post by Canonical noted that "You can build Linux applications with Uno Platform using Visual Studio and Ubuntu on WSL. You can snap them up in the snap store and then run your apps on anything from the Linux desktop to a Raspberry Pi."
Along with Canonical's Ubuntu Linux distro, the ported Uno Calculator also runs on:
- Red Hat Enterprise Linux
- Linux Mint
- Debian
- Fedora
- openSUSE
- Manjaro
- Kubuntu
- KDE Neon
- elementary OS
- CentOS
- Arch Linux
However, the project isn't complete, as Laban said "The Uno Platform support for Linux comes with the combination of Skia, SkiaSharp, and GtkSharp, which also makes it a target for Windows (7 and 10) and macOS. The development of the Uno Calculator happened primarily on Windows, with additional testing on Linux machines and devices.
"We still have work to do on our Skia backend, and we’re actively working on updates that will come regularly to provide performance improvements and enhanced fidelity, such as dark theme support, full keyboard support, etc."
For its part, Microsoft isn't done with its open source calculator either, as the project's roadmap says that in 2020 the team is focused on:
- Iterating upon the existing app design based on the latest guidelines for Fluent Design, Windows 10X dual-screen devices, and WinUI 3.0.
- Unblocking community contributions by identifying and addressing bottlenecks affecting developers, including migrating portions of the codebase to C# (#893) and adding a settings page (#596).
- Addressing top user pain points, including clearing up confusion around how Standard Calculator behaves (#138) and fixing hidden characters in copied results (#504).
- Investigating unit converter improvements (#379, #589 and #594)
Of those numbered GitHub issues, only #504 is "closed" as of this writing.
About the Author
David Ramel is an editor and writer at Converge 360.