@@ -135,9 +135,11 @@ function Get-EnvironmentInformation
135135 $environment += @ {' IsCentOS' = $LinuxInfo.ID -match ' centos' -and $LinuxInfo.VERSION_ID -match ' 7' }
136136 $environment += @ {' IsFedora' = $LinuxInfo.ID -match ' fedora' -and $LinuxInfo.VERSION_ID -ge 24 }
137137 $environment += @ {' IsOpenSUSE' = $LinuxInfo.ID -match ' opensuse' }
138- $environment += @ {' IsOpenSUSE13' = $Environment.IsOpenSUSE -and $LinuxInfo.VERSION_ID -match ' 13' }
138+ $environment += @ {' IsSLES' = $LinuxInfo.ID -match ' sles' }
139+ $environment += @ {' IsOpenSUSE13' = $Environmenst.IsOpenSUSE -and $LinuxInfo.VERSION_ID -match ' 13' }
139140 $environment += @ {' IsOpenSUSE42.1' = $Environment.IsOpenSUSE -and $LinuxInfo.VERSION_ID -match ' 42.1' }
140- $environment += @ {' IsRedHatFamily' = $Environment.IsCentOS -or $Environment.IsFedora -or $Environment.IsOpenSUSE }
141+ $environment += @ {' IsRedHatFamily' = $Environment.IsCentOS -or $Environment.IsFedora }
142+ $environment += @ {' IsSUSEFamily' = $Environment.IsSLES -or $Environment.IsOpenSUSE }
141143
142144 # Workaround for temporary LD_LIBRARY_PATH hack for Fedora 24
143145 # https://github.com/PowerShell/PowerShell/issues/2511
@@ -1486,8 +1488,6 @@ function Get-RedHatPackageManager {
14861488 " yum install -y -q"
14871489 } elseif ($Environment.IsFedora ) {
14881490 " dnf install -y -q"
1489- } elseif ($Environment.IsOpenSUSE ) {
1490- " zypper --non-interactive install"
14911491 } else {
14921492 throw " Error determining package manager for this distribution."
14931493 }
@@ -1577,6 +1577,26 @@ function Start-PSBootstrap {
15771577 $baseCommand = $PackageManager
15781578 }
15791579
1580+ # Install dependencies
1581+ Start-NativeExecution {
1582+ Invoke-Expression " $baseCommand $Deps "
1583+ }
1584+ } elseif ($Environment.IsSUSEFamily ) {
1585+ # Build tools
1586+ $Deps += " gcc" , " cmake" , " make"
1587+
1588+ # Packaging tools
1589+ if ($Package ) { $Deps += " ruby-devel" , " rpmbuild" , " groff" }
1590+
1591+ $PackageManager = " zypper --non-interactive install"
1592+ $baseCommand = " $sudo $PackageManager "
1593+
1594+ # On OpenSUSE 13.2 container, sudo does not exist, so don't use it if not needed
1595+ if ($NoSudo )
1596+ {
1597+ $baseCommand = $PackageManager
1598+ }
1599+
15801600 # Install dependencies
15811601 Start-NativeExecution {
15821602 Invoke-Expression " $baseCommand $Deps "
0 commit comments