@{
Description = @'
PowerShell is an automation and configuration management platform.
It consists of a cross-platform command-line shell and associated scripting language.
'@
RedHatAfterInstallScript = @'
#!/bin/sh
if [ ! -f /etc/shells ] ; then
echo "{0}" > /etc/shells
else
grep -q "^{0}$" /etc/shells || echo "{0}" >> /etc/shells
fi
'@
RedHatAfterRemoveScript = @'
if [ "$1" = 0 ] ; then
if [ -f /etc/shells ] ; then
TmpFile=`/bin/mktemp /tmp/.powershellmXXXXXX`
grep -v '^{0}$' /etc/shells > $TmpFile
cp -f $TmpFile /etc/shells
rm -f $TmpFile
fi
fi
'@
UbuntuAfterInstallScript = @'
#!/bin/sh
set -e
case "$1" in
(configure)
add-shell "{0}"
;;
(abort-upgrade|abort-remove|abort-deconfigure)
exit 0
;;
(*)
echo "postinst called with unknown argument '$1'" >&2
exit 0
;;
esac
'@
UbuntuAfterRemoveScript = @'
#!/bin/sh
set -e
case "$1" in
(remove)
remove-shell "{0}"
;;
esac
'@
MacOSAfterInstallScript = @'
#!/bin/bash
if [ ! -f /etc/shells ] ; then
echo "{0}" > /etc/shells
else
grep -q "^{0}$" /etc/shells || echo "{0}" >> /etc/shells
fi
'@
MacOSLauncherScript = @'
#!/usr/bin/env bash
open {0}
'@
MacOSLauncherPlistTemplate = @'
CFBundleExecutable
PowerShell.sh
CFBundleGetInfoString
{1}
CFBundleIconFile
{2}
CFBundleIdentifier
{0}
CFBundleInfoDictionaryVersion
6.0
CFBundleName
PowerShell
CFBundlePackageType
APPL
CFBundleShortVersionString
{1}
CFBundleSupportedPlatforms
MacOSX
CFBundleVersion
{1}
'@
# see https://developer.apple.com/library/content/documentation/DeveloperTools/Reference/DistributionDefinitionRef/Chapters/Distribution_XML_Ref.html
OsxDistributionTemplate = @'
{0}
{2}
'@
NuspecTemplate = @'
{0}
{1}
Microsoft
Microsoft,PowerShell
false
Runtime for hosting PowerShell
https://github.com/PowerShell/PowerShell
{2}
MIT
PowerShell
en-US
© Microsoft Corporation. All rights reserved.
'@
NuGetConfigFile = @'
'@
GlobalToolNuSpec = @'
{0}
{1}
Microsoft
Microsoft,PowerShell
https://github.com/PowerShell/PowerShell
{2}
false
PowerShell global tool
MIT
PowerShell
en-US
© Microsoft Corporation. All rights reserved.
'@
GlobalToolSettingsFile = @'
'@
}