2535f1689362b17cc755ac054cd06d06b76d199c
Bumps HarfBuzzSharp from 7.3.0.3 to 8.3.1.2 Bumps HarfBuzzSharp.NativeAssets.Linux from 7.3.0.3 to 8.3.1.2 Bumps SkiaSharp from 3.116.1 to 3.119.1 Bumps SkiaSharp.NativeAssets.Linux from 3.116.1 to 3.119.1 Bumps SkiaSharp.Views.Desktop.Common from 3.116.1 to 3.119.1 --- updated-dependencies: - dependency-name: HarfBuzzSharp dependency-version: 8.3.1.2 dependency-type: direct:production update-type: version-update:semver-major dependency-group: skiasharp - dependency-name: HarfBuzzSharp.NativeAssets.Linux dependency-version: 8.3.1.2 dependency-type: direct:production update-type: version-update:semver-major dependency-group: skiasharp - dependency-name: SkiaSharp dependency-version: 3.119.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: skiasharp - dependency-name: SkiaSharp.NativeAssets.Linux dependency-version: 3.119.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: skiasharp - dependency-name: SkiaSharp.Views.Desktop.Common dependency-version: 3.119.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: skiasharp ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
.NET MAUI Linux Platform
A comprehensive Linux platform implementation for .NET MAUI using SkiaSharp rendering.
Developed by MarketAlly LLC Lead Architect: David H. Friedel Jr.
Overview
This project brings .NET MAUI to Linux desktops with native X11/Wayland support, hardware-accelerated Skia rendering, and full platform service integration.
Key Features
- Full Control Library: 35+ controls including Button, Label, Entry, CarouselView, RefreshView, SwipeView, and more
- Native Integration: X11 and Wayland display server support
- Accessibility: AT-SPI2 screen reader support and high contrast mode
- Platform Services: Clipboard, file picker, notifications, global hotkeys, drag & drop
- Input Methods: IBus and XIM support for international text input
- High DPI: Automatic scale factor detection for GNOME, KDE, and X11
Quick Start
Installation
# Install the template
dotnet new install Microsoft.Maui.Linux.Templates
# Create a new project
dotnet new maui-linux -n MyApp
cd MyApp
# Run
dotnet run
Manual Installation
dotnet add package Microsoft.Maui.Controls.Linux --prerelease
Supported Controls
| Category | Controls |
|---|---|
| Basic | Button, Label, Entry, Editor, CheckBox, Switch, RadioButton |
| Layout | StackLayout, ScrollView, Border, Page |
| Selection | Picker, DatePicker, TimePicker, Slider, Stepper |
| Display | Image, ImageButton, ActivityIndicator, ProgressBar |
| Collection | CollectionView, CarouselView, IndicatorView |
| Gesture | SwipeView, RefreshView |
| Navigation | NavigationPage, TabbedPage, FlyoutPage, Shell |
| Menu | MenuBar, MenuFlyout, MenuItem |
| Graphics | GraphicsView, Border |
Platform Services
| Service | Description |
|---|---|
ClipboardService |
System clipboard access |
FilePickerService |
Native file open dialogs |
FolderPickerService |
Folder selection dialogs |
NotificationService |
Desktop notifications (libnotify) |
GlobalHotkeyService |
System-wide keyboard shortcuts |
DragDropService |
XDND drag and drop protocol |
LauncherService |
Open URLs and files |
ShareService |
Share content with other apps |
SecureStorageService |
Encrypted credential storage |
PreferencesService |
Application settings |
BrowserService |
Open URLs in default browser |
EmailService |
Compose emails |
SystemTrayService |
System tray icons |
Accessibility
- AT-SPI2: Screen reader support for ORCA and other assistive technologies
- High Contrast: Automatic detection and color palette support
- Keyboard Navigation: Full keyboard accessibility
Requirements
- .NET 9.0 SDK or later
- Linux (kernel 5.4+)
- X11 or Wayland
- SkiaSharp native libraries
System Dependencies
Ubuntu/Debian:
sudo apt-get install libx11-dev libxrandr-dev libxcursor-dev libxi-dev libgl1-mesa-dev libfontconfig1-dev
Fedora:
sudo dnf install libX11-devel libXrandr-devel libXcursor-devel libXi-devel mesa-libGL-devel fontconfig-devel
Documentation
Sample Application
using Microsoft.Maui.Platform;
var app = new LinuxApplication();
app.MainPage = new ContentPage
{
Content = new VerticalStackLayout
{
Spacing = 10,
Children =
{
new Label
{
Text = "Welcome to MAUI on Linux!",
FontSize = 24
},
new Button
{
Text = "Click Me"
},
new Entry
{
Placeholder = "Enter your name"
}
}
}
};
app.Run();
Building from Source
git clone https://github.com/open-maui/maui-linux.git
cd maui-linux
dotnet build
dotnet test
Contributing
We welcome contributions! Please see our Contributing Guide for details.
Architecture
┌─────────────────────────────────────────────────┐
│ .NET MAUI │
│ (Virtual Views) │
├─────────────────────────────────────────────────┤
│ Handlers │
│ (Platform Abstraction) │
├─────────────────────────────────────────────────┤
│ Skia Views │
│ (SkiaButton, SkiaLabel, etc.) │
├─────────────────────────────────────────────────┤
│ SkiaSharp Rendering │
│ (Hardware Accelerated) │
├─────────────────────────────────────────────────┤
│ X11 / Wayland │
│ (Display Server) │
└─────────────────────────────────────────────────┘
Roadmap
- Core control library (35+ controls)
- Platform services integration
- Accessibility (AT-SPI2)
- Input method support (IBus/XIM)
- High DPI support
- Drag and drop
- Global hotkeys
- Complete Wayland support
- Hardware video acceleration
- GTK4 interop layer
License
Copyright (c) 2025 MarketAlly LLC. Licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- MarketAlly LLC - Project development and maintenance
- SkiaSharp - 2D graphics library
- .NET MAUI - Cross-platform UI framework
- The .NET community
Description
Languages
C#
100%