Windows Application

WinAPX

Overview

WinAPX is a Windows application for creating, managing, and exporting Linux environments through the Windows Subsystem for Linux (WSL). It provides both a graphical desktop interface and a full command-line interface, making Linux development on Windows accessible without requiring manual WSL configuration or shell scripting.

The project was developed as a Senior Capstone at California State University, Chico, takes inspiration from the APX package manager found in Vanilla OS, and was presented at the CSU Chico College of Engineering Capstone Showcase.

Motivation

WSL is powerful, but working with it directly requires comfort with the command line and an understanding of how distributions, file systems, and exports work under the hood. There is no built-in way to manage multiple named environments, export Linux GUI applications as Windows shortcuts, or organize per-project sandboxes from a single interface.

WinAPX addresses this by wrapping WSL's capabilities in a consistent interface. Developers can maintain multiple isolated Linux environments, export Linux applications to the Windows desktop, and share environments as archives, without touching the terminal unless they want to.

Use Cases

  • Per-project environments: Keep dependencies, toolchains, and configurations isolated per project without interference.
  • Linux apps on Windows: Export Linux GUI applications, including browsers, editors, and dev tools, as native Windows shortcuts that launch with a double-click.
  • Environment portability: Export any environment to a .tar archive and import it on another machine, making setups reproducible and shareable.
  • Clean sandboxing: Spin up and tear down Linux environments without affecting the host system or other environments.

Tech Stack

  • C# / .NET 8: Core application logic, CLI, and WSL integration.
  • WinUI 3: Desktop GUI built with Microsoft's current-generation UI framework for Windows applications, replacing the older WPF and UWP stacks. WinUI 3 is still relatively new and sparsely documented compared to its predecessors.
  • WSL (Windows Subsystem for Linux): All environment management is backed by WSL, supporting both Ubuntu and Arch Linux distributions.

GUI & CLI

The GUI and CLI are fully interchangeable; anything available in the interface is also supported from the terminal. The CLI covers environment creation, import, export, launch, and deletion, and is suitable for use in scripts or automated workflows.

WinAPX on GitHub