diff options
Diffstat (limited to 'cmd/mkbackup')
| -rw-r--r-- | cmd/mkbackup/mkbackup.ha | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/cmd/mkbackup/mkbackup.ha b/cmd/mkbackup/mkbackup.ha new file mode 100644 index 0000000..12093b5 --- /dev/null +++ b/cmd/mkbackup/mkbackup.ha @@ -0,0 +1,23 @@ +use fmt; +use io; + +use cmd; +use gpt; + +export fn mkbackup(vol: str, args: []str) void = { + const vol = cmd::openvol(vol); + const vol = match(gpt::from(vol)) { + case let g: *gpt::gpt => + yield g; + case gpt::nogpt => + fmt::fatalf("{}: disk does not have valid gpt", args[0]); + case => + fmt::fatalf("{}: could not access volume", args[0]); + }; + defer { + gpt::commit(vol)!; + gpt::finish(vol); + }; + + gpt::mkbackup(vol); +}; |
