runtimejs / runtime

[not maintained] Lightweight JavaScript library operating system for the cloud
http://runtimejs.org
Apache License 2.0
1.93k stars 127 forks source link

Unable to load from initrd. #105

Open RossComputerGuy opened 8 years ago

RossComputerGuy commented 8 years ago

Whenever I load up qemu. The os cannot find a file with a blank name. Here is a link to the code: BasicOS - GitHub

The terminal outputs: Unable to load from initrd. Kernel error: abort() requested

Edits:

facekapow commented 8 years ago

It works fine for me, are you using runtime start? From the readme:

First thing is the command line tool runtime-cli, it will add runtime command to the shell. Type runtime to get full usage help.

npm install runtime-cli -g

Try installing runtime-cli globally with npm, and use that to start QEMU (after installing, just cd into the folder and runtime-start).

iefserge commented 8 years ago

Might be old CLI version, try installing latest packages

npm install runtime-cli@latest -g
npm install runtimejs@latest
runtime start
ajeffrey commented 8 years ago

hi guys, slightly off-topic but is this project still under development? I'm an OS developer and want to start a new project that has quite a few intersections with runtime.

ajeffrey commented 8 years ago

p.s. it looks like it might be an old version as @SpaceboyRoss01 has committed his node_modules folder into the repo.

facekapow commented 8 years ago

1: yes, this is still under development (I guess we're in a break...?) 2: I was going to suggest he should .gitignore it, but he's modified the runtimejs module to fit his needs, that's why he committed it.

ajeffrey commented 8 years ago

1: sweet, I'll make a fork when I get the chance. To start with I'm planning to write some real-hardware drivers (e.g. fat32, pluggable USB2) - I'll see how it goes 2: that's probably where his problems are coming from, if he's modified the runtimejs module. I might recommend forking the repo and updating his package.json to point to his fork if he wants to make alterations.

iefserge commented 8 years ago

@ajeffrey I'd say in the current state it's more like a long-term hobby/free time project for a few people, so things are moving quite slow. But anyone is welcome to contribute ideas/code etc.

ajeffrey commented 8 years ago

@iefserge those are the best kinds of projects! I might have a play this weekend, see if I can get some more drivers integrated.

facekapow commented 8 years ago

Also, this got me thinking on something: Should the JavaScript be moved to it's own repository? This could be used to fork only the JavaScript, modify it, and npm install it. In @SpaceboyRoss01's case, he could fork the JavaScript, modify it, and npm install --save SpaceboyRoss01/whatever-the-js-repo-would-be-named. That way, he wouldn't have to include the node_modules

ajeffrey commented 8 years ago

depends on what he's trying to achieve I guess

ajeffrey commented 8 years ago

the way it looks right now in his repo, seems like everything but the js has been deleted, which won't work independently.

Of course I could well be misunderstanding his approach.

piranna commented 8 years ago

To start with I'm planning to write some real-hardware drivers (e.g. fat32, pluggable USB2) - I'll see how it goes

The exists already (sort of foundation code...)

https://www.npmjs.com/package/fatfs https://www.npmjs.com/package/usb

ajeffrey commented 8 years ago

@piranna interesting, I wasn't aware of those. Perhaps a facade is needed to plug them into the runtimejs API?

piranna commented 8 years ago

@piranna interesting, I wasn't aware of those. Perhaps a facade is needed to plug them into the runtimejs API?

For the fatfs driver, seems runtime.js only needed to provide a block device object that represent the drive with the FAT32 filesystem.

iefserge commented 8 years ago

@facekapow js is pretty interconnected with c++ layer now, I think changes in c++ will in most cases result in changes in js. I guess it's easier to have them as a single version?

facekapow commented 8 years ago

Yeah, I was also seeing this would be hard to do, since js is auto-deployed on CI builds to the repository, so... might not be a possibility. Anyway, it was just a suggestion

facekapow commented 8 years ago

@ajeffrey @piranna In order to do that, runtime needs disk support (#74). Perhaps you could figure out how to add a disk driver (I might try again, too, if I get the chance)? I think that would be gladly accepted 😄

ajeffrey commented 8 years ago

I've used this guide before, I might see about porting it to JS.