add module for booting from rtfs volumes

This commit is contained in:
Izaya 2023-08-01 18:02:14 +10:00
parent 30db695c4e
commit e85b948f4d
1 changed files with 19 additions and 0 deletions

19
module/rtfsboot.lua Normal file
View File

@ -0,0 +1,19 @@
--#includepkglib "diskpart" "lib/diskpart.lua" "diskpart"
--#includepkglib "rtfs" "lib/rtfs.lua" "rtfs"
do
local a = computer.getBootAddress()
if component.type(a) == "drive" then
local diskpart = require "diskpart"
for k,v in ipairs(diskpart.getPartitions(a)) do
if v[2] == "rtfs" and v[1] == computer.address():sub(1,8) .. "-boot" then
syslog("Partition with suitable name detected, attempting to mount...")
local rtfs = require "rtfs"
fs.makeDirectory("boot")
local m = rtfs.mount(diskpart.proxyPartition(a,k))
m.address = string.format("%s/%i/rtfs",a,k)
fs.mount("boot",m)
break
end
end
end
end