summaryrefslogtreecommitdiff
path: root/src/user/app/init/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/user/app/init/init.c')
-rw-r--r--src/user/app/init/init.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/user/app/init/init.c b/src/user/app/init/init.c
index d9dabc6..49cc085 100644
--- a/src/user/app/init/init.c
+++ b/src/user/app/init/init.c
@@ -47,6 +47,18 @@ int main(void) {
NULL
});
}
+ MOUNT_AT("/Users/") {
+ MOUNT_AT("/tmp/") {
+ const char *argv[] = {"/bin/tmpfs", NULL};
+ execv(argv[0], (void*)argv);
+ }
+ // TODO a simple union isn't enough here
+ fs_union((const char*[]){
+ "/tmp/",
+ "/init/Users/",
+ NULL
+ });
+ }
MOUNT_AT("/tmp/") {
const char *argv[] = {"/bin/tmpfs", NULL};
execv(argv[0], (void*)argv);
@@ -55,10 +67,6 @@ int main(void) {
const char *argv[] = {"/bin/vterm", NULL};
execv(argv[0], (void*)argv);
}
- MOUNT_AT("/union/") {
- const char *list[] = {"/tmp/", "/init/", NULL};
- fs_union(list);
- }
if (_syscall_pipe(killswitch_pipe, 0) < 0) {
printf("couldn't create the killswitch pipe, quitting...\n");