4.1 KiB
4.1 KiB
Resume Marker — 2026-08-20 (kernel build + GUI session switching)
Context
User restarted the session. Two parallel tasks were in progress when interrupted:
- Kernel Rust build config issue (kbuild + nightly rustc)
- GUI session switching — install Xfce on workhorse so user can switch GNOME↔Xfce at login
Task 1: Kernel Rust Build Config
Status: unresolved — root cause found, fix not yet applied
What we know:
- Kernel source:
/home/CUBELinux/CUBELinux-2/src/CUBELinux-build/(vanilla v6.19.3 + ipu4 out-of-tree) CONFIG_RUST=yset in.config- rustc 1.97.1 (stable) is default; rustc 1.100.0-nightly also installed via rustup (default host: x86_64-unknown-linux-gnu)
scripts/target.jsonexists withrustc-abi: x86-softfloat,llvm-target: x86_64-linux-gnumake rust/core.ofails:error loading target specification: custom targets are unstable and require -Zunstable-options- The rustc_library command in
rust/Makefile:559does NOT pass-Zunstable-options rust/Makefilealready uses-Zunstable-optionsin rustdoc paths (lines 136, 324, 333) but NOT in the core rustc_library invocationKBUILD_RUSTFLAGS(fromarch/x86/Makefile) sets--target=.../scripts/target.jsonbut no-Zunstable-options- The
rustc_libraryrule (rust/Makefile:555-567) builds the command as:where$(RUSTC) $(filter-out $(skip_flags),$(rust_flags)) $(rustc_target_flags) --emit=...rust_flags=KBUILD_RUSTFLAGS+rust_common_flagsandrustc_target_flags=core-flags(which is--edition=...+ cfgs). Neither carries-Zunstable-options.
What needs to happen:
- Option A: Patch
rust/Makefileto add-Zunstable-optionsto the rustc_library command (line 559 area) — minimal change, mirrors what rustdoc already does - Option B: Use nightly rustc as RUSTC and ensure it's invoked with
-Zunstable-options— but kbuild doesn't add it automatically - The real fix is Option A: add
-Zunstable-optionsto the rustc invocation in the rustc_library rule, since the target.json is a custom target spec that requires it - After that:
make rust/allormake rust/core.oshould succeed, then full kernel build
Files involved:
/home/CUBELinux/CUBELinux-2/src/CUBELinux-build/rust/Makefile(line 555-567, rustc_library rule)/home/CUBELinux/CUBELinux-2/src/CUBELinux-build/arch/x86/Makefile(KBUILD_RUSTFLAGS)/home/CUBELinux/CUBELinux-2/src/CUBELinux-build/scripts/target.json(custom target spec, needs -Zunstable-options)
Task 2: GUI Session Switching (Xfce on workhorse)
Status: dpkg interrupted — lightdm stuck half-configured
What we know:
- Workhorse runs GNOME (gdm3 + gnome-shell) currently
- User wants GNOME ↔ Xfce switching at the login screen (like Cinnamon is available)
apt-get install -y task-xfce-desktoptimed out (exit 124) and left dpkg in interrupted statedpkg --configure -afails: lightdm is half-configured, depends on itself being configured first- lightdm package status:
iF(half-configured),light-lockerandtask-xfce-desktopalso stuck - Xfce components were likely downloaded but not configured due to the dpkg blockage
What needs to happen:
- Fix dpkg: either
dpkg --remove --force-remove-reinstreq lightdmthendpkg --configure -a, or manually remove the lock/status entries - Re-run
apt-get install -y task-xfce-desktop(or justxfce4+lightdmif minimal) - Verify
xfce4-sessionworks:xfce4-session --version - Verify GDM shows Xfce session: check
/usr/share/xsessions/xfce.desktopexists,gdm3is running - Test: log in via Xfce session
Files/dirs involved:
/usr/share/xsessions/(GDM session definitions)/usr/share/wayland-sessions/(if Wayland Xfce session needed)/etc/gdm3/(GDM config)
General Notes
- User explicitly does NOT want auto-launching heavy kernel compiles while they're using the machine
- Kernel build with
make -j$(nproc)will saturate CPU — must ask before launching - The workhorse is Debian-based, root access available
- rustup is installed at
/root/.rustup, toolchains in/root/.rustup/toolchains/