Compare commits

..

No commits in common. "97e559f26f8c36027f1e742fc1196f4a394c29e6" and "fb0c740b39b0a7b797f70590d0a06d49e15ee421" have entirely different histories.

3 changed files with 9 additions and 16 deletions

View File

@ -6,25 +6,16 @@ A lightweight, multi-user operating system for OpenComputers
### The kernel ### The kernel
The kernel is composed of a number of modules, found in the *module/* directory. Which modules are included can be customised by changing the include statements in *module/init.lua*; copying it and customizing that is recommended, so you can *git pull* later without having to stash or reset your changes. The kernel can be built using luapreproc:
#### Unix-like systems ./luapreproc.lua module/init.lua kernel.lua
The kernel can be built using the preproc library and provided scripts:
lua build.lua module/init.lua kernel.lua
#### PsychOS
The kernel can be built from inside PsychOS using the preproc library, assuming you have the kernel source available:
preproc("module/init.lua","kernel.lua")
### The boot filesystem ### The boot filesystem
A boot filesystem contains several things: A boot filesystem contains several things:
- The kernel, as init.lua - The kernel, as init.lua
- The exec/ directory, as this contains all executables
- The lib/ directory, containing libraries - The lib/ directory, containing libraries
- The service/ directory, containing system services - The service/ directory, containing system services
@ -32,4 +23,6 @@ This has been automated in the form of build.sh, pending a real makefile.
## Documentation ## Documentation
Documentation is generated as the system is built with build.sh; a set of markdown files will be placed into *doc/*, as well as an all-in-one *apidoc.md*. If pandoc is installed, an *apidoc.pdf* will also be generated. To generate function documentation, run:
./finddesc.lua module/* lib/* > apidoc.md

View File

@ -54,14 +54,14 @@ local function writeBuffer(fo)
return buffer.new("wb",stream) return buffer.new("wb",stream)
end end
function lz16.buffer(stream) -- table -- table -- Wrap a stream to read or write LZ16. function lz16.buffer(stream)
if stream.mode.w then if stream.mode.w then
return writeBuffer(stream) return writeBuffer(stream)
end end
return readBuffer(stream) return readBuffer(stream)
end end
function lz16.open(fname, mode) -- string string -- table -- Open file *fname* to read or write LZ16-compressed data depending on *mode* function lz16.open(fname, mode)
local f = io.open(fname, mode) local f = io.open(fname, mode)
if not f then return false end if not f then return false end
f.mode.b = true f.mode.b = true

View File

@ -98,7 +98,7 @@ function pkgfs.component.close(handle)
return true return true
end end
function pkgfs.add(fname,comp) -- string boolean -- -- Add a package as specified in *fname* to the pkgfs component. If *comp* is true, read it as a LZ16-compressed package. function pkgfs.add(fname,comp)
if fname:sub(1,1) ~= "/" then if fname:sub(1,1) ~= "/" then
fname = "/"..fnormalize(os.getenv("PWD").."/"..fname) fname = "/"..fnormalize(os.getenv("PWD").."/"..fname)
end end