Create an init process in Rust that can mount the initial file systems appropriately.

This commit is contained in:
2021-01-06 08:33:28 -08:00
parent 1838e73db3
commit 5def920817
11 changed files with 205 additions and 36 deletions

4
scripts/build-docker-envs.sh Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
docker build -f docker/Dockerfile.rust -t lam-rust:latest docker
docker build -f docker/Dockerfile.kernel -t lam-kernel:latest docker

View File

@@ -1,4 +1,12 @@
#!/bin/sh
mkdir -p artifacts/ramdisk
docker run --rm -v "$(pwd)/artifacts/ramdisk:/build/artifacts" lam-kernel bash -c "cd /build/ramfs && ./buildramfs.sh && cp initramfs /build/artifacts/initramfs.cpio.gz"
BASE=target/x86_64-unknown-linux-musl/release/
mkdir -p target/image
cp ${BASE}/init target/image/init
docker run --rm \
-v "$(pwd)/artifacts/ramdisk:/build/artifacts" \
-v "$(pwd)/target/image:/build/ramfs/image" \
lam-kernel \
bash -c "cd /build/ramfs && ./buildramfs.sh && cp initramfs /build/artifacts/initramfs.cpio.gz"

3
scripts/rust-build.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
docker run -v $(pwd):/home/lam/build -w /home/lam/build lam-rust:latest bash -lc "cargo build --release --target x86_64-unknown-linux-musl"

3
scripts/rust-clippy.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
docker run -v $(pwd):/home/lam/build -w /home/lam/build lam-rust:latest bash -lc "cargo clippy --release --target x86_64-unknown-linux-musl"