6.6 KiB
Yes — there are useful recovery artifacts, especially in /tmp and /frx/store.
Best stuff I found
1. Generated shell scripts in /tmp
These are very helpful because they capture the rendered output of lost Scheme code.
Especially:
- /tmp/fruix-installer-run.sh
- /tmp/fruix-installer-apply.sh
- /tmp/fruix-installer-rc.sh
- /tmp/fruix-installed-fruix.sh
Those are gold for reconstructing:
- installer launcher/dispatcher behavior
- self-test flow
- frontend/apply split
- installed wrapper behavior
- Newt-related environment wiring
Example: /tmp/fruix-installed-fruix.sh still clearly contains:
- build-base
- deploy
- installer-tui
- GUILE_NEWT_PREFIX
- FRUIX_GUILE_NEWT_STORE
- LTDL_LIBRARY_PATH
So a lot of the lost render.scm work is still recoverable from there.
────────────────────────────────────────────────────────────────────────────────
2. Validation workdirs in /tmp
There are lots of preserved run directories.
Most valuable:
Installer media / Newt / XCP-ng
- /tmp/current-installer-media-self-test-xcpng-pass3
- /tmp/current-installer-media-self-test-xcpng-debug*
- /tmp/current-installer-media-self-test-xcpng-fix*
These contain:
- metadata
- debug logs
- generated declarations
- installer outputs
Key file:
- /tmp/current-installer-media-self-test-xcpng-pass3/installer-media-self-test-xcpng-metadata.txt
That preserves the successful real validation result.
Installed console defaults
- /tmp/current-installed-console-defaults-qemu3
- /tmp/current-installed-console-defaults-xcpng3
These contain:
- generated declarations
- metadata proving the getty/default-console behavior
Key file:
- /tmp/current-installed-console-defaults-xcpng3/installed-console-defaults-xcpng-metadata.txt
That preserves the successful real XCP-ng console-default validation.
────────────────────────────────────────────────────────────────────────────────
3. Package build outputs are still in /frx/store
The package work is not in git anymore, but the built package outputs still exist:
- /frx/store/0d75ed1b2220ced7766a72ff72f0908d8683d2e6-freebsd-ripgrep-15.1.0_4
- /frx/store/4e91ae1c446a61f5056165c73db0a0018378dbe9-freebsd-tmux-3.6a
- /frx/store/9484fd141436bc6e0d6fa19a7a14a360ece3be42-freebsd-nodejs-24.14.0_2
- /frx/store/a445350b103e45a6841045bb190e50063edfe6a8-freebsd-npm-11.11.0
- /frx/store/21da570210730ef32025c4010eca138a37b53dc6-freebsd-neovim-0.12.0
And importantly, their manifests are still there:
- .../.fruix-package
Those manifests preserve enough to reconstruct package definitions pretty well:
- package name
- version
- build system
- input store paths
- install-plan signatures
So the package work is not fully lost.
────────────────────────────────────────────────────────────────────────────────
4. Relevant system closures are still in /frx/store
Useful recovery closures include:
Console-default system closures
- /frx/store/8f615a0413ec2ad8596055e18b69795e9d37a2f3-fruix-system-fruix-console-defaults
- plus older variants
These preserve:
- /etc/ttys
- /boot/loader.conf
- generated installed Fruix wrapper
- actual realized output of the lost console/default logic
Installer / Newt closures and ISOs
- /frx/store/1616e555f705ae2f6be8a7c671d382afa5346535-fruix-guile-newt-0.0.3
- various fruix-system-fruix-installer-self-test*
- various fruix-installer-iso-fruix-installer-self-test-installer
Those preserve the actual built results of the lost integration work.
────────────────────────────────────────────────────────────────────────────────
Less useful, but still maybe helpful
/var/tmp
I only found one notable thing:
- /var/tmp/fruix-freebsd-native-build-f2b94d7bfd1feb56a1c597f15a3a2d527653d5571f7a9dc50c47f94cf9758db8
This looks like native-build staging/log output. Useful for native-base archaeology, but not the main recovery source for the lost installer/package work.
────────────────────────────────────────────────────────────────────────────────
What I did not find
I do not currently see:
- another full up-to-date checkout
- another git repo with the lost commits
- an obvious source backup of the lost modules/... files
- hidden extra git objects preserving the lost local commits
So this is not a simple “recover the repo” situation.
────────────────────────────────────────────────────────────────────────────────
Best recovery sources now
If we want to reconstruct efficiently, I’d prioritize:
Source reconstruction from /tmp
- /tmp/fruix-installed-fruix.sh
- /tmp/fruix-installer-run.sh
- /tmp/fruix-installer-apply.sh
- /tmp/fruix-installer-rc.sh
Behavioral truth from /frx/store
- console-default system closure(s)
- installer self-test closure(s)
- package outputs + .fruix-package
Validation truth from /tmp/current-*
- current-installer-media-self-test-xcpng-pass3
- current-installed-console-defaults-qemu3
- current-installed-console-defaults-xcpng3
────────────────────────────────────────────────────────────────────────────────
My recommendation
Yes, these are worth preserving immediately before we do anything else.
I’d suggest we first copy/tar:
- the key /tmp workdirs and generated scripts
- the relevant /frx/store paths list
- maybe the one /var/tmp/fruix-freebsd-native-build-* dir
That would give us a solid recovery bundle.
If you want, I can do exactly that next:
- collect the useful artifacts into a rescue directory
- write an inventory file
- then start reconstructing the lost code from them.