PowerShell β’ Cyberpunk β’ Retrowave β’ New Cat Just Dropped β’ Anything Is Pawssible
Config files for my Shell/Terminal setup (in my case PowerShell 7.6.6), making use of packages such as gum, Oh My Posh, Fastfetch, a Nerd Font and many more, including loads of custom functions.
This is not a package with an installer or so, just an inspiration to use or copy code from my configuration files.
For example, I created a lot of PowerShell functions to e.g. open retro emulators, such as pom1 for Apple 1 emulation.
I didn't generalize the profile.ps1, except for replacing all C:\Users\YOURNAME\ paths at the beginning, which makes it easier to include functions into your own profile.
The initialization of Oh My Posh and FastFetch is handled at the beginning of the PowerShell profile script and set to work also in admin mode.
πΎ π πΎ Have a meowsome time setting up your own cyberpunk / retrowave themed MeowerShell terminal!!!! πββ¬ π€ πΎ
FastFetch + Oh My Posh
For the above I used
FastFetch
(see fastfetch/config.json for details on this specific setup)
in combination with
Oh My Posh
using a customized
JanDeDobbeleer theme
(customized version in this repo) and
CaskaydiaCoveNerdFont.
The font is not included in this repo since the files are too big; it is needed to display icons, emojis, symbols etc. in the terminal.
The PowerShell script is highly customized. It includes the following functions and tweaks.
First of all, the home path can be defined at the beginning, as well as some commonly used paths. In my case these include the default Music folder, AppData, .config (for FastFetch and Mousiki music player)...
$MeowHome = "C:\Users\YOURNAME"
# Common user directories
$MeowConfig = Join-Path $MeowHome ".config"
$MeowDesktop = Join-Path $MeowHome "Desktop"
$MeowMusic = Join-Path $MeowHome "Music"
$MeowAppData = Join-Path $MeowHome "AppData"
# Application/configuration paths
$FastfetchConfig = Join-Path $MeowConfig "fastfetch\config.jsonc"
$MousikiConfig = Join-Path $MeowConfig "mousiki\config.txt"
# MeowerShell music download folder
$MeowMusicFolder = Join-Path $MeowMusic "MeowerShell-yt-dlp"The following applications are installed:
| Application | Function |
|---|---|
| Yazi | Super fast file explorer including preview of images, .txt, PDF files... |
| fzf | Fuzzy search engine, bound to Ctrl + R |
| bat | An alternative to cat that fully shows text-based files in the terminal; function that overrides bat to cat included |
| btop | A kind of retro-looking task manager inside your terminal |
Install e.g. via WinGet in the PowerShell 7.6.6 terminal:
winget install sxyazi.yazi
winget install junegunn.fzf
winget install sharkdp.bat
winget install btopOr all at once:
winget install sxyazi.yazi junegunn.fzf sharkdp.bat btopCustomized btop screen
The scripts also include a text-to-speech synthesizer command say, in my case using Microsoft Zira.
You might have to download the model; in Windows 11 (probably similar in Windows 10) it can be done in
Settings β Time & Language β Speech language β Voices.
The PWSH profile also includes the following tweak: the first time after booting your computer and opening your terminal, the speech synthesizer will greet you, choosing randomly from a list of possible expressions.
Currently those are:
"Meow, Meowmeow. Meow, MEOW!"
"All paws operational. Hiss. Hiss."
"Purrr, purrr. I wish you an meowsome day!"
"Purrfessional MeowerShell ready. Meow Meowmeow."
"Loading terminal, please calm your claws and wait a meowment. . . Purr."
"All systems operational. Meowsistance is futile. Purr!"
"You look fur-miliar, purr. Is meow the time to party? Purr?"
"Purrfessional Cyber-Explorer-Cat ready. Ready to climb a meowntain of code with you."
The standard custom tab title is set in the Oh My Posh theme file retrowave.omp.json.
"console_title_template": "MeowerShell πββ¬ β {{ .Folder }}",The PWSH script also includes a line such that PWSH has control over the title. This is done in order to change the title, e.g. for Mousiki TUI (terminal user interface) music player app...
function Set-TerminalTitle {
param([string]$Title)
[Console]::Write("`e]0;$Title`a")
}
Set-TerminalTitle "MeowerShell πββ¬ stsch"
A lot of functions included in the script define shell commands to e.g. open a program or certain files.
Below you can take a look at the profile function that opens the PowerShell profile script in VSCode.
There is also a command called profile_note which opens the profile via Notepad/editor app.
function profile {
code $PROFILE
}Not all functions are that simple and are optimized to fix some quirks of the terminal UI. I used AI to get rid of some bugs, so you may want to check yourself what and why certain functions are written the way they are. Since the profile script has ~2400 lines of code and this repo is just an inspiration, I will not go through the whole code. Just dig in yourself and take what you need. Meow!
| Command | Function |
|---|---|
| purr | Reloads FastFetch screen |
| reload | Reloads whole terminal window (and indirectly FastFetch) |
| mkcd | Linux-style command to create a new directory |
| search | Search current directory |
| which | Returns path of programs that are included in the Windows PATH environment |
Functions that open programs include the mentioned Apple 1 emulator
pom1,
Vice emulator for
C64,
the application
prism
for a real-time spectrogram of currently running audio,
the terminal graphics editor
chafa,
Strudel REPL (a code-based music maker) and the beautiful music player Mousiki.
In my GitHub profile you will find a forked repository which
ported Mousiki to also work on Windows,
since it was written for Linux/macOS by itzender5820
(see original Mousiki repo here).
Current Mousiki configuration (.config can be found in this repo)
I also included several functions that include Ollama AI in the terminal. Most of the functions rely on the ModelFile of meow-ai (pre-prompt for a serious cat personality) and have some additional prompts. The ModelFile is included in this repository.
| Command | Specific Function |
|---|---|
| meow-ai | Opens a separate TUI created via gum (see further below) to talk to an Ollama model |
| ask | Function that allows to talk to meow-ai in the terminal prompt line |
| coderkatze | AI that is fetched with certain system information |
| explain | AI that is pre-prompted to answer questions on PWSH commands |
| why | AI that needs no input and is informed on previous error output |
There is a function called menu that uses
gum,
a tool "for glamorous shell scripts" that makes it possible to create menu screens and much more that I didn't make use of.
Install gum e.g. via:
winget install charmbracelet.gum
There are a lot of other ways to create TUI menus.
Here is an image of the commands function, which provides an interactive list of all commands included in the script
(except neo, which is an extra software package that creates Matrix-style rain of letters).
I also created a menu command that shows a lot of commands while including categorized sub-pages.
It also lists commands to open the REPL of Python, R and Julia...
a) key β listing some useful key shortcuts / commands
b) doctor β where a Pawdiologist checks if certain important files are available
c) ports β which lists currently listening TCP ports








