fix(setup): Fix setup.ps1 to check Get-Acl exists

* `Get-Acl` not found in Linux Powershell version, so only call it
  if it exists.
This commit is contained in:
Peter Johanson 2021-09-11 05:16:40 +00:00 committed by Pete Johanson
parent c7e513634d
commit 2f0ad4cc8c

View file

@ -58,17 +58,30 @@ catch [System.Management.Automation.CommandNotFoundException] {
Test-Git-Config -Option "user.name" -ErrMsg "Git username not set!`nRun: git config --global user.name 'My Name'" Test-Git-Config -Option "user.name" -ErrMsg "Git username not set!`nRun: git config --global user.name 'My Name'"
Test-Git-Config -Option "user.email" -ErrMsg "Git email not set!`nRun: git config --global user.email 'example@myemail.com'" Test-Git-Config -Option "user.email" -ErrMsg "Git email not set!`nRun: git config --global user.email 'example@myemail.com'"
$permission = (Get-Acl $pwd).Access | function Test-CommandExists {
?{$_.IdentityReference -match $env:UserName ` param ($command)
-and $_.FileSystemRights -match "FullControl" `
-or $_.FileSystemRights -match "Write" } |
Select IdentityReference,FileSystemRights $oldPreference = $ErrorActionPreference
$ErrorActionPreference = stop
If (-Not $permission){ try {
Write-Host "Sorry, you do not have write permissions in this directory." if(Get-Command $command){ return $true }
Write-Host "Please try running this script again from a directory that you do have write permissions for." } Catch { return $false }
exit 1 Finally { $ErrorActionPreference=$oldPreference }
}
if (Test-CommandExists Get-Acl) {
$permission = (Get-Acl $pwd).Access |
?{$_.IdentityReference -match $env:UserName `
-and $_.FileSystemRights -match "FullControl" `
-or $_.FileSystemRights -match "Write" } |
Select IdentityReference,FileSystemRights
If (-Not $permission){
Write-Host "Sorry, you do not have write permissions in this directory."
Write-Host "Please try running this script again from a directory that you do have write permissions for."
exit 1
}
} }
$repo_path = "https://github.com/zmkfirmware/zmk-config-split-template.git" $repo_path = "https://github.com/zmkfirmware/zmk-config-split-template.git"