From 51c39c73692e755596eafb0d6f732581fee3ba98 Mon Sep 17 00:00:00 2001 From: dzwdz Date: Sat, 25 Feb 2023 19:18:33 +0100 Subject: merge the initrd and sysroot directories --- Makefile | 4 ++-- initrd/1.txt | 1 - initrd/2.txt | 1 - initrd/Users/dzwdz/private/secrets.txt | 2 -- initrd/Users/dzwdz/public/stuff.txt | 2 -- initrd/arp.ether | Bin 64 -> 0 bytes initrd/bin/sh/catall | 19 ------------------- initrd/bin/sh/halt | 2 -- initrd/bin/sh/mkuser | 7 ------- initrd/dir/3.txt | 1 - initrd/dir/4 | 0 initrd/dir/5 | 0 initrd/long.txt | 7 ------- sysroot/Users/dzwdz/private/secrets.txt | 2 ++ sysroot/Users/dzwdz/public/stuff.txt | 2 ++ sysroot/bin/sh/fib | 10 ++++++++++ sysroot/bin/sh/halt | 2 ++ sysroot/bin/sh/mkuser | 7 +++++++ sysroot/usr/arp.ether | Bin 0 -> 64 bytes sysroot/usr/long.txt | 7 +++++++ 20 files changed, 32 insertions(+), 44 deletions(-) delete mode 100644 initrd/1.txt delete mode 100644 initrd/2.txt delete mode 100644 initrd/Users/dzwdz/private/secrets.txt delete mode 100644 initrd/Users/dzwdz/public/stuff.txt delete mode 100644 initrd/arp.ether delete mode 100644 initrd/bin/sh/catall delete mode 100644 initrd/bin/sh/halt delete mode 100644 initrd/bin/sh/mkuser delete mode 100644 initrd/dir/3.txt delete mode 100644 initrd/dir/4 delete mode 100644 initrd/dir/5 delete mode 100644 initrd/long.txt create mode 100644 sysroot/Users/dzwdz/private/secrets.txt create mode 100644 sysroot/Users/dzwdz/public/stuff.txt create mode 100644 sysroot/bin/sh/fib create mode 100644 sysroot/bin/sh/halt create mode 100644 sysroot/bin/sh/mkuser create mode 100644 sysroot/usr/arp.ether create mode 100644 sysroot/usr/long.txt diff --git a/Makefile b/Makefile index 003343e..af881e9 100644 --- a/Makefile +++ b/Makefile @@ -118,14 +118,14 @@ $(foreach bin,$(USERBINS),$(eval $(call userbin_template,$(bin)))) out/obj/user/app/ext2fs/ext2/example.c.o: @touch $@ -out/initrd/%: initrd/% +out/initrd/%: sysroot/% @mkdir -p $(@D) @cp $< $@ out/initrd/font.psf: curl -L https://github.com/legionus/kbd/raw/master/data/consolefonts/default8x16.psfu > $@ -out/initrd.tar: $(patsubst %,out/%,$(shell find initrd/ -type f)) \ +out/initrd.tar: $(patsubst sysroot/%,out/initrd/%,$(shell find sysroot/ -type f)) \ $(patsubst %,out/initrd/bin/amd64/%,$(USERBINS)) \ $(shell find out/initrd/) \ out/initrd/font.psf diff --git a/initrd/1.txt b/initrd/1.txt deleted file mode 100644 index 8e08ed0..0000000 --- a/initrd/1.txt +++ /dev/null @@ -1 +0,0 @@ -i am /1.txt diff --git a/initrd/2.txt b/initrd/2.txt deleted file mode 100644 index c214a20..0000000 --- a/initrd/2.txt +++ /dev/null @@ -1 +0,0 @@ -i am /2.txt diff --git a/initrd/Users/dzwdz/private/secrets.txt b/initrd/Users/dzwdz/private/secrets.txt deleted file mode 100644 index 7f1bcbc..0000000 --- a/initrd/Users/dzwdz/private/secrets.txt +++ /dev/null @@ -1,2 +0,0 @@ -I enjoyed Twilight. - diff --git a/initrd/Users/dzwdz/public/stuff.txt b/initrd/Users/dzwdz/public/stuff.txt deleted file mode 100644 index b864fc2..0000000 --- a/initrd/Users/dzwdz/public/stuff.txt +++ /dev/null @@ -1,2 +0,0 @@ -A publicly readable file. - diff --git a/initrd/arp.ether b/initrd/arp.ether deleted file mode 100644 index c8fbec7..0000000 Binary files a/initrd/arp.ether and /dev/null differ diff --git a/initrd/bin/sh/catall b/initrd/bin/sh/catall deleted file mode 100644 index a1c8c76..0000000 --- a/initrd/bin/sh/catall +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/shell -# equalivent to the old "catall" builtin, meant to demo shadowing -# TODO shadow here -echo /init/fake.txt: -cat /init/fake.txt -echo - -echo /init/1.txt: -cat /init/1.txt -echo - -echo /init/2.txt: -cat /init/2.txt -echo - -echo /init/dir/3.txt: -cat /init/dir/3.txt -echo - diff --git a/initrd/bin/sh/halt b/initrd/bin/sh/halt deleted file mode 100644 index 563aded..0000000 --- a/initrd/bin/sh/halt +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/shell -echo halt > /initctl \ No newline at end of file diff --git a/initrd/bin/sh/mkuser b/initrd/bin/sh/mkuser deleted file mode 100644 index a1544c6..0000000 --- a/initrd/bin/sh/mkuser +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/shell -touch /Users/user/ -cd /Users/user/ -touch private/ -echo secrets! > private/secret.txt -touch public/ -echo no secrets here > public/hi.txt \ No newline at end of file diff --git a/initrd/dir/3.txt b/initrd/dir/3.txt deleted file mode 100644 index 6ab8da4..0000000 --- a/initrd/dir/3.txt +++ /dev/null @@ -1 +0,0 @@ -i am /dir/3.txt diff --git a/initrd/dir/4 b/initrd/dir/4 deleted file mode 100644 index e69de29..0000000 diff --git a/initrd/dir/5 b/initrd/dir/5 deleted file mode 100644 index e69de29..0000000 diff --git a/initrd/long.txt b/initrd/long.txt deleted file mode 100644 index ed0b66a..0000000 --- a/initrd/long.txt +++ /dev/null @@ -1,7 +0,0 @@ -this file is longer than 512 characters. each line is exactly 80 characters long -01234567890123456789012345678901234567890123456789012345678901234567890123456789 -0 10 20 30 40 50 60 70 80 -for this file to be over 512 bytes, it needs 512/81 = 7 lines. that's a fun fact - ,_____O> [duck sound] | that's as good of a duck as i can make. it's very good -~|____| | /-- this X is the 513th byte in this file. very coolio - | | ,. . ., , ., | X. here it is. what you've waited for. idk what to say diff --git a/sysroot/Users/dzwdz/private/secrets.txt b/sysroot/Users/dzwdz/private/secrets.txt new file mode 100644 index 0000000..7f1bcbc --- /dev/null +++ b/sysroot/Users/dzwdz/private/secrets.txt @@ -0,0 +1,2 @@ +I enjoyed Twilight. + diff --git a/sysroot/Users/dzwdz/public/stuff.txt b/sysroot/Users/dzwdz/public/stuff.txt new file mode 100644 index 0000000..b864fc2 --- /dev/null +++ b/sysroot/Users/dzwdz/public/stuff.txt @@ -0,0 +1,2 @@ +A publicly readable file. + diff --git a/sysroot/bin/sh/fib b/sysroot/bin/sh/fib new file mode 100644 index 0000000..6d84b1b --- /dev/null +++ b/sysroot/bin/sh/fib @@ -0,0 +1,10 @@ +#!/bin/lua + +function fib(n) + if n <= 1 then return 1 end + return fib(n-1) + fib(n-2) +end + +for i=1,13 do + print("fib("..i..")\t= " .. fib(i)) +end diff --git a/sysroot/bin/sh/halt b/sysroot/bin/sh/halt new file mode 100644 index 0000000..563aded --- /dev/null +++ b/sysroot/bin/sh/halt @@ -0,0 +1,2 @@ +#!/bin/shell +echo halt > /initctl \ No newline at end of file diff --git a/sysroot/bin/sh/mkuser b/sysroot/bin/sh/mkuser new file mode 100644 index 0000000..a1544c6 --- /dev/null +++ b/sysroot/bin/sh/mkuser @@ -0,0 +1,7 @@ +#!/bin/shell +touch /Users/user/ +cd /Users/user/ +touch private/ +echo secrets! > private/secret.txt +touch public/ +echo no secrets here > public/hi.txt \ No newline at end of file diff --git a/sysroot/usr/arp.ether b/sysroot/usr/arp.ether new file mode 100644 index 0000000..c8fbec7 Binary files /dev/null and b/sysroot/usr/arp.ether differ diff --git a/sysroot/usr/long.txt b/sysroot/usr/long.txt new file mode 100644 index 0000000..ed0b66a --- /dev/null +++ b/sysroot/usr/long.txt @@ -0,0 +1,7 @@ +this file is longer than 512 characters. each line is exactly 80 characters long +01234567890123456789012345678901234567890123456789012345678901234567890123456789 +0 10 20 30 40 50 60 70 80 +for this file to be over 512 bytes, it needs 512/81 = 7 lines. that's a fun fact + ,_____O> [duck sound] | that's as good of a duck as i can make. it's very good +~|____| | /-- this X is the 513th byte in this file. very coolio + | | ,. . ., , ., | X. here it is. what you've waited for. idk what to say -- cgit v1.2.3