xrsh-buildroot/buildroot-v86/board/v86/rootfs_overlay/root/bin/download

43 lines
1 KiB
Text
Raw Permalink Normal View History

2025-04-09 20:44:02 +02:00
#!/bin/sh
source /etc/profile.sh
file(){
javascript='
filename="'$(pwd)/$1'"
res = ""
function saveUint8Array(uint8Array, filename = "download.bin", mimeType = "application/octet-stream") {
if( !uint8Array ){
console.log( res = "file not found" )
return false
}
const blob = new Blob([uint8Array], { type: mimeType });
const url = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = url;
a.download = filename.replace(/.*\//,"");
// Programmatically trigger the click event
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
// Clean up the URL object
URL.revokeObjectURL(url);
}
let term = document.querySelector("[isoterminal]")
term.emit("read_file", [filename, (str,buf) => saveUint8Array(buf, filename) ] )
return res
'
hook save
js "$javascript"
exit
}
test -n "$1" && file "$1"
echo "Usage: download [file] # pass no argument to save VM state to localStorage"