forked from sborovic/dmzOS
1
0
Fork 0
Go to file
texhno ab540f13ae Move docker files to the Dockerfiles dir 2024-02-14 11:32:13 +01:00
Dockerfiles Move docker files to the Dockerfiles dir 2024-02-14 11:32:13 +01:00
config Add the base containerized c toolchain environment 2024-02-14 02:58:33 +01:00
dmzOS/test Add the base containerized c toolchain environment 2024-02-14 02:58:33 +01:00
.gitignore Add the base containerized c toolchain environment 2024-02-14 02:58:33 +01:00
LICENSE Update LICENSE 2024-02-09 11:55:59 +00:00
README.md Move docker files to the Dockerfiles dir 2024-02-14 11:32:13 +01:00
docker-compose.yml Move docker files to the Dockerfiles dir 2024-02-14 11:32:13 +01:00

README.md

dmzOS

dmzOS is an operating system written by a group of computer enthusiasts gathered around Decentrala. You are free to explore, learn, and contribute!

Description:

  • Written from scratch in C and asm.
  • POSIX-compliant (as aspiring to Stan Dard).
  • For the amd64 architecture.
  • Extensively documented.

Goals:

  • Sharpen low-level programming skills.
  • Familiarize with amd64 architecture details.
  • Have fun along the way!

Success criteria:

  • Run vim on the OS.

Rules:

  • Please provide an adequate entry in the Wiki for each non-trivial code contribution.

For additional information, please refer to the Wiki.

Instructions for running the utilities

c_toolchain utility docker image

This is the consistent C toolchain environment, containing all the tools needed to run and develop the project.

Dockerfile: dockerfile.c_toolchain Run the docker-compose command to get a bash shell that is bound to the dmzOS directory:

docker-compose run --rm c_toolchain

Any changes in the container dmzOS directory will be reflected in the local dmzOS directory.

The image contains indent and clang-format as C code formatters.

A .vimrc file is automatically part of the image, and it contains a rule to make vim run the following formatting command on buffer save:

indent -kr -ts4 %

This is using the Kernighan and Ritchie code styling, as well as identations with 4 spaces.

If you want to use your own .vimrc, please replace the existing .vimrc file inside the config directory with it.