mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2024-11-14 06:35:51 -06:00
Thanksgiving Update (#378)
* Update Branch in script * Feature/tweaks (#320) * update tweaks * Update Branch in script Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * Update Branch in script * Feature/applications (#326) * Update Branch in script * Feature/pester (#321) * Update Branch in script * pester for configs * Update Branch in script * update describe * github action * test pipeline * test pipeline * test pipeline * test pipeline * test pipeline * test windows container * gui tests * Updated applications.json to stop failing test * test pipeline * test pipeline * test pipeline * add test for original values if tweak is configured * test pipeline * test pipeline * remove merge request * added test to ensure main script functions Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * Update Branch in script * update pipeline * Update Branch in script * update pipeline * update pipeline * update pipeline * testing psmodule * Update Branch in script * update applications to use json Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> * Update Branch in script * Feature/update runspace (#327) * Update Branch in script * update runspace * fix wording * update logic Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * Update Branch in script * Feature/Change-dns (#334) * Added option for change dns * Update Branch in script Co-authored-by: padsalatushal <padsalatushal@users.noreply.github.com> * Update Branch in script * Update test from hotfixes (#349) * Feature/pester (#321) * Update Branch in script * pester for configs * Update Branch in script * update describe * github action * test pipeline * test pipeline * test pipeline * test pipeline * test pipeline * test windows container * gui tests * Updated applications.json to stop failing test * test pipeline * test pipeline * test pipeline * add test for original values if tweak is configured * test pipeline * test pipeline * remove merge request * added test to ensure main script functions Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * Update Branch in script * Hotfix/fixapplications (#329) * Update Branch in script * fix typo Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> * spelling (#332) * Update Branch in script * Update Branch in script Co-authored-by: DeveloperDurp <developerdurp@durp.info> Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> Co-authored-by: Archead <55419973+archead@users.noreply.github.com> * Update Branch in script * fix install spam * Add Toggle for System Dark Mode (#358) * Add Dark Mode System Toggles * Add Dark Mode System Buttons * Try to combine Dark Mode Toggles * Remove Dark Mode System Button test * Fix text i forgot to change between tests. * Add Disable and Enable Mouse Acceleration Tweaks (#362) Co-authored-by: Chris Titus <contact@christitus.com> * New Apps and winget install * Change mouse hover time * Add Ultimate Performance add/remove buttons (#367) * Add Dark Mode System Toggles * Add Dark Mode System Buttons * Try to combine Dark Mode Toggles * Remove Dark Mode System Button test * Fix text i forgot to change between tests. * Add Ultimate Performance * Add ultimate performance button * setting correct username for mainwindow for testing (revert before pull) * fix typo * Update MainWindow.xaml * add ult perf buttons * add remove button for ult perf plan * remove setactive command for powercfg due to incompatibility * Update winutil.ps1 * set back to christitus github for mainwin download * remove thing i added that isnt needed * Autologin fix - curl addition * remove powerrun * fix uneven buttons * fix gui uniformity * Update winutil.ps1 * Update Branch in script * Update runspace.ps1 * Update Branch in script Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com> Co-authored-by: DeveloperDurp <developerdurp@durp.info> Co-authored-by: DeveloperDurp <DeveloperDurp@users.noreply.github.com> Co-authored-by: Padsala Tushal <57517785+padsalatushal@users.noreply.github.com> Co-authored-by: padsalatushal <padsalatushal@users.noreply.github.com> Co-authored-by: Archead <55419973+archead@users.noreply.github.com> Co-authored-by: lavavex <27239435+lavavex@users.noreply.github.com> Co-authored-by: sidibu <55976675+sidibu@users.noreply.github.com>
This commit is contained in:
parent
38ff29ca74
commit
1a5f4c4591
28
.github/workflows/release.yaml
vendored
28
.github/workflows/release.yaml
vendored
@ -4,6 +4,28 @@ on:
|
||||
push:
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
ref: ${{ github.head_ref }}
|
||||
- name: pester_tests
|
||||
id: pester_tests
|
||||
uses: zyborg/pester-tests-report@v1
|
||||
with:
|
||||
include_paths: pester
|
||||
report_name: Winutil_Tests
|
||||
report_title: Winutil_Tests
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
tests_fail_step: true
|
||||
- name: dump test results
|
||||
shell: pwsh
|
||||
run: |
|
||||
Write-Host 'Total Tests Executed...: ${{ steps.pester_tests.outputs.total_count }}'
|
||||
Write-Host 'Total Tests PASSED.....: ${{ steps.pester_tests.outputs.passed_count }}'
|
||||
Write-Host 'Total Tests FAILED.....: ${{ steps.pester_tests.outputs.failed_count }}'
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
@ -13,9 +35,9 @@ jobs:
|
||||
- name: Create local changes
|
||||
run: |
|
||||
sed -i "/\$BranchToUse = /c\$BranchToUse = '$GITHUB_REF_NAME'" $GITHUB_WORKSPACE/runspace.ps1
|
||||
cat $GITHUB_WORKSPACE/runspace.ps1
|
||||
sed -i "/\$BranchToUse = /c\$BranchToUse = '$GITHUB_REF_NAME'" $GITHUB_WORKSPACE/runspace.ps1
|
||||
cat $GITHUB_WORKSPACE/winutil.ps1
|
||||
grep "\$BranchToUse =" $GITHUB_WORKSPACE/runspace.ps1
|
||||
sed -i "/\$BranchToUse = /c\$BranchToUse = '$GITHUB_REF_NAME'" $GITHUB_WORKSPACE/winutil.ps1
|
||||
grep "\$BranchToUse =" $GITHUB_WORKSPACE/winutil.ps1
|
||||
- uses: stefanzweifel/git-auto-commit-action@v4
|
||||
with:
|
||||
commit_message: Update Branch in script
|
||||
|
@ -236,6 +236,8 @@
|
||||
<CheckBox Name="EssTweaksRemoveCortana" Content="Remove Cortana" Margin="5,0" ToolTip="Removes Cortana, but often breaks search... if you are a heavy windows search users, this is NOT recommended."/>
|
||||
<CheckBox Name="EssTweaksRemoveEdge" Content="Remove Microsoft Edge" Margin="5,0" ToolTip="Removes MS Edge when it gets reinstalled by updates."/>
|
||||
<CheckBox Name="MiscTweaksRightClickMenu" Content="Set Classic Right-Click Menu " Margin="5,0" ToolTip="Great Windows 11 tweak to bring back good context menus when right clicking things in explorer."/>
|
||||
<CheckBox Name="MiscTweaksDisableMouseAcceleration" Content="Disable Mouse Acceleration" Margin="5,0" ToolTip="Disables the Enhance Pointer Precision setting."/>
|
||||
<CheckBox Name="MiscTweaksEnableMouseAcceleration" Content="Enable Mouse Acceleration" Margin="5,0" ToolTip="Enables the Enhance Pointer Precision setting."/>
|
||||
<Button Name="tweaksbutton" Background="AliceBlue" Content="Run Tweaks" Margin="20,10,20,0"/>
|
||||
<Button Name="undoall" Background="AliceBlue" Content="Undo All Tweaks" Margin="20,5"/>
|
||||
</StackPanel>
|
||||
|
@ -43,11 +43,12 @@
|
||||
<CheckBox Name="Installbrave" Content="Brave" Margin="5,0"/>
|
||||
<CheckBox Name="Installchrome" Content="Chrome" Margin="5,0"/>
|
||||
<CheckBox Name="Installchromium" Content="Chromium" Margin="5,0"/>
|
||||
<CheckBox Name="Installedge" Content="Edge" Margin="5,0"/>
|
||||
<CheckBox Name="Installfirefox" Content="Firefox" Margin="5,0"/>
|
||||
<CheckBox Name="Installlibrewolf" Content="LibreWolf" Margin="5,0"/>
|
||||
<CheckBox Name="Installtor" Content="Tor Browser" Margin="5,0"/>
|
||||
<CheckBox Name="Installvivaldi" Content="Vivaldi" Margin="5,0"/>
|
||||
|
||||
<CheckBox Name="Installwaterfox" Content="Waterfox" Margin="5,0"/>
|
||||
|
||||
<Label Content="Communications" FontSize="16" Margin="5,0"/>
|
||||
<CheckBox Name="Installdiscord" Content="Discord" Margin="5,0"/>
|
||||
@ -58,6 +59,7 @@
|
||||
<CheckBox Name="Installskype" Content="Skype" Margin="5,0"/>
|
||||
<CheckBox Name="Installslack" Content="Slack" Margin="5,0"/>
|
||||
<CheckBox Name="Installteams" Content="Teams" Margin="5,0"/>
|
||||
<CheckBox Name="Installtelegram" Content="Telegram" Margin="5,0"/>
|
||||
<CheckBox Name="Installviber" Content="Viber" Margin="5,0"/>
|
||||
<CheckBox Name="Installzoom" Content="Zoom" Margin="5,0"/>
|
||||
</StackPanel>
|
||||
@ -75,13 +77,11 @@
|
||||
<CheckBox Name="Installpython3" Content="Python3" Margin="5,0"/>
|
||||
<CheckBox Name="Installrustlang" Content="Rust" Margin="5,0"/>
|
||||
<CheckBox Name="Installsublime" Content="Sublime" Margin="5,0"/>
|
||||
<CheckBox Name="Installunity" Content="Unity Game Engine" Margin="5,0"/>
|
||||
<CheckBox Name="Installvisualstudio" Content="Visual Studio 2022" Margin="5,0"/>
|
||||
<CheckBox Name="Installvscode" Content="VS Code" Margin="5,0"/>
|
||||
<CheckBox Name="Installvscodium" Content="VS Codium" Margin="5,0"/>
|
||||
|
||||
</StackPanel>
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Column="2" Margin="10">
|
||||
|
||||
<Label Content="Document" FontSize="16" Margin="5,0"/>
|
||||
<CheckBox Name="Installadobe" Content="Adobe Reader DC" Margin="5,0"/>
|
||||
<CheckBox Name="Installfoxpdf" Content="Foxit PDF" Margin="5,0"/>
|
||||
@ -94,9 +94,15 @@
|
||||
<CheckBox Name="Installsumatra" Content="Sumatra PDF" Margin="5,0"/>
|
||||
<CheckBox Name="Installwinmerge" Content="WinMerge" Margin="5,0"/>
|
||||
|
||||
</StackPanel>
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Column="2" Margin="10">
|
||||
|
||||
|
||||
<Label Content="Games" FontSize="16" Margin="5,0"/>
|
||||
<CheckBox Name="Installbluestacks" Content="Bluestacks" Margin="5,0"/>
|
||||
<CheckBox Name="Installepicgames" Content="Epic Games Launcher" Margin="5,0"/>
|
||||
<CheckBox Name="Installgog" Content="GOG Galaxy" Margin="5,0"/>
|
||||
<CheckBox Name="Installorigin" Content="Origin" Margin="5,0"/>
|
||||
<CheckBox Name="Installsteam" Content="Steam" Margin="5,0"/>
|
||||
|
||||
<Label Content="Pro Tools" FontSize="16" Margin="5,0"/>
|
||||
@ -108,17 +114,22 @@
|
||||
<CheckBox Name="Installscp" Content="WinSCP" Margin="5,0"/>
|
||||
<CheckBox Name="Installwireshark" Content="WireShark" Margin="5,0"/>
|
||||
|
||||
</StackPanel>
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Column="3" Margin="10">
|
||||
<Label Content="Microsoft Tools" FontSize="16" Margin="5,0"/>
|
||||
<CheckBox Name="Installdotnet3" Content=".NET Desktop Runtime 3.1" Margin="5,0"/>
|
||||
<CheckBox Name="Installdotnet5" Content=".NET Desktop Runtime 5" Margin="5,0"/>
|
||||
<CheckBox Name="Installdotnet6" Content=".NET Desktop Runtime 6" Margin="5,0"/>
|
||||
<CheckBox Name="Installpowertoys" Content="Microsoft Powertoys" Margin="5,0"/>
|
||||
<CheckBox Name="Installnuget" Content="Nuget" Margin="5,0"/>
|
||||
<CheckBox Name="Installonedrive" Content="OneDrive" Margin="5,0"/>
|
||||
<CheckBox Name="Installpowershell" Content="PowerShell" Margin="5,0"/>
|
||||
<CheckBox Name="Installpowertoys" Content="Powertoys" Margin="5,0"/>
|
||||
<CheckBox Name="Installprocessmonitor" Content="SysInternals Process Monitor" Margin="5,0"/>
|
||||
<CheckBox Name="Installvc2015_64" Content="Visual C++ 2015-2022 64-bit" Margin="5,0"/>
|
||||
<CheckBox Name="Installvc2015_32" Content="Visual C++ 2015-2022 32-bit" Margin="5,0"/>
|
||||
<CheckBox Name="Installterminal" Content="Windows Terminal" Margin="5,0"/>
|
||||
|
||||
|
||||
</StackPanel>
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Column="3" Margin="10">
|
||||
<Label Content="Multimedia Tools" FontSize="16" Margin="5,0"/>
|
||||
<CheckBox Name="Installaudacity" Content="Audacity" Margin="5,0"/>
|
||||
<CheckBox Name="Installblender" Content="Blender (3D Graphics)" Margin="5,0"/>
|
||||
@ -133,14 +144,17 @@
|
||||
<CheckBox Name="Installinkscape" Content="Inkscape" Margin="5,0"/>
|
||||
<CheckBox Name="Installitunes" Content="iTunes" Margin="5,0"/>
|
||||
<CheckBox Name="Installkdenlive" Content="Kdenlive (Video Editor)" Margin="5,0"/>
|
||||
<CheckBox Name="Installkodi" Content="Kodi Media Center" Margin="5,0"/>
|
||||
<CheckBox Name="Installklite" Content="K-Lite Codec Standard" Margin="5,0"/>
|
||||
<CheckBox Name="Installkrita" Content="Krita (Image Editor)" Margin="5,0"/>
|
||||
<CheckBox Name="Installmpc" Content="Media Player Classic (Video Player)" Margin="5,0"/>
|
||||
<CheckBox Name="Installobs" Content="OBS Studio" Margin="5,0"/>
|
||||
<CheckBox Name="Installnglide" Content="nGlide (3dfx compatibility)" Margin="5,0"/>
|
||||
<CheckBox Name="Installsharex" Content="ShareX (Screenshots)" Margin="5,0"/>
|
||||
<CheckBox Name="Installstrawberry" Content="Strawberry (Music Player)" Margin="5,0"/>
|
||||
<CheckBox Name="Installvlc" Content="VLC (Video Player)" Margin="5,0"/>
|
||||
<CheckBox Name="Installvoicemeeter" Content="Voicemeeter (Audio)" Margin="5,0"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Column="4" Margin="10">
|
||||
<Label Content="Utilities" FontSize="16" Margin="5,0"/>
|
||||
<CheckBox Name="Installsevenzip" Content="7-Zip" Margin="5,0"/>
|
||||
@ -160,7 +174,9 @@
|
||||
<CheckBox Name="Installkeepass" Content="KeePassXC" Margin="5,0"/>
|
||||
<CheckBox Name="Installmalwarebytes" Content="MalwareBytes" Margin="5,0"/>
|
||||
<CheckBox Name="Installnvclean" Content="NVCleanstall" Margin="5,0"/>
|
||||
<CheckBox Name="Installopenshell" Content="Open Shell (Start Menu)" Margin="5,0"/>
|
||||
<CheckBox Name="Installprocesslasso" Content="Process Lasso" Margin="5,0"/>
|
||||
<CheckBox Name="Installqbittorrent" Content="qBittorrent" Margin="5,0"/>
|
||||
<CheckBox Name="Installrevo" Content="RevoUninstaller" Margin="5,0"/>
|
||||
<CheckBox Name="Installrufus" Content="Rufus Imager" Margin="5,0"/>
|
||||
<CheckBox Name="Installsandboxie" Content="Sandboxie Plus" Margin="5,0"/>
|
||||
@ -171,8 +187,8 @@
|
||||
<CheckBox Name="Installtwinkletray" Content="Twinkle Tray" Margin="5,0"/>
|
||||
<CheckBox Name="Installwindirstat" Content="WinDirStat" Margin="5,0"/>
|
||||
<CheckBox Name="Installwiztree" Content="WizTree" Margin="5,0"/>
|
||||
<Button Name="install" Background="AliceBlue" Content="Start Install" Margin="20,5,20,5" ToolTip="Install all checked programs"/>
|
||||
<Button Name="InstallUpgrade" Background="AliceBlue" Content="Upgrade Installs" Margin="20,5,20,5" ToolTip="Upgrade All Existing Programs on System"/>
|
||||
<Button Name="install" Background="AliceBlue" Content="Start Install" Margin="30,0" ToolTip="Install all checked programs"/>
|
||||
<Button Name="InstallUpgrade" Background="AliceBlue" Content="Upgrade Installs" Margin="30,5" ToolTip="Upgrade All Existing Programs on System"/>
|
||||
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
@ -204,20 +220,23 @@
|
||||
<Label FontSize="16" Content="Essential Tweaks"/>
|
||||
<CheckBox Name="EssTweaksRP" Content="Create Restore Point" Margin="5,0" ToolTip="Creates a Windows Restore point before modifying system. Can use Windows System Restore to rollback to before tweaks were applied"/>
|
||||
<CheckBox Name="EssTweaksOO" Content="Run OO Shutup" Margin="5,0" ToolTip="Runs OO Shutup from https://www.oo-software.com/en/shutup10"/>
|
||||
<CheckBox Name="EssTweaksTele" Content="Disable Telemetry" Margin="5,0" ToolTip="Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser."/>
|
||||
<CheckBox Name="EssTweaksWifi" Content="Disable Wifi-Sense" Margin="5,0" ToolTip="Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location."/>
|
||||
<CheckBox Name="EssTweaksTele" Content="Disable Telemetry" Margin="5,0" ToolTip="Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spys heavily on you when using the Edge browser."/>
|
||||
<CheckBox Name="EssTweaksWifi" Content="Disable Wifi-Sense" Margin="5,0" ToolTip="Wifi Sense is a spying service that phones home all nearby scaned wifi networks and your current geo location."/>
|
||||
<CheckBox Name="EssTweaksAH" Content="Disable Activity History" Margin="5,0" ToolTip="This erases recent docs, clipboard, and run history."/>
|
||||
<CheckBox Name="EssTweaksDeleteTempFiles" Content="Delete Temporary Files" Margin="5,0" ToolTip="Erases TEMP Folders"/>
|
||||
<CheckBox Name="EssTweaksDiskCleanup" Content="Run Disk Cleanup" Margin="5,0" ToolTip="Runs Disk Cleanup on Drive C: and removes old Windows updates."/>
|
||||
<CheckBox Name="EssTweaksDiskCleanup" Content="Run Disk Cleanup" Margin="5,0" ToolTip="Runs Disk Cleanup on Drive C: and removes old Windows Updates."/>
|
||||
<CheckBox Name="EssTweaksLoc" Content="Disable Location Tracking" Margin="5,0" ToolTip="Disables Location Tracking...DUH!"/>
|
||||
<CheckBox Name="EssTweaksHome" Content="Disable Homegroup" Margin="5,0" ToolTip="Disables HomeGroup - Windows 11 doesn't have this, it was awful."/>
|
||||
<CheckBox Name="EssTweaksStorage" Content="Disable Storage Sense" Margin="5,0" ToolTip="Storage Sense is supposed to delete temp files automatically, but can run at active times and mostly doesn't do much. Although when it was introduced in Win 10 (1809 Version) it deleted people's documents... So there is that."/>
|
||||
<CheckBox Name="EssTweaksStorage" Content="Disable Storage Sense" Margin="5,0" ToolTip="Storage Sense is supposed to delete temp files automatically, but often runs at wierd times and mostly doesn't do much. Although when it was introduced in Win 10 (1809 Version) it deleted people's documents... So there is that."/>
|
||||
<CheckBox Name="EssTweaksHiber" Content="Disable Hibernation" Margin="5,0" ToolTip="Hibernation is really meant for laptops as it saves whats in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation."/>
|
||||
<CheckBox Name="EssTweaksDVR" Content="Disable GameDVR" Margin="5,0" ToolTip="GameDVR is a Windows App that is a dependancy for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd."/>
|
||||
<CheckBox Name="EssTweaksServices" Content="Set Services to Manual" Margin="5,0" ToolTip="Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand."/>
|
||||
<Label Content="Dark Theme" />
|
||||
<Button Name="EnableDarkMode" Background="AliceBlue" Content="Enable" Margin="60,0" />
|
||||
<Button Name="DisableDarkMode" Background="AliceBlue" Content="Disable" Margin="60,0"/>
|
||||
<Button Name="EnableDarkMode" Background="AliceBlue" Content="Enable" Margin="80,0" />
|
||||
<Button Name="DisableDarkMode" Background="AliceBlue" Content="Disable" Margin="80,0"/>
|
||||
<Label Content="Performance Plans" />
|
||||
<Button Name="AddUltPerf" Background="AliceBlue" Content="Add Ultimate Performance Profile" Margin="80,0"/>
|
||||
<Button Name="RemoveUltPerf" Background="AliceBlue" Content="Remove Ultimate Performance Profile" Margin="80,0"/>
|
||||
|
||||
</StackPanel>
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Row="2" Grid.Column="1" Margin="10,5">
|
||||
@ -236,8 +255,8 @@
|
||||
<CheckBox Name="EssTweaksRemoveCortana" Content="Remove Cortana" Margin="5,0" ToolTip="Removes Cortana, but often breaks search... if you are a heavy windows search users, this is NOT recommended."/>
|
||||
<CheckBox Name="EssTweaksRemoveEdge" Content="Remove Microsoft Edge" Margin="5,0" ToolTip="Removes MS Edge when it gets reinstalled by updates."/>
|
||||
<CheckBox Name="MiscTweaksRightClickMenu" Content="Set Classic Right-Click Menu " Margin="5,0" ToolTip="Great Windows 11 tweak to bring back good context menus when right clicking things in explorer."/>
|
||||
<Button Name="tweaksbutton" Background="AliceBlue" Content="Run Tweaks" Margin="20,10,20,0"/>
|
||||
<Button Name="undoall" Background="AliceBlue" Content="Undo All Tweaks" Margin="20,5"/>
|
||||
<Button Name="tweaksbutton" Background="AliceBlue" Content="Run Tweaks" Margin="80,0"/>
|
||||
<Button Name="undoall" Background="AliceBlue" Content="Undo All Tweaks" Margin="80,0"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</TabItem>
|
||||
@ -254,21 +273,20 @@
|
||||
<CheckBox Name="Featureslegacymedia" Content="Legacy Media (WMP, DirectPlay)" Margin="5,0"/>
|
||||
<CheckBox Name="Featurenfs" Content="NFS - Network File System" Margin="5,0"/>
|
||||
<CheckBox Name="Featurewsl" Content="Windows Subsystem for Linux" Margin="5,0"/>
|
||||
<Button Name="FeatureInstall" FontSize="14" Background="AliceBlue" Content="Install Features" Margin="20,5,20,0" Padding="10"/>
|
||||
<Button Name="FeatureInstall" FontSize="14" Background="AliceBlue" Content="Install Features" Margin="140,5" Padding="10"/>
|
||||
<Label Content="Fixes" FontSize="16"/>
|
||||
<Button Name="PanelAutologin" FontSize="14" Background="AliceBlue" Content="Set Up Autologin" Margin="20,5,20,0" Padding="10"/>
|
||||
<Button Name="FixesUpdate" FontSize="14" Background="AliceBlue" Content="Reset Windows Update" Margin="20,5,20,0" Padding="10"/>
|
||||
<Button Name="PanelDISM" FontSize="14" Background="AliceBlue" Content="System Corruption Scan" Margin="20,5,20,0" Padding="10"/>
|
||||
|
||||
<Button Name="PanelAutologin" FontSize="14" Background="AliceBlue" Content="Set Up Autologin" Margin="140,5" Padding="10"/>
|
||||
<Button Name="FixesUpdate" FontSize="14" Background="AliceBlue" Content="Reset Windows Update" Margin="140,5" Padding="10"/>
|
||||
<Button Name="PanelDISM" FontSize="14" Background="AliceBlue" Content="System Corruption Scan" Margin="140,5" Padding="10"/>
|
||||
</StackPanel>
|
||||
<StackPanel Background="#777777" SnapsToDevicePixels="True" Grid.Column="1" Margin="10,5">
|
||||
<Label Content="Legacy Windows Panels" FontSize="16"/>
|
||||
<Button Name="Panelcontrol" FontSize="14" Background="AliceBlue" Content="Control Panel" Margin="20,5,20,5" Padding="10"/>
|
||||
<Button Name="Panelnetwork" FontSize="14" Background="AliceBlue" Content="Network Connections" Margin="20,0,20,5" Padding="10"/>
|
||||
<Button Name="Panelpower" FontSize="14" Background="AliceBlue" Content="Power Panel" Margin="20,0,20,5" Padding="10"/>
|
||||
<Button Name="Panelsound" FontSize="14" Background="AliceBlue" Content="Sound Settings" Margin="20,0,20,5" Padding="10"/>
|
||||
<Button Name="Panelsystem" FontSize="14" Background="AliceBlue" Content="System Properties" Margin="20,0,20,5" Padding="10"/>
|
||||
<Button Name="Paneluser" FontSize="14" Background="AliceBlue" Content="User Accounts" Margin="20,0,20,5" Padding="10"/>
|
||||
<Button Name="Panelcontrol" FontSize="14" Background="AliceBlue" Content="Control Panel" Margin="140,5" Padding="10"/>
|
||||
<Button Name="Panelnetwork" FontSize="14" Background="AliceBlue" Content="Network Connections" Margin="140,5" Padding="10"/>
|
||||
<Button Name="Panelpower" FontSize="14" Background="AliceBlue" Content="Power Panel" Margin="140,5" Padding="10"/>
|
||||
<Button Name="Panelsound" FontSize="14" Background="AliceBlue" Content="Sound Settings" Margin="140,5" Padding="10"/>
|
||||
<Button Name="Panelsystem" FontSize="14" Background="AliceBlue" Content="System Properties" Margin="140,5" Padding="10"/>
|
||||
<Button Name="Paneluser" FontSize="14" Background="AliceBlue" Content="User Accounts" Margin="140,5" Padding="10"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</TabItem>
|
||||
|
@ -1,322 +1,382 @@
|
||||
{
|
||||
"install": {
|
||||
"Installadobe": {
|
||||
"Install": {
|
||||
"WPFInstalladobe": {
|
||||
"winget": "Adobe.Acrobat.Reader.64-bit"
|
||||
},
|
||||
"Installadvancedip": {
|
||||
"WPFInstalladvancedip": {
|
||||
"winget": "Famatech.AdvancedIPScanner"
|
||||
},
|
||||
"Installanydesk": {
|
||||
"WPFInstallanydesk": {
|
||||
"winget": "AnyDeskSoftwareGmbH.AnyDesk"
|
||||
},
|
||||
"Installatom": {
|
||||
"WPFInstallatom": {
|
||||
"winget": "GitHub.Atom"
|
||||
},
|
||||
"Installaudacity": {
|
||||
"WPFInstallaudacity": {
|
||||
"winget": "Audacity.Audacity"
|
||||
},
|
||||
"Installautohotkey": {
|
||||
"WPFInstallautohotkey": {
|
||||
"winget": "Lexikos.AutoHotkey"
|
||||
},
|
||||
"Installbitwarden": {
|
||||
"WPFInstallbitwarden": {
|
||||
"winget": "Bitwarden.Bitwarden"
|
||||
},
|
||||
"Installblender": {
|
||||
"WPFInstallblender": {
|
||||
"winget": "BlenderFoundation.Blender"
|
||||
},
|
||||
"Installbrave": {
|
||||
"WPFInstallbrave": {
|
||||
"winget": "Brave.Brave"
|
||||
},
|
||||
"Installchrome": {
|
||||
"WPFInstallchrome": {
|
||||
"winget": "Google.Chrome"
|
||||
},
|
||||
"Installchromium": {
|
||||
"WPFInstallchromium": {
|
||||
"winget": "eloston.ungoogled-chromium"
|
||||
},
|
||||
"Installcpuz": {
|
||||
"WPFInstallcpuz": {
|
||||
"winget": "CPUID.CPU-Z"
|
||||
},
|
||||
"Installdiscord": {
|
||||
"WPFInstalldiscord": {
|
||||
"winget": "Discord.Discord"
|
||||
},
|
||||
"Installeartrumpet": {
|
||||
"WPFInstalleartrumpet": {
|
||||
"winget": "File-New-Project.EarTrumpet"
|
||||
},
|
||||
"Installepicgames": {
|
||||
"WPFInstallepicgames": {
|
||||
"winget": "EpicGames.EpicGamesLauncher"
|
||||
},
|
||||
"Installesearch": {
|
||||
"WPFInstallesearch": {
|
||||
"winget": "voidtools.Everything"
|
||||
},
|
||||
"Installetcher": {
|
||||
"WPFInstalletcher": {
|
||||
"winget": "Balena.Etcher"
|
||||
},
|
||||
"Installfirefox": {
|
||||
"WPFInstallfirefox": {
|
||||
"winget": "Mozilla.Firefox"
|
||||
},
|
||||
"Installflameshot": {
|
||||
"WPFInstallflameshot": {
|
||||
"winget": "Flameshot.Flameshot"
|
||||
},
|
||||
"Installfoobar": {
|
||||
"WPFInstallfoobar": {
|
||||
"winget": "PeterPawlowski.foobar2000"
|
||||
},
|
||||
"Installgimp": {
|
||||
"WPFInstallgimp": {
|
||||
"winget": "GIMP.GIMP"
|
||||
},
|
||||
"Installgithubdesktop": {
|
||||
"WPFInstallgithubdesktop": {
|
||||
"winget": "Git.Git;GitHub.GitHubDesktop"
|
||||
},
|
||||
"Installgog": {
|
||||
"WPFInstallgog": {
|
||||
"winget": "GOG.Galaxy"
|
||||
},
|
||||
"Installgpuz": {
|
||||
"WPFInstallgpuz": {
|
||||
"winget": "TechPowerUp.GPU-Z"
|
||||
},
|
||||
"Installgreenshot": {
|
||||
"WPFInstallgreenshot": {
|
||||
"winget": "Greenshot.Greenshot"
|
||||
},
|
||||
"Installhandbrake": {
|
||||
"WPFInstallhandbrake": {
|
||||
"winget": "HandBrake.HandBrake"
|
||||
},
|
||||
"Installhexchat": {
|
||||
"WPFInstallhexchat": {
|
||||
"winget": "HexChat.HexChat"
|
||||
},
|
||||
"Installhwinfo": {
|
||||
"WPFInstallhwinfo": {
|
||||
"winget": "REALiX.HWiNFO"
|
||||
},
|
||||
"Installimageglass": {
|
||||
"WPFInstallimageglass": {
|
||||
"winget": "DuongDieuPhap.ImageGlass"
|
||||
},
|
||||
"Installinkscape": {
|
||||
"WPFInstallinkscape": {
|
||||
"winget": "Inkscape.Inkscape"
|
||||
},
|
||||
"Installjava16": {
|
||||
"WPFInstalljava16": {
|
||||
"winget": "AdoptOpenJDK.OpenJDK.16"
|
||||
},
|
||||
"Installjava18": {
|
||||
"winget": "Oracle.JDK.18"
|
||||
"WPFInstalljava18": {
|
||||
"winget": "EclipseAdoptium.Temurin.18.JRE"
|
||||
},
|
||||
"Installjava8": {
|
||||
"winget": "AdoptOpenJDK.OpenJDK.8"
|
||||
"WPFInstalljava8": {
|
||||
"winget": "EclipseAdoptium.Temurin.8.JRE"
|
||||
},
|
||||
"Installjetbrains": {
|
||||
"WPFInstalljava19": {
|
||||
"winget": "EclipseAdoptium.Temurin.19.JRE"
|
||||
},
|
||||
"WPFInstalljava17": {
|
||||
"winget": "EclipseAdoptium.Temurin.17.JRE"
|
||||
},
|
||||
"WPFInstalljava11": {
|
||||
"winget": "EclipseAdoptium.Temurin.11.JRE"
|
||||
},
|
||||
"WPFInstalljetbrains": {
|
||||
"winget": "JetBrains.Toolbox"
|
||||
},
|
||||
"Installkeepass": {
|
||||
"WPFInstallkeepass": {
|
||||
"winget": "KeePassXCTeam.KeePassXC"
|
||||
},
|
||||
"Installlibrewolf": {
|
||||
"WPFInstalllibrewolf": {
|
||||
"winget": "LibreWolf.LibreWolf"
|
||||
},
|
||||
"Installmalwarebytes": {
|
||||
"WPFInstallmalwarebytes": {
|
||||
"winget": "Malwarebytes.Malwarebytes"
|
||||
},
|
||||
"Installmatrix": {
|
||||
"WPFInstallmatrix": {
|
||||
"winget": "Element.Element"
|
||||
},
|
||||
"Installmpc": {
|
||||
"WPFInstallmpc": {
|
||||
"winget": "clsid2.mpc-hc"
|
||||
},
|
||||
"Installmremoteng": {
|
||||
"WPFInstallmremoteng": {
|
||||
"winget": "mRemoteNG.mRemoteNG"
|
||||
},
|
||||
"Installnodejs": {
|
||||
"WPFInstallnodejs": {
|
||||
"winget": "OpenJS.NodeJS"
|
||||
},
|
||||
"Installnodejslts": {
|
||||
"WPFInstallnodejslts": {
|
||||
"winget": "OpenJS.NodeJS.LTS"
|
||||
},
|
||||
"Installnotepadplus": {
|
||||
"WPFInstallnotepadplus": {
|
||||
"winget": "Notepad++.Notepad++"
|
||||
},
|
||||
"Installnvclean": {
|
||||
"WPFInstallnvclean": {
|
||||
"winget": "TechPowerUp.NVCleanstall"
|
||||
},
|
||||
"Installobs": {
|
||||
"WPFInstallobs": {
|
||||
"winget": "OBSProject.OBSStudio"
|
||||
},
|
||||
"Installobsidian": {
|
||||
"WPFInstallobsidian": {
|
||||
"winget": "Obsidian.Obsidian"
|
||||
},
|
||||
"Installpowertoys": {
|
||||
"WPFInstallpowertoys": {
|
||||
"winget": "Microsoft.PowerToys"
|
||||
},
|
||||
"Installputty": {
|
||||
"WPFInstallputty": {
|
||||
"winget": "PuTTY.PuTTY"
|
||||
},
|
||||
"Installpython3": {
|
||||
"WPFInstallpython3": {
|
||||
"winget": "Python.Python.3"
|
||||
},
|
||||
"Installrevo": {
|
||||
"winget": "RevoUninstaller.RevoUninstaller"
|
||||
"WPFInstallrevo": {
|
||||
"winget": "RevoUnWPFInstaller.RevoUnWPFInstaller"
|
||||
},
|
||||
"Installrufus": {
|
||||
"WPFInstallrufus": {
|
||||
"winget": "Rufus.Rufus"
|
||||
},
|
||||
"Installsevenzip": {
|
||||
"WPFInstallsevenzip": {
|
||||
"winget": "7zip.7zip"
|
||||
},
|
||||
"Installsharex": {
|
||||
"WPFInstallsharex": {
|
||||
"winget": "ShareX.ShareX"
|
||||
},
|
||||
"Installsignal": {
|
||||
"WPFInstallsignal": {
|
||||
"winget": "OpenWhisperSystems.Signal"
|
||||
},
|
||||
"Installskype": {
|
||||
"WPFInstallskype": {
|
||||
"winget": "Microsoft.Skype"
|
||||
},
|
||||
"Installslack": {
|
||||
"WPFInstallslack": {
|
||||
"winget": "SlackTechnologies.Slack"
|
||||
},
|
||||
"Installsteam": {
|
||||
"WPFInstallsteam": {
|
||||
"winget": "Valve.Steam"
|
||||
},
|
||||
"Installsublime": {
|
||||
"WPFInstallsublime": {
|
||||
"winget": "SublimeHQ.SublimeText.4"
|
||||
},
|
||||
"Installsumatra": {
|
||||
"WPFInstallsumatra": {
|
||||
"winget": "SumatraPDF.SumatraPDF"
|
||||
},
|
||||
"Installteams": {
|
||||
"WPFInstallteams": {
|
||||
"winget": "Microsoft.Teams"
|
||||
},
|
||||
"Installteamviewer": {
|
||||
"WPFInstallteamviewer": {
|
||||
"winget": "TeamViewer.TeamViewer"
|
||||
},
|
||||
"Installterminal": {
|
||||
"WPFInstallterminal": {
|
||||
"winget": "Microsoft.WindowsTerminal"
|
||||
},
|
||||
"Installtreesize": {
|
||||
"WPFInstalltreesize": {
|
||||
"winget": "JAMSoftware.TreeSize.Free"
|
||||
},
|
||||
"Installttaskbar": {
|
||||
"WPFInstallttaskbar": {
|
||||
"winget": "TranslucentTB.TranslucentTB"
|
||||
},
|
||||
"Installvisualstudio": {
|
||||
"WPFInstallvisualstudio": {
|
||||
"winget": "Microsoft.VisualStudio.2022.Community"
|
||||
},
|
||||
"Installvivaldi": {
|
||||
"WPFInstallvivaldi": {
|
||||
"winget": "VivaldiTechnologies.Vivaldi"
|
||||
},
|
||||
"Installvlc": {
|
||||
"WPFInstallvlc": {
|
||||
"winget": "VideoLAN.VLC"
|
||||
},
|
||||
"Installvoicemeeter": {
|
||||
"WPFInstallvoicemeeter": {
|
||||
"winget": "VB-Audio.Voicemeeter"
|
||||
},
|
||||
"Installvscode": {
|
||||
"WPFInstallvscode": {
|
||||
"winget": "Git.Git;Microsoft.VisualStudioCode"
|
||||
},
|
||||
"Installvscodium": {
|
||||
"WPFInstallvscodium": {
|
||||
"winget": "Git.Git;VSCodium.VSCodium"
|
||||
},
|
||||
"Installwindirstat": {
|
||||
"WPFInstallwindirstat": {
|
||||
"winget": "WinDirStat.WinDirStat"
|
||||
},
|
||||
"Installscp": {
|
||||
"WPFInstallscp": {
|
||||
"winget": "WinSCP.WinSCP"
|
||||
},
|
||||
"Installwireshark": {
|
||||
"WPFInstallwireshark": {
|
||||
"winget": "WiresharkFoundation.Wireshark"
|
||||
},
|
||||
"Installzoom": {
|
||||
"WPFInstallzoom": {
|
||||
"winget": "Zoom.Zoom"
|
||||
},
|
||||
"Installlibreoffice": {
|
||||
"WPFInstalllibreoffice": {
|
||||
"winget": "TheDocumentFoundation.LibreOffice"
|
||||
},
|
||||
"Installshell": {
|
||||
"WPFInstallshell": {
|
||||
"winget": "Nilesoft.Shell"
|
||||
},
|
||||
"Installklite": {
|
||||
"WPFInstallklite": {
|
||||
"winget": "CodecGuide.K-LiteCodecPack.Standard"
|
||||
},
|
||||
"Installsandboxie": {
|
||||
"WPFInstallsandboxie": {
|
||||
"winget": "Sandboxie.Plus"
|
||||
},
|
||||
"Installprocesslasso": {
|
||||
"WPFInstallprocesslasso": {
|
||||
"winget": "BitSum.ProcessLasso"
|
||||
},
|
||||
"Installwinmerge": {
|
||||
"WPFInstallwinmerge": {
|
||||
"winget": "WinMerge.WinMerge"
|
||||
},
|
||||
"Installdotnet3": {
|
||||
"WPFInstalldotnet3": {
|
||||
"winget": "Microsoft.DotNet.DesktopRuntime.3_1"
|
||||
},
|
||||
"Installdotnet5": {
|
||||
"WPFInstalldotnet5": {
|
||||
"winget": "Microsoft.DotNet.DesktopRuntime.5"
|
||||
},
|
||||
"Installdotnet6": {
|
||||
"WPFInstalldotnet6": {
|
||||
"winget": "Microsoft.DotNet.DesktopRuntime.6"
|
||||
},
|
||||
"Installvc2015_64": {
|
||||
"WPFInstallvc2015_64": {
|
||||
"winget": "Microsoft.VC++2015-2022Redist-x64"
|
||||
},
|
||||
"Installvc2015_32": {
|
||||
"WPFInstallvc2015_32": {
|
||||
"winget": "Microsoft.VC++2015-2022Redist-x86"
|
||||
},
|
||||
"Installfoxpdf": {
|
||||
"WPFInstallfoxpdf": {
|
||||
"winget": "Foxit.PhantomPDF"
|
||||
},
|
||||
"Installonlyoffice": {
|
||||
"WPFInstallonlyoffice": {
|
||||
"winget": "ONLYOFFICE.DesktopEditors"
|
||||
},
|
||||
"Installflux": {
|
||||
"WPFInstallflux": {
|
||||
"winget": "flux.flux"
|
||||
},
|
||||
"Installitunes": {
|
||||
"WPFInstallitunes": {
|
||||
"winget": "Apple.iTunes"
|
||||
},
|
||||
"Installcider": {
|
||||
"WPFInstallcider": {
|
||||
"winget": "CiderCollective.Cider"
|
||||
},
|
||||
"Installjoplin": {
|
||||
"WPFInstalljoplin": {
|
||||
"winget": "Joplin.Joplin"
|
||||
},
|
||||
"Installopenoffice": {
|
||||
"WPFInstallopenoffice": {
|
||||
"winget": "Apache.OpenOffice"
|
||||
},
|
||||
"Installrustdesk": {
|
||||
"WPFInstallrustdesk": {
|
||||
"winget": "RustDesk.RustDesk"
|
||||
},
|
||||
"Installjami": {
|
||||
"WPFInstalljami": {
|
||||
"winget": "SFLinux.Jami"
|
||||
},
|
||||
"Installjdownloader": {
|
||||
"WPFInstalljdownloader": {
|
||||
"winget": "AppWork.JDownloader"
|
||||
},
|
||||
"Installsimplewall": {
|
||||
"WPFInstallsimplewall": {
|
||||
"Winget": "Henry++.simplewall"
|
||||
},
|
||||
"Installrustlang": {
|
||||
"WPFInstallrustlang": {
|
||||
"Winget": "Rustlang.Rust.MSVC"
|
||||
},
|
||||
"Installalacritty": {
|
||||
"WPFInstallalacritty": {
|
||||
"Winget": "Alacritty.Alacritty"
|
||||
},
|
||||
"Installkdenlive": {
|
||||
"WPFInstallkdenlive": {
|
||||
"Winget": "KDE.Kdenlive"
|
||||
},
|
||||
"Installglaryutilities": {
|
||||
"WPFInstallglaryutilities": {
|
||||
"Winget": "Glarysoft.GlaryUtilities"
|
||||
},
|
||||
"Installtwinkletray": {
|
||||
"WPFInstalltwinkletray": {
|
||||
"Winget": "xanderfrangos.twinkletray"
|
||||
},
|
||||
"Installidm": {
|
||||
"WPFInstallidm": {
|
||||
"Winget": "Tonec.InternetDownloadManager"
|
||||
},
|
||||
"Installviber": {
|
||||
"WPFInstallviber": {
|
||||
"Winget": "Viber.Viber"
|
||||
},
|
||||
"Installgit": {
|
||||
"WPFInstallgit": {
|
||||
"Winget": "Git.Git"
|
||||
},
|
||||
"Installwiztree": {
|
||||
"WPFInstallwiztree": {
|
||||
"Winget": "AntibodySoftware.WizTree"
|
||||
},
|
||||
"Installtor": {
|
||||
"WPFInstalltor": {
|
||||
"Winget": "TorProject.TorBrowser"
|
||||
},
|
||||
"WPFInstallkrita": {
|
||||
"winget": "KDE.Krita"
|
||||
},
|
||||
"WPFInstallnglide": {
|
||||
"winget": "ZeusSoftware.nGlide"
|
||||
},
|
||||
"WPFInstallkodi": {
|
||||
"winget": "XBMCFoundation.Kodi"
|
||||
},
|
||||
"WPFInstalltelegram": {
|
||||
"winget": "Telegram.TelegramDesktop"
|
||||
},
|
||||
"WPFInstallunity": {
|
||||
"winget": "UnityTechnologies.UnityHub"
|
||||
},
|
||||
"WPFInstallqbittorrent": {
|
||||
"winget": "qBittorrent.qBittorrent"
|
||||
},
|
||||
"WPFInstallorigin": {
|
||||
"winget": "ElectronicArts.EADesktop"
|
||||
},
|
||||
"WPFInstallopenshell": {
|
||||
"winget": "Open-Shell.Open-Shell-Menu"
|
||||
},
|
||||
"WPFInstallbluestacks": {
|
||||
"winget": "BlueStack.BlueStacks"
|
||||
},
|
||||
"WPFInstallstrawberry": {
|
||||
"winget": "StrawberryMusicPlayer.Strawberry"
|
||||
},
|
||||
"WPFInstallsqlstudio": {
|
||||
"winget": "Microsoft.SQLServerManagementStudio"
|
||||
},
|
||||
"WPFInstallwaterfox": {
|
||||
"winget": "Waterfox.Waterfox"
|
||||
},
|
||||
"WPFInstallpowershell": {
|
||||
"winget": "Microsoft.PowerShell"
|
||||
},
|
||||
"WPFInstallprocessmonitor": {
|
||||
"winget": "Microsoft.Sysinternals.ProcessMonitor"
|
||||
},
|
||||
"WPFInstallonedrive": {
|
||||
"winget": "Microsoft.OneDrive"
|
||||
},
|
||||
"WPFInstalledge": {
|
||||
"winget": "Microsoft.Edge"
|
||||
},
|
||||
"WPFInstallnuget": {
|
||||
"winget": "Microsoft.NuGet"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -20,10 +20,10 @@ Example:
|
||||
|
||||
{
|
||||
"install": {
|
||||
"Installadobe": {
|
||||
"WPFInstalladobe": {
|
||||
"winget": "Adobe.Acrobat.Reader.64-bit"
|
||||
},
|
||||
"Installadvancedip": {
|
||||
"WPFInstalladvancedip": {
|
||||
"winget": "Famatech.AdvancedIPScanner"
|
||||
}
|
||||
}
|
||||
@ -32,8 +32,9 @@ Example:
|
||||
#>
|
||||
|
||||
#Modify the variables and run his code. It will import the current file and add your addition. From there you can create a pull request.
|
||||
#------Do not delete WPF------
|
||||
|
||||
$NameofButton = ""
|
||||
$NameofButton = "WPF" + ""
|
||||
$WingetCommand = ""
|
||||
|
||||
$ButtonToAdd = New-Object psobject
|
||||
|
@ -1135,6 +1135,56 @@
|
||||
# It will just not bother u anymore"
|
||||
]
|
||||
},
|
||||
"MiscTweaksDisableMouseAcceleration": {
|
||||
"registry": [
|
||||
{
|
||||
"path": "HKCU:\\Control Panel\\Mouse",
|
||||
"OriginalValue": "1",
|
||||
"name": "MouseSpeed",
|
||||
"value": "0",
|
||||
"type": "String"
|
||||
},
|
||||
{
|
||||
"path": "HKCU:\\Control Panel\\Mouse",
|
||||
"OriginalValue": "6",
|
||||
"name": "MouseThreshold1",
|
||||
"value": "0",
|
||||
"type": "String"
|
||||
},
|
||||
{
|
||||
"path": "HKCU:\\Control Panel\\Mouse",
|
||||
"OriginalValue": "10",
|
||||
"name": "MouseThreshold2",
|
||||
"value": "0",
|
||||
"type": "String"
|
||||
}
|
||||
]
|
||||
},
|
||||
"MiscTweaksEnableMouseAcceleration": {
|
||||
"registry": [
|
||||
{
|
||||
"path": "HKCU:\\Control Panel\\Mouse",
|
||||
"OriginalValue": "1",
|
||||
"name": "MouseSpeed",
|
||||
"value": "1",
|
||||
"type": "String"
|
||||
},
|
||||
{
|
||||
"path": "HKCU:\\Control Panel\\Mouse",
|
||||
"OriginalValue": "6",
|
||||
"name": "MouseThreshold1",
|
||||
"value": "6",
|
||||
"type": "String"
|
||||
},
|
||||
{
|
||||
"path": "HKCU:\\Control Panel\\Mouse",
|
||||
"OriginalValue": "10",
|
||||
"name": "MouseThreshold2",
|
||||
"value": "10",
|
||||
"type": "String"
|
||||
}
|
||||
]
|
||||
},
|
||||
"EssTweaksDeleteTempFiles": {
|
||||
"InvokeScript": [
|
||||
"Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse
|
||||
|
@ -14,44 +14,48 @@
|
||||
#region Load Variables needed for testing
|
||||
|
||||
#Config Files
|
||||
$global:application = get-content ./config/applications.json | ConvertFrom-Json
|
||||
$global:preset = get-content ./config/preset.json | ConvertFrom-Json
|
||||
$global:feature = get-content ./config/feature.json | ConvertFrom-Json
|
||||
$global:tweaks = get-content ./config/tweaks.json | ConvertFrom-Json
|
||||
$global:configs = @{}
|
||||
|
||||
(
|
||||
"applications",
|
||||
"tweaks",
|
||||
"preset",
|
||||
"feature"
|
||||
) | ForEach-Object {
|
||||
$global:configs["$PSItem"] = Get-Content .\config\$PSItem.json | ConvertFrom-Json
|
||||
}
|
||||
|
||||
#GUI
|
||||
$global:sync = [Hashtable]::Synchronized(@{})
|
||||
$global:inputXML = get-content MainWindow.xaml
|
||||
$global:inputXML = $global:inputXML -replace 'mc:Ignorable="d"', '' -replace "x:N", 'N' -replace '^<Win.*', '<Window'
|
||||
[xml]$global:XAML = $global:inputXML
|
||||
[void][System.Reflection.Assembly]::LoadWithPartialName('presentationframework')
|
||||
$global:reader = (New-Object System.Xml.XmlNodeReader $global:xaml)
|
||||
$global:sync["Form"] = [Windows.Markup.XamlReader]::Load( $global:reader )
|
||||
$global:xaml.SelectNodes("//*[@Name]") | ForEach-Object {$sync["$("$($psitem.Name)")"] = $sync["Form"].FindName($psitem.Name)}
|
||||
$global:Form = [Windows.Markup.XamlReader]::Load( $global:reader )
|
||||
$global:xaml.SelectNodes("//*[@Name]") | ForEach-Object { Set-Variable -Name "Global:WPF$($_.Name)" -Value $global:Form.FindName($_.Name) -Scope global }
|
||||
|
||||
#Variables to compare GUI to config files
|
||||
$Global:GUIFeatureCount = ($global:feature.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"}).count
|
||||
$Global:GUITabCount = ($global:sync["TabNav"].Items.name).count
|
||||
$Global:GUIApplicationCount = ($global:application.install.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"}).count
|
||||
$Global:GUITweaksCount = ($global:tweaks.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"}).count
|
||||
$Global:GUIFeatureCount = ( $global:configs.feature.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"}).count
|
||||
$Global:GUIApplicationCount = ($global:configs.applications.install.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"}).count
|
||||
$Global:GUITweaksCount = ($global:configs.tweaks.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"}).count
|
||||
|
||||
#dotsource original script to pull in all variables and ensure no errors
|
||||
$script = Get-Content .\winutil.ps1
|
||||
$output = $script[0..($script.count - 2)] | Out-File .\pester.ps1
|
||||
$output = $script[0..($script.count - 3)] | Out-File .\pester.ps1
|
||||
|
||||
#endregion Load Variables needed for testing
|
||||
|
||||
#===========================================================================
|
||||
# Tests - Json
|
||||
# Tests - Config Files
|
||||
#===========================================================================
|
||||
|
||||
Describe "Json Files" {
|
||||
Describe "Config Files" {
|
||||
Context "Application installs" {
|
||||
It "Imports with no errors" {
|
||||
$global:application | should -Not -BeNullOrEmpty
|
||||
$global:configs.Applications | should -Not -BeNullOrEmpty
|
||||
}
|
||||
It "Json should be in correct format" {
|
||||
$winget = $global:application.install.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$winget = $global:configs.applications.install.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$winget.name | should -BeLike "*Install*"
|
||||
$winget.winget | should -Not -BeNullOrEmpty
|
||||
}
|
||||
@ -59,10 +63,10 @@ Describe "Json Files" {
|
||||
|
||||
Context "Preset" {
|
||||
It "Imports with no errors" {
|
||||
$global:preset | should -Not -BeNullOrEmpty
|
||||
$global:configs.preset | should -Not -BeNullOrEmpty
|
||||
}
|
||||
It "Json should be in correct format" {
|
||||
$preset = $global:preset.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$preset = $global:configs.preset.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$preset.name | should -Not -BeNullOrEmpty
|
||||
$preset.Value | should -BeLike "*Tweaks*"
|
||||
}
|
||||
@ -70,10 +74,10 @@ Describe "Json Files" {
|
||||
|
||||
Context "feature" {
|
||||
It "Imports with no errors" {
|
||||
$global:feature | should -Not -BeNullOrEmpty
|
||||
$global:configs.feature | should -Not -BeNullOrEmpty
|
||||
}
|
||||
It "Json should be in correct format" {
|
||||
$feature = $global:feature.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$feature = $global:configs.feature.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$feature.name | should -BeLike "*Feature*"
|
||||
$feature.Value | should -Not -BeNullOrEmpty
|
||||
}
|
||||
@ -81,10 +85,10 @@ Describe "Json Files" {
|
||||
|
||||
Context "tweaks" {
|
||||
It "Imports with no errors" {
|
||||
$global:tweaks | should -Not -BeNullOrEmpty
|
||||
$global:configs.tweaks | should -Not -BeNullOrEmpty
|
||||
}
|
||||
It "Json should be in correct format" {
|
||||
$tweaks = $global:tweaks.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$tweaks = $global:configs.tweaks.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$tweaks.name | should -BeLike "*Tweaks*"
|
||||
$tweaks.Value.registry | should -Not -BeNullOrEmpty
|
||||
$tweaks.Value.Service | should -Not -BeNullOrEmpty
|
||||
@ -93,7 +97,7 @@ Describe "Json Files" {
|
||||
$tweaks.Value.InvokeScript | should -Not -BeNullOrEmpty
|
||||
}
|
||||
It "Original Values should be set" {
|
||||
$tweaks = $global:tweaks.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
$tweaks = $global:configs.tweaks.psobject.members | Where-Object {$psitem.MemberType -eq "NoteProperty"} | Select-Object Name,Value
|
||||
|
||||
Foreach($tweak in $tweaks){
|
||||
if($tweak.value.registry){
|
||||
@ -130,7 +134,6 @@ Describe "Json Files" {
|
||||
#===========================================================================
|
||||
|
||||
Describe "GUI" {
|
||||
|
||||
Context "XML" {
|
||||
It "Imports with no errors" {
|
||||
$global:XAML | should -Not -BeNullOrEmpty
|
||||
@ -142,33 +145,19 @@ Describe "GUI" {
|
||||
|
||||
Context "Form" {
|
||||
It "Imports with no errors" {
|
||||
$global:sync["Form"] | should -Not -BeNullOrEmpty
|
||||
$global:Form | should -Not -BeNullOrEmpty
|
||||
}
|
||||
It "Title should match XML" {
|
||||
$global:sync["Form"].title | should -Be $global:XAML.window.Title
|
||||
}
|
||||
It "Tabs should be $Global:GUITabCount" {
|
||||
($global:sync.keys | Where-Object {$psitem -like "Tab?"}).count | should -Be $Global:GUITabCount
|
||||
$global:Form.title | should -Be $global:XAML.window.Title
|
||||
}
|
||||
It "Features should be $Global:GUIFeatureCount" {
|
||||
($global:sync.keys | Where-Object {
|
||||
$psitem -like "*feature*" -and
|
||||
$psitem -notlike "FeatureInstall"
|
||||
}).count | should -Be $Global:GUIFeatureCount
|
||||
(get-variable | Where-Object {$psitem.name -like "*feature*" -and $psitem.value.GetType().name -eq "CheckBox"}).count | should -Be $Global:GUIFeatureCount
|
||||
}
|
||||
It "Applications should be $Global:GUIApplicationCount" {
|
||||
($global:sync.keys | Where-Object {
|
||||
$psitem -like "*Install*" -and
|
||||
$psitem -notlike "Install" -and
|
||||
$psitem -notlike "InstallUpgrade" -and
|
||||
$psitem -notlike "featureInstall"
|
||||
}).count | should -Be $Global:GUIApplicationCount
|
||||
(get-variable | Where-Object {$psitem.name -like "*install*" -and $psitem.value.GetType().name -eq "CheckBox"}).count | should -Be $Global:GUIApplicationCount
|
||||
}
|
||||
It "Tweaks should be $Global:GUITweaksCount" {
|
||||
($global:sync.keys | Where-Object {
|
||||
$psitem -like "*tweaks*" -and
|
||||
$psitem -notlike "tweaksbutton"
|
||||
}).count | should -Be $Global:GUITweaksCount
|
||||
(get-variable | Where-Object {$psitem.name -like "*tweaks*" -and $psitem.value.GetType().name -eq "CheckBox"}).count | should -Be $Global:GUITweaksCount
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -200,4 +189,12 @@ Describe "GUI Functions" {
|
||||
$WPFInstallUpgrade | should -Not -BeNullOrEmpty
|
||||
$WPFinstall | should -Not -BeNullOrEmpty
|
||||
}
|
||||
|
||||
It "Get-CheckBoxes Install should return data" {
|
||||
. .\pester.ps1
|
||||
|
||||
$WPFInstallvc2015_32.ischecked = $true
|
||||
(Get-CheckBoxes -Group WPFInstall) | should -Not -BeNullOrEmpty
|
||||
$WPFInstallvc2015_32.ischecked | should -be $false
|
||||
}
|
||||
}
|
93
runspace.ps1
93
runspace.ps1
@ -1,5 +1,5 @@
|
||||
#for CI/CD
|
||||
$BranchToUse = 'main'
|
||||
$BranchToUse = 'test'
|
||||
|
||||
<#
|
||||
.NOTES
|
||||
@ -40,6 +40,10 @@ function Invoke-Button {
|
||||
#>
|
||||
|
||||
Param ([string]$Button)
|
||||
|
||||
#Use this to get the name of the button
|
||||
#[System.Windows.MessageBox]::Show("$Button","Chris Titus Tech's Windows Utility","OK","Info")
|
||||
|
||||
Switch -Wildcard ($Button){
|
||||
|
||||
"*Tab*BT*" {switchtab $Button}
|
||||
@ -58,6 +62,17 @@ function Invoke-Button {
|
||||
"Panelsystem" {cmd /c sysdm.cpl}
|
||||
"Paneluser" {cmd /c "control userpasswords2"}
|
||||
"Updates*" {Invoke-command $sync.GUIUpdates -ArgumentList "$button"}
|
||||
"FixesUpdate" {Invoke-command $sync.GUIUpdates -ArgumentList "$button"}
|
||||
"*AutoLogin" {Invoke-Runspace $Sync.AutologinInstall}
|
||||
"DisableDarkMode" {Invoke-Runspace $Sync.DarkModeToggle -ArgumentList "$False"}
|
||||
"EnableDarkMode" {Invoke-Runspace $Sync.DarkModeToggle -ArgumentList "$True"}
|
||||
"PanelDISM" {
|
||||
Start-Process PowerShell -ArgumentList "Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;
|
||||
Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;
|
||||
Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;
|
||||
Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;
|
||||
Read-Host '`nPress Enter to Continue'" -verb runas
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -219,6 +234,30 @@ $sync.WriteLogs = {
|
||||
Write-Verbose "$date $delimiter $Level $delimiter $message"
|
||||
}
|
||||
|
||||
$Sync.AutologinInstall = {
|
||||
|
||||
# Official Microsoft recommendation https://learn.microsoft.com/en-us/sysinternals/downloads/autologon
|
||||
Invoke-WebRequest "https://live.sysinternals.com/Autologon.exe" -OutFile $env:TEMP\autologin.exe
|
||||
Start-Process -FilePath powershell.exe -Verb runas -ArgumentList "-c $ENV:Temp\autologin.exe" -WindowStyle Hidden
|
||||
|
||||
}
|
||||
|
||||
$Sync.DarkModeToggle = {
|
||||
param($enabled)
|
||||
|
||||
$Theme = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize"
|
||||
|
||||
if($enabled -eq $True){
|
||||
Set-ItemProperty $Theme AppsUseLightTheme -Value 0
|
||||
Invoke-command $sync.WriteLogs -ArgumentList ("INFO","Dark Mode has been enabled",$sync.logfile)
|
||||
}
|
||||
if($enabled -eq $False){
|
||||
Set-ItemProperty $Theme AppsUseLightTheme -Value 1
|
||||
Invoke-command $sync.WriteLogs -ArgumentList ("INFO","Dark Mode has been disabled",$sync.logfile)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#===========================================================================
|
||||
# Install Tab
|
||||
#===========================================================================
|
||||
@ -273,7 +312,7 @@ $Sync.GUIInstallPrograms = {
|
||||
else{
|
||||
foreach ($program in $programstoinstall){
|
||||
|
||||
$($sync.applications.install.$program.winget) -split ";" | ForEach-Object {
|
||||
$($sync.applications.install.$("WPF" + $program).winget) -split ";" | ForEach-Object {
|
||||
if($psitem){
|
||||
$winget += ",$psitem"
|
||||
}Else{
|
||||
@ -951,7 +990,7 @@ $sync.ScriptUpdates = {
|
||||
param($Level, $Message, $LogPath)
|
||||
Invoke-command $sync.WriteLogs -ArgumentList ($Level,$Message, $LogPath)
|
||||
}
|
||||
if($updatestoconfigure -eq "Updatesdefault"){
|
||||
if($updatestoconfigure -eq "FixesUpdate"){
|
||||
# Source: https://github.com/rgl/windows-vagrant/blob/master/disable-windows-updates.ps1 reversed!
|
||||
Set-StrictMode -Version Latest
|
||||
$ProgressPreference = 'SilentlyContinue'
|
||||
@ -1240,6 +1279,43 @@ $sync.ScriptUpdates = {
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferFeatureUpdatesPeriodInDays" -Type DWord -Value 365
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferQualityUpdatesPeriodInDays " -Type DWord -Value 4
|
||||
}
|
||||
if($updatestoconfigure -eq "Updatesdefault"){
|
||||
If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU")) {
|
||||
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Force | Out-Null
|
||||
}
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "NoAutoUpdate" -Type DWord -Value 0
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "AUOptions" -Type DWord -Value 3
|
||||
If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config")) {
|
||||
New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Force | Out-Null
|
||||
}
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Name "DODownloadMode" -Type DWord -Value 1
|
||||
|
||||
$services = @(
|
||||
"BITS"
|
||||
"wuauserv"
|
||||
)
|
||||
|
||||
foreach ($service in $services) {
|
||||
# -ErrorAction SilentlyContinue is so it doesn't write an error to stdout if a service doesn't exist
|
||||
|
||||
Write-Host "Setting $service StartupType to Automatic"
|
||||
Get-Service -Name $service -ErrorAction SilentlyContinue | Set-Service -StartupType Automatic
|
||||
}
|
||||
Write-Logs -Level "INFO" -LogPath $sync.logfile -Message "Enabling driver offering through Windows Update..."
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata" -Name "PreventDeviceMetadataFromNetwork" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DontPromptForWindowsUpdate" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DontSearchWindowsUpdate" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DriverUpdateWizardWuSearchEnabled" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" -Name "ExcludeWUDriversInQualityUpdate" -ErrorAction SilentlyContinue
|
||||
Write-Logs -Level "INFO" -LogPath $sync.logfile -Message "Enabling Windows Update automatic restart..."
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "NoAutoRebootWithLoggedOnUsers" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "AUPowerManagement" -ErrorAction SilentlyContinue
|
||||
Write-Logs -Level "INFO" -LogPath $sync.logfile -Message "Enabled driver offering through Windows Update"
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "BranchReadinessLevel" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferFeatureUpdatesPeriodInDays" -ErrorAction SilentlyContinue
|
||||
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferQualityUpdatesPeriodInDays " -ErrorAction SilentlyContinue
|
||||
Write-Logs -Level "INFO" -LogPath $sync.logfile -Message "Updates set to default"
|
||||
}
|
||||
|
||||
Write-Logs -Level "INFO" -LogPath $sync.logfile -Message "Process complete. Please reboot your computer."
|
||||
|
||||
@ -1381,7 +1457,7 @@ if($gui -eq $true){
|
||||
How to run Arguments
|
||||
|
||||
First step is to set the $env:args variable with the setups you wish to do. To do multiple items put a " " space between each command.
|
||||
For commands that require input seperate the command with a semicolon ":" and provide the values to pass to that argument seperated by a comma ",". (IE: Install:git.git,windirstat.windirstat)
|
||||
For commands that require input seperate the command with a colon ":" and provide the values to pass to that argument seperated by a comma ",". (IE: Install:git.git,windirstat.windirstat)
|
||||
|
||||
Supported arguments:
|
||||
|
||||
@ -1416,6 +1492,15 @@ Example usage:
|
||||
|
||||
If($env:args){
|
||||
Write-Verbose "Arguments Detected, Running Args"
|
||||
|
||||
#Ensure Computer Info is populated before continuing
|
||||
$x = 0
|
||||
do{
|
||||
Start-Sleep -Seconds 1
|
||||
$x++
|
||||
}until($sync.ComputerInfo -or $x -eq 10)
|
||||
if($x -eq 5){Invoke-command $sync.WriteLogs -ArgumentList ("WARINING","Failed to pull computer info after 5 seconds, this can cause some scripts to fail.", $sync.logfile)}
|
||||
|
||||
If($env:args -match '\bInstallUpgrade\b'){Invoke-command $sync.ScriptsInstallPrograms -ArgumentList "Upgrade"}
|
||||
If($env:args -match '\bUndoTweaks\b'){Invoke-command $sync.ScriptUndoTweaks}
|
||||
If($env:args -match '\bPanelControl\b'){cmd /c control}
|
||||
|
593
winutil.ps1
593
winutil.ps1
@ -1,14 +1,39 @@
|
||||
#for CI/CD
|
||||
$BranchToUse = 'main'
|
||||
$BranchToUse = 'test'
|
||||
<#
|
||||
.NOTES
|
||||
Author : Chris Titus @christitustech
|
||||
GitHub : https://github.com/ChrisTitusTech
|
||||
Version 0.0.1
|
||||
#>
|
||||
|
||||
# $inputXML = Get-Content "MainWindow.xaml" #uncomment for development
|
||||
$inputXML = (new-object Net.WebClient).DownloadString("https://raw.githubusercontent.com/ChrisTitusTech/winutil/$BranchToUse/MainWindow.xaml") #uncomment for Production
|
||||
|
||||
# Choco install
|
||||
$testchoco = powershell choco -v
|
||||
if(-not($testchoco)){
|
||||
Write-Output "Seems Chocolatey is not installed, installing now"
|
||||
Set-ExecutionPolicy Bypass -Scope Process -Force; Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
|
||||
powershell choco feature enable -n allowGlobalConfirmation
|
||||
}
|
||||
else{
|
||||
Write-Output "Chocolatey Version $testchoco is already installed"
|
||||
}
|
||||
|
||||
#Load config files to hashtable
|
||||
$configs = @{}
|
||||
|
||||
(
|
||||
"applications",
|
||||
"tweaks",
|
||||
"preset",
|
||||
"feature"
|
||||
) | ForEach-Object {
|
||||
#$configs["$PSItem"] = Get-Content .\config\$PSItem.json | ConvertFrom-Json
|
||||
$configs["$psitem"] = Invoke-RestMethod "https://raw.githubusercontent.com/ChrisTitusTech/winutil/$BranchToUse/config/$psitem.json"
|
||||
}
|
||||
|
||||
|
||||
$inputXML = $inputXML -replace 'mc:Ignorable="d"', '' -replace "x:N", 'N' -replace '^<Win.*', '<Window'
|
||||
[void][System.Reflection.Assembly]::LoadWithPartialName('presentationframework')
|
||||
[xml]$XAML = $inputXML
|
||||
@ -34,6 +59,10 @@ catch {
|
||||
|
||||
$xaml.SelectNodes("//*[@Name]") | ForEach-Object { Set-Variable -Name "WPF$($_.Name)" -Value $Form.FindName($_.Name) }
|
||||
|
||||
#===========================================================================
|
||||
# Functions
|
||||
#===========================================================================
|
||||
|
||||
Function Get-FormVariables {
|
||||
#If ($global:ReadmeDisplay -ne $true) { Write-host "If you need to reference this display again, run Get-FormVariables" -ForegroundColor Yellow; $global:ReadmeDisplay = $true }
|
||||
|
||||
@ -66,13 +95,43 @@ Function Get-FormVariables {
|
||||
#get-variable WPF*
|
||||
}
|
||||
|
||||
Get-FormVariables
|
||||
Function Get-CheckBoxes {
|
||||
|
||||
<#
|
||||
|
||||
.DESCRIPTION
|
||||
Function is meant to find all checkboxes that are checked on the specefic tab and input them into a script.
|
||||
|
||||
Outputed data will be the names of the checkboxes that were checked
|
||||
|
||||
.EXAMPLE
|
||||
|
||||
Get-CheckBoxes "WPFInstall"
|
||||
|
||||
#>
|
||||
|
||||
Param($Group)
|
||||
|
||||
$CheckBoxes = get-variable | Where-Object {$psitem.name -like "$Group*" -and $psitem.value.GetType().name -eq "CheckBox"}
|
||||
$Output = New-Object System.Collections.Generic.List[System.Object]
|
||||
|
||||
if($Group -eq "WPFInstall"){
|
||||
Foreach ($CheckBox in $CheckBoxes){
|
||||
if($checkbox.value.ischecked -eq $true){
|
||||
$output.Add("$($configs.applications.install.$($checkbox.name).winget)")
|
||||
$checkbox.value.ischecked = $false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Write-Output $Output
|
||||
}
|
||||
|
||||
#===========================================================================
|
||||
# Global Variables
|
||||
#===========================================================================
|
||||
$AppTitle = "Chris Titus Tech's Windows Utility"
|
||||
|
||||
$AppTitle = "Chris Titus Tech's Windows Utility"
|
||||
|
||||
#===========================================================================
|
||||
# Navigation Controls
|
||||
@ -106,439 +165,10 @@ $WPFTab4BT.Add_Click({
|
||||
#===========================================================================
|
||||
# Tab 1 - Install
|
||||
#===========================================================================
|
||||
|
||||
$WPFinstall.Add_Click({
|
||||
$wingetinstall = New-Object System.Collections.Generic.List[System.Object]
|
||||
If ( $WPFInstalllibreoffice.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("TheDocumentFoundation.LibreOffice")
|
||||
$WPFInstalllibreoffice.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalladobe.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Adobe.Acrobat.Reader.64-bit")
|
||||
$WPFInstalladobe.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalladvancedip.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Famatech.AdvancedIPScanner")
|
||||
$WPFInstalladvancedip.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallatom.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("GitHub.Atom")
|
||||
$WPFInstallatom.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallaudacity.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Audacity.Audacity")
|
||||
$WPFInstallaudacity.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallautohotkey.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Lexikos.AutoHotkey")
|
||||
$WPFInstallautohotkey.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallbrave.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Brave.Brave")
|
||||
$WPFInstallbrave.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallchrome.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Google.Chrome")
|
||||
$WPFInstallchrome.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalltor.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("TorProject.TorBrowser")
|
||||
$WPFInstalltor.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalldiscord.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Discord.Discord")
|
||||
$WPFInstalldiscord.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallesearch.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("voidtools.Everything --source winget")
|
||||
$WPFInstallesearch.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalletcher.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Balena.Etcher")
|
||||
$WPFInstalletcher.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallfirefox.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Mozilla.Firefox")
|
||||
$WPFInstallfirefox.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallgimp.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("GIMP.GIMP")
|
||||
$WPFInstallgimp.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallgit.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Git.Git")
|
||||
$WPFInstallgithubdesktop.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallgithubdesktop.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("GitHub.GitHubDesktop")
|
||||
$WPFInstallgithubdesktop.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallimageglass.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("DuongDieuPhap.ImageGlass")
|
||||
$WPFInstallimageglass.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljava8.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("AdoptOpenJDK.OpenJDK.8")
|
||||
$WPFInstalljava8.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljava16.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("AdoptOpenJDK.OpenJDK.16")
|
||||
$WPFInstalljava16.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljava18.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Oracle.JDK.18")
|
||||
$WPFInstalljava18.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljetbrains.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("JetBrains.Toolbox")
|
||||
$WPFInstalljetbrains.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallmpc.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("clsid2.mpc-hc")
|
||||
$WPFInstallmpc.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallnodejs.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("OpenJS.NodeJS")
|
||||
$WPFInstallnodejs.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallnodejslts.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("OpenJS.NodeJS.LTS")
|
||||
$WPFInstallnodejslts.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallnotepadplus.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Notepad++.Notepad++")
|
||||
$WPFInstallnotepadplus.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallpowertoys.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.PowerToys")
|
||||
$WPFInstallpowertoys.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallputty.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("PuTTY.PuTTY")
|
||||
$WPFInstallputty.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallpython3.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Python.Python.3")
|
||||
$WPFInstallpython3.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallrustlang.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Rustlang.Rust.MSVC")
|
||||
$WPFInstallrustlang.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsevenzip.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("7zip.7zip")
|
||||
$WPFInstallsevenzip.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsharex.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("ShareX.ShareX")
|
||||
$WPFInstallsharex.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsublime.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("SublimeHQ.SublimeText.4")
|
||||
$WPFInstallsublime.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsumatra.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("SumatraPDF.SumatraPDF")
|
||||
$WPFInstallsumatra.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallterminal.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.WindowsTerminal")
|
||||
$WPFInstallterminal.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallidm.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Tonec.InternetDownloadManager")
|
||||
$WPFInstallidm.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallalacritty.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Alacritty.Alacritty")
|
||||
$WPFInstallalacritty.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallttaskbar.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("9PF4KZ2VN4W9")
|
||||
$WPFInstallttaskbar.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvlc.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("VideoLAN.VLC")
|
||||
$WPFInstallvlc.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallkdenlive.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("KDE.Kdenlive")
|
||||
$WPFInstallkdenlive.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvscode.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Git.Git")
|
||||
$wingetinstall.Add("Microsoft.VisualStudioCode --source winget")
|
||||
$WPFInstallvscode.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvscodium.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Git.Git")
|
||||
$wingetinstall.Add("VSCodium.VSCodium")
|
||||
$WPFInstallvscodium.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallscp.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("WinSCP.WinSCP")
|
||||
$WPFInstallscp.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallanydesk.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("AnyDeskSoftwareGmbH.AnyDesk")
|
||||
$WPFInstallanydesk.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallbitwarden.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Bitwarden.Bitwarden")
|
||||
$WPFInstallbitwarden.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallblender.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("BlenderFoundation.Blender")
|
||||
$WPFInstallblender.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallchromium.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("eloston.ungoogled-chromium")
|
||||
$WPFInstallchromium.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallcpuz.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("CPUID.CPU-Z")
|
||||
$WPFInstallcpuz.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalleartrumpet.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("File-New-Project.EarTrumpet")
|
||||
$WPFInstalleartrumpet.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallepicgames.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("EpicGames.EpicGamesLauncher")
|
||||
$WPFInstallepicgames.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallflameshot.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Flameshot.Flameshot")
|
||||
$WPFInstallflameshot.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallfoobar.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("PeterPawlowski.foobar2000")
|
||||
$WPFInstallfoobar.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallgog.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("GOG.Galaxy")
|
||||
$WPFInstallgog.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallgpuz.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("TechPowerUp.GPU-Z")
|
||||
$WPFInstallgpuz.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallglaryutilities.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Glarysoft.GlaryUtilities")
|
||||
$WPFInstallglaryutilities.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallgreenshot.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Greenshot.Greenshot")
|
||||
$WPFInstallgreenshot.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallhandbrake.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("HandBrake.HandBrake")
|
||||
$WPFInstallhandbrake.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallhexchat.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("HexChat.HexChat")
|
||||
$WPFInstallhexchat.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallhwinfo.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("REALiX.HWiNFO")
|
||||
$WPFInstallhwinfo.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallinkscape.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Inkscape.Inkscape")
|
||||
$WPFInstallinkscape.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallkeepass.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("KeePassXCTeam.KeePassXC")
|
||||
$WPFInstallkeepass.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalllibrewolf.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("LibreWolf.LibreWolf")
|
||||
$WPFInstalllibrewolf.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallmalwarebytes.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Malwarebytes.Malwarebytes")
|
||||
$WPFInstallmalwarebytes.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallmatrix.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Element.Element")
|
||||
$WPFInstallmatrix.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallmremoteng.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("mRemoteNG.mRemoteNG")
|
||||
$WPFInstallmremoteng.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallnvclean.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("TechPowerUp.NVCleanstall")
|
||||
$WPFInstallnvclean.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallobs.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("OBSProject.OBSStudio")
|
||||
$WPFInstallobs.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallobsidian.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Obsidian.Obsidian")
|
||||
$WPFInstallobsidian.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallrevo.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("RevoUninstaller.RevoUninstaller")
|
||||
$WPFInstallrevo.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallrufus.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Rufus.Rufus")
|
||||
$WPFInstallrufus.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsignal.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("OpenWhisperSystems.Signal")
|
||||
$WPFInstallsignal.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallskype.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.Skype")
|
||||
$WPFInstallskype.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallslack.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("SlackTechnologies.Slack")
|
||||
$WPFInstallslack.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallspotify.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Spotify.Spotify")
|
||||
$WPFInstallspotify.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsteam.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Valve.Steam")
|
||||
$WPFInstallsteam.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallteamviewer.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("TeamViewer.TeamViewer")
|
||||
$WPFInstallteamviewer.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallteams.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.Teams")
|
||||
$WPFInstallteams.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalltreesize.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("JAMSoftware.TreeSize.Free")
|
||||
$WPFInstalltreesize.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvisualstudio.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.VisualStudio.2022.Community")
|
||||
$WPFInstallvisualstudio.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvivaldi.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("VivaldiTechnologies.Vivaldi")
|
||||
$WPFInstallvivaldi.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvoicemeeter.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("VB-Audio.Voicemeeter")
|
||||
$WPFInstallvoicemeeter.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallwindirstat.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("WinDirStat.WinDirStat")
|
||||
$WPFInstallwindirstat.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallwiztree.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("AntibodySoftware.WizTree")
|
||||
$WPFInstallwiztree.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallwireshark.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("WiresharkFoundation.Wireshark")
|
||||
$WPFInstallwireshark.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsimplewall.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Henry++.simplewall")
|
||||
$WPFInstallsimplewall.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallzoom.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Zoom.Zoom")
|
||||
$WPFInstallzoom.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallviber.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Viber.Viber")
|
||||
$WPFInstallviber.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalltwinkletray.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("xanderfrangos.twinkletray")
|
||||
$WPFInstalltwinkletray.IsChecked = $false
|
||||
}
|
||||
# Fall 2022 Additions
|
||||
If ( $WPFInstallshell.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Nilesoft.Shell")
|
||||
$WPFInstallshell.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallklite.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("CodecGuide.K-LiteCodecPack.Standard")
|
||||
$WPFInstallklite.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallsandboxie.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Sandboxie.Plus")
|
||||
$WPFInstallsandboxie.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallprocesslasso.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("BitSum.ProcessLasso")
|
||||
$WPFInstallprocesslasso.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallwinmerge.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("WinMerge.WinMerge")
|
||||
$WPFInstallwinmerge.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalldotnet3.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.DotNet.DesktopRuntime.3_1")
|
||||
$WPFInstalldotnet3.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalldotnet5.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.DotNet.DesktopRuntime.5")
|
||||
$WPFInstalldotnet5.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalldotnet6.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.DotNet.DesktopRuntime.6")
|
||||
$WPFInstalldotnet6.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvc2015_64.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.VC++2015-2022Redist-x64")
|
||||
$WPFInstallvc2015_64.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallvc2015_32.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Microsoft.VC++2015-2022Redist-x86")
|
||||
$WPFInstallvc2015_32.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallfoxpdf.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Foxit.PhantomPDF")
|
||||
$WPFInstallfoxpdf.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallonlyoffice.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("ONLYOFFICE.DesktopEditors")
|
||||
$WPFInstallonlyoffice.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallflux.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("flux.flux")
|
||||
$WPFInstallflux.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallitunes.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Apple.iTunes")
|
||||
$WPFInstallitunes.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallcider.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("CiderCollective.Cider")
|
||||
$WPFInstallcider.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljoplin.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Joplin.Joplin")
|
||||
$WPFInstalljoplin.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallopenoffice.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("Apache.OpenOffice")
|
||||
$WPFInstallopenoffice.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstallrustdesk.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("RustDesk.RustDesk")
|
||||
$WPFInstallrustdesk.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljami.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("SFLinux.Jami")
|
||||
$WPFInstalljami.IsChecked = $false
|
||||
}
|
||||
If ( $WPFInstalljdownloader.IsChecked -eq $true ) {
|
||||
$wingetinstall.Add("AppWork.JDownloader")
|
||||
$WPFInstalljdownloader.IsChecked = $false
|
||||
}
|
||||
$WingetInstall = Get-CheckBoxes -Group "WPFInstall"
|
||||
|
||||
# Check if winget is installed
|
||||
Write-Host "Checking if Winget is Installed..."
|
||||
if (Test-Path ~\AppData\Local\Microsoft\WindowsApps\winget.exe) {
|
||||
@ -563,7 +193,7 @@ $WPFinstall.Add_Click({
|
||||
# Switching to winget-install from PSGallery from asheroto
|
||||
# Source: https://github.com/asheroto/winget-installer
|
||||
|
||||
Start-Process powershell.exe -Verb RunAs -ArgumentList "-command irm https://raw.githubusercontent.com/asheroto/winget-installer/master/winget-install.ps1 | iex | Out-Host" -WindowStyle Normal
|
||||
Start-Process powershell.exe -Verb RunAs -ArgumentList "-command irm https://raw.githubusercontent.com/ChrisTitusTech/winutil/main/winget.ps1 | iex | Out-Host" -WindowStyle Normal
|
||||
|
||||
}
|
||||
elseif (((Get-ComputerInfo).WindowsVersion) -lt "1809") {
|
||||
@ -587,14 +217,14 @@ $WPFinstall.Add_Click({
|
||||
}
|
||||
|
||||
# Install all winget programs in new window
|
||||
$wingetinstall.ToArray()
|
||||
#$wingetinstall.ToArray()
|
||||
# Define Output variable
|
||||
$wingetResult = New-Object System.Collections.Generic.List[System.Object]
|
||||
foreach ( $node in $wingetinstall ) {
|
||||
try {
|
||||
Start-Process powershell.exe -Verb RunAs -ArgumentList "-command winget install -e --accept-source-agreements --accept-package-agreements --silent $node | Out-Host" -WindowStyle Normal
|
||||
$wingetResult.Add("$node`n")
|
||||
Start-Sleep -s 3
|
||||
Start-Sleep -s 6
|
||||
Wait-Process winget -Timeout 90 -ErrorAction SilentlyContinue
|
||||
}
|
||||
catch [System.InvalidOperationException] {
|
||||
@ -730,14 +360,6 @@ $WPFminimal.Add_Click({
|
||||
|
||||
$WPFtweaksbutton.Add_Click({
|
||||
|
||||
If ( $WPFEssTweaksDVR.IsChecked -eq $true ) {
|
||||
#Installing PowerRun to edit some restricted registry keys (Need this to disable Gamebar Presence Writer)
|
||||
curl.exe -s "https://www.sordum.org/files/download/power-run/PowerRun.zip" -o ".\PowerRun.zip"
|
||||
Expand-Archive -Path ".\PowerRun.zip" -DestinationPath ".\" -Force
|
||||
Copy-Item -Path ".\PowerRun\PowerRun.exe" -Destination "$env:windir" -Force
|
||||
Remove-Item -Path ".\PowerRun\", ".\PowerRun.zip" -Recurse
|
||||
}
|
||||
|
||||
If ( $WPFEssTweaksAH.IsChecked -eq $true ) {
|
||||
Write-Host "Disabling Activity History..."
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "EnableActivityFeed" -Type DWord -Value 0
|
||||
@ -771,12 +393,9 @@ $WPFtweaksbutton.Add_Click({
|
||||
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR" -Force
|
||||
}
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR" -Name "AllowGameDVR" -Type DWord -Value 0
|
||||
|
||||
#Disabling Gamebar Presence Writer, which causes stutter in games
|
||||
PowerRun.exe /SW:0 Powershell.exe -command { Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.GameBar.PresenceServer.Internal.PresenceWriter" -Name "ActivationType" -Type DWord -Value 0 }
|
||||
|
||||
$WPFEssTweaksDVR.IsChecked = $false
|
||||
}
|
||||
|
||||
If ( $WPFEssTweaksHiber.IsChecked -eq $true ) {
|
||||
Write-Host "Disabling Hibernation..."
|
||||
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Session Manager\Power" -Name "HibernateEnabled" -Type Dword -Value 0
|
||||
@ -838,11 +457,43 @@ $WPFtweaksbutton.Add_Click({
|
||||
New-Item -Path "HKCU:\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" -Name "InprocServer32" -force -value ""
|
||||
$WPFMiscTweaksRightClickMenu.IsChecked = $false
|
||||
}
|
||||
If ( $WPFchangedns.text -eq 'Google' ) {
|
||||
Write-Host "Setting DNS to Google for all connections..."
|
||||
$DC = "8.8.8.8"
|
||||
$Internet = "8.8.4.4"
|
||||
$dns = "$DC", "$Internet"
|
||||
$Interface = Get-WmiObject Win32_NetworkAdapterConfiguration
|
||||
$Interface.SetDNSServerSearchOrder($dns) | Out-Null
|
||||
}
|
||||
If ( $WPFchangedns.text -eq 'Cloud Flare' ) {
|
||||
Write-Host "Setting DNS to Cloud Flare for all connections..."
|
||||
$DC = "1.1.1.1"
|
||||
$Internet = "1.0.0.1"
|
||||
$dns = "$DC", "$Internet"
|
||||
$Interface = Get-WmiObject Win32_NetworkAdapterConfiguration
|
||||
$Interface.SetDNSServerSearchOrder($dns) | Out-Null
|
||||
}
|
||||
If ( $WPFchangedns.text -eq 'Level3' ) {
|
||||
Write-Host "Setting DNS to Level3 for all connections..."
|
||||
$DC = "4.2.2.2"
|
||||
$Internet = "4.2.2.1"
|
||||
$dns = "$DC", "$Internet"
|
||||
$Interface = Get-WmiObject Win32_NetworkAdapterConfiguration
|
||||
$Interface.SetDNSServerSearchOrder($dns) | Out-Null
|
||||
}
|
||||
If ( $WPFchangedns.text -eq 'Open DNS' ) {
|
||||
Write-Host "Setting DNS to Open DNS for all connections..."
|
||||
$DC = "208.67.222.222"
|
||||
$Internet = "208.67.220.220"
|
||||
$dns = "$DC", "$Internet"
|
||||
$Interface = Get-WmiObject Win32_NetworkAdapterConfiguration
|
||||
$Interface.SetDNSServerSearchOrder($dns) | Out-Null
|
||||
}
|
||||
If ( $WPFEssTweaksOO.IsChecked -eq $true ) {
|
||||
If (!(Test-Path .\ooshutup10.cfg)) {
|
||||
Write-Host "Running O&O Shutup with Recommended Settings"
|
||||
curl.exe -ss "https://raw.githubusercontent.com/ChrisTitusTech/win10script/master/ooshutup10.cfg" -o ooshutup10.cfg
|
||||
curl.exe -ss "https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe" -o OOSU10.exe
|
||||
curl.exe -s "https://raw.githubusercontent.com/ChrisTitusTech/win10script/master/ooshutup10.cfg" -o ooshutup10.cfg
|
||||
curl.exe -s "https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe" -o OOSU10.exe
|
||||
}
|
||||
./OOSU10.exe ooshutup10.cfg /quiet
|
||||
$WPFEssTweaksOO.IsChecked = $false
|
||||
@ -1065,7 +716,7 @@ $WPFtweaksbutton.Add_Click({
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type DWord -Value 1
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "AutoEndTasks" -Type DWord -Value 1
|
||||
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "ClearPageFileAtShutdown" -Type DWord -Value 0
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseHoverTime" -Type DWord -Value 10
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseHoverTime" -Type DWord -Value 400
|
||||
|
||||
## Timeout Tweaks cause flickering on Windows now
|
||||
Remove-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "WaitToKillAppTimeout" -ErrorAction SilentlyContinue
|
||||
@ -1187,6 +838,20 @@ $WPFtweaksbutton.Add_Click({
|
||||
Write-Host "Adjusted visual effects for performance"
|
||||
$WPFMiscTweaksDisplay.IsChecked = $false
|
||||
}
|
||||
If ( $WPFMiscTweaksDisableMouseAcceleration.IsChecked -eq $true ) {
|
||||
Write-Host "Disabling mouse acceleration..."
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseSpeed" -Type String -Value 0
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseThreshold1" -Type String -Value 0
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseThreshold2" -Type String -Value 0
|
||||
$WPFMiscTweaksDisableMouseAcceleration.IsChecked = $false
|
||||
}
|
||||
If ( $WPFMiscTweaksEnableMouseAcceleration.IsChecked -eq $true ) {
|
||||
Write-Host "Enabling mouse acceleration..."
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseSpeed" -Type String -Value 1
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseThreshold1" -Type String -Value 6
|
||||
Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseThreshold2" -Type String -Value 10
|
||||
$WPFMiscTweaksEnableMouseAcceleration.IsChecked = $false
|
||||
}
|
||||
If ( $WPFEssTweaksRemoveCortana.IsChecked -eq $true ) {
|
||||
Write-Host "Removing Cortana..."
|
||||
Get-AppxPackage -allusers Microsoft.549981C3F5F10 | Remove-AppxPackage
|
||||
@ -1385,10 +1050,25 @@ $WPFtweaksbutton.Add_Click({
|
||||
[System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
|
||||
})
|
||||
|
||||
$WPFAddUltPerf.Add_Click({
|
||||
Write-Host "Adding Ultimate Performance Profile"
|
||||
powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61
|
||||
Write-Host "Profile added"
|
||||
}
|
||||
)
|
||||
|
||||
$WPFRemoveUltPerf.Add_Click({
|
||||
Write-Host "Removing Ultimate Performance Profile"
|
||||
powercfg -delete e9a42b02-d5df-448d-aa00-03f14749eb61
|
||||
Write-Host "Profile Removed"
|
||||
}
|
||||
)
|
||||
|
||||
$WPFEnableDarkMode.Add_Click({
|
||||
Write-Host "Enabling Dark Mode"
|
||||
$Theme = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize"
|
||||
Set-ItemProperty $Theme AppsUseLightTheme -Value 0
|
||||
Set-ItemProperty $Theme SystemUsesLightTheme -Value 0
|
||||
Write-Host "Enabled"
|
||||
}
|
||||
)
|
||||
@ -1397,6 +1077,7 @@ $WPFDisableDarkMode.Add_Click({
|
||||
Write-Host "Disabling Dark Mode"
|
||||
$Theme = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize"
|
||||
Set-ItemProperty $Theme AppsUseLightTheme -Value 1
|
||||
Set-ItemProperty $Theme SystemUsesLightTheme -Value 1
|
||||
Write-Host "Disabled"
|
||||
}
|
||||
)
|
||||
@ -1540,9 +1221,6 @@ $WPFundoall.Add_Click({
|
||||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Feeds" -Name "ShellFeedsTaskbarViewMode" -Type DWord -Value 0
|
||||
Write-Host "Done - Reverted to Stock Settings"
|
||||
|
||||
#Enable Gamebar Presence Writer
|
||||
PowerRun.exe /SW:0 Powershell.exe -command { Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.GameBar.PresenceServer.Internal.PresenceWriter" -Name "ActivationType" -Type DWord -Value 1 }
|
||||
|
||||
Write-Host "Essential Undo Completed"
|
||||
|
||||
$ButtonType = [System.Windows.MessageBoxButton]::OK
|
||||
@ -1855,4 +1533,5 @@ $WPFUpdatessecurity.Add_Click({
|
||||
#===========================================================================
|
||||
# Shows the form
|
||||
#===========================================================================
|
||||
Get-FormVariables
|
||||
$Form.ShowDialog() | out-null
|
||||
|
Loading…
Reference in New Issue
Block a user