{"id":13566800,"url":"https://github.com/stevencohn/WindowsPowerShell","last_synced_at":"2025-04-04T00:32:17.900Z","repository":{"id":51288749,"uuid":"125914178","full_name":"stevencohn/WindowsPowerShell","owner":"stevencohn","description":"Advanced PowerShell scripts and profile enhancements for common use cases","archived":false,"fork":false,"pushed_at":"2025-03-20T14:38:35.000Z","size":1758,"stargazers_count":181,"open_issues_count":1,"forks_count":19,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-28T17:07:46.142Z","etag":null,"topics":["conemu-color-scheme","ise-theme","powershell","powershell-command","powershell-console","powershell-profile","powershell-script","powershell-scripts","sysadmin-tasks","tweaks","windows-powershell"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stevencohn.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["stevencohn"]}},"created_at":"2018-03-19T20:09:25.000Z","updated_at":"2025-03-20T14:38:39.000Z","dependencies_parsed_at":"2023-01-30T18:45:50.710Z","dependency_job_id":"d491505a-647d-40e7-a8fc-145e3d40ece2","html_url":"https://github.com/stevencohn/WindowsPowerShell","commit_stats":{"total_commits":709,"total_committers":4,"mean_commits":177.25,"dds":0.5119887165021156,"last_synced_commit":"0f0c1ff751d62feb643a236233ff6be86e529bbb"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevencohn%2FWindowsPowerShell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevencohn%2FWindowsPowerShell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevencohn%2FWindowsPowerShell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevencohn%2FWindowsPowerShell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stevencohn","download_url":"https://codeload.github.com/stevencohn/WindowsPowerShell/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247103290,"owners_count":20884023,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["conemu-color-scheme","ise-theme","powershell","powershell-command","powershell-console","powershell-profile","powershell-script","powershell-scripts","sysadmin-tasks","tweaks","windows-powershell"],"created_at":"2024-08-01T13:02:17.086Z","updated_at":"2025-04-04T00:32:17.362Z","avatar_url":"https://github.com/stevencohn.png","language":"PowerShell","funding_links":["https://github.com/sponsors/stevencohn"],"categories":["PowerShell"],"sub_categories":[],"readme":"# PowerShell Scripts\n\nThis repo contains my custom PowerShell profile scripts.\nIt also contains scripts to automate the configuration of a new machine\nand installation of common apps and tools that I frequently use.\n\n## How to install\n\nThis entire repo can be overlayed ontop of your Documents\\WindowsPowerShell folder.\n\nAs with all PowerShell scripts, you'll need to loosen up the execution policy on new machines.\n\n```powershell\nSet-ExecutionPolicy RemoteSigned -Force -Confirm:$false;\nSet-Executionpolicy -Scope CurrentUser -ExecutionPolicy UnRestricted -Force -Confirm:$false\n```\n\nFuture: _I'll consider signing the scripts and setting the execution policy to AllSigned._\n\nIf starting from scratch on a fresh machine:\n\n```powershell\n[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Ssl3,Tls,Tls11,Tls12';\n$0 = 'https://raw.githubusercontent.com/stevencohn/WindowsPowerShell/main'\nInvoke-WebRequest -Uri \"$0/common.ps1\" -OutFile C:\\common.ps1;\nInvoke-WebRequest -Uri \"$0/Initialize-Machine.ps1\" -OutFile C:\\Initialize-Machine.ps1\n```\n\nThen execute Initialize-Machine:\n\n```powershell\n. C:\\Initialize-Machine.ps1 -Verbose\n```\n\nThe script is re-entrant so can be run multiple times without a problem.\n\nYou can then delete these files since they exist in the Documents\\WindowsPowerShell folder too:\n\n```powershell\nrm C:\\common.ps1 -Force;\nrm C:\\Initialize-Machine.ps1 -Force\n```\n\n#### Alternatives\n\nInitialize-Machine downloads the repo to Documents\\WindowsPowerShell. If you already have Git\ninstalled and would prefer to manually download the repo and run Initialize-Machine from there:\n\n```powershell\nSet-Location $home\\Documents;\ngit clone https://github.com/stevencohn/WindowsPowerShell.git\n```\n\nOr if you download the repo as a Zip file, you'll need to unblock all files after unzipping:\n\n```powershell\nGet-ChildItem -Path \"$home\\Documents\\WindowsPowerShell\" -Recurse | Unblock-File\n```\n\nSee also the [other configuration scripts below](#setup).\n\n## Commands\nThese scripts are located in the Modules\\Scripts folder.\n\n#### [`Clear-Events`](Modules/Scripts/Clear-Events.ps1) [-Quiet]\nClear all events from the Windows Event Log.\n\n#### [`Clear-Temp`](Modules/Scripts/Clear-Temp.ps1) [-Quiet]\nClear the contents of TEMP, Windows\\TEMP, and LocalAppData\\TEMP.\n\n#### [`Connect-AwsLogin`](Modules/Scripts/Connect-AwsLogin.ps1) [-Profile] [-Account] [-Device] [-Code]\nSign in to AWS CLI using MFA for the configured profile of an IAM user.\n\n#### [`ConvertFrom-BinHex`](Modules/Scripts/ConvertFrom-BinHex.ps1) -Hex v -Unicode\nConvert a BinHex encoded string back to its original string value.\n\n#### [`ConvertFrom-Hex`](Modules/Scripts/ConvertFrom-Hex.ps1) -Hex v\nConvert a Hex string into an integer value. If the string contains six\nor eight characters then it is also interpreted as an ARGB value and each\ncomponent part is displayed.\n\n#### [`ConvertTo-Hex`](Modules/Scripts/ConvertTo-Hex.ps1) -R r [-G g] [-B b]\nConvert integer values to a Hex string. If one integer is specified then it is converted. If three integers are specified then they are assumed to be RGB values and combined into a single Hex string.\n\n#### [`ConvertTo-mp3`](Modules/Scripts/ConvertTo-mp3.ps1) -InputPath p [-Bitrate r] [-FullQuality] [-Info] [-Yes]\nPrimarily used to convert .m4a audio files to .mp3\n\n#### [`Copy-Console`](Modules/Scripts/Copy-Console.ps1) [-OutFile f] [-All] [-Rtf] [-Trim]\nCopy the contents of the Powershell console window preserving color. Can be sent to an out file or pasted into Word or OneNote.\n\n#### [`Copy-Playlist`](Modules/Scripts/Copy-Playlist.ps1) -Playlist p -Target t -WhatIf\nCopies all music files referenced by the given playlist to the specified location.\nFor example, this can be used to copy music in an .m3u playlist file to a USB thumbdrive.\n\n#### [`Edit-Hosts`](Modules/Scripts/Edit-Hosts.ps1)\nOpen the hosts file in Notepad.\n\n#### [`Enable-MultiRdp`](Modules/Scripts/Enable-MultiRdp.ps1) [-MaxConnection m]\nPatch termsrv.dll to allow multiple concurrent RDP connections to this machine\n\n#### [`Edit-Playlist`](Modules/Scripts/Edit-Playlist.ps1) -Replace r [-Path p] [-Type t]\nReplace the path of all items in a playlist file to the current user's MyMusic path.\n\n#### [`Edit-PSProfile`](Modules/Scripts/Edit-PSProfile.ps1)\nRun VSCode with ~Documents\\WindowsPowerShell as root folder. Aliased to `ep`\n\n#### [`Enable-PersonalOneDrive`](Modules/Scripts/Enable-PersonalOneDrive.ps1)\nEnable Personal OneDrive sync when both Business and Personal accounts are registered\non the local machine. Will indicate when either is account not available.\n\n#### [`Enable-TrustedRemoting`](Modules/Scripts/Enable-TrustedRemoting.ps1)\nEnable PowerShell remoting and trusted hosts for the current machine,\ntypically run on a VM that will be used for automated tasks such as CI/CD.\n\n#### [`Get-Account`](Modules/Scripts/Get-Account.ps1) -Username u [-Domain d] [-SID] [-All]\nReport the account information for the given username and optionally a specified domain.\n\n![alt text](Images/get-account.png \"Get-Account Example\")\n\n#### [`Get-ChildItemColorized`](Modules/Scripts/Get-ChildItemColorized.ps1) -Dir d [-la]\nDisplay a colorized directory listing along with total size. Aliased to `ls`\n\n![alt text](Images/get-childitemcolorized.png \"Get-ChildItemColorized Example\")\n\n#### [`Get-Colors`](Modules/Scripts/Get-Colors.ps1) [-All] [-Cmd] [-PS] [-ConEmu] [-Script]\nDisplay the console colors for Command console, PowerShell console, and ConEmu consoles.\n\n![alt text](Images/get-colors.png \"Get-Colors Example\")\n\n#### [`Get-CommandLine`](Modules/Scripts/Get-CommandLine.ps1) [-Name n] [-Only] [-ReturnValue] [-ShowSystem]\nReport processes with their command lines, highlighting an optional search string\n\n#### [`Get-Commits`](Modules/Scripts/Get-Commits.ps1) -Project p [-Branch b] [-Since yyyy-mm-dd] [-Last n] [-Raw] [-Graph]\nReports all commits for the given git repo after a specified date or within the last n days.\n\n#### [`Get-DirSize`](Modules/Scripts/Get-DirSize.ps1) -Dir d [-la]\nReport the size of all items in the specified folder. Used as a sub-routine of Get-ChildItemColorized.\n\n#### [`Get-DotNetVersion`](Modules/Scripts/Get-DotNetVersion.ps1)\nGet the versions of.NET Framework installations on the local computer.\n\n#### [`Get-Env`](Modules/Scripts/Get-Env.ps1) [-Name n] [-Value v]\nReport environment variables in colorized categoties with optional search highlighting.\n\n![alt text](Images/get-env.png \"Get-Env Example\")\n\n#### [`Get-Hosts`](Modules/Scripts/Get-Hosts.ps1)\nDisplay the /etc/hosts file, colorized.\n\n#### [`Get-Installed`](Modules/Scripts/Get-Installed.ps1) [-Store -Outfile f]\nReport all installed applications registered on the local system, optionally including Store apps.\n\n#### [`Get-Network`](Modules/Scripts/Get-Network.ps1) [-Preferred] [-Addresses] [-WiFi] [-Verbose]\nDetermines the most likely candidate for the active Internet-specific network adapter on this machine. All other adpaters such as tunneling and loopbacks are ignored. Only connected IP adapters are considered. Wifi aliases are shown.\n\n![alt text](Images/get-network.png \"Get-Network Example\")\n\n#### [`Get-ParentBranch`](Modules/Scripts/Get-ParentBranch.ps1)\nDetermine the name of the nearest parent branch of the current branch in the local Git repo.\n\n#### [`Get-Path`](Modules/Scripts/Get-Path.ps1) [-Search s] [-Sort] [-Verbose]\nDisplay the PATH environment variable as a list of strings rather than a single string and displays the source of each value defined in the Registry: Machine, User, or Process. Verbose mode dumps the User and System Paths as\nstored in the Windows Registry.\n\n![alt text](Images/get-path.png \"Get-Path Example\")\n\n#### [`Get-Performance`](Modules/Scripts/Get-Performance.ps1)\nGet and report performance metrics using the built-in WinSAT utility.\n\n#### [`Get-Reboots`](Modules/Scripts/Get-Reboots.ps1) [-Uptime]\nList Windows Event Log events related to system reboots.\n\n#### [`Get-Scripts`](Modules/Scripts/Get-Scripts.ps1)\nList all external scripts and their parameter names.\n\n#### [`Get-Services`](Modules/Scripts/Get-Services.ps1) [-Name n] [-Running || -Stopped]\nGet a list of services ordered by status and name. Aliased to `gs`\n\n#### [`Get-SpecialFolder`](Modules/Scripts/Get-SpecialFolder.ps1) [-Folder f] [-All]\nReturn the translation of a SpecialFolder by name or show all SpecialFolders with optional search highlighting.\n\n#### [`Get-VMConfig`](Modules/Scripts/Get-VMConfig.ps1) -Path p [-Json]\nReturns a VM configuration object of the specified .vmcx VM configuration\nfile even if the VM is not attached to a Hyper-V server.\n\n#### [`Install-BuildTools`](Modules/Scripts/Install-BuildTools.ps1) [-Force] [-Full] [-VsWhere]\nInstall minimal Microsoft build and test tools required for CI/CD.\n\n#### [`Install-Chocolatey`](Modules/Scripts/Install-Chocolatey.ps1) [-Upgrade]\nCan be used on new machines to install Chocolately. If already installed then checks if it is outdated and prompts to update.\n\n#### [`Install-Docker`](Modules/Scripts/Install-Docker.ps1)\nInstalls Docker for Windows, enabling Hyper-V as a prerequisite if not already installed.\n\n#### [`Invoke-NormalUser`](Modules/Scripts/Invoke-NormalUser.ps1) -Command c\nExecute a given command as a non-evelated context. Aliased to `nu`. \nConvenient when you need to run as a normal user from an elevated prompt.\n\n#### [`Invoke-SuperUser`](Modules/Scripts/Invoke-SuperUser.ps1)\nOpen a new command prompt in elevated mode. Aliased to `su`. Special command for ConEmu emulator.\n\n#### [`New-Administrator`](Modules/Scripts/New-Administrator.ps1) -Username -Password\nCreate a new local admin user.\n\n#### [`New-CommandWrapper`](Modules/Scripts/New-CommandWrapper.ps1)\nSepcial internal function from PowerShell Cookbook.\n\n#### [`New-DriveMapping`](Modules/Scripts/New-DriveMapping.ps1) -DriveLetter d -Path p [-SourceDriveLabel s] [-DriveLabel l] [-Reboot] [-Force]\nCreate a persistent mapping of a folder to a new drive letter. (persistent SUBST)\n\n#### [`New-Host`](Modules/Scripts/New-Host.ps1) -IP a -Name n\nAdds or updates an entry in the Windows hosts file\n\n#### [`New-RunAsShortcut`](Modules/Scripts/New-RunAsShortcut.ps1) -LinkPath l -TargetPath t [-Arguments a]\nCreates a new elevated shortcut (.lnk file) to a given target\n\n#### [`New-VMClone`](Modules/Scripts/New-VMClone.ps1) -Name n -Path p -Template t [-Checkpoint]\nCreate a new VM from a registered VM or an exported VM.\n\n#### [`PrettyPrint-File`](Modules/Scripts/PrettyPrint-File.ps1) -Path p [-Dedent] [-Overwrite]\nFormat or pretty-pretty JSON and XML files.\n\n#### [`Remove-DockerTrash`](Modules/Scripts/Remove-DockerTrash.ps1) [-Volumes]\nPrune unused docker containers and dangling images.\n\n#### [`Remove-DriveMapping`](Modules/Scripts/Remove-DriveMapping.ps1) -DriveLetter d [-SourceDriveLabel s] [-Reboot] [-Force]\nRemove a persistent mapping of a folder created by New-DriveMapping.\n\n#### [`Remove-Locked`](Modules/Scripts/Remove-Locked.ps1) -Name n\nRemove a System-owned file or directory. Attempts multiple approaches to remove stubborn items.\n\n#### [`Repair-Path`](Modules/Scripts/Repair-Path.ps1) [-Yes]\nClean up the PATH environment variable, removing duplicates, empty values, invalid paths, repairs\nvariable substitutions, and moves paths between User and System paths appropriately.\nVerbose mode dumps the User and System Paths as stored in the Windows Registry.\n\n#### [`Restart-App`](Modules/Scripts/Restart-App.ps1) -Name [-Command [-Arguments]] [-Register] [-GetCommand]\nRestart the named process. This can be used to restart applications such as Outlook on a nightly\nbasis. Apps such as this tend to have memory leaks or become unstable over time when dealing with\nhuge amounts of data on a very active system. The -Register switch creates a nightly automation task.\n\n#### [`Restart-Bluetooth`](Modules/Scripts/Restart-Bluetooth.ps1) [-Show]\nRestarts the Bluetooth radio device on the current machine. This is useful when the radio stops\ncommunicating with a device such as a mouse. The alternative would be to reboot the system.\n\n#### [`Set-Colors`](Modules/Scripts/Set-Colors.ps1) -Theme t | [-Name n -Color c [-Bgr] [-Background] [-Foreground]] [-Cmd] [-ConEmu] [-PS]\nSet the color theme for command line consoles or set a specific named color.\n\n#### [`Set-ItemOwner`](Modules/Scripts/Set-ItemOwner.ps1) -Path p [-Group g]\nSet the ownership of an item - folder or file - to the specified user group.\n\n#### [`Set-OutDefaultOverride`](Modules/Scripts/Set-OutDefaultOverride.ps1)\n(Internal) Helper function for Get-ChildItemColorized.\n\n#### [`Set-PinTaskbar`](Modules/Scripts/Set-PinTaskbar.ps1) -Target t [-Unpin]\nPins or unpins a target item to the Windows Taskbar (_currently broken!_)\n\n#### [`Set-RegistryOwner`](Modules/Scripts/Set-RegistryOwner.ps1) -Hive h -Key k [-Recurse]\nSet full-access ownership of a specified Registry key.\n\n#### [`Set-SleepSchedule`](Modules/Scripts/Set-SleepSchedule.ps1) (-SleepTime -WakeTime) | (-Clear [-ClearTimers])\nCreates scheduled tasks to sleep and wake the computer at specified times.\n\n#### [`Set-VsDevEnv`](Modules/Scripts/Set-VsDevEnv.ps1)\nInvoke the Visual Studio environment batch script. Aliased to `vs`\n\n#### [`Show-ColorizedContent`](Modules/Scripts/Show-ColorizedContent.ps1) -Filename f [-ExcludeLineNumbers]\nType the contents of a PowerShell script with syntax highlighting.\n\n![alt text](Images/show-colorizedcontent.png \"Show-ColorizedContent Example\")\n\n#### [`Show-Docker`](Modules/Scripts/Show-Docker.ps1) [-Ps] [-Containers] [-Images] [-Volumes]\nShow containers and images in a single command.\n\n![alt text](Images/show-docker.png \"Show-Docker Example\")\n\n#### [`Test-Elevated`](Modules/Scripts/Test-Elevated.ps1) [-Action a ] [-Warn]\nDetermine if the current session is elevated and displays a warning message if not.\nCan be run without the warning message and simply return a boolean result.\n\n#### [`Test-RebootPending`](Modules/Scripts/Test-RebootPending.ps1) [-Report]\nCheck the pending reboot status of the local computer.\n\n#### [`Update-Choco`](Modules/Scripts/Update-Choco.ps1) [-All]\nUpgrades all outdated chocolatey packages, including Windows Terminal from a Windows Terminal.\n\n#### [`Update-Environment`](Modules/Scripts/Update-Environment.ps1)\nRefresh the current session environment variables from the Registry by harvesting\nfrom both the local machine and the current user hives.\n\n#### [`Update-Gits`](Modules/Scripts/Update-Gits.ps1) [-Branch b] [-Project p] [-Reset]\nScan all sub-folders looking for .git directories and fetch/pull each to get latest code.\n\n#### [`Update-Profile`](Modules/Scripts/Update-Profile.ps1)\nQuick command line to pull latest source of this WindowsPowerShell repo from Github\nand update the content in $home\\Documents\\WindowsPowerShell.\n\n#### [`WaitFor-VM`](Modules/Scripts/WaitFor-VM.ps1) -Name n [-Restore]\nStart the named VM, optionally restoring the latest snapshot, and waiting\nuntil the OS provides a stable heartbeat.\n\n\u003ca name=\"setup\"\u003e\u003c/a\u003e\n\n# Machine Setup and Configuration\nUsing the scripts below, a new machine can be configured and apps installed in under\n30 minutes.\n\nRun `Set-ExecutionPolicy RemoteSigned` prior to running if this is the first use of PowerShell.\n\nThe recommended sequence to run:\n\n1. Initialize-Machine.ps1\n1. Install-HyperV.ps1 (_will reboot_)\n1. Install-Programs.ps1 (_might reboot_)\n1. Install-Programs.ps1 -Developer -Extras\n1. Install-VS.ps1\n1. Install-VS.ps1 -Extensions\n1. Install-VS.ps1 -Code\n\n#### [`Initialize-Machine.ps1`](Initialize-Machine.ps1)\nThis is a top-level script meant to be downloaded independently from this repo and run to configure and\ninitialize new machines. This script will download this repo to the current user's Document folder,\nsetting it up as the default PowerShell profile. Best to download it to and run from the root of C.\n\n`Initialize-Machine.ps1 [-Command c] [-ListCommands]\n\n   * _command_ - optional argument to run a single command, default is to run all commands\n   * -ListCommands - display all available commands supported by this script\n\nThe Initialize-Machine script will download this repo into the MyDocuments folder, but\nif you have OneDrive enabled then the MyDocuments folder may differ from $home\\Documents.\nSo before initializing, you can create a junction point to MyDocuments using this command:\n\n   1. `cd $home\\Documents` \n   1. `cmd /c \"mklink /j WindowsPowerShell $([Environment]::GetFolderPath('MyDocuments'))\\WindowsPowerShell\"`\n\nNote there are two Initialie-Machine commands that are not run by default: DisableCortana and\nDisableOneDrive. To disable either of these, use the -Command argument, e.g.\n\n   `.\\Initialize-Machine.ps1 -Command DisableCortana`\n\nAnd since this updates the PowerShell console colors, you can close and reopen the console to\nappreciate these fantastic new colors.\n\n#### [`Install-HyperV.ps1`](Install-HyperV.ps1)\nAutomates the installation of Hyper-V on Windows 11 for either Professional or\nHome editions. The script doesn't require any parameters but will prompt to reboot\nthe computer to complete the configuration.\n\n#### [`Install-Programs.ps1`](Install-Programs.ps1)\nAutomates the installation of applications, development tools, and other utilities.\nIt's reentrant, skipping items already installed and installing items missing.\n\n`.\\Install-Programs.ps1 [-Command c] [-ListCommands] [-Developer] [-Extras] [-Verbose]`\n \n   * _command_ - optional argument to run a single command, default is to run all commands\n   * -ListCommands - display all available commands supported by this script\n   * -Developer - install developer-specific tools and apps\n   * -Extras - install extra utilities and apps\n   * -Vebose - print extra information for each command\n\nHyper-V is required for a couple of command and warning will be displayed if it is not yet\navailable. Use Install-HyperV.ps1 to enable Hyper-V prior to running Install-Programs.\n\nFor Visual Studio and VSCode, use Install-VS.ps1.\n\nBase applications:\n\n   * Adobe Reader\n   * BareTail Free (_installed to C:\\tools_)\n   * Greenshot\n   * Macrium Reflect Free (_downloads installer to be run manually_)\n   * mRemoteNG\n   * Notepad++\n   * SharpKeys\n   * SysInternals procexp and procmon\n   * Windows Terminal (_for Win10 machines_)\n\nDeveloper applications:\n\n   * .NET 6 SDK\n   * Node.js (_specific version_)\n   * Angular (_specific version_)\n   * AWSCli\n   * Docker Desktop\n   * k9s\n   * LINQPad\n   * Nuget command line\n   * Robot3T\n   * S3Browser\n\nExtra applications:\n\n   * Audacity audio editor\n   * DateInTray (_installed to C:\\tools_; Win10 only)\n   * Dopamine music player\n   * Greenfish Icon Editor Pro\n   * licecap\n   * Paint.net\n   * TreeSize Free\n   * VLC\n   * WiLMa (_installed to C:\\tools_)\n   * WmiExplorer (_installed to C:\\tools_)\n\nDuring the installation, hints and tips are shown highlighted in yellow and\ninstructions are highlighted in cyan. Some are import, such as how to continue\nthe manual installation of Macrium.\n\n### Reminders shown after a full install\n\nMacrium Reflect\n\n   1. Double-click the Macrium Installer icon on the desktop after VS is installed\n   1. Choose Free on first screen, then Home version, and no registration is necessary\n\nConsider these manually installed apps:\n- BeyondCompare (there is a choco package but not for 4.0)\n- OneMore OneNote add-in (https://github.com/stevencohn/OneMore/releases)\n\n#### [`Install-VS.ps1`](Install-VS.ps1)\nStandalone script to install Visual Studio and its extensions or VSCode and its extensions.\nThe default is to install VS Professional.\n\n`.\\Install-VS.ps1 [-Code|Community|Professional|Enterprise|Extensions] [-Verbose]`\n\n   * Visual Studio 2019 _and extensions_ (_professional or enterpise_)\n   * VSCode _and extensions_\n\nWhen installing VS, let it complete and then rerun this script with the -Extensions parameter\nto install common extensions.\n\nWhen installing VSCode (-Code), it will include extensions; there is no second step to do this.\n\n# Profiles\n\n### Microsoft.PowerShell_profile.ps1\n\nThis the primary PowerShell profile definition script, run whenenver a new PowerShell command\nprompt is open or session is created. It defines aliases for some of the commands above. It also\ninvokes special utilities unique to my environment such as integration with ConEmu, WiLMa, \nChocolatey, and setting the intial working directory.\n\n#### Console Prompt Customization\n\nThe PowerShell command prompt is customized as follows:\n\n   * It is rendered in blue\n   * It indicates the current working directory prefaced with \"PS\" for example `PS D:\\code\u003e`\n   * If the console is elevated then the \"PS\" prefix is shown in red to highlight the fact that what do you, you do at your own risk!\n\n  ![alt text](Images/ps-prompt.png \"Colorized PS Prompt Example\")\n\n\n### Microsoft.PowerShellISE_profile.ps1\n\nThis is the profile definition script fort the PowerShell ISE editor. It registers ISE add-ons\nfound in the Modules\\Addons folder.\n\n### Microsoft.VSCode_profile.ps1\n\nThis is the profile definition script for the VSCode integrated PowerShell terminal.\nIt simply invokes the primary profile script above.\n\n# Dark Selenitic Scheme\n\nThe `Dark Selenitic.StorableColorTheme.ps1xml` file defines the Dark Selenitic color scheme for ISE. The theme is also\ndefined by the Themes\\PSTheme_Selenitic.ps1 script.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstevencohn%2FWindowsPowerShell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstevencohn%2FWindowsPowerShell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstevencohn%2FWindowsPowerShell/lists"}