Main Page: Difference between revisions

From Wiki Maui Linux NET
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
= Maui Linux .NET =
= Maui Linux .NET =


Welcome to **Maui Linux .NET** — a community-maintained **fork of Microsoft’s .NET MAUI** to add **Linux support via GtkSharp** (GTK)
Welcome to **Maui Linux .NET** — a community reboot of the original **maui-linux** project. 
This project builds on prior community efforts (see the original **maui-linux** fork) and aims to deliver a usable developer experience on Linux.
This project is a **fork of the community initiative “maui-linux”**, which attempted to bring **.NET MAUI** to Linux systems using **GtkSharp** (GTK).


''Note:''
The goal of Maui Linux .NET is to pick up where development stalled — rebuilding, documenting and maintaining a working Linux backend for MAUI applications.
* This is **not** an official Microsoft platform.
 
* It is a **fork** focused on Linux, using **GtkSharp** (GTK) bindings rather than a Skia-only approach.  
''Note: This project is not affiliated with Microsoft or the official .NET MAUI team.''
* See: original fork and discussions for Linux + GTK backend. [Sources]


----
----
Line 15: Line 14:
! Date !! Event !! Notes
! Date !! Event !! Notes
|-
|-
| March 2021 || Community discussion on Linux/GTK for MAUI || Early planning around **GtkSharp** backend. [1]
| March 2021 || Early discussions on Linux backend for .NET MAUI || Community experiments using GtkSharp begin.
|-
|-
| May 23, 2022 || **.NET MAUI 6.0 GA** || First stable MAUI (Android, iOS, macOS, Windows). [2][3]
| August 2021 || First commits to **maui-linux** repository || The project starts under the GitHub account of [https://github.com/jsuarezruiz jsuarezruiz]
|-
|-
| Nov 8, 2022 || **.NET MAUI 7.0** || Ships with .NET 7. [4]
| May 2022 || .NET MAUI 6.0 released || The original maui-linux fork updates its base.
|-
|-
| Nov 14, 2023 || **.NET MAUI 8.0 (LTS)** || Major quality & tooling updates. [5]
| Late 2022 – 2023 || Slow progress || Builds become unreliable; missing documentation limits contributors.
|-
|-
| Nov 12, 2024 || **.NET MAUI 9.0 (GA)** || Performance & control updates. [6][7]
| Early 2024 || Development stagnates || Few or no commits for months; open issues remain unanswered.
|-
|-
| 2021–2022 || **maui-linux** fork takes shape || Community fork from dotnet/maui to add Linux/GTK. [8][9]
| October 2025 || **Maui Linux .NET** fork created || New maintainers restart the project with focus on documentation, reproducible builds, and contributor onboarding.
|-
| Oct 2025 || **Maui Linux .NET** (this fork) || Project reboot with focus on docs, builds, and contributor onboarding.
|}
|}
''Sources:'' 
[1] Linux + GTK discussion (2021) – GtkSharp options. 
[2] .NET MAUI GA news (May 2022). 
[3] Microsoft support policy page (dates). 
[4] Support policy lists MAUI 7 (Nov 2022). 
[5] “Announcing .NET MAUI in .NET 8” (Nov 2023). 
[6] “Announcing .NET 9” (MAUI 9 highlights). 
[7] What’s new in .NET MAUI 9 (docs). 
[8] **maui-linux** repo (forked from dotnet/maui). 
[9] HN/Community notes: fork uses **GtkSharp**.


----
----


== 🚧 Project Status ==
== 🚧 Project Status ==
**Goal:** make MAUI apps run on Linux via **GtkSharp** (GTK backend), with Wayland/X11 support and sane packaging.
Maui Linux .NET aims to make **.NET MAUI applications run natively on Linux desktops** through a **GtkSharp** backend.
 
However, the original *maui-linux* project suffered from several core problems:


**Current challenges (why this fork exists):**
* 📚 **Lack of documentation** – build steps and dependencies were unclear or outdated. 
* **Documentation gaps** – outdated or missing; hard to reproduce a working environment.
* 🧩 **Build failures** – even experienced developers struggled to compile a working binary.
* **Stalled upstream activity** – months without meaningful updates in the original fork; open issues linger. [10]
* 💤 **No recent updates** – the last meaningful commits date back many months.
* **Hard to compile** – repeated reports of build failures scare contributors away. [11]
* 👥 **No community traction** – without guidance or working examples, contributors lost interest quickly.
* **Thin community** – without docs and green builds, it’s tough to grow contributors.


**Our focus:** fix the build (scripts/CI), write clear docs, and provide small, verifiable steps to success.
**Maui Linux .NET** exists to change that — by re-organizing the codebase, documenting every step, and providing working templates for future contributors.


----
----


== 💪 Contribute ==
== 💪 Contribute ==
We welcome:
We’re rebuilding the project as a transparent, open collaboration.   
* **Developers:** GTK handlers, windowing, input, WebView (WebKitGTK), packaging (Flatpak/Deb).   
If you want to help, you can:
* **Doc writers:** Getting Started, Troubleshooting, Architecture notes. 
* **Testers:** Ubuntu/Fedora/Arch; Wayland & X11; HiDPI.


Start here: [[How_to_Start|How to Start]] · [[Contributing|Contributing Guide]] · [[Roadmap|Roadmap]]
* **Fix and refactor** the GtkSharp backend. 
* **Improve documentation** (build steps, dependencies, packaging). 
* **Test** on multiple distributions (Ubuntu, Fedora, Arch, openSUSE). 
* **Add automation** (CI pipelines, build scripts, sample apps).
 
Start here: [[How_to_Start|How to Start]]
If you encounter problems: [[Troubleshooting|Troubleshooting Guide]]


----
----


== 🧭 How to Start ==
== 🧭 How to Start ==
* Follow [[How_to_Start|How to Start]] for prerequisites and the `bootstrap.sh`.   
* Install .NET 8 or newer and required GTK dependencies. 
* Try the sample: `dotnet build` / `dotnet run`.   
* Clone the repo and run the bootstrap script.   
* If it fails, see [[Troubleshooting]] and open an Issue with logs.
* Try to build the sample project with `dotnet build` or `dotnet run`.   
* Report issues with logs and environment details.
 
Detailed instructions: [[How_to_Start]]


----
----


== 🔗 External Links ==
== 🔗 External Links ==
* Original fork: [https://github.com/jsuarezruiz/maui-linux maui-linux (GitHub)]
* Original repository: [https://github.com/jsuarezruiz/maui-linux maui-linux (GitHub)]
* GTK backend community: [https://github.com/MauiGtk MauiGtk Community (GitHub)] 
* Official MAUI: [https://github.com/dotnet/maui dotnet/maui (GitHub)]
 
----
 
== ℹ️ About this Wiki ==
This wiki documents the **Maui Linux .NET** fork for Linux/GTK. It’s maintained by volunteers. 
Please improve this page, or contribute via PRs once repo ↔ wiki sync is enabled.
 
----
''Last updated: October 2025''

Revision as of 14:10, 5 October 2025

Maui Linux .NET

Welcome to **Maui Linux .NET** — a community reboot of the original **maui-linux** project. This project is a **fork of the community initiative “maui-linux”**, which attempted to bring **.NET MAUI** to Linux systems using **GtkSharp** (GTK).

The goal of Maui Linux .NET is to pick up where development stalled — rebuilding, documenting and maintaining a working Linux backend for MAUI applications.

Note: This project is not affiliated with Microsoft or the official .NET MAUI team.


📅 Timeline

Date Event Notes
March 2021 Early discussions on Linux backend for .NET MAUI Community experiments using GtkSharp begin.
August 2021 First commits to **maui-linux** repository The project starts under the GitHub account of jsuarezruiz.
May 2022 .NET MAUI 6.0 released The original maui-linux fork updates its base.
Late 2022 – 2023 Slow progress Builds become unreliable; missing documentation limits contributors.
Early 2024 Development stagnates Few or no commits for months; open issues remain unanswered.
October 2025 **Maui Linux .NET** fork created New maintainers restart the project with focus on documentation, reproducible builds, and contributor onboarding.

🚧 Project Status

Maui Linux .NET aims to make **.NET MAUI applications run natively on Linux desktops** through a **GtkSharp** backend.

However, the original *maui-linux* project suffered from several core problems:

  • 📚 **Lack of documentation** – build steps and dependencies were unclear or outdated.
  • 🧩 **Build failures** – even experienced developers struggled to compile a working binary.
  • 💤 **No recent updates** – the last meaningful commits date back many months.
  • 👥 **No community traction** – without guidance or working examples, contributors lost interest quickly.
    • Maui Linux .NET** exists to change that — by re-organizing the codebase, documenting every step, and providing working templates for future contributors.

💪 Contribute

We’re rebuilding the project as a transparent, open collaboration. If you want to help, you can:

  • **Fix and refactor** the GtkSharp backend.
  • **Improve documentation** (build steps, dependencies, packaging).
  • **Test** on multiple distributions (Ubuntu, Fedora, Arch, openSUSE).
  • **Add automation** (CI pipelines, build scripts, sample apps).

Start here: How to Start If you encounter problems: Troubleshooting Guide


🧭 How to Start

  • Install .NET 8 or newer and required GTK dependencies.
  • Clone the repo and run the bootstrap script.
  • Try to build the sample project with `dotnet build` or `dotnet run`.
  • Report issues with logs and environment details.

Detailed instructions: How_to_Start