Commit Graph

2776 Commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen c9126b4f90 Fix the sortix-1.1-tix-3g hook marker not existing. 2023-08-15 23:57:28 +02:00
Jonas 'Sortie' Termansen 871c057b31 fixup! Add tix-upgrade(8). 2023-07-16 21:26:49 +02:00
Jonas 'Sortie' Termansen 14b389dfbe fixup! Add tix-upgrade(8). 2023-07-16 21:19:46 +02:00
Jonas 'Sortie' Termansen 2402ef8361 fixup! Add tix-upgrade(8). 2023-07-16 19:46:09 +02:00
Jonas 'Sortie' Termansen 7f8cb8aecc fixup! Add tix-upgrade(8). 2023-07-16 17:44:04 +02:00
Jonas 'Sortie' Termansen 401ec64e3a Add getty(8). 2023-07-16 16:03:13 +02:00
Jonas 'Sortie' Termansen 9fa88f0018 Add terminal and interrupt support to com(4). 2023-07-16 16:03:13 +02:00
Jonas 'Sortie' Termansen 7d581f920a Add nyan(1). 2023-07-16 16:03:12 +02:00
Jonas 'Sortie' Termansen 2288785566 Draft video-player. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen e71d6242a0 Work around pty deadlock. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen b1bfa673af Add cdrom mounting live environment. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen d02a5e646d Revert "Parallelize driver initialization."
This reverts commit 0fef08bbc4.
2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 2866794520 Parallelize driver initialization. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 1272d27522 Speed up ata(4) 400 ns waits.
Waiting for any non-zero duration currently waits for at least one timer
cycle (10 ms), which is especially expensive during early boot.

The current workaround of simply reading the status 14 times seems really
suspicious although the osdev wiki documents it, but let's see how well it
works on real hardware, it's probably good enough.

Try to determine the initial selected drive to save one drive selection.
2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 9c81cad140 Decrease PS/2 timeouts. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 14140ee18c Add uptime(1) -pr options. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen f5a892e054 Add iso9660 filesystem implementation. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 1ca5712115 Add kernel virtual address space usage debug information. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 29f27fc7a5 Revert "Update to bison-3.8.2."
This reverts commit b82fae810b42c5426d21c4dc153b32f086dd7fde.
2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen 1b52b0f6f9 Update to bison-3.8.2. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen b61d3d3a03 Debug TCP socket state listing. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen e528fc24e6 Add kernel heap allocation tracing debug facility. 2023-07-16 16:03:01 +02:00
Jonas 'Sortie' Termansen b2a22f1ad6 Add m4, perl, and texinfo to the basic ports set. 2023-07-16 16:03:00 +02:00
Jonas 'Sortie' Termansen 0818e5d78c Trianglix 4. 2023-07-16 16:03:00 +02:00
Jonas 'Sortie' Termansen 405d5c8d26 Add tix-check(8). 2023-07-16 16:03:00 +02:00
Jonas 'Sortie' Termansen d43bb712ee Volatile release. 2023-07-16 16:03:00 +02:00
Jonas 'Sortie' Termansen 1adf011044 Add tix-upgrade(8). 2023-07-16 16:03:00 +02:00
Jonas 'Sortie' Termansen 910ea14e18 Add signify port. 2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen 8c6080dfee Add pty(1). 2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen 68a5677c7a Add irc(1).
Co-authored-by: Juhani Krekelä <juhani@krekelä.fi>
2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen 2149b054ad Add getaddrinfo(1). 2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen 95eedfe1f1 Add host(1). 2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen e27e246cc6 Enable stack smash protection by default. 2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen 613e94a4a6 Enable undefined behavior sanitization by default. 2023-07-16 16:00:49 +02:00
Jonas 'Sortie' Termansen 563973d6b3 Remove mkinitrd(8). 2023-07-16 16:00:48 +02:00
Jonas 'Sortie' Termansen ccf98df93c Handle SIGTERM in chroot(8). 2023-07-16 16:00:23 +02:00
Jonas 'Sortie' Termansen 77e777423c Add sysmerge(8) --target option. 2023-07-16 16:00:22 +02:00
Jonas 'Sortie' Termansen 33c1e98f0e Fix tar race condition when tix-port(8) strips programs. 2023-07-16 12:58:45 +02:00
Jonas 'Sortie' Termansen d189183900 Third generation Tix.
The .tix.tar.xz binary package format now stores the contents in the root
rather than the data/ subdirectory and the tix metadata now has the same
layout as the loose files in /tix, such that a .tix.tar.xz package can
simply be directly extracted into the filesystem. The /tix/manifest/ is now
included in the binary package rather than being generated on installation.

The /tix/collection.conf and /tix/tixinfo metadata files are now in the
tix-vars(1) format in the style of port(5).

The /tix/installed.list file has been removed since it isn't loose file
compatible and one can list the /tix/tixinfo directory instead.

The /tix/repository.list file has been removed since the feature is unused
and doesn't match the future direction of tix.

The kernel support for tix binary packages has been removed since it will
simply install by extracting the tar archive into the root filesystem.

Add the post-install sha256sum to the port version stamp.
2023-07-15 16:43:27 +02:00
Jonas 'Sortie' Termansen b819428bd2 Remove outdated statement that ports can't be built natively. 2023-07-12 23:10:39 +02:00
Jonas 'Sortie' Termansen 4990cef43c Reposition windows when the display resolution changes. 2023-07-12 23:10:39 +02:00
Jonas 'Sortie' Termansen ab9f2353e5 Add sysinstall(8) --system and --ports options. 2023-07-12 21:55:32 +02:00
Jonas 'Sortie' Termansen edd8566155 Modernize extfs(8) error handling. 2023-07-12 21:54:57 +02:00
Jonas 'Sortie' Termansen ffc1b02b94 Remove workaround for qemu 1.4.x and 1.5.x.
These releases are now 10 years old and are no longer a concern.
2023-07-12 21:54:57 +02:00
Jonas 'Sortie' Termansen e933eb5a1c Replace mkinitrd(1) with tar(1).
The custom initrd format was originally useful when it was mounted,
however it has been extracted into the ramfs for a very long time and
has no advantages over the standard tar format which can be readily
created and modified using standard tools. The kernel initrd(7) support
already supports tar, so this change simply switches the format.
2023-07-12 21:45:11 +02:00
Jonas 'Sortie' Termansen 917722cf70 Add display server.
This change adds the display(1) graphical user interface and desktop
environment with basic windowing support and the graphical terminal(1)
emulator along with integrations in chkblayout(1), chvideomode(1),
sysinstall(8), sysupgrade(8), as well as the games and ports.

Adopt the Aurora procedural wallpaper in display(1) and login(8).

Remove the obsolete dispd.

Juhani contributed keyboard and video mode APIs to the display protocol
and other miscellaneous changes.

dzwdz contributed the initial functioning window buttons, improved title
bar, window tiling, and minor bug fixes

Co-authored-by: Juhani Krekelä <juhani@krekelä.fi>
Co-authored-by: dzwdz <kg67199@gmail.com>
2023-06-24 00:43:36 +02:00
Jonas 'Sortie' Termansen b384bce28c Switch trianglix(1) from dispd to dispmsg_issue(2). 2023-06-24 00:00:10 +02:00
Juhani Krekelä e4ce686576 Use standard termios flags and functions in chvideomode(1).
Previously chvideomode(1) used {get,set}termmode(2) as well as
tcgetwincurpos(2), which are non-standard and only work in the kernel
terminal.

This necessitates changing the keybind for exiting the menu from esc to
Q, as there is no good standard way to disambiguate between escape
character by itself and the start of an escape sequence.
2023-06-20 01:06:20 +03:00
Juhani Krekelä 0660d420f3 Fix pagination in chvideomode(1).
Pagination code deals with two indices for video modes, one relative to
the start of video modes array and one relative to the start of current
page. Previously when displaying the list of modes, the video mode array
would be accessed using the one relative to the start of the current
page, meaning that pages 2 and onwards displayed repeats of the video
modes on page 1. This changes the the display code to use indices
relative to the start of the video modes array when accessing the array.
2023-06-14 20:05:03 +03:00
Juhani Krekelä 1773d6a131 Fix setting custom modes on command line in chvideomode(1).
Previously setting a mode from the command line would only work if it
was one of the pre-set resolutions offered by the driver. If the driver
supported custom resolutions and a user tried to set one on the command
line, chvideomode(1) would instead launch in interactive mode.
2023-06-14 01:28:11 +03:00