diff --git a/CHANGELOG.md b/CHANGELOG.md index 85982f1ec4..ba4457e227 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,30 @@ Changelog Unreleased ---------- +v6.0.0-alpha.8 - 2016-08-11 +--------------------------- + +- PowerSell packages pre-compiled with CrossGen +- `Get-Help` content added +- `Get-Help` null reference exception fixed +- Ubuntu 16.04 support added +- Unsupported cmdlets removed from Unix modules +- PSReadLine long prompt bug fixed +- PSReadLine custom key binding bug on Linux fixed +- Default terminal colors now respected +- Semantic Version support added +- `$env:` fixed for case-sensitive variables +- Added JSON config files to hold some settings +- `cd` with no arguments now behaves as `cd ~` +- `ConvertFrom-Json` fixed for multiple lines +- Windows branding removed +- .NET CoreCLR Runtime patched to version 1.0.4 +- `Write-Host` with unknown hostname bug fixed +- `powershell` man-page added to package +- `Get-PSDrive` ported to report free space +- Desired State Configuration MOF compilation ported to Linux +- Windows 2012 R2 / Windows 8.1 remoting enabled + v6.0.0-alpha.7 - 2016-07-26 --------------------------- diff --git a/README.md b/README.md index 6a5fb83ff7..d9a549c830 100644 --- a/README.md +++ b/README.md @@ -18,21 +18,24 @@ Get PowerShell You can download and install a PowerShell package for any of the following platforms. -| Platform | Releases | How to Install | -|--------------|--------------------|--------------------------------| -| Windows | [.msi][rl-windows] | [Instructions][in-windows] | -| Ubuntu 14.04 | [.deb][rl-ubuntu] | [Instructions][in-ubuntu] | -| CentOS 7 | [.rpm][rl-centos] | [Instructions][in-centos] | -| OS X 10.11 | [.pkg][rl-osx] | [Instructions][in-osx] | +| Platform | Downloads | How to Install | +|--------------|---------------------|-----------------------------| +| Windows | [.msi][rl-windows] | [Instructions][in-windows] | +| Ubuntu 14.04 | [.deb][rl-ubuntu14] | [Instructions][in-ubuntu14] | +| Ubuntu 16.04 | [.deb][rl-ubuntu16] | [Instructions][in-ubuntu16] | +| CentOS 7 | [.rpm][rl-centos] | [Instructions][in-centos] | +| OS X 10.11 | [.pkg][rl-osx] | [Instructions][in-osx] | -[rl-windows]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.7/PowerShell_6.0.0.7.msi -[rl-ubuntu]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.7/powershell_6.0.0-alpha.7-1_amd64.deb -[rl-centos]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.7/powershell-6.0.0_alpha.7-1.x86_64.rpm -[rl-osx]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.7/powershell-6.0.0-alpha.7.pkg +[rl-windows]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.8/PowerShell_6.0.0.8.msi +[rl-ubuntu14]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.8/powershell_6.0.0-alpha.8-1_amd64-ubuntu.14.04-x64.deb +[rl-ubuntu16]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.8/powershell_6.0.0-alpha.8-1_amd64-ubuntu.16.04-x64.deb +[rl-centos]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.8/powershell-6.0.0_alpha.8-1.x86_64-centos.7-x64.rpm +[rl-osx]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.8/powershell-6.0.0-alpha.8-osx.10.11-x64.pkg [installation]: docs/installation [in-windows]: docs/installation/windows.md#msi -[in-ubuntu]: docs/installation/linux.md#ubuntu-1404 +[in-ubuntu14]: docs/installation/linux.md#ubuntu-1404 +[in-ubuntu16]: docs/installation/linux.md#ubuntu-1604 [in-centos]: docs/installation/linux.md#centos-7 [in-osx]: docs/installation/linux.md#os-x-1011 diff --git a/build.psm1 b/build.psm1 index 2f0cffedb3..4f5ee151a3 100644 --- a/build.psm1 +++ b/build.psm1 @@ -844,9 +844,14 @@ function Start-PSPackage { $Version = (git --git-dir="$PSScriptRoot/.git" describe) -Replace '^v' } - Write-Warning "Please ensure you have previously run Start-PSBuild -Clean -CrossGen!" + if ($IsWindows) { + Write-Warning "Please ensure you have previously run Start-PSBuild -Clean -CrossGen -Configuration Release!" + $Source = Split-Path -Parent (Get-PSOutput -Options (New-PSOptions -Publish -Configuration Release)) + } else { + Write-Warning "Please ensure you have previously run Start-PSBuild -Clean -CrossGen!" + $Source = Split-Path -Parent (Get-PSOutput -Options (New-PSOptions -Publish)) + } - $Source = Split-Path -Parent (Get-PSOutput -Options (New-PSOptions -Publish)) Write-Verbose "Packaging $Source" # Decide package output type diff --git a/docs/installation/linux.md b/docs/installation/linux.md index f74443c3f6..2b9cf44b4a 100644 --- a/docs/installation/linux.md +++ b/docs/installation/linux.md @@ -1,76 +1,101 @@ Package installation instructions ================================= -Supports [Ubuntu 14.04][Ubuntu14.04], [CentOS 7.1][CentOS7.1], and [OS X 10.11][OSX10.11]. +Supports [Ubuntu 14.04][u14], [Ubuntu 16.04][u16], +[CentOS 7][cos], and [OS X 10.11][osx]. All packages are available on our GitHub [releases][] page. Once the package is installed, run `powershell` from a terminal. -[Ubuntu14.04]:./linux.md#ubuntu-1404 -[CentOS7.1]:./linux.md#centos-7 -[OSX10.11]:./linux.md#os-x-1011 +[u14]: #ubuntu-1404 +[u16]: #ubuntu-1604 +[cos]: #centos-7 +[osx]: #os-x-1011 Ubuntu 14.04 ============ -Using [Ubuntu 14.04][], download the Debian package `powershell_6.0.0-alpha.7-1_amd64.deb` from the [releases][] page onto the Ubuntu machine. +Using [Ubuntu 14.04][], download the Debian package +`powershell_6.0.0-alpha.8-1_amd64-ubuntu.14.04-x64.deb` +from the [releases][] page onto the Ubuntu machine. Then execute the following in the terminal: ```sh sudo apt-get install libunwind8 libicu52 -sudo dpkg -i powershell_6.0.0-alpha.7-1_amd64.deb +sudo dpkg -i powershell_6.0.0-alpha.8-1_amd64-ubuntu.14.04-x64.deb ``` -> Please note that Ubuntu 16.04 is not yet supported, but coming soon! - [Ubuntu 14.04]: http://releases.ubuntu.com/14.04/ +Ubuntu 16.04 +============ + +Using [Ubuntu 16.04][], download the Debian package +`powershell_6.0.0-alpha.8-1_amd64-ubuntu.16.04-x64.deb` +from the [releases][] page onto the Ubuntu machine. + +Then execute the following in the terminal: + +> Please note the different libicu package dependency! + +```sh +sudo apt-get install libunwind8 libicu55 +sudo dpkg -i powershell_6.0.0-alpha.8-1_amd64-ubuntu.16.04-x64.deb +``` + +[Ubuntu 16.04]: http://releases.ubuntu.com/16.04/ + + CentOS 7 ======== -Using [CentOS 7][], download the RPM package `powershell-6.0.0_alpha.7-1.x86_64.rpm` from the [releases][] page onto the CentOS machine. +Using [CentOS 7][], download the RPM package +`powershell-6.0.0_alpha.8-1.x86_64-centos.7-x64.rpm` +from the [releases][] page onto the CentOS machine. Then execute the following in the terminal: ```sh -sudo yum install powershell-6.0.0_alpha.7-1.x86_64.rpm +sudo yum install powershell-6.0.0_alpha.8-1.x86_64-centos.7-x64.rpm ``` -> Please note that we have not tested this package on Red Hat Enterprise Linux. +> This package should work on Red Hat Enterprise Linux 7 too. [CentOS 7]: https://www.centos.org/download/ OS X 10.11 ========== -Using OS X 10.11, download the PKG package `powershell-6.0.0-alpha.7.pkg` from the [releases][] page onto the OS X machine. +Using OS X 10.11, download the PKG package `powershell-6.0.0-alpha.8-osx.10.11-x64.pkg` from the [releases][] page onto the OS X machine. -Either double-click the file and follow the prompts, or install it from the terminal: +Either double-click the file and follow the prompts, +or install it from the terminal: ```sh -sudo installer -pkg powershell-6.0.0-alpha.7.pkg -target / +sudo installer -pkg powershell-6.0.0-alpha.8-osx.10.11-x64.pkg -target / ``` -> Note that because OS X is a derivation of BSD, instead of `/opt`, the prefix used is `/usr/local`. -> Thus, `powershell` lives at `/usr/local/microsoft/powershell`, and the symlink is placed at `/usr/local/bin/powershell`. -> This affects the system modules and profiles as well. - Paths ===== * User profiles will be read from `~/.config/powershell/profile.ps1`. * User modules will be read from `~/.local/share/powershell/Modules` * PSReadLine history will be recorded to `~/.local/share/powershell/PSReadLine/ConsoleHost_history.txt` -* System profiles will be read from `/opt/microsoft/powershell/profile.ps1`. -* System modules will be read from `/opt/microsoft/powershell/Modules` +* `$PSHOME` is `/opt/microsoft/powershell/6.0.0-alpha.8/` +* Default profiles will be read from `$PSHOME/profile.ps1`. +* Default modules will be read from `$PSHOME/Modules` -The profiles respect PowerShell's per-host configuration, so the default host-specific profiles exists at `Microsoft.PowerShell_profile.ps1` in the same locations. +The profiles respect PowerShell's per-host configuration, +so the default host-specific profiles exists at `Microsoft.PowerShell_profile.ps1` in the same locations. On Linux and OS X, the [XDG Base Directory Specification][xdg-bds] is respected. -> There is a symlink created from `/usr/bin/powershell` to `/opt/microsoft/powershell/powershell` to ensure `powershell` is in your path. +Note that because OS X is a derivation of BSD, +instead of `/opt`, the prefix used is `/usr/local`. +Thus, `$PSHOME` is `/usr/local/microsoft/powershell/6.0.0-alpha.8/`, +and the symlink is placed at `/usr/local/bin/powershell`. [releases]: https://github.com/PowerShell/PowerShell/releases/latest [xdg-bds]: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html