Files
ARCADIA-Studio/harness/release-wsl-956atf-20260911.md
T

153 lines
8.9 KiB
Markdown

# Ubuntu26.04 WSL2 setup — Codex-956atf
2026-09-11. The user enabled virtualization, rebooted, and explicitly authorized
installing Ubuntu26.04. This report concerns the root checkout's current host;
other teams' setup results do not establish this host's readiness.
**Paused by the user at15:28 UTC:** Linux builds/checking are deferred until the
user instructs us that WSL2 networking is resolved. All earlier guest commands
are terminal. Retain the configuration/results below; do not repeat probes,
restart WSL, transfer caches or perform further network diagnosis during this
deferral. [Gitea357](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-357).
## Current result after the user's newest solution
The instructions in [issue1/comment328](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-328)
supersede the earlier mirrored-network investigation. The VPN is immutable,
including no inspection. Root interrupted the old diagnostic worker and waited
for both guest dependency-installation scripts to finish with exit0 before
changing WSL configuration. No guest mutation remained at that safe boundary.
Root preserved the previous mirrored+DNS file as
`.local/wsl-956atf-20260911/before-user328.wslconfig` and set the current
`C:/Users/User/.wslconfig` to exactly these two lines, with LF endings:
```ini
[wsl2]
networkingMode=virtioproxy
```
Current configuration SHA256:
`D70D0D8C747A00E797F9F40BBBC88573D6D5A88656611099AB713A27F92D017A`.
Ordinary `wsl --shutdown` completed exit0. The subsequent Ubuntu root shell
started the prescribed checks at14:58:17 UTC. The complete probe exited1:
| Requested check | Actual local result |
| --- | --- |
| `ip -br addr` | `lo`; DOWN `enP14721p0s0` with10.8.1.5/32; UP `loopback0` with169.254.73.153/30. |
| `ip route` | Only169.254.73.152/30 through loopback0; no default route. |
| `ping -c 2 1.1.1.1` | Exit2, Network is unreachable. |
| `getent hosts github.com` | Exit2, no result. |
| `curl -I https://github.com` | Exit28, resolving timeout. |
Bounded waits were added to the three reachability checks to terminate failed
probes; endpoints and requested operations are unchanged. The recurring root
systemd-user-session warning appeared again. Scripts and exact output are
`network-user328-probe.sh` and `network-user328-probe.log` in the private setup
directory. [Gitea result337](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-337)
records this host's failure separately from other teams.
VirtioProxy-only remains configured. No further host network diagnostic,
VPN inspection/change or PC reboot was performed. Network success remains open;
ordinary development proceeds using the verified offline setup described in
[the completed dependency report](release-linux-dependencies-956atf-20260911.md).
Native Rust/Cargo1.98.1, compiler/graphics prerequisites and all462 locked crate
archives are installed and verified. Application compilation and runtime are
separate next gates. The remaining sections preserve the earlier chronology;
their then-current setup and network recommendations are superseded here.
## Verified preparation
- Current Windows boot: `2026-09-11T13:57:52.500Z`.
- Starting source: clean `8d55d2d2eb05aed826b96a917cf776e1d8c3b690`.
- `wsl --list --verbose`: no installed distributions. No Ubuntu Appx package and
no installer/Cargo/rustc process existed before this attempt.
- Official `wsl --list --online` catalog offers `Ubuntu-26.04`, Ubuntu26.04 LTS.
- Free C volume capacity at preflight: 27,652,579,328 bytes.
- Root started `wsl --install Ubuntu-26.04 --no-launch --version 2` at about
14:07:44 UTC, owned command session27270, parent4580/child2620. Process handles
are observations for this boot only. Root retains all installer/Cargo ownership.
- Installer child has an established HTTPS connection to Canonical's
`91.189.91.109:443` and increasing write-transfer counters. The open temporary
archive's directory length remains zero during transfer; it is not an admitted
complete image. No duplicate downloader or installer was started.
[Microsoft's WSL command reference](https://learn.microsoft.com/en-us/windows/wsl/basic-commands)
documents the supported install and distribution-list commands. The
[official catalog](https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json)
selects `https://releases.ubuntu.com/26.04/ubuntu-26.04-wsl-amd64.wsl`, expected
SHA256 `96c7f5fb28a7fe28245331f9bfbe4375f18dd29a4850116ad3c4f60f6700c55c`.
A separate read-only HTTPS HEAD at14:13:18 UTC returns HTTP200 and
Content-Length415,361,247. This metadata is not a local download hash check.
## Source and next gate
An exact `git archive` of8d55d2d is staged privately at
`.local/wsl-956atf-20260911/source-8d55d2d.tar`:14,561,280 bytes,
SHA256 `B7A11CC7F0AC56C0F8FDED46B040665AE75EE55775AE429DFC8579A5D51EAD57`.
It excludes current uncommitted focus fixes and isolated schema8/canvas work.
After actual guest startup, use a separate Linux filesystem source/cache/build
directory and record compiler/dependencies before the first native Cargo gate.
The archive alone is not Linux execution evidence.
## Installation result
The supported installer completed with exit0 at about14:16 UTC and reported
successful installation. `wsl --list --verbose` now lists `Ubuntu-26.04`,
stateStopped, version2. Root hashed the completed415,361,247-byte temporary image:
SHA256 `96C7F5FB28A7FE28245331F9BFBE4375F18DD29A4850116AD3C4F60F6700C55C`,
exactly matching the official catalog. No restart was required by the installer.
The first explicit guest probe completed with exit0: `uname -sr` reports
`Linux 6.18.33.2-microsoft-standard-WSL2`, `/etc/os-release` reports Ubuntu26.04
LTS, the ext4 root filesystem is mounted and `/mnt/wslg` exists. WSL now lists
Ubuntu-26.04 Running/version2. No Linux build or graphical runtime pass follows
from these successful shell observations. Normal UID1000 setup has not run;
explicit `--user root` provides the setup shell. WSL repeatedly reports a root
systemd-user-session timeout, although the later service check reports
`running` and no failed units. Preserve that diagnostic for GUI setup.
## Historical network trials and dependency setup
The first ordinary APT attempt exited100. Default HTTP repositories timed out;
IPv6 additionally reported no route. Independent five-second IPv4 HTTPS probes
to official Ubuntu archive/security and Rust endpoints also timed out inside
the guest. Windows returned HTTP200 from the same archive/Rust endpoints.
Default NAT had a route via172.21.64.1 and working tunneled DNS10.255.255.254.
Root tested two supported network modes documented by Microsoft:
[mirrored networking](https://learn.microsoft.com/en-us/windows/wsl/networking)
and [VirtioProxy configuration](https://learn.microsoft.com/en-us/windows/wsl/wsl-config).
Mirrored returned no route/resolv.conf and DNS failures. VirtioProxy returned
only a loopback0 route and failed DNS. Each used only `networkingMode` in a new
per-user `.wslconfig`, followed by an ordinary WSL shutdown/start. Neither trial
is a successful network result. Root restored the original absence of
`C:/Users/User/.wslconfig`, preserving both tested files in the private evidence
directory, and shut down WSL normally afterward.
Read-only effective Hyper-V policy showed firewall enabled, outboundAllow and
inboundBlock; the host has an active VPN. Those facts do not prove a cause.
No firewall, VPN, Windows feature, security or boot setting was changed, and
the PC was not restarted. Do not repeat these unsuccessful modes blindly.
`linux_dependency_setup` now owns bounded guest dependencies/toolchain setup
and ordinary Windows-side publisher downloads. Use supported offline APT
mechanisms with signed metadata and package hashes, preserving verification;
no insecure repository flags or network-control changes are authorized. Root
retains all Cargo/native execution. Setup/compiler/runtime acceptance remains
pending. See the worker's forthcoming Linux dependency report for results.
Private evidence: `.local/wsl-956atf-20260911/` contains normalized installer
and shell tool-result JSON, `provision.log`, network probe scripts/logs and the
two tested configurations. Gitea coordination: issue1#288, #297 and #305.
The original reboot handoff and private raw draft backup remain intact.
Between the initial trials and comment328, root applied the user's
[comment316](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-316)
configuration, `networkingMode=mirrored` plus `dnsTunneling=true`, after a safe
guest pause. That exact probe had only lo, no routes and a dangling resolv.conf
symlink; ping1.1.1.1 exited2, getent google.com exited2 and curl-4 api.ipify.org
exited6. `network-user316-probe.sh/log` preserve the failure. The previously
restored absence of .wslconfig therefore ceased to be current at comment316;
comment328 now supplies the current configuration and result at the top.