Commit graph

343 commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen
e76d4a90c5 Silence maybe initialized warning in pager. 2015-02-06 14:55:35 +01:00
Jonas 'Sortie' Termansen
ab66b91086 Fix NOTO typo. 2014-12-28 20:18:58 +01:00
Jonas 'Sortie' Termansen
a4ee2e3724 Add space as an alias for page down in pager(1). 2014-12-28 20:18:58 +01:00
Jonas 'Sortie' Termansen
9c2f89d56c Work around a getdelim bug in column(1). 2014-12-28 20:18:58 +01:00
Jonas 'Sortie' Termansen
d238518c35 Rewrite pager(1). 2014-12-27 23:43:39 +01:00
Jonas 'Sortie' Termansen
77cf804ed2 Move init to its own directory. 2014-12-26 21:48:15 +01:00
Jonas 'Sortie' Termansen
2abd0cf754 Add unmount(1). 2014-12-26 21:45:29 +01:00
Jonas 'Sortie' Termansen
e88a3ef654 Fix cp(1) error message. 2014-12-26 14:18:25 +01:00
Jonas 'Sortie' Termansen
08461c72fa Move editor to its own subdirectory. 2014-12-07 20:29:08 +01:00
Jonas 'Sortie' Termansen
d8df769692 Move sh to its own directory. 2014-12-07 18:25:09 +01:00
Jonas 'Sortie' Termansen
99f27d5eb1 Fix pwd(1) unsetting PWD and exit code. 2014-12-04 18:12:50 +01:00
Jonas 'Sortie' Termansen
4e9746c314 Add yes(1). 2014-12-03 15:20:03 +01:00
Jonas 'Sortie' Termansen
3ad7ab4fc3 Add gethostname(2) and sethostname(2). 2014-12-03 13:58:29 +01:00
Jonas 'Sortie' Termansen
d668c5558e Fix sprintf uses in sh. 2014-12-02 18:00:23 +01:00
Jonas 'Sortie' Termansen
bb3f591057 Add symbolic links. 2014-12-02 17:36:36 +01:00
Jonas 'Sortie' Termansen
2586685061 Ongoing build system maintainance. 2014-12-02 17:09:28 +01:00
Jonas 'Sortie' Termansen
2b2dd347ec Add symbolic link support to ls(1). 2014-12-02 16:28:46 +01:00
Jonas 'Sortie' Termansen
b1a2817ada Add symbolic link support to cp(1). 2014-12-02 16:28:46 +01:00
Jonas 'Sortie' Termansen
0dc951b94e Improve cp's install(1) emulation. 2014-12-01 23:34:43 +01:00
Jonas 'Sortie' Termansen
3d091f39bf Harden strcpy calls. 2014-11-30 19:53:42 +01:00
Jonas 'Sortie' Termansen
0329192ba8 Ignore unsupported cp --preserve option. 2014-11-30 16:09:01 +01:00
Jonas 'Sortie' Termansen
7482a13195 Rewrite column(1). 2014-11-27 20:55:34 +01:00
Jonas 'Sortie' Termansen
ba29cad8a3 Improve cp(1). 2014-11-27 01:36:52 +01:00
Jonas 'Sortie' Termansen
e5d07072f3 Set TERM=sortix in init. 2014-11-27 00:20:53 +01:00
Jonas 'Sortie' Termansen
0cd7fb6b76 Remove objtype environment variable from init. 2014-11-27 00:20:53 +01:00
Jonas 'Sortie' Termansen
91a1df02b1 Remove calc(1).
This program was mostly replaced with the standard expr(1) tool and the code
quality was not up to the standards. Finally, it was not very useful.
2014-11-26 23:34:14 +01:00
Jonas 'Sortie' Termansen
d56dcafd27 Add sleep(1). 2014-11-26 23:34:14 +01:00
Jonas 'Sortie' Termansen
99d1c61b24 Use a proper shell as sh(1) backend if available. 2014-11-26 21:41:09 +01:00
Jonas 'Sortie' Termansen
f8c5adf20f Add #! support to execve(2). 2014-11-26 21:14:13 +01:00
Jonas 'Sortie' Termansen
3577cb81fe Improve execvpe(3) logic and run shell on ENOEXEC. 2014-11-25 23:52:12 +01:00
Jonas 'Sortie' Termansen
a334ede4c4 Rewrite ls(1). 2014-11-25 18:53:31 +01:00
Jonas 'Sortie' Termansen
87be32b948 Remove obsolete uninstall Makefile target from projects. 2014-11-24 21:32:24 +01:00
Jonas 'Sortie' Termansen
a7cf2c4b36 Add unicode support to editor(1). 2014-11-24 17:41:26 +01:00
Jonas 'Sortie' Termansen
9e6148f6ff Refactor default compiler options logic. 2014-11-24 17:10:50 +01:00
Jonas 'Sortie' Termansen
fbbb33287b Implement standard library feature macros. 2014-11-20 21:09:14 +01:00
Jonas 'Sortie' Termansen
d2cea190a8 Remove DEFAULT_STUFF environmental variable from init(1). 2014-11-20 21:09:14 +01:00
Jonas 'Sortie' Termansen
e9b81ccaa5 Rewrite chvideomode(1). 2014-11-19 00:08:49 +01:00
Jonas 'Sortie' Termansen
c2f9c0bb12 Remove --usage options from shell utilities in favor of --help. 2014-11-18 20:29:18 +01:00
Jonas 'Sortie' Termansen
c5fa54aa08 Use fmemopen(3) internally in sh(1). 2014-11-17 19:18:16 +01:00
Jonas 'Sortie' Termansen
d7e1c926a2 Run command-not-found in sh only if errno is ENOENT. 2014-11-17 16:23:02 +01:00
Jonas 'Sortie' Termansen
2697711dc1 Add tr(1). 2014-11-17 16:23:02 +01:00
Jonas 'Sortie' Termansen
760f21c670 Add dirname(1). 2014-11-01 21:33:49 +01:00
Jonas 'Sortie' Termansen
94bc05307a Add basename(1). 2014-11-01 21:33:48 +01:00
Jonas 'Sortie' Termansen
af66244bd6 Add uniq(1). 2014-11-01 20:58:13 +01:00
Jonas 'Sortie' Termansen
9f9af783d9 Add sort(1). 2014-11-01 17:26:13 +01:00
Jonas 'Sortie' Termansen
2f9e2e4e9d Add expr(1). 2014-11-01 16:55:19 +01:00
Jonas 'Sortie' Termansen
3ca139b4c2 Add chmod(1). 2014-10-28 20:16:51 +01:00
Jonas 'Sortie' Termansen
d8a66ac86f Add -t option to ls(1). 2014-10-21 16:11:17 +02:00
Jonas 'Sortie' Termansen
05a124467e Add -i option to ls(1). 2014-10-21 16:11:17 +02:00
Jonas 'Sortie' Termansen
2194bdb8b9 Add -d option to ls(1). 2014-10-21 16:11:17 +02:00
Jonas 'Sortie' Termansen
f3d1b9d0e4 Improve mv(1). 2014-10-21 16:11:17 +02:00
Jonas 'Sortie' Termansen
2492f0bad7 Fix how the shell appends. 2014-10-04 17:22:59 +02:00
Jonas 'Sortie' Termansen
12780c8eb0 Add env(1). 2014-09-25 18:20:00 +02:00
Jonas 'Sortie' Termansen
f84bfe5e89 Fix paste in editor not deleting the selection. 2014-09-25 17:49:01 +02:00
Jonas 'Sortie' Termansen
cbd46f610c Fix init having its own poor vasprintf(3). 2014-08-23 21:47:04 +02:00
Jonas 'Sortie' Termansen
c451de1bc2 Fix uninitalized memory accesses in editor. 2014-08-23 21:26:17 +02:00
Jonas 'Sortie' Termansen
5f9da2a651 Fix format string problems in error(3) calls. 2014-08-23 21:04:39 +02:00
Jonas 'Sortie' Termansen
901467520f Fix init using usleep instead of nanosleep. 2014-06-17 23:53:26 +02:00
Jonas 'Sortie' Termansen
6f35797e19 Fix editor not displaying an error when stdio is not a terminal. 2014-05-16 14:48:27 +02:00
Jonas 'Sortie' Termansen
812d071481 Fix buffer overflow in which(1). 2014-05-16 14:31:24 +02:00
Jonas 'Sortie' Termansen
4674017303 Fix editor writing NUL bytes to terminal. 2014-04-22 18:06:14 +02:00
Jonas 'Sortie' Termansen
c93a434749 Fix init not respecting the home directory from /etc/passwd. 2014-03-31 19:08:57 +02:00
Jonas 'Sortie' Termansen
b7bf21bfff Open stdin, stdout and stderr in the kernel rather than init. 2014-03-17 19:22:11 +01:00
Jonas 'Sortie' Termansen
e91cde379a Rewrite getenv(3), setenv(3), unsetenv(3) and clearenv(3). 2014-03-17 19:22:11 +01:00
Jonas 'Sortie' Termansen
687096ec8a Add uname(3). 2014-03-17 19:22:11 +01:00
Jonas 'Sortie' Termansen
1a92a6991d Rename mxsh to sh. 2014-03-01 14:37:40 +01:00
Jonas 'Sortie' Termansen
fba2e26b05 Fix wc(1) argument parsing. 2014-03-01 14:37:39 +01:00
Jonas 'Sortie' Termansen
3d64567bae Fix pwd(1) argument parsing. 2014-03-01 14:37:39 +01:00
Jonas 'Sortie' Termansen
820bafeabf Fix ls(1) argument parsing. 2014-03-01 14:37:39 +01:00
Jonas 'Sortie' Termansen
10daa40f01 Fix du(1) argument parsing. 2014-03-01 14:37:39 +01:00
Jonas 'Sortie' Termansen
581edfb422 Fix cat(1) argument parsing. 2014-03-01 14:37:39 +01:00
Jonas 'Sortie' Termansen
a66bb2900a Fix unportable pid_t parsing in sh(1). 2013-12-30 20:46:22 +01:00
Jonas 'Sortie' Termansen
7651519f96 Color executables in ls(1). 2013-12-19 17:42:08 +01:00
Jonas 'Sortie' Termansen
f8e7553187 Add false(1) and true(1). 2013-12-19 17:42:07 +01:00
Jonas 'Sortie' Termansen
184fce3cf3 Add basic wildcard support to the shell. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
5703540c0f Start the initial root shell in root's home directory. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
b3b2e99b9c Perform only home path substitution in the shell if HOME is set. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
5582cb4065 Set the root user's home directory, username and shell in init. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
6a9eee3238 Add brand.h. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
b5509037bc Add command-not-found utility. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
3de23d8cec Rewrite the Sortix text editor. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
4e45844334 Add chain boot support to init. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
0708482d9b Rewrite echo(1). 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen
2f261b3848 Port column(1) to GNU and POSIX systems. 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
0738e9bf3c Add du(1). 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
51d965d6eb Add wc(1). 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
3e5a6644c8 Improve implementation of pwd(1). 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
a7b03af9cc Improve implementation of cat(1). 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
97621d4661 Use getlogin(3) in the shell instead of the USERNAME variable. 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
dd5a59e5f6 Expand variables before running shell builtins. 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
20b67f18bc Update libc system calls to follow coding conventions. 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
311423856e Add foreground process support to init and sh. 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
c8f302df1a Add process group support to init and sh. 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
6ea41cc620 Retrieve init process id from INIT_PID environmental variable. 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
f8f65d5713 Store init process pid in INIT_PID environmental variable. 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
94cd049473 Add chroot(1). 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
3c6ecd6512 Add umask(2). 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
277e2e8626 Add modification date to ls long format. 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
82ffdb5ca8 Add date(1). 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
3a76e33459 Add time(1). 2013-12-17 14:30:34 +01:00
Jonas 'Sortie' Termansen
a15ffa955b Obsolete uptime(2). 2013-12-17 14:30:34 +01:00
Jonas 'Sortie' Termansen
12a8bb91aa Update help program to search PATH. 2013-12-17 14:30:33 +01:00
Jonas 'Sortie' Termansen
e249533d99 Add home directory syntax to shell. 2013-12-17 14:30:32 +01:00
Jonas 'Sortie' Termansen
8b7dad7d4d Add colormake(1). 2013-12-17 14:30:31 +01:00
Jonas 'Sortie' Termansen
15c48f4efc Add PATH variable. 2013-12-17 14:30:29 +01:00
Jonas 'Sortie' Termansen
e97990e144 Add install(1) stub. 2013-12-17 14:30:29 +01:00
Jonas 'Sortie' Termansen
fc8d64013d Refactor datatype declarations. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
5ce53a2a30 Wait for orphans in init. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
266a02ad71 Add find(1) stub. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
de41c02ded Add mv(1) utility. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
c9289e839c Sort util/Makefile program list. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
fab7b7dfc8 Rewrite cp(1). 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
4e095906fb Add -c option to shell. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
7637e835b5 Allow setting shell username and hostname. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
36f8d6e273 Add exit-on-error option to shell. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
71be9b9b08 Add support for shell scripts. 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
dbab4e7683 Add shell non-interactive mode and shell comments. 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
94dcefb05c Improve implementation of rm(1). 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
25aebe4cd8 Align ls long format. 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
cd48a35074 Add colors to sh(1) and ls(1).
This makes Sortix a happier place to be.
2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
0453ff9532 Add ln(1). 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
c32dac0e16 Add which(1). 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
fe542c9276 Add rmdir(1). 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
2169710127 Add mkdir(1). 2013-12-17 14:30:27 +01:00
Jonas 'Sortie' Termansen
1444683ea8 Refactor kernel VFS.
Note: This is an incompatible ABI change.
2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
9634a0c3d2 Add --version option to chvideomode(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
8a2630fbee Add --version option to column(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
238de22ce8 Add --version option to kernelinfo(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
5f003c2d87 Add --version option to ls(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
9986edce84 Add --version option to head(1) and tail(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
3879c0a774 Add --version option to type(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
9a08acb8f3 Add --version option to uname(1) 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
59edfdb787 Remove <readparamstring.h>. 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
90036ca6a8 Update copyright headers of old files to the current format. 2013-12-17 14:30:23 +01:00
Jonas 'Sortie' Termansen
eb5be61d20 Fix trailing blank lines. 2013-12-17 14:30:23 +01:00
Jonas 'Sortie' Termansen
7eb9e3c33f Refactor Sortix build system and de-autoconf mxmpp. 2013-12-17 14:30:22 +01:00
Jonas 'Sortie' Termansen
f8793bc53e Port chvideomode to <sys/display.h> interface. 2013-09-24 17:09:48 +02:00
Jonas 'Sortie' Termansen
9a608e5bb2 Fix exit code in chvideomode. 2013-09-24 17:09:48 +02:00
Jonas 'Sortie' Termansen
53005fc01f Fix shell buffer overflow on long argument lists. 2013-09-24 17:09:47 +02:00
Jonas 'Sortie' Termansen
c8b795aab3 Correctly request SIZE_MAX in chvideomode. 2013-09-24 17:09:47 +02:00
Jonas 'Sortie' Termansen
1ca946af2f Fix ls exit code. 2013-09-24 16:52:29 +02:00
Jonas 'Sortie' Termansen
cd1df6d088 Correct error detection in echo(1). 2013-09-24 16:52:29 +02:00
Jonas 'Sortie' Termansen
7a8687e063 Handle ANSI Escape codes in column(1). 2012-12-14 14:18:38 +01:00
Jonas 'Sortie' Termansen
a041c107d5 Fix shell crash if PWD is unset. 2012-12-14 14:18:02 +01:00
Jonas 'Sortie' Termansen
9cf092d32e Use cross compiler in build system. 2012-12-14 14:13:33 +01:00
Jonas 'Sortie' Termansen
0b94239912 Fix missing WEXITSTATUS in init and kernel. 2012-09-09 23:08:03 +02:00
Jonas 'Sortie' Termansen
ab1901976c Add support for escaping spaces and tabs in shell. 2012-09-09 21:03:02 +02:00
Jonas 'Sortie' Termansen
b9b697f2cb Implement proper W* error codes in sys/wait.h and kernel.
Note that signals can't really kill a process at this time.
2012-09-09 12:21:39 +02:00
Jonas 'Sortie' Termansen
1369aa9da9 Fix wrong datatypes to printf in ls.
gcc still complains, but that is because uintmax_t is declared incorrectly.
2012-09-09 12:20:58 +02:00
Jonas 'Sortie' Termansen
46d02b784b Fix compile warnings in userspace programs. 2012-09-08 20:55:43 +02:00