1
0
Fork 0
mirror of https://github.com/coko7/fwin.git synced 2026-11-05 08:15:38 +00:00
🤬 A handy script to "fix" Windows by installing decent CLIs and apps https://fwin.lazyfreax.dev
  • PowerShell 100%
Find a file
Coko b15c32f5fb fix(fwin): restrict winget to the community source
Without --source, winget also queries msstore, whose pinned certificate
fails behind TLS-intercepting proxies or antivirus (0x8a15005e) and
aborts the whole search.
2026-11-04 08:36:19 +01:00
fwin.ps1 fix(fwin): restrict winget to the community source 2026-11-04 08:36:19 +01:00
LICENSE git: update LICENSE to WTFPL 2026-03-12 19:08:18 +01:00
packages.jsonc feat(packages): add ouch (de)compression cli 2026-10-27 12:25:26 +01:00
README.md fix(fwin): handle TLS 1.2 setup failures on old .NET 2026-10-07 08:35:17 +02:00
tux-smashing-with-the-foss-wrench.png docs: add Tux image 2026-04-03 21:19:25 +02:00

🤬 f-win

A handy script to "fix" Windows by installing decent CLIs and apps.

My amount of patience with Windows (0%) I own a MS punching bag Uninstalling Windows is my favorite feature

🤔 Why?

Because I love Windows from the bottom of my heart 🩵.

~said nobody

🛠️ Setup / Usage

Run it with one command:

irm "https://fwin.lazyfreax.dev" | iex

Note

fwin.lazyfreax.dev is just a redirect to this git repo. If you do not trust it, feel free to use the command below instead:

irm "https://raw.githubusercontent.com/coko7/f-win/refs/heads/main/fwin.ps1" | iex

🐛 Issues

Could not create SSL/TLS secure channel

Older Windows PowerShell (e.g. on Windows Server) does not enable TLS 1.2 by default, which GitHub requires. The script enables it for its own downloads, but the command fetching the script itself runs before that. In this case, enable TLS 1.2 in the same command:

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor 3072; irm "https://fwin.lazyfreax.dev" | iex

If it still fails, your machine likely lacks .NET Framework 4.5+ or the OS-level TLS 1.2 update.

Cannot resolve 7-zip hostname

Scoop needs 7-zip to install packages correctly. Some organizations/countries tend to block 7-zip for whatever reasons. If you find yourself in this spot, you can try to install 7-zip manually via copying MSI and then instructing scoop to use an external binary:

scoop config use_external_7zip true

Tip

Learn more here: https://github.com/ScoopInstaller/Scoop/discussions/6553

Problem with schannel

If you run into the following:

Updating Scoop...
fatal: unable to access 'https://github.com/ScoopInstaller/Scoop/': schannel: next InitializeSecurityContext failed: CRYPT_E_REVOCATION_OFFLINE (0x80092013) - The revocation function was unable to check revocation because the revocation server was offline.

You may want to switch the git SSL backend to OpenSSL:

git config --global http.sslBackend openssl

Tip

Learn more here: https://stackoverflow.com/questions/45556189/git-the-revocation-function-was-unable-to-check-revocation-for-the-certificate

🚀 Better alternatives

For a more complete solution in the same spirit, check out: ctt/winutil. It's way better and has many customizations options beyond just installing apps and CLIs.

fwin is my personal installation script to setup all the tools I need in one command.