WSL/手动安装

< WSL
跳转到:导航搜索
手动安装 WSL 应用允许测试未发布的 Beta 版本


https://build.opensuse.org/package/show/Virtualization:WSL/kiwi-images-wsl 获取 appx

 wsl --import openSUSE E:\wslDistroStorage\openSUSE .\opensuse.tar

为了从 Microsoft Store 之外安装 ("旁加载") WSL 应用,必须遵循几个步骤

  1. 确保已启用旁加载
  2. 下载 appx
  3. 安装签名证书
  4. 运行 appx 文件

允许旁加载

转到设置 -> 更新&安全 -> 开发者选项 并确保允许旁加载

对于 22H2 (Windows 11),截至 20231218 [可能更早] - 我 (Scott B.) 没有看到这个特定的措辞 - 只有“开发者模式:从任何来源安装应用,包括松散文件”并且对我来说是“关闭”的。我没有问题使用 Store 之外的 .appx 文件(在适当的证书到位的情况下)。

对于 Windows 10 的 20H2 版本

下载 appx 文件

Windows 应用实际上是带有特殊元数据的 zip 文件。文件后缀是“appx”。目前在开发中的 openSUSE 的 appx 文件可从 download.opensuse.org 下载。

安装证书

Microsoft Store 中的应用由受信任的证书签名。旁加载的应用由开发者证书签名。对于 openSUSE,该证书存储在 openSUSE 构建服务中。幸运的是,appx 文件嵌入了证书,因此右键单击 appx 文件并按照一些步骤可以将其作为受信任的证书导入

您可能(几乎可以肯定,具体取决于 .appx 文件的来源)还需要 openSUSE/SUSE SLE 的“安全启动 CA”证书

“openSUSE 安全启动 CA” “SUSE Linux Enterprise 安全启动 CA”

可以从发行版的“shim”软件包中获得,例如

http://download.opensuse.org/source/distribution/leap/15.3/repo/oss/src/

并以与上述相同的方式安装。首先,从上面下载 shim-rpm,然后运行

  rpm2cpio shim*.rpm | cpio -idmv

并复制

  ./usr/share/efi/x86_64/shim-opensuse.der

到 Windows-PC。双击它,并在受信任的根存储中安装证书。

启动 appx

只需双击 appx 即可运行它。

或者从 PowerShell

 Add-AppxPackage .\app_name.appx

例如

 Add-AppxPackage .\openSUSE-Leap-15.1-x64-Build7.19.appx


手动导入 .tar (非 appx)

您需要安装 SDK 以使用 MakeAppx.exe,并确保已启用开发者模式。

然后,可以通过运行轻松导入 tarball

 MakeAppx unbundle /p bundle_name.appxbundle /d output_directory
 wsl --import <DistroName> <InstallLocation> <InstallTarFile>

Windows for ARM

Tumbleweed 和 Leap 15.4+ 的镜像已准备就绪,需要一些时间才能到达 Microsoft Store。


与此同时,您可以查看下面的手动方式。

手动提取 Appx 是目前在 Windows for Arm 上安装 openSUSE WSL 镜像的最简单方法。

当前生成的 Arm 版本的 appx 已损坏(实际上是 x86_64 二进制文件,因为 mingw 不涵盖 Windows for ARM,所以是 x86 二进制文件),但是它包含一个完全正常的 .tar 归档文件。所以只需提取引用的 appx 并手动导入即可。

请注意,您需要找到 Visual Studio SDK 的 Arm 版本 SDK。