X-Git-Url: https://us-delaporte.pagekite.me/gitweb/dotfiles.git/blobdiff_plain/3b36f7054b70729142504025676857307300c392..c49acefb1f2e04b466b8af13b9746edb684e33fa:/bootstrap.ps1 diff --git a/bootstrap.ps1 b/bootstrap.ps1 index b297d75..2dab24f 100644 --- a/bootstrap.ps1 +++ b/bootstrap.ps1 @@ -1,14 +1,33 @@ +<# +.SYNOPSIS + +Setup my Windows PowerShell environment. + +.DESCRIPTION + +.NOTES + +Relies heavily on the Chocolatey package manager. + +#> + +param( + [Parameter(Mandatory=$true, HelpMessage="Install Development Tools")] + [switch]$dev_tools, + [Parameter(Mandatory=$true, HelpMessage="Install Modeling Tools")] + [switch]$archi, +) + # Setup my PowerShell Profile (on Windows) if(-Not(Test-Path -Path $profile)) { New-Item -Path "$profile" -ItemType File } + $sourceMeFile = "$pwd\Microsoft.PowerShell_profile.ps1" $sourceMeLine = '$profileContents = [string]::join([environment]::newline, (get-content -path' $sourceMeLine += $sourceMeFile $sourceMeLine += '));invoke-expression $profileContents' -# Write-Host $sourceMeLine - $doneFlagFile = "./DONE.md" $doBootStrap = -Not (Test-Path -Path $doneFlagFile) @@ -17,20 +36,13 @@ if(! $profileContents -contains $sourceMeLine) { Add-Content -Path $profile -Value $sourceMeLine } -# TODO Install Chocolatey - -# PoshGit -PowerShellGet\Install-Module posh-git -Scope CurrentUser -Force - - -if($false) { - choco install docker-desktop +## Install Chocolatey +$testchoco = powershell choco -v +if(-not($testchoco)){ + Write-Output "Seems Chocolatey is not installed, installing now..." + Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) } -if($false) { - choco install gnupg - gpg --full-generate-key -} # Install Python3 and Pip # Install Stub PowerShell Profile that sources the one from DotFiles @@ -44,22 +56,11 @@ if(-Not(Test-Path -Path $destFile)) { Copy-Item -Path $destFile -Destination ./profiles.json } -# Vault for secret management -# ... and really for coding better intergrations i.e. for RobotFramework -if($false) { - choco install consul - choco install vault -} - # OWASP ZAP for web application security scanning if($false) { choco install zap } -# Install GNU Make for Windows -if($false) { - choco install make -} ## TODO: Can I set this via command line: chrome://flags/#enable-force-dark if($doBootStrap) { @@ -68,10 +69,19 @@ if($doBootStrap) { } # ArchiMate for enterprise modeling -if($false) { +if($archi) { choco install archi } -if($false) { - choco install powershell-core -} \ No newline at end of file +# Install dev tools +if($dev_tools){ + ./install/dev.ps1 +} + +PowerShellGet\Install-Module posh-git -Scope CurrentUser -AllowPrerelease -Force + +choco install vim + +# Install vim-plug +iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |` + ni $HOME/vimfiles/autoload/plug.vim -Force