Skip to content

Commit

Permalink
Merge pull request #414 from WhitewaterFoundry/development
Browse files Browse the repository at this point in the history
Development Pull
  • Loading branch information
Hayden committed Apr 17, 2019
2 parents b1f0524 + d60d384 commit 6018065
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 25 deletions.
24 changes: 12 additions & 12 deletions BUILDING.md
@@ -1,6 +1,6 @@
## WLinux Components
## Pengwin Components

- /create-targz-x64.sh - Builds the WLinux custom Linux distro in a WLinux or Debian environment.
- /create-targz-x64.sh - Builds the Pengwin custom Linux distro in a Pengwin or Debian environment.
- Launcher project - Builds the actual executable that is run when a user launches the app.
- DistroLauncher-Appx project - Builds the distro package with all the assets and other dependencies.

Expand All @@ -26,21 +26,21 @@ Read more about the components from the upstream template by Microsoft [here](ht
1. Select "Choose Certificate"
1. Click the Configure Certificate drop down and select Create test certificate.
1. Build install.tar.gz
1. You will need access to an existing WLinux or Debian-based distro for this step. If you do not already have WLinux installed, I recommend the following steps:
1. You will need access to an existing Pengwin or Debian-based distro for this step. If you do not already have Pengwin installed, I recommend the following steps:
- Enable WSL on Windows if you have not already.
- Install the [Debian for WSL app](https://www.microsoft.com/en-us/p/debian-gnu-linux/9msvkqc78pk6?activetab=pivot%3Aoverviewtab) from the Microsoft Store.
- Run, let it finish installing, configure your username and password.
- Then you will need to update apt, upgrade existing packages, and then install git:
- ` $ sudo apt-get update ; sudo apt-get upgrade -y ; sudo apt-get install git -y`
1. With your WLinux (or configured/updated Debian) distro in place, execute the following:
- ` $ git clone https://github.com/WhitewaterFoundry/WLinux.git `
- ` $ cd WLinux`
1. With your Pengwin (or configured/updated Debian) distro in place, execute the following:
- ` $ git clone https://github.com/WhitewaterFoundry/Pengwin.git `
- ` $ cd Pengwin`
- ` $ chmod u+x create-targz-x64.sh`
- ` $ ./create-targz-x64.sh`
1. You should find an install.tar.gz in the /x64/ directory of your build directory. (When we get ARM64 support working there will also be an install.tar.gz in a /ARM64/ directory.)
1. Build the solution to make sure you have everything you need. Fix any build dependencies you are missing.
1. Build the Windows UWP package:
1. Open a `Developer Command Prompt for VS 2017` as an administrator and change directory to your build directory.
1. Open a `Developer Command Prompt for VS 2019` as an administrator and change directory to your build directory.
1. Run `build.bat`

1. If everything has gone correctly, you should find your app package in a subfolder under the `AppPackages\DistroLauncher-Appx` folder.
Expand All @@ -55,21 +55,21 @@ Read more about the components from the upstream template by Microsoft [here](ht
## Command Line Usage
The launcher app provides the following functionality:

* `wlinux.exe`
* `pengwin.exe`
- Launches the user's default shell in the user's home directory.

* `wlinux.exe install [--root]`
* `pengwin.exe install [--root]`
- Install the distribution and do not launch the shell when complete.
- `--root`: Do not create a user account and leave the default user set to root.

* `wlinux.exe run <command line>`
* `pengwin.exe run <command line>`
- Run the provided command line in the current working directory. If no command line is provided, the default shell is launched.
- Everything after `run` is passed to WslLaunchInteractive.

* `wlinux.exe config [setting [value]]`
* `pengwin.exe config [setting [value]]`
- Configure settings for this distribution.
- Settings:
- `--default-user <username>`: Sets the default user to <username>. This must be an existing user.

* `wlinux.exe help`
* `pengwin.exe help`
- Print usage information.
12 changes: 6 additions & 6 deletions DistroLauncher-Appx/DistroLauncher-Appx.vcxproj
Expand Up @@ -7,8 +7,8 @@
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
<AppContainerApplication>true</AppContainerApplication>
<ApplicationType>Windows Store</ApplicationType>
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformMinVersion>10.0.16299.0</WindowsTargetPlatformMinVersion>
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformMinVersion>10.0.17134.0</WindowsTargetPlatformMinVersion>
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
<TargetName>Pengwin</TargetName>
<ProjectName>DistroLauncher-Appx</ProjectName>
Expand All @@ -35,26 +35,26 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
Expand Down
1 change: 1 addition & 0 deletions DistroLauncher-Appx/DistroLauncher-Appx.vcxproj.filters
Expand Up @@ -161,5 +161,6 @@
<CustomBuild Include="$(targetname)" />
<CustomBuild Include="$(targetname)" />
<CustomBuild Include="$(targetname)" />
<CustomBuild Include="$(targetname)" />
</ItemGroup>
</Project>
12 changes: 6 additions & 6 deletions DistroLauncher/DistroLauncher.vcxproj
Expand Up @@ -22,34 +22,34 @@
<ProjectGuid>{BA627106-E5F7-46EE-B8D7-2D5A760F2FB2}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>DistroLauncher</RootNamespace>
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
<ProjectName>launcher</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v141</PlatformToolset>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
Expand Down Expand Up @@ -172,4 +172,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>
13 changes: 12 additions & 1 deletion README.md
Expand Up @@ -10,7 +10,7 @@ The first Linux® distribution optimized for WSL. Based on Debian®. From open-s
- [简体中文](README.zh-hans.md)
- [繁體中文](README.zh-hant.md)

If you are an enterprise customer, you may like to check out our enterprise-focused distribution, [Pengwin Enterprise](https://github.com/WhitewaterFoundry/WLE).
If you are an enterprise customer, you may like to check out our enterprise-focused distribution, [Pengwin Enterprise](https://github.com/WhitewaterFoundry/Pengwin-Enterprise).

[![Twitter Follow](https://img.shields.io/twitter/follow/espadrine.svg?label=Follow&style=social)](https://twitter.com/PengwinLinux)

Expand All @@ -34,6 +34,17 @@ If you are an enterprise customer, you may like to check out our enterprise-focu
- A handful of unnecessary packages, such as systemd, have been removed from the base image to reduce image size and increase stability.
- New features are [actively developed](https://github.com/WhitewaterFoundry/Pengwin/pulls) based on [community input](https://github.com/WhitewaterFoundry/Pengwin/issues). Learn how you can [earn paid grants](CONTRIBUTING.md) improving Pengwin.

## Requirements

Windows 10 1803 (Build 17134)
Windows Subsystem for Linux Enabled

To enable Windows Subsystem for Linux open PowerShell as Administrator and run:

```
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
```

## Obtaining Support

Purchases of Pengwin in the Microsoft Store pay for a team of open source indie developers to add new features, test and release builds, evaluate WSL-related CVEs, and provide user support. User support is provided on a best effort basis. Most issues can be resolved by following the steps below.
Expand Down

0 comments on commit 6018065

Please sign in to comment.