Juhani Krekelä
198c54ed25
Rewrite tail(1).
2021-08-15 16:16:19 +03:00
Juhani Krekelä
42c94ee36b
Mark install(1) dependant on utils/cp.c and head(1) on utils/tail.c
2021-07-29 00:40:49 +03:00
Jonas 'Sortie' Termansen
63ce55e7e9
Fix reading directories not failing with EISDIR.
2021-07-28 22:21:41 +02:00
Jonas 'Sortie' Termansen
16bdb2ba84
Fix setuid(2) and setgid(2) not setting the effective user and group.
...
Thanks to samis for discovering this problem and the initial attempt at
fixing it.
2021-07-27 00:46:42 +02:00
Jonas 'Sortie' Termansen
c28667fdf7
Add porttix-create support for a secondary tarball.
...
This functionality is needed for ports such as perl that needs
perl-cross extracted on top of it.
2021-07-21 14:01:06 +02:00
Jonas 'Sortie' Termansen
9a20f8cc37
Publish releases by the release name.
2021-07-20 22:11:27 +02:00
Jonas 'Sortie' Termansen
20df95f1ec
Add /tix/tixinfo to the system manifest.
2021-07-20 22:08:11 +02:00
Juhani Krekelä
6385ea1957
Fix pipes reporting themselves as character devices through fstat(2).
2021-07-16 01:43:33 +03:00
Jonas 'Sortie' Termansen
2d841bae7c
Fix kernel deadlock in ppoll(2).
2021-07-14 15:41:28 +02:00
Jonas 'Sortie' Termansen
6bca83b399
Add sh(1) exec builtin.
2021-06-27 15:29:26 +02:00
Jonas 'Sortie' Termansen
80f5ca398a
Add ATAPI support to ata(4).
2021-06-27 13:54:56 +02:00
Jonas 'Sortie' Termansen
bce37028f5
Store binary package repository in the release directory.
2021-06-24 22:35:39 +02:00
Jonas 'Sortie' Termansen
fa5f1b826e
Add sha256sum to release directory.
2021-06-24 22:35:39 +02:00
Jonas 'Sortie' Termansen
cffa7fa7b7
Add manual pages to the release.
2021-06-24 22:35:39 +02:00
Jonas 'Sortie' Termansen
aeb7e0ccfc
Store kernel and initrds in the release directory.
2021-06-24 22:35:39 +02:00
Jonas 'Sortie' Termansen
5e7605fad2
Implement threading primitives that truly sleep.
...
The idle thread is now actually run when the system is idle because it
truly goes idle. The idle thread is made power efficient by using the hlt
instruction rather than a busy loop.
The new futex(2) system call is used to implement fast user-space mutexes,
condition variables, and semaphores. The same backend and design is used as
kutexes for truly sleeping kernel mutexes and condition variables.
The new exit_thread(2) flag EXIT_THREAD_FUTEX_WAKE wakes a futex.
Sleeping on clocks in the kernel now uses timers for true sleep.
The interrupt worker thread now truly sleeps when idle.
Kernel threads are now named.
This is a compatible ABI change.
2021-06-23 22:10:47 +02:00
Jonas 'Sortie' Termansen
29b14378e8
Fix usleep(2) sleeping 1000x too much regression.
2021-06-23 22:09:57 +02:00
Jonas 'Sortie' Termansen
4daedc31f7
Fix handling of overflow and non-canonical values in timespec APIs.
...
Support zero relative and absolute times in the timer API.
2021-06-22 21:48:27 +02:00
Jonas 'Sortie' Termansen
109a229b42
The Master Boot Record counts numbers of 512 bytes rather than sectors.
...
It seems that CD-ROMs with MBRs count number of 512 bytes rather than number
of 2048-byte sectors.
2021-06-17 23:58:19 +02:00
Jonas 'Sortie' Termansen
3b036b6c5d
Add getdnsconfig(2) and setdnsconfig(2).
2021-06-13 23:27:52 +02:00
Jonas 'Sortie' Termansen
23ddc536bc
Add -bdfgikhMnt options to sort(1).
2021-06-13 12:51:18 +02:00
Jonas 'Sortie' Termansen
27f81b09a6
Add /var/cache, /var/log, and /var/run.
2021-05-30 23:50:42 +02:00
Jonas 'Sortie' Termansen
9d87d76957
Abort on overlapping memcpy.
2021-05-30 23:48:19 +02:00
Jonas 'Sortie' Termansen
280ba8d64d
Rewrite find(1).
2021-05-29 01:04:53 +02:00
Jonas 'Sortie' Termansen
1c9233e0c9
Add ENOMEDIUM.
2021-05-29 00:52:33 +02:00
Jonas 'Sortie' Termansen
18ba2d2fe3
Use example domain in serial-transfer(7).
2021-05-28 22:59:18 +02:00
Jonas 'Sortie' Termansen
11be0007b8
Remove ENOUSER and ENOGROUP.
...
The <pwd.h> and <grp.h> family of functions are supposed to return
nothing with no error set if there is no matching entry.
2021-05-10 23:26:31 +02:00
Juhani Krekelä
7f9a62d916
Implement Alt + key mapping to Esc followed by key in kernel tty
2021-05-05 00:19:56 +02:00
Juhani Krekelä
73e42780f4
Add more keybinds for scrolling in pager(1)
...
b commonly corresponds to Page Up, and f is added to match.
j and k for lines, ^F and ^B for pages, and g and G for home/end are from vi.
C-n and C-p for lines and C-v and M-v for pages are from Emacs.
< and > for home/end allow using Emacs M-< and M->, tho they are from less(1).
2021-05-04 22:14:47 +00:00
Juhani Krekelä
5e666dce8a
Change go to line
keybind in editor(1) from ^I to ^G
...
Since this is a console program, ctrl + letter gets mapped to a
control character in the range 1 to 26. Most of these control
characters are no longer in use and can safely be assumed to be
result of ctrl + letter, but ^I maps to the tab character.
I chose ^G since the keybind is memorable, and a user is unlikely
to try to type the BEL character.
2021-05-02 22:42:37 +02:00
Juhani Krekelä
86fa692c74
Do not try to copy zero-length buffers in editor_type_newline()
...
While under Sortix these operations ought to be safe, UBSan will
complain regardless if you do a zero-byte memmove from NULL. This
caused the editor forcibly quit whenever it tried to open a file
that had an empty first line and at least one another line.
2021-05-02 22:42:37 +02:00
Juhani Krekelä
287425ac5a
Add Finnish Multilingual keyboard layout
2021-05-02 20:12:33 +03:00
Juhani Krekelä
eaa7732901
Add bare +altgr/-altgr modifier support to kblayout-compiler(1)
2021-05-02 20:08:21 +03:00
Jonas 'Sortie' Termansen
a83072bc3e
Fix username/password typo in release-iso-modification(7).
...
Thanks to jjuran for spotting this error.
2021-04-21 22:30:22 +02:00
Jonas 'Sortie' Termansen
b52bfa5978
Add nl(1).
2021-04-21 22:30:21 +02:00
Jonas 'Sortie' Termansen
a8f8b4cfd6
Add format support to date(1).
2021-04-06 23:22:22 +02:00
Jonas 'Sortie' Termansen
6a778c6089
Fix strftime(3) error handling and add %F, %z, and %Z support.
2021-04-06 23:22:22 +02:00
Jonas 'Sortie' Termansen
c25f36cd53
Fix faccessat(2) not supporting root access.
2021-02-17 23:11:31 +01:00
Jonas 'Sortie' Termansen
a6295e6d90
Allow poll on all kinds of files.
2021-02-17 23:11:31 +01:00
Jonas 'Sortie' Termansen
fb106181a9
Fix sigsuspend(2) not running signal handlers with the temporary mask.
2021-02-13 22:35:39 +01:00
Jonas 'Sortie' Termansen
50543d3c36
Fix printf(3) handling of negative precision.
2021-02-13 22:33:03 +01:00
Jonas 'Sortie' Termansen
aadeef6a7c
Fix psctl(2) not setting uid, euid, gid, and egid.
2021-02-11 20:47:49 +01:00
Jonas 'Sortie' Termansen
fff849b151
Fix improper uses of ScopedLockSignal.
2021-02-11 20:47:47 +01:00
Jonas 'Sortie' Termansen
b2235844da
Add TCP_MAXSEG and TCP_NOPUSH definitions.
2021-01-23 00:35:38 +01:00
Jonas 'Sortie' Termansen
e695e93146
Fix st_blocks being wrong on ext2.
2021-01-19 23:20:05 +01:00
Jonas 'Sortie' Termansen
ba8800df2c
Improve error handling in upgrade.conf(5) parsing.
2021-01-19 00:04:59 +01:00
Jonas 'Sortie' Termansen
84b008e455
Clean up minor issues in sysinstall(8).
2021-01-19 00:04:59 +01:00
Jonas 'Sortie' Termansen
69513b4396
Add grub-install boot device detection to sysmerge(8).
2021-01-19 00:04:59 +01:00
Jonas 'Sortie' Termansen
cb590ff205
Fix system upgrade leaking files.
2021-01-19 00:04:56 +01:00
Jonas 'Sortie' Termansen
29598b4fde
Fix /tix/manifest permissions in installations.
2021-01-17 23:14:54 +01:00