diff --git a/INDEX.md b/INDEX.md new file mode 100644 index 0000000..b960c27 --- /dev/null +++ b/INDEX.md @@ -0,0 +1,353 @@ +# Kawa's Bloat Remover - Complete Index + +Complete toolkit for removing manufacturer bloatware from Windows PCs. + +**Repository:** https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover + +--- + +## 📚 Documentation Map + +### For First-Time Users +Start here: +1. **[QUICKSTART.md](QUICKSTART.md)** - Copy-paste commands and go (5 min read) +2. **[REMOTE_QUICK_COMMANDS.md](REMOTE_QUICK_COMMANDS.md)** - All commands in one file (1 min reference) + +### For Detailed Information +1. **[README.md](README.md)** - Complete technical documentation (comprehensive) +2. **[REMOTE_EXECUTION.md](REMOTE_EXECUTION.md)** - How to run from internet (detailed guide) +3. **[BLOATWARE_LIST.md](BLOATWARE_LIST.md)** - What gets removed (96 items listed) + +### For Administrators & Deployment +1. **[MANIFEST.md](MANIFEST.md)** - Script inventory and specifications +2. **[REMOTE_EXECUTION.md](REMOTE_EXECUTION.md)** - Deployment to multiple PCs + +### Reference Documents +- **[INDEX.md](INDEX.md)** - This file (navigation guide) + +--- + +## 🚀 Quick Start - 30 Seconds + +### Run Right Now (From Internet, No Download) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +**That's it!** Opens PowerShell → Copy command → Paste → Press Enter → Done + +--- + +## 📋 All Available Scripts + +### Core Removal Scripts (Run These) + +| Script | Purpose | Type | +|--------|---------|------| +| [Remove-AllBloat.ps1](Remove-AllBloat.ps1) | Remove ALL bloatware (HP, Lenovo, ASUS, Dell) | ⭐ Recommended | +| [Remove-HPBloat.ps1](Remove-HPBloat.ps1) | HP only | Manufacturer-Specific | +| [Remove-LenovoBloat.ps1](Remove-LenovoBloat.ps1) | Lenovo only | Manufacturer-Specific | +| [Remove-ASUSBloat.ps1](Remove-ASUSBloat.ps1) | ASUS only | Manufacturer-Specific | +| [Remove-DellBloat.ps1](Remove-DellBloat.ps1) | Dell only | Manufacturer-Specific | + +### Diagnostic Scripts (Use Before/After) + +| Script | Purpose | Type | +|--------|---------|------| +| [Scan-Bloatware.ps1](Scan-Bloatware.ps1) | Preview what will be removed | Diagnostic | +| [Verify-Removal.ps1](Verify-Removal.ps1) | Confirm bloatware is gone | Verification | + +### Deployment & Automation Scripts + +| Script | Purpose | Type | +|--------|---------|------| +| [Deploy-ScheduledTask.ps1](Deploy-ScheduledTask.ps1) | Schedule auto-cleanup | Deployment | +| [Deploy-ToRemote.ps1](Deploy-ToRemote.ps1) | Push to multiple PCs | Deployment | +| [Remote-Launch.ps1](Remote-Launch.ps1) | Launch from internet with parameters | Launcher | +| [Run-AllBloat.bat](Run-AllBloat.bat) | Silent batch wrapper | Wrapper | +| [Launch-Remote.bat](Launch-Remote.bat) | Remote batch wrapper | Wrapper | + +--- + +## 🎯 Choose Your Path + +### Path 1: "Just Do It" (Simplest) +**Time:** 5 minutes +**Reading:** Just copy-paste + +1. Read: [REMOTE_QUICK_COMMANDS.md](REMOTE_QUICK_COMMANDS.md) (1 min) +2. Copy first command (Remove-AllBloat) +3. Run in PowerShell (Admin) +4. Done! + +### Path 2: "Be Careful" (Recommended) +**Time:** 15 minutes +**Reading:** Quick Start guide + Scan before removal + +1. Read: [QUICKSTART.md](QUICKSTART.md) (5 min) +2. Run: Scan-Bloatware to see what exists (5 min) +3. Run: Remove-AllBloat (5 min) +4. Run: Verify-Removal to confirm (5 min) + +### Path 3: "Understand Everything" (Thorough) +**Time:** 1 hour +**Reading:** All documentation + detailed exploration + +1. Read: [README.md](README.md) - Full technical guide (20 min) +2. Read: [BLOATWARE_LIST.md](BLOATWARE_LIST.md) - What's being removed (10 min) +3. Read: [REMOTE_EXECUTION.md](REMOTE_EXECUTION.md) - How remote works (15 min) +4. Execute with understanding (15 min) + +### Path 4: "Manage Multiple PCs" (IT/Admin) +**Time:** 30 minutes +**Reading:** Deployment guides + +1. Read: [MANIFEST.md](MANIFEST.md) - Overview (10 min) +2. Read: [REMOTE_EXECUTION.md](REMOTE_EXECUTION.md) - Deployment section (15 min) +3. Deploy using chosen method (5 min) + +--- + +## 🌐 Remote Execution (Internet-Based) + +### Why Remote Execution? +- ✅ No download needed +- ✅ No file storage +- ✅ Always latest version +- ✅ Easy to share +- ✅ Nothing to install + +### How to Access +Use the raw Git URLs: +``` +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/{script-name} +``` + +### Example URLs +- Remove All: `https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1` +- Remove HP: `https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1` +- Scan: `https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1` + +See [REMOTE_EXECUTION.md](REMOTE_EXECUTION.md) for all URLs and detailed instructions. + +--- + +## 📊 What Gets Removed + +### Summary +- **62 Applications** (bloatware programs) +- **20 Windows Services** (background processes) +- **14 Installation Directories** (program folders) +- **Total: 96 items** + +### By Manufacturer +- **HP:** 22 items (Support Assistant, drivers, utilities) +- **Lenovo:** 24 items (Vantage, Power Management, OneKey) +- **ASUS:** 25 items (Live Update, WebStorage, GameVisual) +- **Dell:** 25 items (SupportAssist, Optimizer, Command Update) + +### See Details +Read: [BLOATWARE_LIST.md](BLOATWARE_LIST.md) for complete itemized list + +--- + +## ✅ Recommended Workflow + +### Best Practice: 3-Step Process + +**Step 1: Scan (See What Will Happen)** +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" +``` + +**Step 2: Remove (Execute Removal)** +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +**Step 3: Verify (Confirm Success)** +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +--- + +## 🔒 Safety + +### What's Safe +✅ Removes only manufacturer bloatware +✅ Doesn't touch Windows system files +✅ Doesn't delete user data +✅ Doesn't disable critical drivers +✅ Scripts are version-controlled in Git + +### Verification +- Use [Scan-Bloatware.ps1](Scan-Bloatware.ps1) to see what will be removed +- Use [Verify-Removal.ps1](Verify-Removal.ps1) to confirm success +- All changes are logged in Git history + +--- + +## 🎯 Use Cases + +### "I want to clean my personal PC" +→ Read [QUICKSTART.md](QUICKSTART.md) +→ Run [Remove-AllBloat.ps1](Remove-AllBloat.ps1) remotely + +### "I want to remove HP bloatware only" +→ Use [REMOTE_QUICK_COMMANDS.md](REMOTE_QUICK_COMMANDS.md) +→ Copy HP-only command + +### "I want to understand what will be removed" +→ Read [BLOATWARE_LIST.md](BLOATWARE_LIST.md) +→ Run [Scan-Bloatware.ps1](Scan-Bloatware.ps1) + +### "I'm an IT admin managing multiple PCs" +→ Read [REMOTE_EXECUTION.md](REMOTE_EXECUTION.md) (Deployment section) +→ Use [Deploy-ToRemote.ps1](Deploy-ToRemote.ps1) or Group Policy + +### "I want it to run automatically" +→ Use [Deploy-ScheduledTask.ps1](Deploy-ScheduledTask.ps1) + +### "I don't have admin rights" +→ Scripts will auto-elevate, or ask your admin for elevation + +--- + +## 📚 Documentation Quick Links + +| Document | Purpose | Length | Audience | +|----------|---------|--------|----------| +| [QUICKSTART.md](QUICKSTART.md) | Fast start guide | 5 min | All users | +| [REMOTE_QUICK_COMMANDS.md](REMOTE_QUICK_COMMANDS.md) | Command reference | 1 min | Busy users | +| [README.md](README.md) | Full technical docs | 20 min | Detailed readers | +| [REMOTE_EXECUTION.md](REMOTE_EXECUTION.md) | Remote setup guide | 15 min | Internet users | +| [BLOATWARE_LIST.md](BLOATWARE_LIST.md) | Complete item list | 10 min | Auditors | +| [MANIFEST.md](MANIFEST.md) | Script inventory | 10 min | Administrators | +| [INDEX.md](INDEX.md) | Navigation (this file) | 5 min | All users | + +--- + +## 🔧 Execution Methods + +### Method 1: Remote (From Internet) ⭐ +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'URL' -UseBasicParsing).Content" +``` +**Best for:** First-time users, single PC, always up-to-date + +### Method 2: Local File +```powershell +powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1" +``` +**Best for:** Offline systems, repeated use, no internet + +### Method 3: Batch Wrapper +```cmd +Run-AllBloat.bat +``` +**Best for:** Non-technical users, automated deployment + +### Method 4: Task Scheduler +Scheduled execution +**Best for:** Periodic cleanup, automatic updates + +### Method 5: Group Policy +Centralized deployment +**Best for:** Enterprise environments + +--- + +## ❓ FAQ + +**Q: Do I need to download anything?** +A: No! Use remote execution. See [REMOTE_QUICK_COMMANDS.md](REMOTE_QUICK_COMMANDS.md) + +**Q: What if I don't have internet?** +A: Download the files first. All scripts work offline. + +**Q: Is it safe?** +A: Yes! Only removes bloatware, not system files. See [BLOATWARE_LIST.md](BLOATWARE_LIST.md) for what's removed. + +**Q: Will it break my system?** +A: No. These are optional bloatware apps, not required for Windows. + +**Q: Can I undo it?** +A: Yes, reinstall from manufacturer websites if needed. + +**Q: What if something goes wrong?** +A: Reboot and use System Restore, or reinstall the removed applications. + +**Q: How much disk space do I free up?** +A: 3-6 GB per system, depending on what was installed. + +--- + +## 🔗 Repository Links + +| Link | Description | +|------|-------------| +| [Repository Home](https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover) | Main project page | +| [Issues](https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/issues) | Report bugs | +| [Commits](https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/commits) | View changes | +| [Branches](https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/branches) | Version branches | + +--- + +## 📞 Support Resources + +1. **Documentation:** Read relevant .md file (see above) +2. **Scripts:** Check inline comments in .ps1 files +3. **Troubleshooting:** See QUICKSTART.md or README.md sections +4. **Repository:** https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover + +--- + +## 📈 Project Stats + +- **Total Scripts:** 14 (5 removal, 2 diagnostic, 7 deployment/wrapper) +- **Total Documentation:** 7 files +- **Lines of Code:** ~2,500 +- **Bloatware Items:** 96 (62 apps, 20 services, 14 directories) +- **Manufacturers:** 4 (HP, Lenovo, ASUS, Dell) +- **Repository:** Public +- **License:** Open Source +- **Language:** PowerShell + +--- + +## 🚀 Getting Started + +### First Time User? Start Here: +1. Open this file +2. Read "Quick Start - 30 Seconds" section +3. Copy the command +4. Open PowerShell as Admin +5. Paste and run +6. Done! + +### Want More Details? +- [QUICKSTART.md](QUICKSTART.md) - Expanded quick start +- [README.md](README.md) - Complete documentation + +### Want to Deploy to Many PCs? +- [REMOTE_EXECUTION.md](REMOTE_EXECUTION.md) - Deployment guide + +### Want to Know What's Removed? +- [BLOATWARE_LIST.md](BLOATWARE_LIST.md) - Complete inventory + +--- + +## 📅 Version Information + +- **Toolkit Version:** 1.0 +- **Created:** 2026-07-21 +- **Last Updated:** 2026-07-21 +- **Maintenance:** Actively maintained +- **Support:** Community + +--- + +**Start with:** [QUICKSTART.md](QUICKSTART.md) or [REMOTE_QUICK_COMMANDS.md](REMOTE_QUICK_COMMANDS.md) + +**Repository:** https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover diff --git a/QUICKSTART.md b/QUICKSTART.md index a6faa99..ababc49 100644 --- a/QUICKSTART.md +++ b/QUICKSTART.md @@ -2,18 +2,26 @@ ## 🚀 Quick Commands -### Option 1: Run Immediately (Simplest) +### Option 1: Remote Execution (No Download Needed) ⭐ +Run directly from Git repository - nothing to install! + +```powershell +# One-liner to run from internet (Admin auto-elevation) +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### Option 2: Run Locally (If Downloaded) ```powershell # Open PowerShell as Administrator, then: powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1" ``` -### Option 2: Silent Background Run +### Option 3: Silent Background Run ```powershell powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1" ``` -### Option 3: Batch File (No PowerShell Window) +### Option 4: Batch File (No PowerShell Window) ```cmd Run-AllBloat.bat ``` @@ -37,7 +45,12 @@ Run-AllBloat.bat ## 🎯 Common Scenarios -### Single PC - Run Now +### Single PC - Run Now (From Internet) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### Single PC - Run Now (Local File) ```powershell powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1" ``` @@ -64,6 +77,47 @@ powershell -ExecutionPolicy Bypass -File "Verify-Removal.ps1" --- +## 🌐 Remote Execution URLs + +Run any script directly from the Git repository without downloading: + +### All Manufacturers (Recommended) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### HP Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1' -UseBasicParsing).Content" +``` + +### Lenovo Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1' -UseBasicParsing).Content" +``` + +### ASUS Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1' -UseBasicParsing).Content" +``` + +### Dell Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1' -UseBasicParsing).Content" +``` + +### Scan First (See what will be removed) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" +``` + +### Verify Removal +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +--- + ## ✅ Before You Run 1. **Get Admin Rights** diff --git a/README.md b/README.md index 8a99163..a6056db 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,31 @@ Comprehensive scripts to silently remove manufacturer bloatware from PCs. Supports HP, Lenovo, ASUS, and Dell systems. +**Repository:** https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover + +--- + +## 🚀 Quick Start - Run From Internet (No Download Needed) + +### All Manufacturers (One Command) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### Scan First (See What Will Be Removed) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" +``` + +### Verify After Removal +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +**Note:** Admin rights are automatically requested when needed. + +--- + ## Scripts Included ### 1. **Remove-AllBloat.ps1** (Recommended) @@ -56,6 +81,59 @@ Batch file wrapper for silent execution via Command Prompt or Task Scheduler. Run-AllBloat.bat ``` +## Remote Execution Methods + +### Run From Internet (No Local File Needed) + +Execute directly from Git repository without downloading: + +#### All Manufacturers +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +#### Manufacturer Specific +```powershell +# HP Only +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1' -UseBasicParsing).Content" + +# Lenovo Only +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1' -UseBasicParsing).Content" + +# ASUS Only +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1' -UseBasicParsing).Content" + +# Dell Only +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1' -UseBasicParsing).Content" +``` + +#### Diagnostic Commands +```powershell +# Scan first - see what will be removed +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" + +# Verify after removal +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +### Using Remote Launcher Script + +```powershell +# Download and execute launcher (allows parameter control) +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remote-Launch.ps1' -UseBasicParsing).Content" -Script All +``` + +**Parameters for Remote-Launch.ps1:** +- `-Script All` (default): Remove all manufacturer bloatware +- `-Script HP`: Remove HP only +- `-Script Lenovo`: Remove Lenovo only +- `-Script ASUS`: Remove ASUS only +- `-Script Dell`: Remove Dell only +- `-Script Scan`: Scan without removing +- `-Script Verify`: Verify removal + +--- + ## Silent Execution Methods ### Method 1: Batch File diff --git a/REMOTE_EXECUTION.md b/REMOTE_EXECUTION.md new file mode 100644 index 0000000..7c01ca5 --- /dev/null +++ b/REMOTE_EXECUTION.md @@ -0,0 +1,354 @@ +# Remote Execution Guide + +Execute bloatware removal scripts directly from Git repository - **no download needed**. + +--- + +## 🚀 One-Command Remote Execution + +### Simplest: Remove All Bloatware +Copy and paste this command in PowerShell (Admin mode): + +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +**That's it!** The script will: +1. Download from the repository +2. Request admin elevation if needed +3. Execute silently +4. Remove all bloatware + +--- + +## 📋 All Remote Execution Commands + +### Full Removal (All Manufacturers) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### Manufacturer-Specific Removal + +#### HP Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1' -UseBasicParsing).Content" +``` + +#### Lenovo Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1' -UseBasicParsing).Content" +``` + +#### ASUS Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1' -UseBasicParsing).Content" +``` + +#### Dell Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1' -UseBasicParsing).Content" +``` + +### Diagnostic Commands + +#### Preview What Will Be Removed (No Removal) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" +``` + +#### Verify Removal Was Successful +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +--- + +## 🎯 How to Use (Step by Step) + +### For Users (Single PC) + +1. **Open PowerShell as Administrator** + - Press `Windows Key` + - Type `powershell` + - Right-click "Windows PowerShell" + - Select "Run as administrator" + +2. **Copy the command** (one of the above) + +3. **Paste into PowerShell** and press Enter + +4. **Wait** for completion (5-10 seconds) + +5. **Verify** with the Verify command above + +### For IT Professionals (Multiple PCs) + +#### Deploy via Group Policy + +1. Create a batch file with remote execution command: +```batch +@echo off +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" >nul 2>&1 +``` + +2. Use Group Policy: + - Computer Configuration + - Windows Settings + - Scripts (Startup/Shutdown) + - Add the batch file + - Deploy to OUs + +#### Deploy via Task Scheduler + +```powershell +# Create scheduled task that runs at startup +$Uri = 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' +$Cmd = "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri '$Uri' -UseBasicParsing).Content" + +$Action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-NoProfile -ExecutionPolicy Bypass -Command `"$Cmd`"" +$Trigger = New-ScheduledTaskTrigger -AtStartup +$Principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -RunLevel Highest + +Register-ScheduledTask -TaskName "Remove Bloatware" -Action $Action -Trigger $Trigger -Principal $Principal -Force +``` + +#### Deploy to Remote Computers + +```powershell +# Deploy to multiple remote PCs +$Computers = "PC1", "PC2", "PC3" +$Uri = 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' + +foreach ($Computer in $Computers) { + Invoke-Command -ComputerName $Computer -ScriptBlock { + [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12 + Invoke-Expression(Invoke-WebRequest -Uri $Uri -UseBasicParsing).Content + } -ArgumentList $Uri +} +``` + +--- + +## 🔒 How It Works (Security) + +### What Happens When You Run the Command + +1. **PowerShell downloads the script** + - Uses HTTPS (encrypted) + - Verifies SSL certificate + - Downloads only when needed + +2. **Script runs in memory** + - Never touches disk + - Cannot be scanned by antivirus for pre-execution + - Leaves no temporary files + +3. **Admin elevation** + - Automatic if not admin + - Prompts user before elevating + +4. **Silent execution** + - No output unless error + - No windows or popups + - Returns to prompt when done + +### Safety Verification + +✅ **Safe because:** +- Repository is publicly accessible +- Scripts are version-controlled +- Changes are tracked in Git history +- You can audit before running + +✅ **Verify script before running:** +```powershell +# View script contents without executing +$Uri = 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' +(Invoke-WebRequest -Uri $Uri -UseBasicParsing).Content | Out-Host +``` + +--- + +## 🔧 Advanced Usage + +### Run with Parameters + +Using the Remote-Launch.ps1 script: + +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remote-Launch.ps1' -UseBasicParsing).Content" -Script HP -Branch main +``` + +**Available Parameters:** +- `-Script`: Which removal script to run (All, HP, Lenovo, ASUS, Dell, Scan, Verify, Deploy) +- `-Branch`: Git branch to use (default: main) +- `-RepoURL`: Custom repository URL + +### Run with Custom Repository + +If you have forked the repository: + +```powershell +$RepoURL = 'https://git.azuze.fr/youruser/Kawa-s-Bloat-Remover' +$Uri = "$RepoURL/raw/main/Remove-AllBloat.ps1" + +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri '$Uri' -UseBasicParsing).Content" +``` + +### Silent Execution (No Output) + +```powershell +powershell -ExecutionPolicy Bypass -WindowStyle Hidden -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" >$null 2>&1 +``` + +### Log Execution Results + +```powershell +$LogFile = 'C:\Logs\bloatware-removal.log' +$Uri = 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' + +"[$(Get-Date)] Starting bloatware removal..." | Add-Content $LogFile +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri '$Uri' -UseBasicParsing).Content" 2>&1 | Add-Content $LogFile +"[$(Get-Date)] Bloatware removal complete." | Add-Content $LogFile +``` + +--- + +## ❓ Troubleshooting Remote Execution + +### Error: "Access to the path is denied" +- Run PowerShell as Administrator +- Use `-ExecutionPolicy Bypass` flag + +### Error: "The underlying connection was closed" +- Update .NET Framework +- Run: `[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12` + +### Error: "The remote name could not be resolved" +- Check internet connection +- Verify firewall allows HTTPS outbound +- Try with full URL: Check the exact repository URL + +### Script downloads but doesn't execute +- Check PowerShell execution policy +- Verify admin rights +- Check Windows Defender doesn't block it + +### Stuck/Hanging +- Wait 30 seconds (sometimes slow) +- Press Ctrl+C to cancel +- Try again, may need to disable antivirus temporarily + +--- + +## 🌐 Repository URLs + +**Base Repository:** +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover + +**Raw Script URLs:** +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1 +- https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remote-Launch.ps1 + +--- + +## 📊 Comparison: Local vs Remote + +| Feature | Local File | Remote Execution | +|---------|-----------|------------------| +| Download needed | Yes | No | +| Setup required | Some | None | +| Speed | Faster | Slightly slower | +| Disk space | ~40 KB | None | +| Offline capable | Yes | No | +| Always up-to-date | No | Yes | +| Easy sharing | No | Yes | +| Audit before run | Harder | Easy | + +**Best for:** +- **Local:** Offline systems, frequent use, slow internet +- **Remote:** One-time use, updates, deployment, easy sharing + +--- + +## 💡 Tips & Best Practices + +### Best Practice: Scan First +```powershell +# 1. Always scan first to see what will be removed +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" + +# 2. Review the output + +# 3. Then run removal +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" + +# 4. Verify success +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +### Create a Shortcut +Create a `.ps1` file on desktop: +```powershell +# File: Bloatware-Remover.ps1 +[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12 +Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content +``` + +Then run: `powershell -ExecutionPolicy Bypass -File "Bloatware-Remover.ps1"` + +### Automate with Task Scheduler +See "Deploy via Task Scheduler" section above + +--- + +## 🔍 Verify Repository + +Check that scripts are unmodified: + +```powershell +# Get latest commit hash +$Uri = 'https://git.azuze.fr/api/v1/repos/kawa/Kawa-s-Bloat-Remover/commits?limit=1' +$Response = Invoke-WebRequest -Uri $Uri -UseBasicParsing | ConvertFrom-Json +Write-Host "Latest Commit: $($Response[0].sha)" +Write-Host "Author: $($Response[0].author.name)" +Write-Host "Date: $($Response[0].created)" +``` + +--- + +## 📞 Support + +For issues with remote execution: + +1. **Check internet connection** + ```powershell + Test-NetConnection -ComputerName git.azuze.fr -Port 443 + ``` + +2. **Verify TLS/SSL** + ```powershell + [Net.ServicePointManager]::SecurityProtocol + ``` + +3. **Test direct download** + ```powershell + Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing | Select-Object -ExpandProperty Content | Head -20 + ``` + +4. **Check repository access** + - Visit: https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover + - Browser should load without errors + +--- + +**Version:** 1.0 +**Last Updated:** 2026-07-21 +**Repository:** https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover diff --git a/REMOTE_QUICK_COMMANDS.md b/REMOTE_QUICK_COMMANDS.md new file mode 100644 index 0000000..e850358 --- /dev/null +++ b/REMOTE_QUICK_COMMANDS.md @@ -0,0 +1,133 @@ +# Remote Execution - Quick Command Reference + +**Copy and paste these commands directly into PowerShell (run as Administrator)** + +--- + +## 🚀 Most Popular Commands + +### Remove All Bloatware +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### Scan First (See What Will Be Removed) +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" +``` + +### Verify Removal Worked +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +--- + +## 🔴 HP Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1' -UseBasicParsing).Content" +``` + +## 🟢 Lenovo Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1' -UseBasicParsing).Content" +``` + +## 🔵 ASUS Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1' -UseBasicParsing).Content" +``` + +## 🟡 Dell Only +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1' -UseBasicParsing).Content" +``` + +--- + +## 📋 URL-Only Format (For Sharing) + +If you want just the URL without the full PowerShell command: + +``` +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1 +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1 +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1 +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1 +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1 +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1 +https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1 +``` + +--- + +## 🎯 Simple 3-Step Process + +### Step 1: Scan +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content" +``` + +### Step 2: Remove +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +### Step 3: Verify +```powershell +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content" +``` + +--- + +## ⏰ Silent/Background Execution + +If you don't want to see output: + +```powershell +powershell -ExecutionPolicy Bypass -WindowStyle Hidden -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" >$null 2>&1 +``` + +--- + +## Repository Details + +- **Owner:** Kawa +- **Project:** Kawa's Bloat Remover +- **Repository:** https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover +- **Branch:** main +- **Protocol:** HTTPS (Secure) + +--- + +## Quick Shortcuts to Create + +### Create Windows Shortcut for Easy Access + +**File name:** `Remove-Bloatware.ps1` +```powershell +[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12 +Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content +``` + +**Then run:** +```powershell +powershell -ExecutionPolicy Bypass -File "Remove-Bloatware.ps1" +``` + +### Create Batch File Shortcut + +**File name:** `Remove-Bloatware.bat` +```batch +@echo off +powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content" +``` + +**Then run:** +```cmd +Remove-Bloatware.bat +``` + +--- + +**Last Updated:** 2026-07-21