PortValhalla/scripts/Windows/Collections/Personal.ps1

186 lines
5.7 KiB
PowerShell

#!/bin/pwsh
. "$PSScriptRoot/../Scripts/Context.ps1";
. "$PSScriptRoot/../Scripts/SoftwarePackage.ps1";
. "$PSScriptRoot/../Software/Firefox/Install.ps1";
. "$PSScriptRoot/../Software/git/Manage.ps1";
. "$PSScriptRoot/../Software/LGHub/Manage.ps1";
. "$PSScriptRoot/../Software/ManiaPlanet/Manage.ps1";
. "$PSScriptRoot/../Software/osu!/Manage.ps1";
. "$PSScriptRoot/../Software/osu!lazer/Manage.ps1";
. "$PSScriptRoot/../Software/PuTTY/Manage.ps1";
. "$PSScriptRoot/../Software/RetroArch/Manage.ps1";
. "$PSScriptRoot/../Software/reWASD/Manage.ps1";
. "$PSScriptRoot/../Software/TrackMania Nations Forever/Manage.ps1";
. "$PSScriptRoot/../Software/TrackMania United Forever/Manage.ps1";
. "$PSScriptRoot/../Software/VisualStudio/Manage.ps1";
function Backup-PersonalApps([Context] $context) {
Backup-Git $context;
Backup-LogitechGHUB $context;
Backup-ManiaPlanet $context;
Backup-Osu $context;
Backup-OsuLazer $context;
Backup-PuTTY $context;
Backup-RetroArch $context;
Backup-reWASD $context;
Backup-TmNations $context;
Backup-TmUnited $context;
Backup-VisualStudio $context;
}
function Restore-PersonalApps([Context] $context) {
# Device specific
if ((Get-Command Install-PersonalDrivers -ErrorAction SilentlyContinue)) {
Write-Information "Driver installation function was found. Starting installation";
Install-PersonalDrivers $context;
}
# Backed up applications
Restore-Git $context;
Restore-LogitechGHUB $context;
Restore-TmNations $context;
Restore-TmUnited $context;
Restore-ManiaPlanet $context;
Restore-Osu $context;
Restore-OsuLazer $context;
Restore-PuTTY $context;
Restore-RetroArch $context;
Restore-reWASD $context;
Restore-VisualStudio $context;
# Design
choco install -y `
nerd-fonts-CascadiaCode;
# Social Media
choco install -y `
signal;
choco install -y `
threema-desktop `
discord `
element-desktop `
teamspeak;
$context.RemoveDesktopIcon("*Discord*");
$context.RemoveDesktopIcon("*Element*");
$context.RemoveDesktopIcon("*TeamSpeak*");
# Browsing
Install-Firefox $context;
. "$PSScriptRoot/../Software/MSEdgeRedirect/Install.ps1";
winget install --accept-source-agreements --accept-package-agreements -e --id Brave.Brave;
winget install --accept-source-agreements --accept-package-agreements -e --id Brave.Brave.Beta;
winget install --accept-source-agreements --accept-package-agreements -e --id Brave.Brave.Nightly;
$context.RemoveDesktopIcon("*Brave*");
$context.RemoveTaskbarItem("*Brave*");
# Tools
Install-SoftwarePackage $context "https://github.com/mRemoteNG/mRemoteNG/releases/download/2023.03.03-v1.77.3-nb/mRemoteNG-Installer-1.77.3.nb-1784.msi" @("/Quiet");
choco install -y `
7zip `
chocolateygui `
bitwarden `
keepass `
gimp `
gpu-z `
windirstat `
winmerge `
xmedia-recode `
hwmonitor `
qbittorrent `
imgburn `
inkscape `
krita `
obs-studio `
openvpn;
$context.RemoveDesktopIcon("GPU-Z*");
$context.RemoveDesktopIcon("WinDirStat*");
$context.RemoveDesktopIcon("*HWMonitor*");
$context.RemoveDesktopIcon("ImgBurn*");
$context.RemoveDesktopIcon("Inkscape*");
$context.RemoveDesktopIcon("Krita*");
$context.RemoveDesktopIcon("mRemoteNG*");
winget install --accept-source-agreements --accept-package-agreements -e --id AppWork.JDownloader;
$context.RemoveDesktopIcon("JDownloader*");
. "$PSScriptRoot/../Software/Ubiquiti UniFi Controller/Install.ps1" $context;
# Media
choco install -y k-litecodecpackmega;
winget install --accept-source-agreements --accept-package-agreements -e --id Ytmdesktop.Ytmdesktop;
$context.RemoveDesktopIcon("YouTube Music*");
# Coding
choco install -y --params "/NoDesktopIcon" vscode vscode-insiders;
choco install -y --params "/NoDesktopIcon /AssociateWithFiles" vscodium;
winget install --scope machine --accept-source-agreements --accept-package-agreements -e --id VSCodium.VSCodium.Insiders --override '/VerySilent /MergeTasks="!runCode,quicklaunchicon,addcontextmenufiles,addcontextmenufolders,associatewithfiles,addtopath"';
choco install -y --ignore-checksums `
ida-free;
$context.RemoveDesktopIcon("IDA *");
choco install -y `
HxD `
docker-desktop `
gh `
github-desktop `
imhex `
dotpeek;
$context.RemoveDesktopIcon("Docker*");
$context.RemoveDesktopIcon("GitHub*");
choco install -y `
nvs `
python `
visualstudio2019-workload-vctools;
refreshenv;
nvs add latest;
nvs link latest;
# Terminal
@($PROFILE, (powershell -c '$PROFILE')) | ForEach-Object {
Get-Item "$(Split-Path -Parent $_)/profile.d/*Oh My Posh*";
} | ForEach-Object {
$oldContent = Get-Content $_;
$oldContent | ForEach-Object {
$indicator = "oh-my-posh init";
$_ -replace $indicator,"$indicator --config ~/Nextcloud/.omp/manuel.omp.json";
} | Set-Content $_;
}
# Gaming
choco install -y goggalaxy;
choco install --ignore-checksums -y `
ubisoft-connect `
ea-app;
choco install -y `
epicgameslauncher `
steam `
origin;
$context.RemoveDesktopIcon("*Ubisoft Connect*");
$context.RemoveDesktopIcon("*Epic Games*");
$context.RemoveDesktopIcon("*Steam*");
$context.RemoveDesktopIcon("EA.*");
choco install -y rayman-controlpanel;
# Emulation
choco install -y `
ppsspp;
$context.RemoveDesktopIcon("PPSSPP *32-Bit*");
$context.RemoveDesktopIcon("*Microsoft Edge*");
}