maui-linux/vsix
logikonline f945d2a537 Add control gallery sample and roadmap documentation
- Add comprehensive ControlGallery sample app with 12 pages
  demonstrating all 35+ controls
- Add detailed ROADMAP.md with version milestones
- Add README placeholders for VSIX icons and template images
- Sample pages include: Home, Buttons, Labels, Entry, Pickers,
  Sliders, Toggles, Progress, Images, CollectionView, CarouselView,
  SwipeView, RefreshView

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-19 05:24:35 -05:00
..
OpenMaui.VisualStudio Add control gallery sample and roadmap documentation 2025-12-19 05:24:35 -05:00
README.md Add Visual Studio extension for Linux platform support 2025-12-19 05:13:16 -05:00

README.md

OpenMaui Visual Studio Extension

This Visual Studio extension adds Linux platform support for .NET MAUI applications.

Features

Project Templates

When installed, you'll see "OpenMaui Linux App" in Visual Studio's New Project dialog:

File → New → Project → Search "OpenMaui"

Launch Profiles

The template includes pre-configured launch profiles:

Profile Description
Linux (Local) Run directly (requires Linux or WSL with GUI)
Linux (WSL) Run via Windows Subsystem for Linux
Linux (x64 Release) Build and run release for x64
Linux (ARM64 Release) Build and run release for ARM64
Publish Linux x64 Create self-contained x64 package
Publish Linux ARM64 Create self-contained ARM64 package

How It Works

┌─────────────────────────────────────────────────────────┐
│                   Visual Studio                          │
├─────────────────────────────────────────────────────────┤
│  File → New → Project                                    │
│    └── OpenMaui Linux App  ←  This extension adds this  │
├─────────────────────────────────────────────────────────┤
│  Debug Dropdown                                          │
│    ├── Linux (Local)                                     │
│    ├── Linux (WSL)        ←  Launch profiles             │
│    ├── Linux (x64 Release)                               │
│    └── Publish Linux...                                  │
└─────────────────────────────────────────────────────────┘

Installation

From Visual Studio Marketplace

  1. Open Visual Studio 2022
  2. Extensions → Manage Extensions
  3. Search for "OpenMaui"
  4. Click Download and restart VS

From VSIX File

  1. Download OpenMaui.VisualStudio.vsix
  2. Double-click to install
  3. Restart Visual Studio

Building the Extension

Prerequisites

  • Visual Studio 2022 with "Visual Studio extension development" workload
  • .NET Framework 4.8 Developer Pack

Build Steps

cd vsix/OpenMaui.VisualStudio
dotnet restore
msbuild /p:Configuration=Release

The VSIX will be in bin/Release/OpenMaui.VisualStudio.vsix

Project Structure

vsix/
└── OpenMaui.VisualStudio/
    ├── OpenMaui.VisualStudio.csproj    # Extension project
    ├── source.extension.vsixmanifest   # VSIX metadata
    ├── ProjectTemplates/               # VS project templates
    │   └── OpenMauiLinuxApp/
    │       ├── OpenMauiLinuxApp.vstemplate
    │       ├── OpenMauiLinuxApp.csproj
    │       ├── Program.cs
    │       ├── App.cs
    │       ├── MainPage.cs
    │       ├── MainPage.xaml
    │       └── Properties/
    │           └── launchSettings.json
    └── Resources/
        ├── Icon.png
        └── Preview.png

Adding Linux to Existing MAUI Projects

If you have an existing MAUI project and want to add Linux support:

Option 1: Add Platform Folder

  1. Add Platforms/Linux/Program.cs to your project
  2. Add OpenMaui.Controls.Linux NuGet package
  3. Copy launchSettings.json from template to Properties/

Option 2: Create Companion Project

  1. Create new "OpenMaui Linux App" project
  2. Reference your shared MAUI library
  3. Build Linux version separately

Debugging on Linux

  1. Install WSL 2 with Ubuntu
  2. Install .NET SDK in WSL: sudo apt install dotnet-sdk-9.0
  3. Install X11 libs: sudo apt install libx11-6
  4. Select "Linux (WSL)" profile and press F5

Via Remote Machine

  1. Set up SSH access to Linux machine
  2. Install vsdbg on remote machine
  3. Configure remote debugging in VS

Via Virtual Machine

  1. Set up Linux VM (VMware, VirtualBox, Hyper-V)
  2. Share project folder with VM
  3. Build and run inside VM

Troubleshooting

"Cannot find 'wsl.exe'"

Install WSL: wsl --install in PowerShell (Admin)

"Display not found"

Ensure WSLg is enabled (Windows 11) or configure X server (Windows 10)

Template not appearing

  1. Clear template cache: devenv /updateconfiguration
  2. Restart Visual Studio

License

MIT License - Copyright (c) 2025 MarketAlly LLC


Developed by MarketAlly LLC • Lead Architect: David H. Friedel Jr.