Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ppfeister/windex
Windows Bloat Removal and Provisioning
https://github.com/ppfeister/windex
bloatware-removal debloat privacy provisioning telemetry tweaks windex windows-10
Last synced: 6 days ago
JSON representation
Windows Bloat Removal and Provisioning
- Host: GitHub
- URL: https://github.com/ppfeister/windex
- Owner: ppfeister
- License: gpl-3.0
- Created: 2024-02-04T23:40:15.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2024-06-03T07:22:38.000Z (5 months ago)
- Last Synced: 2024-10-31T05:51:39.996Z (13 days ago)
- Topics: bloatware-removal, debloat, privacy, provisioning, telemetry, tweaks, windex, windows-10
- Language: PowerShell
- Homepage:
- Size: 1.33 MB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Windex
Use Windex to clean Windows of as much bloat and telemetry as possible without impeding normal function. Windex was built with **stable** and **easily auditable** virtualization in mind, but we're starting to use it on workstations as well, providing a QOL boost.
![Windex Desktop](./assets/demo/start.png)
### 📦 Package debloat
Windex automates the removal of both [metro](./defs/metro/) and [modern](./defs/winget/) applications through the use of manifests. AppX/Metro applications are further deprovisioned to (hopefully) prevent their reinstallation for new users.
Legacy applications and services are purged or disabled. Internet Explorer, MS Paint, WordPad, all removed.
### 🌲 Service pruning
Undesirable Windows services are disabled, removed, or blacklisted. This has a positive effect on performance and reduces baked-in telemtry. We're also working on removing certain protected but undesirable services, such as the Microsoft Account nagger (for local users).
### 🖥️ Virtualization and optional tweaks
Windex was designed with a heavy focus on virtualization. When ran inside of a known hypervisor, Windex can detect which guest tools to install and retrieve them automatically, simplifying the build process.
For advanced use cases, Windex has several normally-hidden tweaks available. Defender Firewall and Defender AV management, Windows update service management, etc.
### 📗 Playbook support
Despite YAML not being natively supported by PowerShell, Windex has a parser built in with easily extendable Ansible-style [playbooks](./defs/README.md#playbooks).
## Basic use
> [!WARNING]
> While Windex was designed with stability and usability in mind, not everyone's environments and workflows are the same. Taking a snapshot or backup beforehand is considered best practice.Must be ran in an **elevated** PowerShell instance. **Reboot when complete.**
```powershell
Set-ExecutionPolicy Bypass -Scope Process # Confirm with Y or A& ./windex.ps1 # User will be presented with an interactive menu
```### Direct call via PowerShell
```powershell
# When pasting is available, copying this may be quicker than dealing with Edge's first-launch "welcome"
# Fetches the latest stable release, not the latest commitSet-ExecutionPolicy Bypass -Scope Process # Confirm with Y or A
Invoke-WebRequest -Uri "https://api.github.com/repos/ppfeister/windex/releases/latest" `
| Select-Object -ExpandProperty Content `
| ConvertFrom-Json `
| Select-Object -ExpandProperty zipball_url `
| %{
Invoke-WebRequest -Uri "$_" -OutFile "windex-stable.zip"
}
Expand-Archive -Path "windex-stable.zip" -DestinationPath .
cd ppfeister-Windex-*
& .\windex.ps1```
## Detailed documentation
- [Manifests and playbooks](defs/README.md)
- Further documentation in progress## Planned development
- [x] Adopt playbooks for easier expansion and maintenance
- [ ] Remove additional telemetry **(in progress)**
- [ ] Escalate to SYSTEM or TI without triggering UAC and without psexec to disable certain protected services
- [ ] Create some sort of deployment pipeline for easier fetch and exec (possibly to one of the Windows package managers)
- [x] Add normally-hidden tweak for the installation of hypervisor guest agents **(KVM/QEMU support added!)**