mirror of
https://github.com/ChrisTitusTech/winutil
synced 2026-02-04 15:00:09 +00:00
Compare commits
33 Commits
3b26620627
...
25.11.17
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e0237642c8 | ||
|
|
aedaa2f789 | ||
|
|
8c2f9075a0 | ||
|
|
c9e6861ad4 | ||
|
|
43ec73684e | ||
|
|
bfbb643543 | ||
|
|
067ec31086 | ||
|
|
63221a7cb9 | ||
|
|
7e40d379d8 | ||
|
|
c766c974cf | ||
|
|
7d2804c706 | ||
|
|
2ee9047dd6 | ||
|
|
21c49d6a75 | ||
|
|
351a77043e | ||
|
|
c8bb38f3a9 | ||
|
|
5fb5e43cc7 | ||
|
|
eeb410e985 | ||
|
|
8eaf6ddd9c | ||
|
|
3c54e0ea3f | ||
|
|
d17e8bcd98 | ||
|
|
ef1fc2ae59 | ||
|
|
7d1fb52277 | ||
|
|
95988fca80 | ||
|
|
451040b5b1 | ||
|
|
47cb6b9273 | ||
|
|
69233b1d8a | ||
|
|
b621d9104e | ||
|
|
1f81eec8f1 | ||
|
|
72cbdca556 | ||
|
|
d5127b14a3 | ||
|
|
e2c84d9834 | ||
|
|
c454c93563 | ||
|
|
70b1274425 |
2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
@@ -87,7 +87,7 @@ graph TD
|
||||
|
||||
### Testing your changes
|
||||
|
||||
* To test to see if your changes work as intended run following commands in a powershell teminal as admin:
|
||||
* To test to see if your changes work as intended run following commands in a powershell terminal as admin:
|
||||
|
||||
* Change the directory where you are running the commands to the forked project.
|
||||
* `cd {path to the folder with the compile.ps1}`
|
||||
|
||||
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -1,4 +1,4 @@
|
||||
<!--Before you make this PR have you followed the docs here? - https://christitustech.github.io/winutil/contribute/ -->
|
||||
<!--Before you make this PR have you followed the docs here? - https://winutil.christitus.com/contributing/ -->
|
||||
|
||||
## Type of Change
|
||||
- [ ] New feature
|
||||
|
||||
@@ -79,7 +79,7 @@ You'll see a new file named `winutil.ps1`, which's created by `Compile.ps1` scri
|
||||
|
||||
These are the sponsors that help keep this project alive with monthly contributions.
|
||||
|
||||
<!-- sponsors --><a href="https://github.com/TriHydera"><img src="https://github.com/TriHydera.png" width="60px" alt="User avatar: TriHydera" /></a><a href="https://github.com/DelDongo"><img src="https://github.com/DelDongo.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/markamos"><img src="https://github.com/markamos.png" width="60px" alt="User avatar: Mark Amos" /></a><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="User avatar: Martin Stockzell" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="User avatar: Jason A. Diegmueller" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="User avatar: RMS" /></a><a href="https://github.com/KenichiQaz"><img src="https://github.com/KenichiQaz.png" width="60px" alt="User avatar: Stefan" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="User avatar: Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="User avatar: Dave J (WhamGeek)" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="User avatar: Anthony Mendez" /></a><a href="https://github.com/FatBastard0"><img src="https://github.com/FatBastard0.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DursleyGuy"><img src="https://github.com/DursleyGuy.png" width="60px" alt="User avatar: DursleyGuy" /></a><a href="https://github.com/realmuddy"><img src="https://github.com/realmuddy.png" width="60px" alt="User avatar: Phillip Waters" /></a><a href="https://github.com/quaszi"><img src="https://github.com/quaszi.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DwayneTheRockLobster1"><img src="https://github.com/DwayneTheRockLobster1.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/KieraKujisawa"><img src="https://github.com/KieraKujisawa.png" width="60px" alt="User avatar: Kiera Meredith" /></a><a href="https://github.com/danhively"><img src="https://github.com/danhively.png" width="60px" alt="User avatar: Dan Hively" /></a><!-- sponsors -->
|
||||
<!-- sponsors --><a href="https://github.com/markamos"><img src="https://github.com/markamos.png" width="60px" alt="User avatar: Mark Amos" /></a><a href="https://github.com/dwelfusius"><img src="https://github.com/dwelfusius.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/mews-se"><img src="https://github.com/mews-se.png" width="60px" alt="User avatar: Martin Stockzell" /></a><a href="https://github.com/jdiegmueller"><img src="https://github.com/jdiegmueller.png" width="60px" alt="User avatar: Jason A. Diegmueller" /></a><a href="https://github.com/robertsandrock"><img src="https://github.com/robertsandrock.png" width="60px" alt="User avatar: RMS" /></a><a href="https://github.com/KenichiQaz"><img src="https://github.com/KenichiQaz.png" width="60px" alt="User avatar: Stefan" /></a><a href="https://github.com/paulsheets"><img src="https://github.com/paulsheets.png" width="60px" alt="User avatar: Paul" /></a><a href="https://github.com/djones369"><img src="https://github.com/djones369.png" width="60px" alt="User avatar: Dave J (WhamGeek)" /></a><a href="https://github.com/anthonymendez"><img src="https://github.com/anthonymendez.png" width="60px" alt="User avatar: Anthony Mendez" /></a><a href="https://github.com/FatBastard0"><img src="https://github.com/FatBastard0.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DursleyGuy"><img src="https://github.com/DursleyGuy.png" width="60px" alt="User avatar: DursleyGuy" /></a><a href="https://github.com/realmuddy"><img src="https://github.com/realmuddy.png" width="60px" alt="User avatar: Phillip Waters" /></a><a href="https://github.com/quaszi"><img src="https://github.com/quaszi.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/DwayneTheRockLobster1"><img src="https://github.com/DwayneTheRockLobster1.png" width="60px" alt="User avatar: " /></a><a href="https://github.com/KieraKujisawa"><img src="https://github.com/KieraKujisawa.png" width="60px" alt="User avatar: Kiera Meredith" /></a><a href="https://github.com/novello-dev"><img src="https://github.com/novello-dev.png" width="60px" alt="User avatar: João Pedro Novello" /></a><!-- sponsors -->
|
||||
|
||||
## 🏅 Thanks to all Contributors
|
||||
Thanks a lot for spending your time helping Winutil grow. Thanks a lot! Keep rocking 🍻.
|
||||
|
||||
@@ -143,6 +143,15 @@
|
||||
"link": "https://github.com/sharkdp/bat",
|
||||
"winget": "sharkdp.bat"
|
||||
},
|
||||
"beeper": {
|
||||
"category": "Communications",
|
||||
"choco": "na",
|
||||
"content": "Beeper",
|
||||
"description": "All your chats in one app",
|
||||
"link": "https://www.beeper.com/",
|
||||
"winget": "Beeper.Beeper"
|
||||
},
|
||||
|
||||
"bitwarden": {
|
||||
"category": "Utilities",
|
||||
"choco": "bitwarden",
|
||||
@@ -511,6 +520,14 @@
|
||||
"link": "https://emulationstation.org/",
|
||||
"winget": "Emulationstation.Emulationstation"
|
||||
},
|
||||
"enteauth": {
|
||||
"category": "Utilities",
|
||||
"choco": "ente-auth",
|
||||
"content": "Ente Auth",
|
||||
"description": "Ente Auth is a free, cross-platform, end-to-end encrypted authenticator app.",
|
||||
"link": "https://ente.io/auth/",
|
||||
"winget": "ente-io.auth-desktop"
|
||||
},
|
||||
"epicgames": {
|
||||
"category": "Games",
|
||||
"choco": "epicgameslauncher",
|
||||
@@ -1703,13 +1720,13 @@
|
||||
"link": "https://bitsum.com/",
|
||||
"winget": "BitSum.ProcessLasso"
|
||||
},
|
||||
"spotify": {
|
||||
"category": "Multimedia Tools",
|
||||
"choco": "spotify",
|
||||
"content": "Spotify",
|
||||
"description": "Spotify is a digital music service that gives you access to millions of songs, podcasts, and videos from artists all over the world.",
|
||||
"link": "https://www.spotify.com/",
|
||||
"winget": "Spotify.Spotify"
|
||||
"protonauth": {
|
||||
"category": "Utilities",
|
||||
"choco": "protonauth",
|
||||
"content": "Proton Authenticator",
|
||||
"description": "2FA app from Proton to securely sync and backup 2FA codes.",
|
||||
"link": "https://proton.me/authenticator",
|
||||
"winget": "Proton.ProtonAuthenticator"
|
||||
},
|
||||
"processmonitor": {
|
||||
"category": "Microsoft Tools",
|
||||
@@ -2699,7 +2716,7 @@
|
||||
"category": "Utilities",
|
||||
"choco": "ultravnc",
|
||||
"content": "UltraVNC",
|
||||
"description": "UltraVNC is a powerful, easy to use and free - remote pc access softwares - that can display the screen of another computer (via internet or network) on your own screen. The program allows you to use your mouse and keyboard to control the other PC remotely. It means that you can work on a remote computer, as if you were sitting in front of it, right from your current location.",
|
||||
"description": "UltraVNC is a powerful, easy to use and free - remote pc access software - that can display the screen of another computer (via internet or network) on your own screen. The program allows you to use your mouse and keyboard to control the other PC remotely. It means that you can work on a remote computer, as if you were sitting in front of it, right from your current location.",
|
||||
"link": "https://uvnc.com/",
|
||||
"winget": "uvncbvba.UltraVnc"
|
||||
},
|
||||
|
||||
@@ -46,23 +46,5 @@
|
||||
"Secondary": "94.140.15.16",
|
||||
"Primary6": "2a10:50c0::bad1:ff",
|
||||
"Secondary6": "2a10:50c0::bad2:ff"
|
||||
},
|
||||
"dns0.eu_Open":{
|
||||
"Primary": "193.110.81.254",
|
||||
"Secondary": "185.253.5.254",
|
||||
"Primary6": "2a0f:fc80::ffff",
|
||||
"Secondary6": "2a0f:fc81::ffff"
|
||||
},
|
||||
"dns0.eu_ZERO":{
|
||||
"Primary": "193.110.81.9",
|
||||
"Secondary": "185.253.5.9",
|
||||
"Primary6": "2a0f:fc80::9",
|
||||
"Secondary6": "2a0f:fc81::9"
|
||||
},
|
||||
"dns0.eu_KIDS":{
|
||||
"Primary": "193.110.81.1",
|
||||
"Secondary": "185.253.5.1",
|
||||
"Primary6": "2a0f:fc80::1",
|
||||
"Secondary6": "2a0f:fc81::1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,42 +81,6 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/features/features/nfs"
|
||||
},
|
||||
"WPFFeatureEnableSearchSuggestions": {
|
||||
"Content": "Enable Search Box Web Suggestions in Registry(explorer restart)",
|
||||
"Description": "Enables web suggestions when searching using Windows Search.",
|
||||
"category": "Features",
|
||||
"panel": "1",
|
||||
"Order": "a015_",
|
||||
"feature": [],
|
||||
"InvokeScript": [
|
||||
"
|
||||
If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {
|
||||
New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null
|
||||
}
|
||||
New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force
|
||||
Stop-Process -name explorer -force
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/features/features/enablesearchsuggestions"
|
||||
},
|
||||
"WPFFeatureDisableSearchSuggestions": {
|
||||
"Content": "Disable Search Box Web Suggestions in Registry(explorer restart)",
|
||||
"Description": "Disables web suggestions when searching using Windows Search.",
|
||||
"category": "Features",
|
||||
"panel": "1",
|
||||
"Order": "a016_",
|
||||
"feature": [],
|
||||
"InvokeScript": [
|
||||
"
|
||||
If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {
|
||||
New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null
|
||||
}
|
||||
New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force
|
||||
Stop-Process -name explorer -force
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/features/features/disablesearchsuggestions"
|
||||
},
|
||||
"WPFFeatureRegBackup": {
|
||||
"Content": "Enable Daily Registry Backup Task 12.30am",
|
||||
"Description": "Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.",
|
||||
@@ -306,7 +270,6 @@
|
||||
"ButtonWidth": "300",
|
||||
"link": "https://winutil.christitus.com/dev/features/legacy-windows-panels/user"
|
||||
},
|
||||
|
||||
"WPFPanelSystem": {
|
||||
"Content": "System Properties",
|
||||
"category": "Legacy Windows Panels",
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
{
|
||||
"Standard": [
|
||||
"WPFTweaksAH",
|
||||
"WPFTweaksActivity",
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksDVR",
|
||||
"WPFTweaksHome",
|
||||
"WPFTweaksLoc",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksStorage",
|
||||
@@ -19,7 +18,6 @@
|
||||
"Minimal": [
|
||||
"WPFTweaksConsumerFeatures",
|
||||
"WPFTweaksDisableExplorerAutoDiscovery",
|
||||
"WPFTweaksHome",
|
||||
"WPFTweaksServices",
|
||||
"WPFTweaksTele"
|
||||
]
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"AppEntryWidth": "130",
|
||||
"AppEntryFontSize": "11",
|
||||
"AppEntryMargin": "1,1,1,1",
|
||||
"AppEntryBorderTickness": "0",
|
||||
"AppEntryBorderThickness": "0",
|
||||
"CustomDialogFontSize": "12",
|
||||
"CustomDialogFontSizeHeader": "14",
|
||||
"CustomDialogLogoSize": "25",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"WPFTweaksAH": {
|
||||
"WPFTweaksActivity": {
|
||||
"Content": "Disable Activity History",
|
||||
"Description": "This erases recent docs, clipboard, and run history.",
|
||||
"category": "Essential Tweaks",
|
||||
@@ -63,9 +63,9 @@
|
||||
"WPFTweaksLaptopHibernation": {
|
||||
"Content": "Set Hibernation as default (good for laptops)",
|
||||
"Description": "Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399",
|
||||
"category": "Essential Tweaks",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a014_",
|
||||
"Order": "a027_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Power\\PowerSettings\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0",
|
||||
@@ -99,7 +99,7 @@
|
||||
Write-Host \"Turn off Hibernation\"
|
||||
Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait
|
||||
|
||||
# Set standby to detault values
|
||||
# Set standby to default values
|
||||
Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait
|
||||
Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait
|
||||
Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait
|
||||
@@ -108,26 +108,6 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/laptophibernation"
|
||||
},
|
||||
"WPFTweaksHome": {
|
||||
"Content": "Disable Homegroup",
|
||||
"Description": "Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a005_",
|
||||
"service": [
|
||||
{
|
||||
"Name": "HomeGroupListener",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Automatic"
|
||||
},
|
||||
{
|
||||
"Name": "HomeGroupProvider",
|
||||
"StartupType": "Manual",
|
||||
"OriginalType": "Automatic"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/home"
|
||||
},
|
||||
"WPFTweaksLoc": {
|
||||
"Content": "Disable Location Tracking",
|
||||
"Description": "Disables Location Tracking...DUH!",
|
||||
@@ -1552,11 +1532,11 @@
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/services"
|
||||
},
|
||||
"WPFTweaksBraveDebloat": {
|
||||
"Content": "Debloat Brave",
|
||||
"Content": "Brave Debloat",
|
||||
"Description": "Disables various annoyances like Brave Rewards,Leo AI,Crypto Wallet and VPN",
|
||||
"category": "Essential Tweaks",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a016_",
|
||||
"Order": "a022_",
|
||||
"registry": [
|
||||
{
|
||||
"Path":"HKLM:\\SOFTWARE\\Policies\\BraveSoftware\\Brave",
|
||||
@@ -1589,11 +1569,11 @@
|
||||
]
|
||||
},
|
||||
"WPFTweaksEdgeDebloat": {
|
||||
"Content": "Debloat Edge",
|
||||
"Content": "Edge Debloat",
|
||||
"Description": "Disables various telemetry options, popups, and other annoyances in Edge.",
|
||||
"category": "Essential Tweaks",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a016_",
|
||||
"Order": "a022_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\EdgeUpdate",
|
||||
@@ -1665,13 +1645,6 @@
|
||||
"Value": "0",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge",
|
||||
"Name": "PersonalizationReportingEnabled",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge",
|
||||
"Name": "ShowMicrosoftRewards",
|
||||
@@ -1700,13 +1673,6 @@
|
||||
"Value": "0",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge",
|
||||
"Name": "EdgeCollectionsEnabled",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge",
|
||||
"Name": "CryptoWalletEnabled",
|
||||
@@ -2129,6 +2095,30 @@
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/wifi"
|
||||
},
|
||||
"WPFTweaksDisableEdge": {
|
||||
"Content": "Disable Edge",
|
||||
"Description": "Disables Microsoft Edge via the registry and prevents scheduled tasks from running Edge updates.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a023_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\DisallowRun",
|
||||
"Name": "DisableEdge",
|
||||
"Type": "String",
|
||||
"Value": "msedge.exe",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
},
|
||||
{
|
||||
"Path": "HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer",
|
||||
"Name": "DisallowRun",
|
||||
"Type": "DWord",
|
||||
"Value": "1",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
],
|
||||
"link": ""
|
||||
},
|
||||
"WPFTweaksUTC": {
|
||||
"Content": "Set Time to UTC (Dual Boot)",
|
||||
"Description": "Essential for computers that are dual booting. Fixes the time sync with Linux Systems.",
|
||||
@@ -2313,9 +2303,8 @@
|
||||
"Microsoft.MinecraftUWP",
|
||||
"Microsoft.GamingServices",
|
||||
"Microsoft.GetHelp",
|
||||
"Microsoft.Getstarted",
|
||||
"Microsoft.GetStarted",
|
||||
"Microsoft.Messaging",
|
||||
"Microsoft.Microsoft3DViewer",
|
||||
"Microsoft.MicrosoftSolitaireCollection",
|
||||
"Microsoft.NetworkSpeedTest",
|
||||
"Microsoft.News",
|
||||
@@ -2329,7 +2318,7 @@
|
||||
"Microsoft.Wallet",
|
||||
"Microsoft.Whiteboard",
|
||||
"Microsoft.WindowsAlarms",
|
||||
"microsoft.windowscommunicationsapps",
|
||||
"Microsoft.WindowsCommunicationsApps",
|
||||
"Microsoft.WindowsFeedbackHub",
|
||||
"Microsoft.WindowsMaps",
|
||||
"Microsoft.WindowsSoundRecorder",
|
||||
@@ -2338,7 +2327,6 @@
|
||||
"Microsoft.MixedReality.Portal",
|
||||
"Microsoft.ZuneMusic",
|
||||
"Microsoft.ZuneVideo",
|
||||
"Microsoft.Getstarted",
|
||||
"Microsoft.MicrosoftOfficeHub",
|
||||
"*EclipseManager*",
|
||||
"*ActiproSoftwareLLC*",
|
||||
@@ -2359,7 +2347,7 @@
|
||||
"*ACGMediaPlayer*",
|
||||
"*Netflix*",
|
||||
"*OneCalendar*",
|
||||
"*LinkedInforWindows*",
|
||||
"*LinkedInForWindows*",
|
||||
"*HiddenCityMysteryofShadows*",
|
||||
"*Hulu*",
|
||||
"*HiddenCity*",
|
||||
@@ -2462,40 +2450,23 @@
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a006_",
|
||||
"InvokeScript": [
|
||||
"$path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"
|
||||
$name = \"TaskbarEndTask\"
|
||||
$value = 1
|
||||
|
||||
# Ensure the registry key exists
|
||||
if (-not (Test-Path $path)) {
|
||||
New-Item -Path $path -Force | Out-Null
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings",
|
||||
"Name": "TaskbarEndTask",
|
||||
"Type": "DWord",
|
||||
"Value": "1",
|
||||
"OriginalValue": "<RemoveEntry>"
|
||||
}
|
||||
|
||||
# Set the property, creating it if it doesn't exist
|
||||
New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null"
|
||||
],
|
||||
"UndoScript": [
|
||||
"$path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"
|
||||
$name = \"TaskbarEndTask\"
|
||||
$value = 0
|
||||
|
||||
# Ensure the registry key exists
|
||||
if (-not (Test-Path $path)) {
|
||||
New-Item -Path $path -Force | Out-Null
|
||||
}
|
||||
|
||||
# Set the property, creating it if it doesn't exist
|
||||
New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/endtaskontaskbar"
|
||||
},
|
||||
"WPFTweaksPowershell7": {
|
||||
"Content": "Change Windows Terminal default: PowerShell 5 -> PowerShell 7",
|
||||
"Description": "This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary",
|
||||
"category": "Essential Tweaks",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a009_",
|
||||
"Order": "a022_",
|
||||
"InvokeScript": [
|
||||
"Invoke-WPFTweakPS7 -action \"PS7\""
|
||||
],
|
||||
@@ -2524,11 +2495,14 @@
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Order": "a005_",
|
||||
"InvokeScript": [
|
||||
"Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force"
|
||||
],
|
||||
"UndoScript": [
|
||||
"Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force"
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy",
|
||||
"Name": "01",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "1"
|
||||
}
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/storage"
|
||||
},
|
||||
@@ -2616,9 +2590,9 @@
|
||||
"WPFTweaksRecallOff": {
|
||||
"Content": "Disable Recall",
|
||||
"Description": "Turn Recall off",
|
||||
"category": "Essential Tweaks",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a011_",
|
||||
"Order": "a025_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Policies\\Microsoft\\Windows\\WindowsAI",
|
||||
@@ -2844,7 +2818,7 @@
|
||||
"Description": "Blocks ALL Razer Software installations. The hardware works fine without any software. WARNING: this will also block all Windows third-party driver installations.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a032_",
|
||||
"Order": "a021_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\DriverSearching",
|
||||
@@ -3062,102 +3036,26 @@
|
||||
"Order": "a021_",
|
||||
"InvokeScript": [
|
||||
"
|
||||
# Define the URL of the remote HOSTS file and the local paths
|
||||
$remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"
|
||||
$localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"
|
||||
$tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"
|
||||
$hostsUrl = \"https://github.com/Ruddernation-Designs/Adobe-URL-Block-List/raw/refs/heads/master/hosts\"
|
||||
$hosts = \"$env:SystemRoot\\System32\\drivers\\etc\\hosts\"
|
||||
|
||||
# Download the remote HOSTS file to a temporary location
|
||||
try {
|
||||
Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath
|
||||
Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"
|
||||
} catch {
|
||||
Write-Error \"Failed to download the HOSTS file. Error: $_\"
|
||||
}
|
||||
Copy-Item $hosts \"$hosts.bak\"
|
||||
Invoke-WebRequest $hostsUrl -OutFile $hosts
|
||||
ipconfig flushdns
|
||||
|
||||
# Check if the AdobeNetBlock has already been started
|
||||
try {
|
||||
$localHostsContent = Get-Content $localHostsPath -ErrorAction Stop
|
||||
|
||||
# Check if AdobeNetBlock markers exist
|
||||
$blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"
|
||||
if ($blockStartExists) {
|
||||
Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"
|
||||
} else {
|
||||
# Load the new block from the downloaded file
|
||||
$newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop
|
||||
$newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments
|
||||
$newBlockHeader = \"#AdobeNetBlock-start\"
|
||||
$newBlockFooter = \"#AdobeNetBlock-end\"
|
||||
|
||||
# Combine the contents, ensuring new block is properly formatted
|
||||
$combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String
|
||||
|
||||
# Write the combined content back to the original HOSTS file
|
||||
$combinedContent | Set-Content $localHostsPath -Encoding ASCII
|
||||
Write-Output \"Successfully added the AdobeNetBlock.\"
|
||||
}
|
||||
} catch {
|
||||
Write-Error \"Error during processing: $_\"
|
||||
}
|
||||
|
||||
# Clean up temporary file
|
||||
Remove-Item $tempHostsPath -ErrorAction Ignore
|
||||
|
||||
# Flush the DNS resolver cache
|
||||
try {
|
||||
Invoke-Expression \"ipconfig /flushdns\"
|
||||
Write-Output \"DNS cache flushed successfully.\"
|
||||
} catch {
|
||||
Write-Error \"Failed to flush DNS cache. Error: $_\"
|
||||
}
|
||||
Write-Host \"Added Adobe url block list from host file\"
|
||||
"
|
||||
],
|
||||
"UndoScript": [
|
||||
"
|
||||
# Define the local path of the HOSTS file
|
||||
$localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"
|
||||
$hosts = \"$env:SystemRoot\\System32\\drivers\\etc\\hosts\"
|
||||
$backup = \"$hosts.bak\"
|
||||
|
||||
# Load the content of the HOSTS file
|
||||
try {
|
||||
$hostsContent = Get-Content $localHostsPath -ErrorAction Stop
|
||||
} catch {
|
||||
Write-Error \"Failed to load the HOSTS file. Error: $_\"
|
||||
return
|
||||
}
|
||||
Copy-Item $backup $hosts
|
||||
Remove-Item $backup
|
||||
ipconfig flushdns
|
||||
|
||||
# Initialize flags and buffer for new content
|
||||
$recording = $true
|
||||
$newContent = @()
|
||||
|
||||
# Iterate over each line of the HOSTS file
|
||||
foreach ($line in $hostsContent) {
|
||||
if ($line -match \"#AdobeNetBlock-start\") {
|
||||
$recording = $false
|
||||
}
|
||||
if ($recording) {
|
||||
$newContent += $line
|
||||
}
|
||||
if ($line -match \"#AdobeNetBlock-end\") {
|
||||
$recording = $true
|
||||
}
|
||||
}
|
||||
|
||||
# Write the filtered content back to the HOSTS file
|
||||
try {
|
||||
$newContent | Set-Content $localHostsPath -Encoding ASCII
|
||||
Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"
|
||||
} catch {
|
||||
Write-Error \"Failed to write back to the HOSTS file. Error: $_\"
|
||||
}
|
||||
|
||||
# Flush the DNS resolver cache
|
||||
try {
|
||||
Invoke-Expression \"ipconfig /flushdns\"
|
||||
Write-Output \"DNS cache flushed successfully.\"
|
||||
} catch {
|
||||
Write-Error \"Failed to flush DNS cache. Error: $_\"
|
||||
}
|
||||
Write-Host \"Removed Adobe url block list from host file\"
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/blockadobenet"
|
||||
@@ -3206,8 +3104,10 @@
|
||||
"panel": "1",
|
||||
"Order": "a002_",
|
||||
"InvokeScript": [
|
||||
"Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse
|
||||
Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse"
|
||||
"
|
||||
Remove-Item -Path \"$Env:Temp\\*\" -Recurse -Force
|
||||
Remove-Item -Path \"$Env:SystemRoot\\Temp\\*\" -Recurse -Force
|
||||
"
|
||||
],
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/essential-tweaks/deletetempfiles"
|
||||
},
|
||||
@@ -3261,7 +3161,7 @@
|
||||
"Description": "To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a023_",
|
||||
"Order": "a024_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters",
|
||||
@@ -3278,7 +3178,7 @@
|
||||
"Description": "Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a023_",
|
||||
"Order": "a024_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters",
|
||||
@@ -3301,7 +3201,7 @@
|
||||
"Description": "Disables IPv6.",
|
||||
"category": "z__Advanced Tweaks - CAUTION",
|
||||
"panel": "1",
|
||||
"Order": "a023_",
|
||||
"Order": "a024_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters",
|
||||
@@ -3535,7 +3435,7 @@
|
||||
},
|
||||
"WPFToggleSnapFlyout": {
|
||||
"Content": "Snap Assist Flyout",
|
||||
"Description": "If enabled then Snap preview is disabled when maximize button is hovered.",
|
||||
"Description": "If disabled then Snap preview is disabled when maximize button is hovered.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
"Order": "a107_",
|
||||
@@ -3690,7 +3590,7 @@
|
||||
},
|
||||
|
||||
"WPFToggleMultiplaneOverlay": {
|
||||
"Content": "Multiplane Overlay",
|
||||
"Content": "Disable Multiplane Overlay",
|
||||
"Description": "Disable the Multiplane Overlay which can sometimes cause issues with Graphics Cards.",
|
||||
"category": "Customize Preferences",
|
||||
"panel": "2",
|
||||
@@ -3702,7 +3602,7 @@
|
||||
"Name": "OverlayTestMode",
|
||||
"Value": "5",
|
||||
"OriginalValue": "<RemoveEntry>",
|
||||
"DefaultState": "true",
|
||||
"DefaultState": "false",
|
||||
"Type": "DWord"
|
||||
}
|
||||
],
|
||||
@@ -3901,7 +3801,7 @@
|
||||
"panel": "1",
|
||||
"Order": "a040_",
|
||||
"Type": "Combobox",
|
||||
"ComboItems": "Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult dns0.eu_Open dns0.eu_ZERO dns0.eu_KIDS",
|
||||
"ComboItems": "Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult",
|
||||
"link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/changedns"
|
||||
},
|
||||
"WPFAddUltPerf": {
|
||||
@@ -3977,7 +3877,7 @@
|
||||
"
|
||||
]
|
||||
},
|
||||
"WPFTweaksDisableCrossDeviceResume": {
|
||||
"WPFToggleDisableCrossDeviceResume": {
|
||||
"Content": "Cross-Device Resume",
|
||||
"Description": "This tweak controls the Resume function in Windows 11 24H2 and later, which allows you to resume an activity from a mobile device and vice-versa.",
|
||||
"category": "Customize Preferences",
|
||||
|
||||
@@ -132,7 +132,7 @@ function Invoke-MicrowinGetIso {
|
||||
if (!$downloadFromGitHub) {
|
||||
# only show the message to people who did check the box to download from github, if you check the box
|
||||
# you consent to downloading it, no need to show extra dialogs
|
||||
[System.Windows.MessageBox]::Show("oscdimge.exe is not found on the system, winutil will now attempt do download and install it using choco. This might take a long time.")
|
||||
[System.Windows.MessageBox]::Show("oscdimg.exe is not found on the system, winutil will now attempt do download and install it using choco. This might take a long time.")
|
||||
# the step below needs choco to download oscdimg
|
||||
# Install Choco if not already present
|
||||
Install-WinUtilChoco
|
||||
@@ -149,7 +149,7 @@ function Invoke-MicrowinGetIso {
|
||||
[System.Windows.MessageBox]::Show($msg)
|
||||
return
|
||||
} else {
|
||||
[System.Windows.MessageBox]::Show("oscdimge.exe is not found on the system, winutil will now attempt do download and install it from github. This might take a long time.")
|
||||
[System.Windows.MessageBox]::Show("oscdimg.exe is not found on the system, winutil will now attempt do download and install it from github. This might take a long time.")
|
||||
Invoke-MicrowinBusyInfo -action "wip" -message "Downloading oscdimg.exe..." -interactive $false
|
||||
Microwin-GetOscdimg -oscdimgPath $oscdimgPath
|
||||
$oscdImgFound = Test-Path $oscdimgPath -PathType Leaf
|
||||
@@ -200,7 +200,7 @@ function Invoke-MicrowinGetIso {
|
||||
$msg = "Failed to mount the image. Error: $($_.Exception.Message)"
|
||||
Write-Error $msg
|
||||
Write-Error "This is NOT winutil's problem, your ISO might be corrupt, or there is a problem on the system"
|
||||
Write-Host "Please refer to this wiki for more details: https://christitustech.github.io/winutil/KnownIssues/#troubleshoot-errors-during-microwin-usage" -ForegroundColor Red
|
||||
Write-Host "Please refer to this wiki for more details: https://winutil.christitus.com/knownissues/" -ForegroundColor Red
|
||||
Set-WinUtilTaskbaritem -state "Error" -value 1 -overlay "warning"
|
||||
Invoke-MicrowinBusyInfo -action "warning" -message $msg
|
||||
return
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
function Microwin-NewCheckInstall {
|
||||
|
||||
# using here string to embedd firstrun
|
||||
# using here string to embed firstrun
|
||||
$checkInstall = @'
|
||||
@echo off
|
||||
if exist "%HOMEDRIVE%\windows\cpu.txt" (
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
function Microwin-NewFirstRun {
|
||||
|
||||
# using here string to embedd firstrun
|
||||
# using here string to embed firstrun
|
||||
$firstRun = @'
|
||||
# Set the global error action preference to continue
|
||||
$ErrorActionPreference = "Continue"
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
$selectedAppRemoveButton.Add_MouseEnter({ $this.Foreground = "Red" })
|
||||
$selectedAppRemoveButton.Add_MouseLeave({ $this.SetResourceReference([Windows.Controls.Control]::ForegroundProperty, "MainForegroundColor") })
|
||||
$selectedAppRemoveButton.Add_Click({
|
||||
$sync.($this.Tag).isChecked = $false # On click of the remove button, we only have to uncheck the corresponding checkbox. This will kick of all neccessary changes to update the UI
|
||||
$sync.($this.Tag).isChecked = $false # On click of the remove button, we only have to uncheck the corresponding checkbox. This will kick of all necessary changes to update the UI
|
||||
})
|
||||
[System.Windows.Controls.Grid]::SetColumn($selectedAppRemoveButton, 1)
|
||||
$selectedAppGrid.Children.Add($selectedAppRemoveButton)
|
||||
|
||||
@@ -13,7 +13,7 @@ function Get-LocalizedYesNo {
|
||||
#>
|
||||
|
||||
# Run choice and capture its options as output
|
||||
# The output shows the options for Yes and No as "[Y,N]?" in the (partitially) localized format.
|
||||
# The output shows the options for Yes and No as "[Y,N]?" in the (partially) localized format.
|
||||
# eg. English: [Y,N]?
|
||||
# Dutch: [Y,N]?
|
||||
# German: [J,N]?
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
Also creates an overlay with a progress bar and text to indicate that an install or uninstall is in progress
|
||||
|
||||
.PARAMETER TargetElement
|
||||
The element to which the AppArea shoud be added
|
||||
The element to which the AppArea should be added
|
||||
|
||||
#>
|
||||
param($TargetElement)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
function Initialize-InstallAppEntry {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Creates the app entry to be placed on the isntall tab for a given app
|
||||
Creates the app entry to be placed on the install tab for a given app
|
||||
Used to as part of the Install Tab UI generation
|
||||
.PARAMETER TargetElement
|
||||
The Element into which the Apps should be placed
|
||||
@@ -30,24 +30,16 @@ Function Install-WinUtilProgramWinget {
|
||||
.PARAMETER wingetId
|
||||
The Id of the Program that Winget should Install/Uninstall
|
||||
|
||||
.PARAMETER scope
|
||||
Determines the installation mode. Can be "user" or "machine" (For more info look at the winget documentation)
|
||||
|
||||
.PARAMETER credential
|
||||
The PSCredential Object of the user that should be used to run winget
|
||||
|
||||
.NOTES
|
||||
Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed
|
||||
#>
|
||||
param (
|
||||
[string]$wingetId,
|
||||
[string]$scope = "",
|
||||
[PScredential]$credential = $null
|
||||
[string]$wingetId
|
||||
)
|
||||
|
||||
$commonArguments = "--id $wingetId --silent"
|
||||
$arguments = if ($Action -eq "Install") {
|
||||
"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {" --scope $scope"})"
|
||||
"install $commonArguments --accept-source-agreements --accept-package-agreements"
|
||||
} else {
|
||||
"uninstall $commonArguments"
|
||||
}
|
||||
@@ -60,10 +52,6 @@ Function Install-WinUtilProgramWinget {
|
||||
NoNewWindow = $true
|
||||
}
|
||||
|
||||
if ($credential) {
|
||||
$processParams.credential = $credential
|
||||
}
|
||||
|
||||
return (Start-Process @processParams).ExitCode
|
||||
}
|
||||
|
||||
@@ -87,28 +75,6 @@ Function Install-WinUtilProgramWinget {
|
||||
return $true
|
||||
}
|
||||
|
||||
Write-Host "Attempt installation of $($Program) with User scope"
|
||||
$status = Invoke-Winget -wingetId $Program -scope "user"
|
||||
if ($status -eq 0) {
|
||||
Write-Host "$($Program) installed successfully with User scope."
|
||||
return $true
|
||||
} elseif ($status -eq -1978335189) {
|
||||
Write-Host "$($Program) No applicable update found"
|
||||
return $true
|
||||
}
|
||||
|
||||
$userAcknowledgment = [System.Windows.MessageBox]::Show("You need to input your password to install $($Program) with specific user credentials.", "User credential Prompt", [System.Windows.MessageBoxButton]::Ok)
|
||||
if ($userAcknowledgment -eq 'Ok') {
|
||||
$getcreds = Get-Credential $env:USERNAME
|
||||
$status = Invoke-Winget -wingetId $Program -credential $getcreds
|
||||
if ($status -eq 0) {
|
||||
Write-Host "$($Program) installed successfully with User prompt."
|
||||
return $true
|
||||
}
|
||||
} else {
|
||||
Write-Host "Skipping installation with specific user credentials."
|
||||
}
|
||||
|
||||
Write-Host "Failed to install $($Program)."
|
||||
return $false
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ function Invoke-WinUtilTweaks {
|
||||
$KeepServiceStartup = $true
|
||||
)
|
||||
|
||||
if ($Checkbox -contains "Toggle") {
|
||||
if ($Checkbox -like "*Toggle*") {
|
||||
$CheckBox = $sync.configs.tweaks.$CheckBox
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ function Invoke-WinUtilTweaks {
|
||||
$sync.configs.tweaks.$CheckBox.service | ForEach-Object {
|
||||
$changeservice = $true
|
||||
|
||||
# The check for !($undo) is required, without it the script will throw an error for accessing unavailable memeber, which's the 'OriginalService' Property
|
||||
# The check for !($undo) is required, without it the script will throw an error for accessing unavailable member, which's the 'OriginalService' Property
|
||||
if($KeepServiceStartup -AND !($undo)) {
|
||||
try {
|
||||
# Check if the service exists
|
||||
|
||||
@@ -6,35 +6,35 @@ function Set-PackageManagerPreference {
|
||||
|
||||
Reads from preference.ini if no argument sent.
|
||||
|
||||
.PARAMETER preferedPackageManager
|
||||
.PARAMETER preferredPackageManager
|
||||
The PackageManager that was selected.
|
||||
#>
|
||||
param(
|
||||
[Parameter(Position=0, Mandatory=$false)]
|
||||
[PackageManagers]$preferedPackageManager
|
||||
[PackageManagers]$preferredPackageManager
|
||||
)
|
||||
|
||||
$preferencePath = "$env:LOCALAPPDATA\winutil\preferences.ini"
|
||||
$oldChocoPath = "$env:LOCALAPPDATA\winutil\preferChocolatey.ini"
|
||||
|
||||
#Try loading from file if no argument given.
|
||||
if ($null -eq $preferedPackageManager) {
|
||||
if ($null -eq $preferredPackageManager) {
|
||||
# Backwards compat for preferChocolatey.ini
|
||||
if (Test-Path -Path $oldChocoPath) {
|
||||
$preferedPackageManager = [PackageManagers]::Choco
|
||||
$preferredPackageManager = [PackageManagers]::Choco
|
||||
Remove-Item -Path $oldChocoPath
|
||||
}
|
||||
elseif (Test-Path -Path $preferencePath) {
|
||||
$potential = Get-Content -Path $preferencePath -TotalCount 1
|
||||
$preferedPackageManager = [PackageManagers]$potential
|
||||
$preferredPackageManager = [PackageManagers]$potential
|
||||
}
|
||||
else {
|
||||
Write-Debug "Creating new preference file, defaulting to winget."
|
||||
$preferedPackageManager = [PackageManagers]::Winget
|
||||
$preferredPackageManager = [PackageManagers]::Winget
|
||||
}
|
||||
}
|
||||
|
||||
$sync["ManagerPreference"] = [PackageManagers]::$preferedPackageManager
|
||||
$sync["ManagerPreference"] = [PackageManagers]::$preferredPackageManager
|
||||
Write-Debug "Manager Preference changed to '$($sync["ManagerPreference"])'"
|
||||
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ function Set-WinUtilProgressbar{
|
||||
This function is used to Update the Progress Bar displayed in the winutil GUI.
|
||||
It will be automatically hidden if the user clicks something and no process is running
|
||||
.PARAMETER Label
|
||||
The Text to be overlayed onto the Progress Bar
|
||||
The Text to be overlaid onto the Progress Bar
|
||||
.PARAMETER PERCENT
|
||||
The percentage of the Progress Bar that should be filled (0-100)
|
||||
#>
|
||||
|
||||
@@ -33,7 +33,7 @@ function Test-WinUtilPackageManager {
|
||||
$wingetVersionFull = ($wingetInfo | Select-String -Pattern 'Package Manager v\d+\.\d+\.\d+').Matches.Value.Split(' ')[-1]
|
||||
}
|
||||
} catch [System.Management.Automation.CommandNotFoundException], [System.Management.Automation.ApplicationFailedException] {
|
||||
Write-Warning "Winget was not found due to un-availablity reasons"
|
||||
Write-Warning "Winget was not found due to un-availability reasons"
|
||||
$wingetExists = $false
|
||||
} catch {
|
||||
Write-Warning "Winget was not found due to un-known reasons, The Stack Trace is:`n$($psitem.Exception.StackTrace)"
|
||||
@@ -41,7 +41,7 @@ function Test-WinUtilPackageManager {
|
||||
}
|
||||
|
||||
# If Winget is available, Parse it's Version and give proper information to Terminal Output.
|
||||
# If it isn't available, the return of this funtion will be "not-installed", indicating that
|
||||
# If it isn't available, the return of this function will be "not-installed", indicating that
|
||||
# Winget isn't installed/available on The System.
|
||||
if ($wingetExists) {
|
||||
# Check if Preview Version
|
||||
@@ -55,7 +55,7 @@ function Test-WinUtilPackageManager {
|
||||
|
||||
# Check if Winget's Version is too old.
|
||||
$wingetCurrentVersion = [System.Version]::Parse($wingetVersion.Trim('v'))
|
||||
# Grabs the latest release of Winget from the Github API for version check process.
|
||||
# Grabs the latest release of Winget from the GitHub API for version check process.
|
||||
$response = winget search -e Microsoft.AppInstaller --accept-source-agreements
|
||||
$wingetLatestVersion = ($response | Select-String -Pattern '\d+\.\d+\.\d+\.\d+').Matches.Value
|
||||
Write-Host "Latest Search Version: $wingetLatestVersion" -ForegroundColor White
|
||||
|
||||
@@ -4,7 +4,7 @@ function Invoke-ScratchDialog {
|
||||
<#
|
||||
|
||||
.SYNOPSIS
|
||||
Enable Editable Text box Alternate Scartch path
|
||||
Enable Editable Text box Alternate Scratch path
|
||||
|
||||
.PARAMETER Button
|
||||
#>
|
||||
|
||||
@@ -12,7 +12,7 @@ function Invoke-WPFInstallUpgrade {
|
||||
Write-Host "Upgrade Successful"
|
||||
}
|
||||
else{
|
||||
Write-Host "Error Occured. Return Code: $chocoUpgradeStatus"
|
||||
Write-Host "Error Occurred. Return Code: $chocoUpgradeStatus"
|
||||
}
|
||||
}
|
||||
else{
|
||||
|
||||
@@ -24,7 +24,7 @@ function Invoke-WPFtweaksbutton {
|
||||
|
||||
Write-Debug "Number of tweaks to process: $($Tweaks.Count)"
|
||||
|
||||
# The leading "," in the ParameterList is nessecary because we only provide one argument and powershell cannot be convinced that we want a nested loop with only one argument otherwise
|
||||
# The leading "," in the ParameterList is necessary because we only provide one argument and powershell cannot be convinced that we want a nested loop with only one argument otherwise
|
||||
Invoke-WPFRunspace -ParameterList @(,("tweaks",$tweaks)) -DebugPreference $DebugPreference -ScriptBlock {
|
||||
param(
|
||||
$tweaks,
|
||||
|
||||
@@ -23,7 +23,7 @@ function Invoke-Preprocessing {
|
||||
.EXAMPLE
|
||||
Invoke-Preprocessing -WorkingDir "DRIVE:\Path\To\Folder\" -ExcludedFiles @('file.txt', '.\.git\', '*.png') -ProgressStatusMessage "Doing Preprocessing"
|
||||
|
||||
Calls 'Invoke-Preprocessing' function using Named Paramters, with 'WorkingDir' (Mandatory Parameter) which's used as the base folder when searching for files recursively (using 'Get-ChildItem'), other two paramters are, in order from right to left, the Optional 'ExcludeFiles', which can be a path to a file, folder, or pattern-matched (like '*.png'), and the 'ProgressStatusMessage', which's used in Progress Bar.
|
||||
Calls 'Invoke-Preprocessing' function using Named Parameters, with 'WorkingDir' (Mandatory Parameter) which's used as the base folder when searching for files recursively (using 'Get-ChildItem'), other two parameters are, in order from right to left, the Optional 'ExcludeFiles', which can be a path to a file, folder, or pattern-matched (like '*.png'), and the 'ProgressStatusMessage', which's used in Progress Bar.
|
||||
|
||||
.EXAMPLE
|
||||
Invoke-Preprocessing -WorkingDir "DRIVE:\Path\To\Folder\" -ExcludedFiles @('file.txt', '.\.git\', '*.png') -ProgressStatusMessage "Doing Preprocessing" -ProgressActivity "Re-Formatting Code"
|
||||
@@ -51,7 +51,7 @@ function Invoke-Preprocessing {
|
||||
)
|
||||
|
||||
if (-NOT (Test-Path -PathType Container -Path "$WorkingDir")) {
|
||||
throw "[Invoke-Preprocessing] Invalid Paramter Value for 'WorkingDir', passed value: '$WorkingDir'. Either the path is a File or Non-Existing/Invlid, please double check your code."
|
||||
throw "[Invoke-Preprocessing] Invalid Parameter Value for 'WorkingDir', passed value: '$WorkingDir'. Either the path is a File or Non-Existing/Invlid, please double check your code."
|
||||
}
|
||||
|
||||
$InternalExcludedFiles = [System.Collections.Generic.List[string]]::new($ExcludedFiles.Count)
|
||||
@@ -63,6 +63,10 @@ function Invoke-Preprocessing {
|
||||
if ($ExcludedFiles.Count -gt 0) {
|
||||
ForEach ($excludedFile in $ExcludedFiles) {
|
||||
$filePath = "$(($WorkingDir -replace ('\\$', '')) + '\' + ($excludedFile -replace ('\.\\', '')))"
|
||||
# Only attempt to create the directory if the excludedFile ends with '\'
|
||||
if ($excludedFile -match '\\$' -and -not (Test-Path "$filePath")) {
|
||||
New-Item -Path "$filePath" -ItemType Directory -Force | Out-Null
|
||||
}
|
||||
$files = Get-ChildItem -Recurse -Path "$filePath" -File -Force
|
||||
if ($files.Count -gt 0) {
|
||||
ForEach ($file in $files) {
|
||||
|
||||
@@ -1350,7 +1350,7 @@
|
||||
HorizontalAlignment="Stretch">
|
||||
<StackPanel Name="MicrowinMain" Background="{DynamicResource MainBackgroundColor}" SnapsToDevicePixels="True" Grid.Column="0" Grid.Row="0">
|
||||
<StackPanel Name="MicrowinISOPanel" Background="Transparent" SnapsToDevicePixels="True" Margin="1">
|
||||
<CheckBox x:Name="WPFMicrowinDownloadFromGitHub" Content="Download oscdimg.exe from CTT Github repo" IsChecked="True" Margin="{DynamicResource MicrowinCheckBoxMargin}" />
|
||||
<CheckBox x:Name="WPFMicrowinDownloadFromGitHub" Content="Download oscdimg.exe from CTT GitHub repo" IsChecked="True" Margin="{DynamicResource MicrowinCheckBoxMargin}" />
|
||||
<TextBlock Margin="5" Padding="1" TextWrapping="Wrap" Foreground="{DynamicResource ComboBoxForegroundColor}">
|
||||
Choose a Windows ISO file that you've downloaded <LineBreak/>
|
||||
Check the status in the console
|
||||
|
||||
Reference in New Issue
Block a user