Initial Commit

This commit is contained in:
Kurtis
2025-10-29 00:38:45 +10:00
commit 9eb0e23084
5 changed files with 559 additions and 0 deletions

13
README.md Normal file
View File

@@ -0,0 +1,13 @@
# Windows 11 Scripts
## Onboarding
This is a script that simply runs updates and installs basic software for a runup.
```
powershell -ExecutionPolicy Bypass -c "irm "https://git.tcmeta.net/kurtis/win11-scripts/raw/branch/main/onboard.ps1" | iex"
```
## VargScript
This is a script that isntalls and customises windows 11 to how i like it.
```
powershell -ExecutionPolicy Bypass -c "irm "https://git.tcmeta.net/kurtis/win11-scripts/raw/branch/main/vargscript.ps1" | iex"
```

112
onboard.ps1 Normal file
View File

@@ -0,0 +1,112 @@
# 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
}
function Install-Updates {
Install-Module PSWindowsUpdate
Import-Module PSWindowsUpdate
Get-WindowsUpdate
Install-WindowsUpdate
}
function Install-ScreenBox {
Write-Host "Installing ScreenBox"
winget install 9NTSNMSVCB5L
}
function Install-Qview {
Write-Host "Installing qView"
winget install jurplel.qView
}
function Install-OnlyOffice {
Write-Host "Installing OnlyOffice"
winget install ONLYOFFICE.DesktopEditors
}
function Install-Thunderbird {
Write-Host "Installing Thunderbird"
winget install Mozilla.Thunderbird
}
function Install-Software {
Install-ScreenBox
Install-Qview
Install-OnlyOffice
Install-Thunderbird
}
function Install-Software-NoOffice {
Install-ScreenBox
Install-Qview
}
function Show-InteractiveMenu {
param (
[string]$Title = "Main Menu",
[array]$Options
)
Clear-Host
Write-Host "================ $Title ================"
for ($i = 0; $i -lt $Options.Count; $i++) {
Write-Host "$($i + 1): $($Options[$i])"
}
Write-Host "Q: Quit"
Write-Host "========================================"
}
$menuOptions = @(
"Run All",
"Run All (No OnlyOffice or Thunderbird)"
"Windows Updates",
"Install Software",
"Install Software (No OnlyOffice or Thunderbird)"
)
do {
Show-InteractiveMenu -Title "Onboarding Script" -Options $menuOptions
$choice = Read-Host "Enter your choice (1- $($menuOptions.Count), or Q to quit)"
switch ($choice) {
"1" {
Install-Updates
Install-Software
Write-Head "All Done!"
Pause
}
"2" {
Install-Updates
Install-Software-NoOffice
Pause
}
"3" {
Install-Updates
Pause
}
"4" {
Install-Software
Pause
}
"5" {
Install-Software-NoOffice
Pause
}
"q" {
Write-Host "Exiting menu."
break
}
"Q" {
Write-Host "Exiting menu."
break
}
default {
Write-Host "Invalid choice. Please try again." -ForegroundColor Red
Pause
}
}
} while ($choice -ne "q" -and $choice -ne "Q")

148
vargscript.ps1 Normal file
View File

@@ -0,0 +1,148 @@
# 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
}
function Install-Zen {
Write-Head "Installing Zen"
winget install Zen-Team.Zen-Browser
}
function Config-Zen {
Write-Host "Creating Directory"
$folderPath = "C:\Program Files\Zen Browser\distribution"
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 Policy"
$download = "https://git.tcmeta.net/kurtis/win11-scripts/raw/branch/main/vargscript/zen-policy.json"
Invoke-WebRequest $download -Out "$folderPath\policy.json"
}
function Install-FlowLauncher {
Write-Head "Installing Flow Launcher"
winget install Flow-Launcher.Flow-Launcher
}
function Config-FlowLauncher {
$folderPath = "$ENV:APPDATA\FlowLauncher\Themes"
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 Theme"
$download = "https://git.tcmeta.net/kurtis/win11-scripts/raw/branch/main/vargscript/flow-95theme.xaml"
Invoke-WebRequest $download -Out "$folderPath\Windows 95.xaml"
}
function Install-NextCloud {
Write-Head "Installing Nextcloud"
winget install Nextcloud.NextcloudDesktop
}
function Install-SteamLink {
Write-Head "Installing Steamlink"
winget install Valve.SteamLink
}
function Install-Clink {
Write-Head "Installing Clink"
winget install chrisant996.Clink
}
function Install-Starship {
Write-Head "running Nerdfont installer"
& ([scriptblock]::Create((iwr 'https://to.loredo.me/Install-NerdFont.ps1')))
winget install Starship.Starship
Write-Head "Configuring CMD"
$folderPath = "$ENV:APPDATALOCAL\clink"
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."
}
Set-Content -Path "$folderPath\starship.lua" -Value "load(io.popen('starship init cmd'):read(`"*a`"))()"
Write-Head "Configuring PowerShell"
$folderPath = "$([Environment]::GetFolderPath("MyDocuments"))\WindowsPowerShell"
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."
}
Add-Content -Path "$folderPath\Microsoft.PowerShell_profile.ps1" -Value "Invoke-Expression (&starship init powershell)"
}
function Show-InteractiveMenu {
param (
[string]$Title = "Main Menu",
[array]$Options
)
Clear-Host
Write-Host "================ $Title ================"
for ($i = 0; $i -lt $Options.Count; $i++) {
Write-Host "$($i + 1): $($Options[$i])"
}
Write-Host "Q: Quit"
Write-Host "========================================"
}
$menuOptions = @(
"Run All",
"Install Zen Config",
"Install FlowLauncher Theme",
"Install Terminal Settings"
)
do {
Show-InteractiveMenu -Title "Onboarding Script" -Options $menuOptions
$choice = Read-Host "Enter your choice (1- $($menuOptions.Count), or Q to quit)"
switch ($choice) {
"1" {
Install-Zen
Config-Zen
Install-FlowLauncher
Config-FlowLauncher
Install-NextCloud
Install-SteamLink
Install-Clink
Install-Starship
Pause
}
"2" {
Pause
}
"3" {
Pause
}
"4" {
Pause
}
"q" {
Write-Host "Exiting menu."
break
}
"Q" {
Write-Host "Exiting menu."
break
}
default {
Write-Host "Invalid choice. Please try again." -ForegroundColor Red
Pause
}
}
} while ($choice -ne "q" -and $choice -ne "Q")

View File

@@ -0,0 +1,274 @@
<!--
Name: Windows 95 Theme
IsDark: False
HasBlur: False
-->
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:m="http://schemas.modernwpf.com/2019"
xmlns:system="clr-namespace:System;assembly=mscorlib">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Themes/Base.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- Blur behind the window -->
<system:Boolean x:Key="ThemeBlurEnabled">False</system:Boolean>
<!-- Main window background -->
<Style
x:Key="WindowBorderStyle"
BasedOn="{StaticResource BaseWindowBorderStyle}"
TargetType="{x:Type Border}">
<Setter Property="BorderThickness" Value="2" />
<Setter Property="BorderBrush" Value="#FFDFDFDF" />
<Setter Property="Background" Value="#FFC3C3C3"/>
<Setter Property="CornerRadius" Value="0" />
<Setter Property="UseLayoutRounding" Value="True" />
</Style>
<Style
x:Key="WindowStyle"
BasedOn="{StaticResource BaseWindowStyle}"
TargetType="{x:Type Window}" />
<Style x:Key="WindowRadius" TargetType="{x:Type Border}" />
<!-- Query input text box -->
<Style
x:Key="QueryBoxStyle"
BasedOn="{StaticResource BaseQueryBoxStyle}"
TargetType="{x:Type TextBox}">
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="CaretBrush" Value="#FF000000" />
</Style>
<!-- Query suggestion text box -->
<Style
x:Key="QuerySuggestionBoxStyle"
BasedOn="{StaticResource BaseQuerySuggestionBoxStyle}"
TargetType="{x:Type TextBox}">
<Setter Property="Foreground" Value="#FF79817F" />
</Style>
<!-- The panel with the time and date -->
<Style
x:Key="ClockPanel"
BasedOn="{StaticResource ClockPanel}"
TargetType="{x:Type StackPanel}">
<Setter Property="Margin" Value="0 0 56 0" />
</Style>
<!-- Time text block -->
<Style
x:Key="ClockBox"
BasedOn="{StaticResource BaseClockBox}"
TargetType="{x:Type TextBlock}">
<Setter Property="Margin" Value="0 0 0 0" />
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="FontSize" Value="14" />
<Setter Property="FontStyle" Value="Normal" />
<Setter Property="FontWeight" Value="Normal" />
</Style>
<!-- Date text block -->
<Style
x:Key="DateBox"
BasedOn="{StaticResource BaseDateBox}"
TargetType="{x:Type TextBlock}">
<Setter Property="Margin" Value="0 0 0 0" />
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="FontSize" Value="14" />
<Setter Property="FontStyle" Value="Normal" />
<Setter Property="FontWeight" Value="Normal" />
</Style>
<!-- Icon to the right of the query text box -->
<Style
x:Key="SearchIconStyle"
BasedOn="{StaticResource BaseSearchIconStyle}"
TargetType="{x:Type Path}">
<Setter Property="Fill" Value="#FF79817F" />
<Setter Property="Width" Value="32" />
<Setter Property="Height" Value="32" />
</Style>
<!-- Progress bar under the query text box -->
<Style
x:Key="PendingLineStyle"
BasedOn="{StaticResource BasePendingLineStyle}"
TargetType="{x:Type Line}">
<Setter Property="Stroke" Value="#FF000082" />
<Setter Property="StrokeThickness" Value="2" />
</Style>
<!-- Separator between the query box and the results -->
<Style
x:Key="SeparatorStyle"
BasedOn="{StaticResource BaseSeparatorStyle}"
TargetType="{x:Type Rectangle}">
<Setter Property="Fill" Value="#FF828282" />
<Setter Property="Height" Value="2" />
<Setter Property="Margin" Value="0 1 0 0" />
</Style>
<!-- Margins for the list of results -->
<Thickness x:Key="ResultMargin">0 0 0 0</Thickness>
<!-- Result title -->
<Style
x:Key="ItemTitleStyle"
BasedOn="{StaticResource BaseItemTitleStyle}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FF7B858F" />
</Style>
<Style
x:Key="ItemTitleSelectedStyle"
BasedOn="{StaticResource BaseItemTitleSelectedStyle}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FFFFFFFF" />
</Style>
<!-- Result subtitle -->
<Style
x:Key="ItemSubTitleStyle"
BasedOn="{StaticResource BaseItemSubTitleStyle}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FF7B858F" />
</Style>
<Style
x:Key="ItemSubTitleSelectedStyle"
BasedOn="{StaticResource BaseItemSubTitleSelectedStyle}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FFFFFFFF" />
</Style>
<!-- Result hotkey (Alt+1, Alt+2, etc.) -->
<Style x:Key="ItemHotkeyStyle" TargetType="{x:Type TextBlock}">
<Setter Property="FontSize" Value="12" />
<Setter Property="Foreground" Value="#000000" />
</Style>
<Style x:Key="ItemHotkeySelectedStyle" TargetType="{x:Type TextBlock}">
<Setter Property="FontSize" Value="12" />
<Setter Property="Foreground" Value="#dfdfdf" />
</Style>
<!-- Result glyph -->
<Style x:Key="ItemGlyph" TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="Width" Value="20" />
<Setter Property="Height" Value="20" />
<Setter Property="FontSize" Value="20" />
</Style>
<Style x:Key="ItemGlyphSelectedStyle" TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FFFFFFFF" />
<Setter Property="Width" Value="20" />
<Setter Property="Height" Value="20" />
<Setter Property="FontSize" Value="20" />
</Style>
<!-- Selected result styles -->
<SolidColorBrush x:Key="ItemSelectedBackgroundColor">#FF000082</SolidColorBrush>
<CornerRadius x:Key="ItemRadius">0</CornerRadius>
<Thickness x:Key="ItemMargin">0 0 0 0</Thickness>
<!-- Highlighted text -->
<Style x:Key="HighlightStyle">
<Setter Property="Inline.Foreground" Value="#FFFFFFFF" />
<Setter Property="Inline.FontStyle" Value="Normal" />
<Setter Property="Inline.FontWeight" Value="Normal" />
</Style>
<!-- Bullets -->
<Style
x:Key="BulletStyle"
BasedOn="{StaticResource BaseBulletStyle}"
TargetType="{x:Type Border}">
<Setter Property="Visibility" Value="Collapsed" />
</Style>
<Style
x:Key="ItemBulletSelectedStyle"
BasedOn="{StaticResource BaseBulletStyle}"
TargetType="{x:Type Border}">
<Setter Property="Visibility" Value="Collapsed" />
</Style>
<!-- Scrollbar container -->
<Style
x:Key="ScrollBarStyle"
BasedOn="{StaticResource BaseScrollBarStyle}"
TargetType="{x:Type ScrollBar}">
<Setter Property="Width" Value="5" />
</Style>
<!-- Scrollbar thumb -->
<Style
x:Key="ThumbStyle"
BasedOn="{StaticResource BaseThumbStyle}"
TargetType="{x:Type Thumb}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border
Background="#FF828282"
BorderBrush="Transparent"
BorderThickness="0"
CornerRadius="5"
DockPanel.Dock="Right" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- Preview Panel -->
<Style
x:Key="PreviewBorderStyle"
BasedOn="{StaticResource BasePreviewBorderStyle}"
TargetType="{x:Type Border}">
<Setter Property="BorderBrush" Value="#FF3C454E" />
<Setter Property="BorderThickness" Value="1 0 0 0" />
<Setter Property="Margin" Value="0 0 0 0" />
</Style>
<Style
x:Key="PreviewItemTitleStyle"
BasedOn="{StaticResource BasePreviewItemTitleStyle}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="FontSize" Value="14" />
<Setter Property="FontStyle" Value="Normal" />
<Setter Property="FontWeight" Value="Normal" />
<Setter Property="LineHeight" Value="21" />
</Style>
<Style
x:Key="PreviewItemSubTitleStyle"
BasedOn="{StaticResource BasePreviewItemSubTitleStyle}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="FontSize" Value="12" />
<Setter Property="FontStyle" Value="Normal" />
<Setter Property="FontWeight" Value="Normal" />
<Setter Property="LineHeight" Value="18" />
</Style>
<Style
x:Key="PreviewGlyph"
BasedOn="{StaticResource BasePreviewGlyph}"
TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#FF000000" />
</Style>
</ResourceDictionary>

View File

@@ -0,0 +1,12 @@
{
"policies": {
"Extensions": {
"Install": [
"https://addons.mozilla.org/firefox/downloads/file/4412673/ublock_origin-1.62.0.xpi",
"https://addons.mozilla.org/firefox/downloads/file/4410896/bitwarden_password_manager-2024.12.4.xpi",
"https://addons.mozilla.org/firefox/downloads/file/4461264/hoarder_app-1.2.0.xpi"
]
},
"PasswordManagerEnabled": false
}
}