# Check if the script is running as administrator If (-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { # If not running as administrator, attempt to restart with elevation Write-Host "This script needs to run with Administrator privileges. Please Run again" Exit } # download git via winget since we need to get this. Write-Host "Making sure you have git" winget install Git.Git # Download all the software Write-Host "Creating Win95 Directory" $folderPath = "C:\Program Files\Win95" if (-not (Test-Path $folderPath -PathType Container)) { New-Item -Path $folderPath -ItemType Directory -Force Write-Host "Folder '$folderPath' created successfully." } else { Write-Host "Folder '$folderPath' already exists." } Write-Host "Downloading Wallpapers" git clone https://git.tcmeta.net/kurtis/chicago95-wallpapers.git "$folderPath\Wallpapers" Write-Host "Downloading Icons" git clone https://git.tcmeta.net/kurtis/win95-icons.git "$folderPath\Icons" Write-Host "Downloading Sounds" git clone https://git.tcmeta.net/kurtis/win95-sounds.git "$folderPath\Sounds" Write-Host "Downloading Login Screen" $download = "https://git.tcmeta.net/kurtis/win95ify-11/raw/branch/main/login.png" Invoke-WebRequest $download -Out "$folderPath\login.png" Write-Host "Downloading Latest HackBRGT" $tempPath = Join-Path $env:TEMP "hackgrbt.zip" $releases = "https://api.github.com/repos/Metabolix/HackBGRT/releases" $tag = (Invoke-WebRequest $releases | ConvertFrom-Json)[0].tag_name $download = "https://github.com/Metabolix/HackBGRT/releases/download/$tag/HackBGRT-$($tag.SubString(1)).zip" Invoke-WebRequest $download -Out $tempPath Write-Host "Unzipping" Expand-Archive $tempPath -DestinationPath "$folderPath" -Force Write-Host "Removing Temp" Remove-Item $tempPath -Force Write-Host "Downloading Custom Logo" $download = "https://git.tcmeta.net/kurtis/win95ify-11/raw/branch/main/splash.bmp" Invoke-WebRequest $download -Out "$folderPath\HackBGRT-$($tag.SubString(1))\splash.bmp" Write-Host "Starting Boot Screen setup." Start-Process "$folderPath\HackBGRT-$($tag.SubString(1))\setup.exe" pause #Okay now lets start to install the essentials Write-Host "Installing RetroBar" winget install dremin.RetroBar Start-Process "$ENV:LOCALAPPDATA\Programs\RetroBar\RetroBar.exe" Write-Host "Installing OpenShell in interactive mode" winget install Open-Shell.Open-Shell-Menu -i # okay now we need to apply wallpapers and also other stuff # need to download and install the latest clippy ai Write-Host "Updating Wallpaper" Function Set-WallPaper($Image) { <# .SYNOPSIS Applies a specified wallpaper to the current user's desktop .PARAMETER Image Provide the exact path to the image .EXAMPLE Set-WallPaper -Image "C:\Wallpaper\Default.jpg" #> Add-Type -TypeDefinition @" using System; using System.Runtime.InteropServices; public class Params { [DllImport("User32.dll",CharSet=CharSet.Unicode)] public static extern int SystemParametersInfo (Int32 uAction, Int32 uParam, String lpvParam, Int32 fuWinIni); } "@ $SPI_SETDESKWALLPAPER = 0x0014 $UpdateIniFile = 0x01 $SendChangeEvent = 0x02 $fWinIni = $UpdateIniFile -bor $SendChangeEvent $ret = [Params]::SystemParametersInfo($SPI_SETDESKWALLPAPER, 0, $Image, $fWinIni) } Set-WallPaper("$folderPath\Wallpapers\default.png") Write-Host "Changing to lite mode (if not already done)" Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize -Name AppsUseLightTheme -Value 1 -Type Dword -Force Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize -Name SystemUsesLightTheme -Value 1 -Type Dword -Force # Update icons