Mirror of most important branches of the main Sortix repository
Go to file
Jonas 'Sortie' Termansen 6e51c1ae51 Add init groups.
Every process now has an init process like it has a session, and each
session belong to an init. Orphaned processes are reparented to its init
process. All descendent processes are SIGKILL'd when an init process exits
and creating additional processes/threads fails.

Add setinit(2) for becoming the init process for your child processes and
add getinit(2) for locating your init process.

Add TIOCSCTTY force flag that releases a terminal from its current session
and makes it the controlling terminal for the current session. This ioctl
is essential to transferring the controlling terminal to a nested init,
which has its own session.

Add TIOCUCTTY that releases the terminal as the controlling terminal for
its current session.

Remove INIT_PID as it is replaced by getinit(2).
2024-06-22 18:25:49 +02:00
bench Rename CLOCK_BOOT to CLOCK_BOOTTIME. 2022-02-22 18:01:57 +00:00
build-aux Revert "Update to perl-5.39.5." 2024-06-22 18:25:49 +02:00
carray Fix carray(1) wrongly mentioning the -i option that is currently compatibility. 2018-07-17 12:25:52 +02:00
checksum Add checksum(1) --cache option. 2024-06-22 18:25:49 +02:00
chkblayout Add display server. 2023-06-24 00:43:36 +02:00
chvideomode Add display server. 2023-06-24 00:43:36 +02:00
dhclient Add dhclient(8). 2023-02-21 23:24:06 +01:00
disked Add fatfs(8). 2024-06-22 18:25:48 +02:00
display Handle SIGTERM in display(1). 2024-06-22 18:25:47 +02:00
dnsconfig Add dhclient(8). 2023-02-21 23:24:06 +01:00
editor Handle SIGWINCH in editor(1). 2024-06-22 17:23:51 +02:00
etc/signify Add tix-upgrade(8). 2024-06-22 18:25:48 +02:00
ext Fix extfs(8) mount warnings. 2024-05-22 13:26:56 +02:00
fat Add fatfs(8). 2024-06-22 18:25:48 +02:00
games Add display server. 2023-06-24 00:43:36 +02:00
hostname Fix hostname(1) manual page file being executable. 2017-12-04 23:56:47 +01:00
ifconfig Add dhclient(8). 2023-02-21 23:24:06 +01:00
init Add init groups. 2024-06-22 18:25:49 +02:00
iso9660 Add iso9660 filesystem implementation. 2024-06-22 18:25:48 +02:00
kblayout Add Finnish Multilingual keyboard layout 2021-05-02 20:12:33 +03:00
kblayout-compiler Add bare +altgr/-altgr modifier support to kblayout-compiler(1) 2021-05-02 20:08:21 +03:00
kernel Add init groups. 2024-06-22 18:25:49 +02:00
libc Add init groups. 2024-06-22 18:25:49 +02:00
libdisplay Add display server. 2023-06-24 00:43:36 +02:00
libm Standardize header include guards. 2022-07-09 20:51:13 +02:00
libmount Fix ESP endian. 2024-06-22 18:25:48 +02:00
libui Sync login framebuffer code to libui. 2024-06-22 18:25:47 +02:00
login Handle SIGTERM in login(8). 2024-06-22 18:25:47 +02:00
nyan Add nyan(1). 2024-06-22 18:25:48 +02:00
ping Add ping(8). 2023-02-23 00:43:11 +01:00
ports Add php port. 2024-06-22 18:25:49 +02:00
regress Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
rw Include <strings.h> in rw(1) to get strcasecmp(3). 2018-04-15 18:06:49 +02:00
sf Fix date format in manual pages. 2017-07-02 22:07:39 +02:00
sh Handle SIGHUP in sh(1) and save shell history. 2024-06-22 17:26:04 +02:00
share Add init groups. 2024-06-22 18:25:49 +02:00
sysinstall Add init groups. 2024-06-22 18:25:49 +02:00
terminal Add init groups. 2024-06-22 18:25:49 +02:00
tix Add tix-check(8). 2024-06-22 18:25:48 +02:00
trianglix Trianglix 4. 2024-06-22 18:25:48 +02:00
update-initrd Fix update-initrd(8) not atomically replacing the initrd. 2024-03-25 23:11:36 +01:00
utils Add init groups. 2024-06-22 18:25:49 +02:00
.gitignore Add ports to the Sortix repository. 2022-06-13 22:29:53 +02:00
LICENSE Add ports to the Sortix repository. 2022-06-13 22:29:53 +02:00
Makefile Add init groups. 2024-06-22 18:25:49 +02:00
README Add networking stack. 2022-12-11 13:40:34 +01:00

README

The Sortix Operating System
===========================

Sortix is a small self-hosting operating-system aiming to be a clean and modern
POSIX implementation.  It is a hobbyist operating system written from scratch
with its own base system, including kernel and standard library, as well as
ports of third party software.  It has a straightforward installer and can be
developed under itself.  Releases come with the source code in /src, ready for
tinkering.

It has been in development since 2011 by a single developer and contributors.
Though the system is stable and capable right now, it is still early in
development, and a number of crucial features haven't been made yet.  Releases
are made yearly and future releases will add features such as SMP, and USB that
were skipped in favor of becoming self-hosting now.

Documentation
-------------

The system is documented as manual pages.  Introductory system usage is covered
in the user-guide(7) manual page.

Links
-----

For more information, please visit the official website:

  https://sortix.org/

Building Sortix
---------------

Development of Sortix under itself is covered in development(7).

Development from another operating system is covered in cross-development(7).

You can view the cross-development(7) manual page with this command:

  man share/man/man7/cross-development.7

License
-------

Copyright 2011-2016 Jonas 'Sortie' Termansen and contributors.

Sortix is free software licensed under the ISC license as described in the
LICENSE file.  It also contains permissively licensed code from other projects.