The Windows Calculator on Linux with Uno Platform

by Rhys Davies on 15 October 2020

The good folks in the Uno Platform community have ported the open-source Windows Calculator to Linux. And they’ve done it quicker than Microsoft could bring their browser to Linux.  The calculator is published in the snapstore and can be downloaded right away. If you’re on Ubuntu or you have snapd installed just run: 

snap install uno-calculator

The Uno Platform brought their support to Linux during UnoConf 2020. Uno Plaform allows you to build native mobile, desktop, and WebAssembly apps with C# and XAML from a single code base. 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.

Developing with Uno Platform for Linux

Maintaining separate code bases for multiple platforms requires a lot of time and effort. Committing to support and maintain an application on Windows, iOS, Android, macOS and Linux to make an application truly cross-platform can be daunting. 

With Uno Platform you can build your C# and XAML codebase to make it more portable. Uno Platforms unique approach for achieving pixel-perfect UI, Uno Platform adjusts your application to look and feel the way it should regardless of the operating system. All you need is to maintain one codebase. 

On Linux, Uno Platform projects use the Skia rendering engine to draw graphical elements. Uno Platform applications then integrate into the Ubuntu desktop with a GTK shell. And it’s all open-source, built on the Mono Project.

You can get started by visiting the Uno Platform docs for Linux and WSL. In the coming months, the Uno Platform will also publish detailed documentation on working with snaps and exactly how to build your Uno application as a snap. 

Uno Platform snaps

When you finish your application you have to start thinking about support and maintenance. The users of your apps should be able to trust that you’ll keep them up-to-date and fully patched. On Linux, snaps are the best way to do this. Snaps are a way of packaging your software that bundles your application and its dependencies into an easily updated container. 

Uno and snaps both run on x86 and ARM so developers can target and test IoT applications on Raspberry Pi. The Uno Calculator is one example of an app that, with a little bit of work, could make a neat little IoT device. Imagine a physical Windows calculator, running Ubuntu, on a Raspberry Pi. And as a strictly confined snap, it can easily be made into a production-ready device with Ubuntu Core;  a minimal, containerised version of Ubuntu made up of snaps for security and the same updatability you have in your application.

What now? 

If you’re interested in what else you can do with Ubuntu Core and snaps, or want to build an Uno project for the Raspberry Pi, there are a few places you can go. You can give the Uno Platform a try, read up on building snaps, or get involved with the Ubuntu Appliances initiative. Talk to us about your application and we can help you snap it up, publish it, and find new users.


Newsletter Signup

Related posts

How to make snaps faster

A great user experience is (or at least, should be) an integral part of any software that involves user interaction. On the desktop, this starts with the application launch, and continues through the session. The overall time to completion of tasks as well as interactive responsiveness are a core element in this journey. If you’re […]

What is an IoT marketplace?

The Internet of Things (IoT) ecosystem is expanding at a rapid rate, with the number of devices growing every year. The increase in physical hardware being manufactured multiplies the amount of software needed to perform various functions on new platforms. There are a range of IoT use cases, including voice-controlling the lights in your […]

Snap Performance Skunk Works – Ensuring speed and consistency for snaps

Snaps are used on desktop machines, servers and IoT devices. However, it’s the first group that draws the most attention and scrutiny. Due to the graphic nature of desktop applications, users are often more attuned to potential problems and issues that may arise in the desktop space than with command-line tools or software running in […]