Additional setup for Linux or WSL
The Uno Platform for Linux current comes with a rendering backend using Skia, and a shell support with Gtk3.
It is possible to develop :
- Using Visual Studio on Windows directly, or using the Windows Subsystem for Linux (WSL).
- Using VS Code under Linux
Setting for Windows and WSL
Using VS 2019 16.6 or later:
- Install WSL Ubuntu 18.04 or later
- Install the prerequisites for Linux mentioned in the next section, in your installed distribution using the Ubuntu shell
- On Windows 10, Install
vcXsrv
, an X11 server for Windows- You'll need to start the server in "Multiple windows" mode, starting with "no client" mode.
- On Windows 11, Wayland is supported and nothing needs to be installed
- Install the GTK3 runtime.
- Using the WSL 1 mode is generally best for performance and ease of use for the X11 server
- You can switch between versions of a distribution using
wsl --set-version "Ubuntu-20.04" 1
- You can list your active distributions with
wslconfig /l
and change the default withwslconfig /s "Ubuntu-20.04"
- You can change the used distribution with the
"distributionName": "Ubuntu-20.04"
launch profile parameter of the VS WSL 2 Extension. - If you have a insider preview of Windows 10, you may use the wayland server.
- If you still want to use WSL 2 anyways, you can try following those steps.
- You can switch between versions of a distribution using
- Install the
dotnet new
templates:dotnet new -i Uno.Templates
- Then create a new project using:
dotnet new unoapp -o MyUnoApp
Now let's run the application:
- Open the solution using Visual Studio
- In the debugger menu, next to the green arrow, select WSL (or WSL 2 depending on the visual studio version)
- In the launch profile file, set:
"environmentVariables": {
"DISPLAY": ":0",
"GDK_GL": "gles", // use this line when running under WSL on Windows 11
},
- Start the debugger session
- Visual Studio may ask you to install .NET 6 and the Linux debugger, press OK and let the installation finish, then restart the debugging session.
Setting up for Linux
- Install GTK3:
sudo apt update sudo apt-get install gtk+3.0 mesa-utils libgl1-mesa-glx ttf-mscorefonts-installer
- Install .NET 6
Finalize your environment
- Open a Terminal.
- a. Install the tool by running the following command from the command prompt:
b. To update the tool, if you already have an existing one:dotnet tool install -g uno.check
dotnet tool update -g uno.check
- Run the tool from the command prompt with the following command:
If the above command fails, use the following:uno-check
~/.dotnet/tools/uno-check
- Follow the instructions indicated by the tool
You can find additional information about uno-check here.
Install the templates and create the application
- Install the
dotnet new
templates:dotnet new -i Uno.Templates
- Then create a new project using:
dotnet new unoapp -o MyUnoApp
Now let's run the GTK based application:
- Open the folder created by
dotnet new
- In the terminal, build and run the application:
cd MyUnoApp.Skia.Gtk dotnet run
And run the WebAssembly head with:
bash cd .. cd MyUnoApp.Wasm dotnet run
Getting Help
If you continue experiencing issues with Uno Platform, please visit our GitHub Discussions or Discord - #uno-platform channel where our engineering team and community will be able to help you.