82411789e8
libos+apps: Add kill
continuous-integration/drone/push Build is passing
2023-07-10 22:17:05 +02:00
86d14e0d0e
kernel+libc: Add the SA_NODEFER and SA_RESETHAND flags for sigaction()
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-07-10 21:54:04 +02:00
237184a8bf
libc+sh: Implement strsignal and use it in the shell
continuous-integration/drone/pr Build is passing
2023-07-10 21:39:22 +02:00
015419b8f5
kernel: Generate signals when children exit / when faults occur
...
Userspace can now catch segfaults!
2023-07-10 20:49:22 +02:00
cde467ee46
kernel: Support returning termination signals from waitpid
continuous-integration/drone/pr Build is passing
2023-07-10 20:16:06 +02:00
15d6aae701
kernel+libc: Implement basic signals
2023-07-10 19:46:57 +02:00
16b0531d42
kernel+apps+base+tools: Use Ext2 for the root partition file system
...
continuous-integration/drone/push Build is passing
init is now split into two parts: preinit, which lives in the initrd and prepares the root file system for init,
and the actual /usr/bin/init, which lives in the root partition and starts services and reaps zombies.
The kernel now looks for /bin/preinit instead of /bin/init as the executable for the init process.
All configuration files in initrd/etc have been moved to base/etc. (The plan is to have only moon and preinit in the initrd.)
Since the current Ext2 implementation is read-only (and it's on a CDROM so it would be read-only anyways),
/home/selene is a tmpfs (as well as /tmp), to allow for a writable home directory.
The system is slower now, but that's to expect since the Ext2 code doesn't use caching and the ATA code still uses PIO.
2023-07-10 13:05:06 +02:00
5c9503ac71
libos+cp: Add prompt functionality
continuous-integration/drone/push Build is passing
2023-07-08 18:30:39 +02:00
6d9ba8deb4
libos+apps: Make the vector argument more flexible
continuous-integration/drone/push Build is passing
2023-07-08 16:44:02 +02:00
f0a7098470
apps: Add cp
continuous-integration/drone/push Build is passing
2023-07-02 16:38:24 +02:00
2aa7056e11
mount: Put the source argument first
2023-06-25 20:35:36 +02:00
a9460469d9
kernel+libc+apps: Add a source parameter to the mount() system call
2023-06-25 20:35:35 +02:00
b4a6e4d56d
libluna/PathParser: Make dirname() and basename() static functions
...
continuous-integration/drone/push Build is passing
This avoids creating a PathParser to use them, which allocates memory that won't be used.
2023-06-19 11:21:58 +02:00
2f08e0f5b0
libos: Make long value arguments use '=' and make value arguments' values always required
continuous-integration/drone/push Build is passing
2023-06-17 20:58:54 +02:00
e79d4297ea
kernel: Make the root inode be a mountpoint as well + add pivot_root()
continuous-integration/drone/push Build is passing
2023-06-17 17:27:22 +02:00
e4e501ecfe
libos: Add Process::wait()
continuous-integration/drone/push Build is passing
2023-06-09 23:12:31 +02:00
5f5b58a2c0
apps: Add a syscall fuzzer
continuous-integration/drone/push Build is passing
2023-06-08 19:58:00 +02:00
6ad7491300
sh: Skip comments (and shebangs!)
2023-06-03 16:59:18 +02:00
d2334a67dd
apps: Add mktemp
continuous-integration/drone/push Build is passing
2023-06-03 12:15:57 +02:00
0540879959
init+initrd: Create /tmp and mount it on boot
2023-06-03 11:34:53 +02:00
ff952cfe16
kernel+init: Let userspace control devfs mountpoints
continuous-integration/drone/push Build is passing
2023-06-02 21:45:31 +02:00
d40654a00c
libos+ls: Allow calling ArgumentParser::short_usage() directly
continuous-integration/drone/push Build is passing
2023-05-28 21:57:04 +02:00
069f1c0f97
ls: Sort displayed entries
2023-05-28 21:51:50 +02:00
e864ef2d36
libos: Add a way to also list entry sizes, modes and mtimes
2023-05-28 21:51:50 +02:00
bd8aaa917f
kernel+libc+ln: Add support for userspace hard link creation
continuous-integration/drone/push Build is passing
2023-05-27 11:32:40 +02:00
b0506bf88f
kernel: Add umask
continuous-integration/drone/push Build is passing
2023-05-26 22:27:49 +02:00
62e14e7580
kernel+libos+apps: Support block devices and disallow seeking character devices or pipes
continuous-integration/drone/push Build is failing
2023-05-26 20:27:47 +02:00
38fae0c97b
ls: Show file modes visually
continuous-integration/drone/push Build is passing
2023-05-26 18:22:50 +02:00
4dcee8f828
sh: Print "exit" on EOF only when the shell is in interactive mode
continuous-integration/drone/push Build is passing
2023-05-26 17:29:41 +02:00
3a51807fa6
kernel+stat: Handle pipes correctly in stat()
continuous-integration/drone/push Build is passing
2023-05-23 20:54:25 +02:00
1a6ad11462
kernel+libc+libos+ls: Add readlink()
continuous-integration/drone/push Build is passing
2023-05-23 15:42:38 +02:00
b61307e5cb
ls: Add -1 and --directory
continuous-integration/drone/push Build is passing
2023-05-23 14:53:38 +02:00
04d074538f
ls: Don't do caching now that password/group file reading is more reasonable
continuous-integration/drone/push Build is passing
2023-05-20 22:10:01 +02:00
597aada09e
ls+stat: Handle symbolic links properly
continuous-integration/drone/push Build is passing
2023-05-20 21:49:25 +02:00
4ec1af5e51
apps: Add ln
2023-05-20 21:49:25 +02:00
47d505dcbb
libc: Add getline() and getdelim()
continuous-integration/drone/push Build is passing
2023-05-20 15:36:30 +02:00
5117b410db
apps: Add time
continuous-integration/drone/push Build is passing
2023-05-20 12:48:25 +02:00
1db60b5a82
sh: Print a message on exit
continuous-integration/drone/push Build is passing
2023-05-20 12:07:56 +02:00
3db0c4fed2
apps: Add ps
continuous-integration/drone/push Build is passing
2023-05-18 21:59:38 +02:00
0dbfbe6395
libc+apps: Avoid calling endpwent() and endgrent() after every call to get{pw,gr}{nam,uid,gid}
2023-05-18 21:47:46 +02:00
1f4c4928cc
kernel+libc+apps: Add mount and umount syscalls, libc wrappers, and utilities
continuous-integration/drone/push Build is passing
2023-05-17 20:30:15 +02:00
e7d482e78a
kernel+init: Add a VFS mount system and auto-populate the devfs
2023-05-17 19:40:37 +02:00
65d3195caa
libos: Allow ArgumentParser users to specify they want leftover arguments
continuous-integration/drone/push Build is passing
2023-05-13 13:22:10 +02:00
5911b052dc
libluna: Add more options to to_dynamic_unit()
...
continuous-integration/drone/push Build is passing
Also, make the output look more like how it is on linux.
2023-05-13 12:01:09 +02:00
a5ad8e16de
ls: Add the --human-readable flag
2023-05-13 11:15:28 +02:00
300d68088b
libos: Add FileSystem::stat()
continuous-integration/drone/push Build is passing
2023-05-12 23:47:20 +02:00
1035b91a3d
su: Do not change directory/set variables by default, instead add a --login option
continuous-integration/drone/push Build is passing
2023-05-11 20:11:09 +02:00
a935039e78
sh: Prioritize /etc/passwd over the USER environment variable
2023-05-11 20:10:10 +02:00
4a3a92e9d4
libc: Move chmod from unistd.h to sys/stat.h
...
continuous-integration/drone/push Build is passing
Apparently that's where it's supposed to be.
2023-05-11 19:40:34 +02:00
efc6d03f23
kernel+libc: Add support for unnamed pipes
continuous-integration/drone/push Build is passing
2023-05-10 22:48:31 +02:00