This commit is contained in:
Giacomo Tesio 2019-08-11 22:58:06 +02:00
commit 72f996593b
2 changed files with 45 additions and 24 deletions

21
POLITICS.md Normal file
View File

@ -0,0 +1,21 @@
# Social goals of Jehanne
Jehanne is an educational tool: I want to empower people by
turning them to hackers.
To this aim I want to build the simplest possible distributed
operating system that can provide all the services people expect
from a modern operating system and much more. This way, people
will be able to read and understand its internals and to code
their own tools for it.
As a research tool, it want to challenge as many well established
assumptions as possible, such as the need of POSIX semantics at
kernel level.
It also want to bring new ideas to OS research, expanding the
Overton window in this field.
I want its distributed design and protocol to challenge the Web,
increasing the ability of people to securely compose remote
applications without leaking personal data.

View File

@ -60,10 +60,10 @@ These are my rules of thumb:
**Do not abstract** **Do not abstract**
: Replace abstractions used less than 3 times. Remove unused code. : Replace abstractions used less than 3 times. Remove unused code.
Aestetics Aesthetics
--------- ---------
I do not care too much about aestetics, but readability matters. I do not care too much about aesthetics, but readability matters.
Unfortunately, just like any other programmer, what I find readable Unfortunately, just like any other programmer, what I find readable
largely depends on the code that I had to debug in the past. largely depends on the code that I had to debug in the past.
@ -154,8 +154,8 @@ environment with `./hacking/devshell.sh` that will start a new Bash:
* your `$PS1` will be prepended with "JehanneDEV " * your `$PS1` will be prepended with "JehanneDEV "
* the environment variable `$JEHANNE` will hold the path of the root * the environment variable `$JEHANNE` will hold the path of the root
of the respository of the repository
* the environment variable `$ARCH` will be "amd64" (aka x86_64, the * the environment variable `$ARCH` will be "amd64" (aka x86\_64, the
only supported architecture so far) only supported architecture so far)
* `$PATH` will include `$JEHANNE/hacking/bin` and * `$PATH` will include `$JEHANNE/hacking/bin` and
`$JEHANNE/hacking/cross/toolchain/bin` `$JEHANNE/hacking/cross/toolchain/bin`
@ -191,7 +191,7 @@ that [Aki was right]: a general purpose language provide both power
and painless evolution to a build system. and painless evolution to a build system.
Thus, to build Jehanne you use the `build` commands. Thus, to build Jehanne you use the `build` commands.
Its source code is at `./hacking/src/jehanne/cmd/` and its documantation Its source code is at `./hacking/src/jehanne/cmd/` and its documentation
can be obtained with `build --help`. can be obtained with `build --help`.
It consumes small JSON files (usually named `build.json`) describing the It consumes small JSON files (usually named `build.json`) describing the
@ -371,7 +371,7 @@ Finally `./hacking/continuous-build.sh` and
Third parties Third parties
------------- -------------
In the hacking/third_party directory you can file the In the `hacking/third_party` directory you can file the
[Go 9P2000 server] used during development and [drawterm], both [Go 9P2000 server] used during development and [drawterm], both
downloaded as git submodules and compiled by `./hacking/buildtools.sh`. downloaded as git submodules and compiled by `./hacking/buildtools.sh`.