X-Git-Url: https://apps.delaporte.us/gitweb/dotfiles.git/blobdiff_plain/a02b2eb5ad1cb911977283cf359d105f831db3fb..01de64c1da316fdce497dad6dc27fb8dd5bd8e88:/Microsoft.PowerShell_profile.ps1 diff --git a/Microsoft.PowerShell_profile.ps1 b/Microsoft.PowerShell_profile.ps1 index 8ae1eb4..8b3442f 100644 --- a/Microsoft.PowerShell_profile.ps1 +++ b/Microsoft.PowerShell_profile.ps1 @@ -1,96 +1,60 @@ +# .EXAMPLE +# . C:\src\dotfiles\Microsoft.PowerShell_profile.ps1 # Courtesty of MKletz # Get-ChildItem -Path 'C:\Repos' -Filter "*.psd1" -Recurse | ForEach-Object -Process { # $Path = Split-Path -Path $_.Directory -Parent # $env:PSModulePath = $env:PSModulePath + ";$($Path)" #} -$env:PSModulePath = $env:PSModulePath.Replace("\\ad.uillinois.edu\techsvc\home\$($ENV:USERNAME)\Documents\PowerShell\Modules;",'') +# $env:PSModulePath = $env:PSModulePath.Replace("\\ad.uillinois.edu\techsvc\home\$($ENV:USERNAME)\Documents\PowerShell\Modules;",'') -# Kali linux env -$ENV:PATH +=":/home/delaport/development/flutter/bin" # Flutter in Kali under WSL - -# Some Paths that are annoying to find/restore if the installer fails -$ENV:PATH+=";C:\Program Files\Microsoft VS Code\bin" # One Editor to rule them all -$ENV:PATH+=";C:\Program Files\Python38\Scripts\;C:\Program Files\Python38\" # Python latest as of 2019 December -$ENV:PATH+=";C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin" # Docker for R Studio and Jupyter -$ENV:PATH+=";C:\Program Files (x86)\Common Files\Oracle\Java\javapath" # Don't remember why I still care about Java. -$ENV:PATH+=";C:\Program Files\Git\cmd" # Version control is nice. -$ENV:PATH+=";C:\ProgramData\chocolatey\bin" # Package management is nice. -$ENV:PATH+=";C:\Program Files\nodejs" # KataKoda wants to add tools via npm -$ENV:PATH+=";C:\PENGUIN" # Flag to ensure my profile kicked in. - - - -function Start-Vault() { - consul agent -dev # Run in Dev Mode - vault sever -config c:\src\dotfiles\vaultconfig.hcl -address=http://127.0.0.1:8200 # Use local dev Consul as storage -} - -function New-DockerRStudio() { - docker run --name=rpython -Pit -p 8888:8888 -p 8787:8787 -p 8022:22 -p 6006:6006 -v c:\src\data:/mnt/data datascienceschool/rpython -} -function Start-DockerRStudio() { - docker start rpython - jupyter notebook list - Write-Host "R Studio is running at http://localhost:8787/" - Write-Host "Jupyter is running at http://localhost:8888/" +if($IsWindows -eq "") { + # Bootstrap for older PowerShell + $IsWindows = ($env:OS -eq "Windows_NT") } -function Start-DockerOWASPZap() { - Param( - [string]$URL - ) - # https://github.com/zaproxy/zaproxy/wiki/Docker - docker run owasp/zap2docker-stable - docker run -i owasp/zap2docker-stable zap-cli quick-scan --self-contained --start-options '-config api.disablekey=true' $URL - Write-Host "https://github.com/zaproxy/zaproxy/wiki/Docker" -} - - -function Start-DockerWebGoat() { - docker pull webgoat/webgoat-8.0 - docker run -p 8080:8080 -t webgoat/webgoat-8.0 - Write-Host "Vulnerable Webgoat running on 8080" -} +#if($IsWindows){ +# # Some Paths that are annoying to find/restore if the installer fails +# $ENV:PATH+=";C:\Program Files\Microsoft VS Code\bin" # One Editor to rule them all +# $ENV:PATH+=";C:\Program Files\Git\cmd" # Version control is nice. +# $ENV:PATH+=";C:\ProgramData\chocolatey\bin" # Package management is nice. +# $ENV:PATH+=";C:\PENGUIN" # Flag to ensure my profile kicked in. +#} -function Start-DockerJuiceShop() { - docker pull bkimminich/juice-shop - docker run --rm -p 3000:3000 bkimminich/juice-shop - Write-Host "Vulnerable Juice Shop running on 3000" -} +# Import some home grown PowerShell modules, if they are installed. -function Start-DockerGrafana() { - docker run --rm -d --name=grafana -p 3001:3001 -user $ID --volume "C:\src\data:/var/lib/grafana" grafana/grafana - Write-Host "Grafana running on 3001" +$modPaths = Get-Childitem -Path "c:\src\dotfiles\psmodules" +if($modPaths.length -eq 0){ + Write-Host "No modules found." } - -# Import some home grown PowerShell modules, if they are installed. -$modPaths = @("C:\src\dotfiles\ToyBox\toybox.psm1") $modPaths | ForEach-Object { - $_ | Format-Table +# $_ | Format-Table if(Test-Path -Path $_) { Import-Module $_ - Write-Host "Loaded $_" - } + Write-Host ">> Loaded $_" + } } +#} +# $env:PSModulePath = $env:PSModulePath + ";c:\src\dotfiles\psmodules" -function Start-DockerPython3Bash { - docker run -it python /bin/bash -} -function Start-DockerPython2Bash { - docker run -it python:2-buster /bin/bash -} +# Linux-like up/down in shell +Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward +Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward +Set-PSReadlineOption -HistorySavePath c:\temp\PSHistory.log -function Stop-Docker { - docker stop $(docker ps -a -q) -} +# Minion commands - 'today' +. C:\src\minion\profiles\alias.ps1 -function New-DockerAirflow { - docker run -v ./:/etc/myscripts apache/airflow /bin/bash /etc/myscripts/airflow.sh +# Unix dies hard. +New-Alias which get-command +# Delay loading PoshGit for speed. +function Enable-PoshGit { + Import-Module posh-git } +New-Alias pg Enable-PoshGit +Write-Host "+ Type 'pg' to enable PoshGit" -function Start-DockerAirflow { - docker run airflow -f webserver -} \ No newline at end of file +# cd c:\src +#