MSIX

Msix

A command-line tool that create Msix installer for your flutter windows-build files.

Install

In your pubspec.yaml, add msix as a new dependency.

dev_dependencies:
  flutter_test:
    sdk: flutter
  msix: ^0.1.5  # Or the latest version

Create Msix

Run:

PS c:\src\flutter_project\> flutter build windows
PS c:\src\flutter_project\> flutter pub run msix:create

The flutter build windows is required to build the executable that flutter pub run msix:create bundles up in the MSIX install file.

Configuration (Optional)

Add msix_config: configuration at the end of your pubspec.yaml file:

msix_config:
  display_name: MyApp
  publisher_display_name: MyName
  identity_name: MyCompany.MySuite.MyApp
  msix_version: 1.0.0.0
  certificate_path: C:\<PathToCertificate>\<MyCertificate.pfx>
  certificate_password: 1234 (require if using .pfx certificate)
  publisher: CN=MyName
  logo_path: C:\<PathToIcon>\<Logo.png>
  start_menu_icon_path: C:\<PathToIcon>\<Icon.png>
  tile_icon_path: C:\<PathToIcon>\<Icon.png>
  icons_background_color: transparent (or some color like: '#ffffff')
  architecture: x64
  capabilities: 'internetClient,location,microphone,webcam'
Configuration NameDescription (from microsoft docs)Default Value (value type)Required
display_nameA friendly name that can be displayed to users.MyApp (string)No
publisher_display_nameA friendly name for the publisher that can be displayed to users.MyName (string)require if uploading to windows store
identity_nameDescribes the contents of the package.com.flutter.MyApp (string)require if uploading to windows store
msix_versionThe version number of the package.1.0.0.0 (must be four numbers with dots)require if uploading to windows store
certificate_pathC:/<PathToCertificate>/<MyCertificate.pfx>No
certificate_passwordA friendly name that can be displayed to users.1234 (string)require if using .pfx certificate
publisherDescribes the publisher information. The Publisher attribute must match the publisher subject information of the certificate used to sign a package.CN=MyName (string)require if uploading to windows store
logo_pathAn image used as the app logo, sample: C:/<PathToIcon>/<Logo.png>No
start_menu_icon_pathAn image used as the app logo in the start-menu, sample: C:/<PathToIcon>/<Icon.png>No
tile_icon_pathAn image used as the app tile logo in the start-menu, sample: C:/<PathToIcon>/<Icon.png>No
icons_background_colorSpecifies the background color of the app icons, can be transparent or some color like: #fffffftransparent (string)No
architectureDescribes the architecture of the code contained in the package, one of: x86, x64, arm,, neutralx64 (string)No
capabilitiesDeclares the access to protected user resources that the package requires. availables capabilities: internetClient internetClientServer privateNetworkClientServer allJoyn codeGeneration objects3D chat voipCall voipCall phoneCall removableStorage userAccountInformation sharedUserCertificates blockedChatMessages appointments contacts musicLibrary videosLibrary picturesLibrary enterpriseAuthentication phoneCallHistoryPublic spatialPerception userNotificationListener remoteSystem backgroundMediaPlayback offlineMapsManagement userDataTasks graphicsCapture globalMediaControl gazeInput systemManagement lowLevelDevices documentsLibrary accessoryManager allowElevation location microphone webcam radiosinternetClient,location,microphone,webcam (string)No

Windows Store

To upload the MSIX file to Windows Store the configuration values publisher_display_name, identity_name, msix_version, publisher must be valid.

For more information, please see this tutorial: How to publish your MSIX package to the Microsoft Store?

package tags: msi windows win10 windows10 windows store windows installer windows packaging appx AppxManifest SignTool MakeAppx

Libraries

msix