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#.

Uno Calculator on Linux
[Click on image for larger view.] Uno Calculator on Linux (source: /Canonical/Uno Platform).

"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 for Converge360.

comments powered by Disqus


  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube