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
Jonas 'Sortie' Termansen
d855c6cec7
Add warnings to userspace compile flags.
2012-09-08 20:33:52 +02:00
Jonas 'Sortie' Termansen
c9eb1b2cb3
Better collection of zombie processes.
...
Note that there seems to be a deadlock if a process exits when there are
zombies around. Init also doesn't handle zombie children correctly as there
is sent no SIGCHLD signal yet.
2012-09-08 19:25:13 +02:00
Jonas 'Sortie' Termansen
32a1be0008
Increased tab size from 4 to 8.
2012-09-08 18:45:53 +02:00
Jonas 'Sortie' Termansen
13c0ab638a
Sort the output of ls(1).
2012-09-08 18:45:52 +02:00
Jonas 'Sortie' Termansen
17a93359dd
Add . and .. support to kernel filesystems.
...
This makes the hack in ls(1) not needed and is hence removed.
2012-09-08 18:45:52 +02:00
Jonas 'Sortie' Termansen
fc811af890
Increased shell limit for line length.
...
Yes this is hacky, I'll fix it with a better shell.
2012-09-08 18:45:52 +02:00
Jonas 'Sortie' Termansen
66b8d23713
Init defaults $objtype to $cputype.
2012-09-08 18:45:41 +02:00
Jonas 'Sortie' Termansen
e230854ee9
Removed the idle program.
2012-09-08 18:45:41 +02:00
Jonas 'Sortie' Termansen
f1f0c44a12
Made the shell more compatible with signals.
2012-09-08 18:45:41 +02:00
Jonas 'Sortie' Termansen
47ae712419
pager(1) now detects the terminal resolution.
2012-07-31 16:48:56 +02:00
Jonas 'Sortie' Termansen
ce43f9c306
Add chvideomode(1) using the /dev/video interface.
2012-07-30 19:00:24 +02:00
Jonas 'Sortie' Termansen
ab7ee4fd1e
column(1) now queries the terminal width.
2012-07-30 00:35:42 +02:00
Jonas 'Sortie' Termansen
829e63f0e9
editor(1) now bails if the terminal resolution isn't 80x25.
...
This isn't perfect, but support for other resolutions is near!
2012-07-29 23:41:36 +02:00
Jonas 'Sortie' Termansen
5eb48d32fb
Fixed a bug in --usage of uname(1).
2012-07-26 18:51:50 +02:00
Jonas 'Sortie' Termansen
ba07631aa2
uname(1) now behaves much more like its GNU coreutils counterpart.
2012-07-26 16:04:45 +02:00
Jonas 'Sortie' Termansen
38f06d505c
Better detection of environmental variables in mxsh.
2012-07-24 19:56:33 +02:00
Jonas 'Sortie' Termansen
b7788610da
Added error detection to echo(1).
2012-07-24 19:56:32 +02:00
Jonas 'Sortie' Termansen
12326f2e34
Added $LINES and $COLUMNS to the shell.
...
This tests the fancy new system call tcgetwinsize(2).
2012-07-24 18:51:22 +02:00
Jonas 'Sortie' Termansen
92c5533820
Improved the implementation of the exec* functions.
2012-04-30 21:10:02 +02:00
Jonas 'Sortie' Termansen
042aeb0181
Added the $PWD environmental variable to the shell.
2012-04-13 23:01:04 +02:00
Jonas 'Sortie' Termansen
b554eb2dfb
The shell now implements $$, $PPID, and $? as normal variables.
2012-04-13 22:41:07 +02:00
Jonas 'Sortie' Termansen
a24e86e751
init(1) now restarts the shell upon crash.
2012-04-13 21:47:47 +02:00
Jonas 'Sortie' Termansen
2331a1a234
Added hacky support for environmental variables to the shell.
2012-04-03 22:03:58 +02:00
Jonas 'Sortie' Termansen
9ab0bc5474
Added {,p}{read,write}{all,least}(3).
2012-03-24 15:34:30 +01:00
Jonas 'Sortie' Termansen
db79994e64
Refactored all the sortix headers into a include directory.
...
Also got rid of trailing white space. That corrupted .git/.
Big ass-commit because of recovered .git directory.
2012-03-22 00:52:29 +01:00
Jonas 'Sortie' Termansen
fa6d445b0d
Added type(1), a replacement for the "traditional" Sortix cat(1).
...
cat(1) now work as you would expect.
2012-03-16 15:56:09 +01:00
Jonas 'Sortie' Termansen
a6a296a971
Fixed bug where pager(1) prints a line too much.
2012-03-11 18:16:55 +01:00
Jonas 'Sortie' Termansen
5e317c9726
Made kernelinfo(1) a little more friendly on bad string name.
2012-03-11 18:14:21 +01:00
Jonas 'Sortie' Termansen
c403c1d798
Greatly improved ls(1).
2012-03-11 17:58:25 +01:00
Jonas 'Sortie' Termansen
cadac5ce2a
Moved the /bin and /dev hack into the kernel.
...
This makes ls seem less hacky.
2012-03-11 17:25:32 +01:00
Jonas 'Sortie' Termansen
dc0f78f6b7
Added copyright headers to benchmarks, games and utilities.
...
It's all GPLv3 or later.
2012-03-11 15:57:13 +01:00
Jonas 'Sortie' Termansen
9ed2031dd2
pager(1) now supports reading from stdin.
2012-03-07 21:06:29 +01:00
Jonas 'Sortie' Termansen
bd7cb5195a
Removed debug string from mxsh(1).
2012-03-07 18:26:02 +01:00
Jonas 'Sortie' Termansen
87248fbce9
Aded kernelinfo(1) as a frontend of kernelinfo(2).
2012-03-07 18:20:40 +01:00
Jonas 'Sortie' Termansen
a7658d5b8c
uname(1) now uses kernelinfo(2) to determine kernel version.
2012-03-07 18:06:23 +01:00