Git Product home page Git Product logo

nanabox's Introduction

NanaBox NanaBox

GitHub Actions Build Status Total Downloads

Windows Store - Release Channel Windows Store - Preview Channel

Latest Version - Release Channel Latest Version - Preview Channel

Latest Release Downloads - Release Channel Latest Release Downloads - Preview Channel

Screenshot 1

Screenshot 2

Screenshot 3

NanaBox is a third-party lightweight XAML-based out-of-box-experience oriented Hyper-V client based on Host Compute System API, Remote Desktop ActiveX control and XAML Islands.

All kinds of contributions will be appreciated. All suggestions, pull requests and issues are welcome.

Features

  • Based on Host Compute System API as virtualization backend.
  • Support Hyper-V Enhanced Session Mode for Windows Guests.
  • Support Hyper-V Nested Virtualization.
  • Support Hyper-V GPU paravirtualization solution a.k.a GPU-PV.
  • Support expose COM ports and physical drives to the virtual machine.
  • Support enables Secure Boot for virtual machine.
  • Use JSON based format to support portable virtual machine.
  • Packaging with MSIX for modern deployment experience.
  • Modernize the UI with XAML Islands with dark and light mode support. (Dynamic dark and light mode switching is supported for Windows 11 and later.)
  • Full High DPI and partial Accessibility support.
  • Support full screen mode.
  • Multi-language Support: English and Simplified Chinese.

System Requirements

  • Supported OS: Windows 10 Version 2004 (Build 19041) or later
  • Supported Platforms: x64 and ARM64

Known issues

  • The localization for the NanaBox UI is not implemented in NanaBox 1.0 Preview 1.
  • The virtual machine creation UI and settings UI is not implemented in NanaBox 1.0 Preview 1.
  • The automatic switch between Enhanced Session Mode and Basic Session Mode is not implemented because HcsEventSystemRdpEnhancedModeStateChanged event can be fired on at least Windows 10 Build 17763, but in Windows 11 Build 22621 cannot. It's confirmed as a HCS API bug via Kris Harper and will fix it in the future.
  • TPM support is not available because current stage of HCS API seems doesn't implement them.
  • NanaBox needs elevated privilege via UAC because HCN API in Windows 11 Build 22621 will return ERROR_ACCESS_DENIED even add the current user to the Hyper-V Administrators user group. Windows 10 don't have that issue.
  • Due to HCS API limitation, the guest only supports UEFI Class 3 or UEFI without CSM or Hyper-V Gen 2 VM.
  • You may meet the UI frozen when lost the focus from the Settings menu in the NanaBox main window (the popup windows created by XAML Islands) unless switch to another application windows before switch back to the NanaBox main window, may caused by the design of XAML Islands and Remote Desktop ActiveX control.

Development Roadmap

  • 1.0 Series (2023 Q2)
    • Based on Host Compute System API as virtualization backend.
    • Add Hyper-V Enhanced Session Mode support for Windows Guests.
    • Add Hyper-V GPU paravirtualization solution a.k.a GPU-PV support.
    • Add expose COM ports and physical drives to the virtual machine support.
    • Add enable Secure Boot for virtual machine support.
    • Add JSON based format to support portable virtual machine.
    • Packaging with MSIX for modern deployment experience.
    • Modernize the UI with XAML Islands with dark and light mode support. (Dynamic dark and light mode switching is supported for Windows 11 and later.)
    • Add full High DPI and partial Accessibility support.
    • Add full screen support. (Suggested by Belleve.)
    • Add localization for the NanaBox UI.
    • Submit to the Windows Store.
    • Add virtual machine creation UI and settings UI.
  • 1.x Series (Late 2023)
    • Provide tool for Hyper-V vmcx migration. (Suggested by Belleve.)
    • Add support for setting RDP options with .rdp file. (Suggested by awakecoding.)
    • Add support for connecting virtual machine with MsRdpEx from Devolutions. (Suggested by awakecoding.)
  • Future Series (T.B.D.)
    • Currently no new feature plans for this series.

Documents

nanabox's People

Contributors

andromedamelody avatar fengjixuchui avatar mourinaruto avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.