INSTALLATION GUIDE
A fresh drive.
A private seed.
The violetBSD Image Writer writes a compatible .img or .img.gz, adds unique private entropy for this installation, and verifies the entire personalized image.
Before you write
Extract the release ZIP first. Use a 32 GB or larger external drive with 512-byte logical sectors. Verify the published SHA256 checksums. A compressed input needs temporary space for the full 16 GiB image. The destination will be erased.
Run the native application
- Linux x86-64: requires glibc and GTK 3. Unmount all destination partitions, make the binary executable, and run it from a graphical terminal:
chmod +x violetbsd-image-writer-linux-x86_64
sudo ./violetbsd-image-writer-linux-x86_64- macOS: unmount the external disk in Disk Utility, then run from Terminal:
chmod +x violetbsd-image-writer-macos-universal
sudo ./violetbsd-image-writer-macos-universal- Windows x86-64: open the executable and accept the administrator prompt.
Choose the image and destination, then confirm the drive to erase. The tool offers external/removable drives only. Linux rejects mounted filesystems, active swap and mapped devices. macOS APFS destinations are excluded. Windows needs a drive that supports being taken offline; disconnect it after the write.
These development binaries are not publisher-signed. Physical-device writing by the Go edition still needs acceptance testing on each platform. Do not use a failed or interrupted destination until it has been rewritten successfully.
Verify entropy after boot
After a normal multi-user boot, log in as root at the violetBSD console. These commands do not reveal the private seed.
First, confirm the kernel has enough credited entropy:
sysctl kern.entropy.needed
# Expected: kern.entropy.needed = 0Confirm the boot service loaded the seed:
grep -F 'Loaded entropy from /var/db/entropy-file.' /var/run/rc.logLook for that message in the log or on the boot console. An early entropy warning can appear before the disk seed is loaded.
Check permissions, numeric ownership and size:
stat -f '%Sp %u:%g %z' /var/db/entropy-file
# Expected: -rw------- 0:0 536The file should be mode 0600, owned by root:wheel, and 536 bytes long. File existence alone is not proof of successful entropy loading; also check the kernel value and load message.
The seed changes during boot. Do not compare its post-boot checksum with the original, copy it between machines, or share its contents. No manual seeding is needed after a successful write and boot.
If the checks fail
grep -Ei 'random_seed|entropy|rndctl' /var/run/rc.log
ls -ln /var/db/entropy-file
mountCheck that you booted the correct drive, the root filesystem is writable, and normal multi-user boot completed. Do not generate SSH keys or enable cryptographic services until kern.entropy.needed is zero. A generic image writer does not replace the public image’s zero-credit placeholder.