Running a SteamOS VM in VirtualBox
#SteamOS #VirtualBox #VirtualMachine
*** Updated 05/01/2023
Full steps can be found at https://i12bretro.github.io/tutorials/0857.html
What is SteamOS?
SteamOS is a Linux distribution developed by Valve. It is open source with some closed source components and is the primary operating system for Steam Machines and the Steam Deck. - https://en.wikipedia.org/wiki/SteamOS
DISCLAIMER
You cannot game in this VM as it lacks graphics acceleration. It is, however, very handy for developers in need of a test version of SteamOS and for testing things in the desktop environment.
Things You Will Need
- https://www.7-zip.org/ installed
Preparing for Installation
01. Open a web browser and navigate to https://store.steampowered.com/steamos/download/?ver=steamdeck&snr=
02. Check the license agreement checkbox and click the Download SteamOS Deck Image button
03. Open File Explorer and navigate to the download location
04. Right click on the downloaded SteamOS recovery .bz2 archive ≫ 7-Zip ≫ Extract Here
05. Rename the extracted file steamos-recovery.img
06. While holding Shift, right click in the white space and select Open PowerShell window here
07. Execute the following commands in the PowerShell window
# rename steamdeck recovery image
mv .\steamdeck-recovery*.img .\steamdeck-recovery.img
# convert the recovery .img to .vdi
& "$ENV:ProgramFiles\Oracle\VirtualBox\VBoxManage.exe" convertfromraw --format VDI .\steamdeck-recovery.img .\steamdeck-recovery.vdi
Creating the SteamOS VM
01. Launch the VirtualBox VM Manager
02. Create a New VM by selecting Machine ≫ New
Name: SteamOS
Machine Folder: C:\VMs
Type: Linux
Version: Arch (64-bit)
Memory Size: 4096 MB or more
Hard disk:
File size: 40 GB
Hard disk file type: VDI
Storage on physical hard disk: Dynamically Allocated
03. Click Create
04. Select the VM and Click Settings
05. Select System
06. Check the Enable EFI checkbox
07. On the Processor tab, give the VM at least 2 processors
08. Select Display
09. Slide the Video Memory to 128 MB
10. Select Network
11. Set the attached to dropdown to Bridged Adapter
12. Select Storage
13. Click on the Add Hard Disk button across from the SATA controller
14. Click Add ≫ Browse to and select the steamdeck-recovery .vdi file created earlier ≫ Click Choose
15. Click OK
16. Make sure the SteamOS VM is selected and click Start ≫ Normal
Installing SteamOS
01. Wait for the desktop environment to boot
02. Double click Terminal with repair tools on the desktop
03. Run the following commands in the terminal
# list disks
# note the device id for VBOX HARDDISK
# should be /dev/sda
sudo fdisk -l
# edit the recovery installation script
nano ./tools/repair_device.sh
04. Locate the DISK= line and edit the value to match the device ID of the VBOX HARDDISK noted earlier (ie /dev/sda)
05. Locate the DISKSUFFIX= line and delete the p to leave a blank value
06. Press CTRL+O, Enter, CTRL+X to write the changes
07. Continue with the following commands in the terminal
sudo ./tools/repair_device.sh all
08. When prompted, click Proceed to confirm destroying data on /dev/sda
09. Once the installation completes, click Cancel
10. Continue with the following commands in the terminal
# chroot to steamos install
sudo steamos-chroot --disk /dev/sda --partset A
# allow writing to steamos partition
steamos-readonly disable
# set a password
passwd
# enter and confirm a password
# set steamos default to boot to desktop mode
echo -e '[Autologin]\nSession=plasma.desktop' ≫ /etc/sddm.conf.d/zz-steamos-desktopmode.conf
# set steamos partition back to readonly
steamos-readonly enable
# exit chroot
exit
# chroot to steamos install
sudo steamos-chroot --disk /dev/sda --partset B
# allow writing to steamos partition
steamos-readonly disable
# set a password
passwd
# enter and confirm a password
# set steamos default to boot to desktop mode
echo -e '[Autologin]\nSession=plasma.desktop' ≫ /etc/sddm.conf.d/zz-steamos-desktopmode.conf
# set steamos partition back to readonly
steamos-readonly enable
# exit chroot
exit
# shutdown the VM
sudo shutdown now
11. Make sure the SteamOS VM is selected and click Settings
12. Select Storage
13. Right click the steamdeck-recovery.img device ≫ Remove attachment
....Full steps can be found on GitHub [link at the top]
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro