Before starting, please install the following tools:
-
Terminal Preview
- Source: Microsoft Store
- Description: Modern terminal for Windows.
-
PowerShell 7 (latest version)
- Download: PowerShell GitHub Releases
- Required for running modern scripts and modules.
-
Python (latest stable release)
- Download: Python.org
- Make sure to check "Add Python to PATH" during installation.
-
Git (optional)
- Download: Git SCM
- Useful for version control and managing repositories.
-
Windows Package Manager (winget)
- Preinstalled on Windows 11 (and some Win10 builds).
- If missing, install via: Winget Installation Guide
This repository contains a personalized configuration for a PowerShell environment. It includes custom scripts, installed modules, and theming configurations to enhance the command-line experience.
The setup is orchestrated through the main Microsoft.PowerShell_profile.ps1 script, which loads various modules and custom functions at the start of each session.
Microsoft.PowerShell_profile.ps1
: The main PowerShell profile script that runs on startup.powershell.config.json
: Configuration file for PowerShell..git/
: Contains the Git repository data for version control.EasyModules/
: A collection of custom PowerShell scripts and helper functions that provide personalized commands and utilities. Examples include:- Sys-Maintanance.ps1: Scripts for system maintenance tasks.
- Get-AppsInfo.ps1: Scripts to retrieve information about installed applications.
- Update-Apps.ps1: Scripts for updating applications.
- Helpers/: Contains helper modules (.psm1) used by other scripts.
Modules/
: Contains third-party modules installed to extend PowerShell's functionality. Key modules include:oh-my-posh
: A powerful theme engine for the PowerShell prompt.posh-git
: Provides Git status integration in the prompt.PSScriptAnalyzer
: A static code checker for PowerShell modules and scripts.PSReadLine
: Enhances the command-line editing experience in PowerShell.
theme/
: Stores custom themes, in this case for oh-my-posh (highContext.omp.json).Help/
: Caches updatable help files for installed PowerShell modules.Scripts/
: Contains installed scripts and related information.txt files/
: A directory for miscellaneous text files, including PSReadLineHistory.txt, which stores the user's command history.
- Prompt Theming: The prompt is customized using
oh-my-posh
with the theme defined in theme/highContext.omp.json. - Git Integration:
posh-git
provides real-time feedback on Git repositories directly within the prompt. - Custom Functions: The EasyModules directory provides a suite of custom tools for managing the local system.
This repository is a personal configuration. To use a similar setup, another user would need to:
- Clone the repository.
- Ensure the PowerShell execution policy allows for running local scripts.
- Review and potentially modify the Microsoft.PowerShell_profile.ps1 to fit their own environment and