Windows Nostalgia

A recent video on Windows 7 as daily driver OS by Brodie Robertson was hilarious but also arguable.

For me, XP is the best OS ever made by M$. However, it has became not so useful nowadays neither for retro gaming (which 98SE is the king) nor for day-to-day usage, due to both hardware and software incompatibility.

The compromise would be Windows 7. I agree there are too much of accumulated unpatched security vulnerabilities, but there are tricks to mitigate most of those either technically or strategically.

What you can get by spending so much of work manually hardening an outdated system, is the peacefulness of privacy, stability of timelessness and the sense of control. Of course, that context is only in comparison of Windows 10 and 11.

A heavily customized Windows 7 is the closest thing you can get to a Linux-like daily driver, if you just can’t leave Windows ecosystem for some reason.

Linux and Its Discontents

Although I have left it for quite a few years now, but I’m willingly to defend for anyone who is still using Windows 7 as their daily driver. I started using PC since MS-DOS era, and had been a long time Windows “power user” at home and sysadmin at work. So there are many complains about Linux that always make me miss the goodness of Windows ecosystem.

The Good

  • Has Restic as Fastcopy alternative (no gui but has exta encryption)
  • Has Typora 0.11.18 since MarkType is buggy
  • Calibre works great with old windows config files
  • KeepAss/Veracrypt works as exact same as windows
  • qdirstat to replace WinDirStat
  • Has keyd as AutoHotKey alternative
  • Has xinput scripts for Thinkpad trackpoint and Kensington trackballs
  • ALT+F2 = Win+R
  • terminator works as good as cmder, can launch with layouts
  • Has Nirsoft Utility / Sysinternals Suite partial alternatives:
    • journalctl -fxb
    • dmesg -T -w
    • bpytop
    • nethogs
    • stacer

The Bad

  • Has inferior Total Commander alternative (Double Commander)
  • Has inferior Foobar2k alternative (Audacious)
  • Has inferior Opera presto alternative (otter browser)
  • Ark works as alternative to 7zip, better than p7zip and peazip (but not working for some iso/rar)
  • isomaster as inferior UltraISO alternative
  • neofetch/lshw to show sysinfo, inferior to AIDA64/HWiNFO
  • No rufus alternative (etcher doesn’t work with windows iso, ventoy as workaround)
  • KDE crashes or unstable (quick launch/hotkey issue), using MATE/XFCE instead
  • Portmaster as inferior simplewall alternative
  • Edge not has Read Aloud feature and chrome extension is no good alternative (using self-trained VITS model instead)
  • Has easystroke as StrokesPlus alternative but randomly crash the entire X (Gesturefy works great but only within browsers)
  • Has Copyq as Ditto alternative (laggy response sometimes)
  • Has gparted/clonezilla as inferior diskgenius alternative
  • Veracrypt GUI has user interactive issue (fixed in 1.26.14)

The Ugly

  • Can’t make middle click scrolling system-wide
  • mate-screensaver freezes the entire system (manually patched)
  • mouse setting “ctrl key shows cursor position” blocks RIME switch hotkeys
  • ctrl+shift+v in terminal sometimes gets extra characters (bracketed paste workaround applied)

The End of Timelessness?

As a free and open source provocateur, I use Linux on my old and new hardware. But when installing OS for non-tech-savvy people, most of time, Windows is my only option. Nevertheless, I often install and recommend open source tools on Windows platform for them.

During Windows 8 to 10 LTSB period, I wasn’t so interested into installing the latest Windows. However, when M$ decide to block hardware in their installer either via TPM or CPU generations, I started installing later version of Windows just for bypassing the restrictions.

Even though it is very exciting to see the first Windows 11 LTSC releasing. The recent 24H2 update causes tons of problems, and the one affects me is that SSE4.2 instruction requirement for 24H2 (build 26080) is un-bypassable.

So for old CPUs such as Core 2 Duo (Penryn/Wolfdale) which needs to run Windows, either stuck with Windows 11 23H2 or better off use Windows 10 LTSC 2021(21H2). No Windows 11 LTSC for these machines sadly.

Windows 11 LTSC Double Debloat

But for later hardware that is supported (Nehalem/Sandy Bridge/Haswell), a debloated Windows 11 LTSC is nice to try out (Yes, even with LTSC, a double debloating is needed on old hardware).

However, among the community, folks predominantly talk down all pre-debloated custom build for security concerns (spyware/rootkit), despite the fact that the most vicious yet undetectable malware is Windows it self.

I’m not against people who choose to use “clean” official ISOs from M$ no matter what in it (for example Recall/Copilot). But I prefer some middle ground in between to get all benefit of both clean and debloat altogether.

There are two ways to archive this goal, either do a pre-install debloat via tiny11builder, or post-install debloat via Win11Debloat. Of course, there are many other alternatives but these are easy and with highest stars on GitHub. I can also do both in one installation.

First, download Windows 11 LTSC from MAS

On a Windows 10 (full version) machine, mount the ISO.

Extract tiny11builder

In a PowerShell with admin, run Set-ExecutionPolicy unrestricted

Run tiny11maker.ps1 in the PowerShell.

Follow the instruction and input answers when prompted. Using Windows 11 IoT Enterprise LTSC (index 2) is recommended.

Rename the finished tiny11.iso into tiny11_iot_ltsc_2024_x64.iso

Install it with Rufus or Ventoy without internet

Note: The ISO made with tiny11Coremaker.ps1 removed too many drivers, so that the built-in installer wouldn’t work on some hardware (stack at driver selection). Use tools like WinNTSetup to install with install.esd file directly.

Extract Win11Debloat and execute Run.bat

Connect to internet, open a PowerShell with admin, run activation script also from MAS irm https://get.activated.win | iex

Download WinGet, extract DesktopAppInstaller_Dependencies.zip and install with PowerShell:

Add-AppxPackage Microsoft.UI.Xaml.2.8_8.2310.30001.0_x64.appx
Add-AppxPackage Microsoft.VCLibs.140.00.UWPDesktop_14.0.33728.0_x64.appx
Add-AppxPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle

Even though there are a lot more to do if I want to go deep into that rabbit hole (e.g. privacy.sexy, Harden Windows Security and O&O ShutUp10++), but I’d prefer to spend that effort on my Linux build (or Windows 7). Because no matter how much I modify this Windows 11, it is fundamentally controlled by M$, who is able to alter the system anytime and destroy all my effort like a sand castle.

After all, the best way to maintain a computer timelessly is using Linux. We’re living in the reactionary era, and the whole world is moving backwards. The only way to preserve the spark of progress is to stay old-school. This may looks like conservative, but it is radical in its essence.

Tiny 11 LTSC WTG on Ventoy

For most of the time, when I using public computers, Linux livecd and Windows PE are sufficient for the use case. However, when I work in my university’s AI lab, I need another solution.

The IT controlled lab machines are too restricted for some of my projects, so having a portable OS in a USB drive is a way around for using their expensive GPU with total control of the system.

Windows To Go tricks often done by rufus after the official Windows To Go discontinued, and this time, let’s try to combine it with Ventoy for more flexibility.

Download and extract Ventoy, in my case, using ventoy-1.0.99-linux.tar.gz

Insert desired USB drive, in my case, it is a Netac U335S (cheap and with hardware write protection), and use Ventoy2Disk gui to make it into bootable drive in GPT mode.

By default, the storage partition is exfat, it needs to be formatted into NTFS via partitioning tools such as GParted. (Note: windows version of ventoy2disk is able to create NTFS partition directly in the partition configuration.)

Then, follow the instruction for Windows VHD Boot Plugin, create a folder and put the img file inside the Ventoy drive, as /ventoy/ventoy_vhdboot.img.

Eject and insert the Ventoy USB drive on a Windows machine.

Create a VHD file via diskmgmt.msc - Action - Create VHD, set the file designation on the Ventoy USB drive with name tiny11_iot_ltsc_2024_x64.vhd, and set 32GB of fixed disk size.

(Note: the initial C drive size would be around 10GB, so 16GB is minimum for testing use. For frequent use, 128GB drive size on a portable SSD is optimal.)

Open rufus, select the newly created VHD as device, browse to previously created tiny11_iot_ltsc_2024_x64.iso as the image file, and install with the option Windows To Go.

(Note: This tiny11 build is 24h2 which incompatible with older CPUs, but I’m not interested in using them.)

When it finishes, open VirtualBox and create a new Windows 11 VM with EFI on and the VHD file as existing hard drive.

Boot the VM and shutdown it when OOBE language selection menu shows up. Now the VHD file is ready, it’s time to boot it up on the bare metal!

(Note: for troubleshooting, refer to meilon, midas and KBHost)

It is even better to have a similar Ventoy VDI for Linux. Their instruction is very detailed and easy, so I don’t need to repeat it here.

Recommendations for Flash Drive (may not apply to SSD/HDD):

  • WTG/LiveUSB is particular fragile while tweaking/debloating or installing random drivers, so keep copies of VHD/VDI files before every major changes.
  • Disable “Temporary paging file was created” notification at every boot: run regedit, navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management set TempPageFile to 0
  • Disable Prefetch/Superfetch to gain I/O performance and NAND longevity: from the same registry key above, open PrefetchParameters and set both EnablePrefetcher and EnableSuperfetcher to 0
  • Disable other background I/O intensive services for same reason, such as Windows search, Windows Update, SysMain, Windows Security Service, Windows Defender, Sync Host, Update Orchestrator, Background Intelligent Transfer Service and so on. privacy.sexy was used for those leftover by tiny11builder and Win11Debloat.
  • Disable misc features that doesn’t benefit WTG but wears out flash memory: hibernation, virtual memory, system restore, indexing, scheduled defrag and so on.
  • Use simplewall instead of windows firewall.
  • For better hardware/software compatibility, Windows 10 LTSC 2021/2019 is a better choice where you can have Shadow Defender or Rollback RX for easier system protection/recovery.