Skip to content

Releases: klange/toaruos

v1.12.0

07 Apr 06:20
Compare
Choose a tag to compare

ToaruOS v1.12.0

Screenshot from 2020-04-07 15-25-55

What's New in v1.12.0?

Significant improvements have been made to the panel, including the return of the weather widget, supported by a new JSON parser library.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Release Files

image.iso is the standard build of ToaruOS, built by our CI toolchain. It uses ToaruOS's native bootloaders and should work in most virtual machines using either BIOS or EFI boot.

toaruos-grub.iso (when available) is an alternative CD with GRUB as a bootloader. If you are attempting to run ToaruOS on real hardware, this is generally preferred.

Changelog

  • bim: Updated to v2.6.0.
  • terminal: Fixed a bug in the VGA terminal with rendering of some characters used to display Bim.
  • terminal: Improved mouse cursor rendering in the VGA terminal.
  • graphics: Fixed handling for transparent bitmaps with different color planes from the usual.
  • json: New library for parsing JSON data.
  • weather: New tool for retrieving weather reports from OpenWeatherMap; based on the old Python implementation.
  • menu: New support functions.
  • list: New support functions.
  • panel: Weather widget has been added.
  • panel: Calendar widget has been added.
  • panel: Clock widget has been added.
  • tar: Support the GNU L long filename type.
  • gsudo: Redesigned authentication UI.

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.
  • There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.

v1.11.0 - 2019 Holiday Release

25 Dec 01:35
Compare
Choose a tag to compare

ToaruOS v1.11.0

Screenshot from 2019-12-25 10-30-53

What's New in v1.11.0?

Many improvements have been made in the kernel, tty layer, terminals, and Bim.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Release Files

image.iso is the standard build of ToaruOS, built by our CI toolchain. It uses ToaruOS's native bootloaders and should work in most virtual machines using either BIOS or EFI boot.

toaruos-grub.iso is an alternative CD with GRUB as a bootloader. If you are attempting to run ToaruOS on real hardware, this is generally preferred.

Changelog

  • bim: Several updates, including improved scrolling. Current version is 2.6.0.
  • terminal: Support for SGR-style mouse input, region-based scrolling, fixes to paste semantics for large pastes, asynchronous TTY input thread, menu adjustments, performance improvements for scrolling the VGA terminal
  • wallpaper-picker: New application to select wallpapers
  • rline: The syntax highlighting for rline_exp has been replaced with the new Bim highlighter engine, replacing the old Bim highlighter engine
  • kernel: Several bug fixes to TTY internals have been made
  • kernel: Several bug fixes related to seek have been made
  • kernel: Add fswait3 which works more similarly to poll
  • init: init is no longer built as a static binary
  • libc: Fixed an off-by-one error in localtime causing incorrect times.
  • libc: Implement poll with fswait3
  • linker: Fix an issue wherein the main object was not closed, leaking a file descriptor

Known Issues

  • A regression was found in the VGA terminal with rendering bim's space indentation indicators, this has been fixed in master.
  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.
  • There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.

v1.10.13

03 Nov 06:47
Compare
Choose a tag to compare

ToaruOS v1.10.13

Screenshot from 2019-11-03 15-45-26

What's New in v1.10.13?

The included release of Bim has been updated and contains many new features.

The shell now supports tab completing ~/ paths.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Release Files

image.iso is the standard build of ToaruOS, built by our CI toolchain. It uses ToaruOS's native bootloaders and should work in most virtual machines using either BIOS or EFI boot.

Changelog

  • bim: Several updates.
  • sh: Support tab completing ~/ paths.
  • tutorial: Show link to GitHub Sponsors profile

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.
  • There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.

v1.10.12

06 Sep 02:03
Compare
Choose a tag to compare

ToaruOS v1.10.12

Screenshot from 2019-09-06 11-15-12

What's New in v1.10.12?

Bim has received several updates alongside supporting kernel and terminal fixes.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Release Files

image.iso is the standard build of ToaruOS, built by our CI toolchain. It uses ToaruOS's native bootloaders and should work in most virtual machines using either BIOS or EFI boot.

(grub images will be uploaded at a later date) toaruos-grub.iso is an alternative CD using Grub 2 as a bootloader. Files on this CD have been heavily compressed, making it smaller, but ToaruOS lacks decompression tools for these compression formats out of the box so extended functionality such as runtime module loading from the mounted CD may not be available without additional package installation. The Grub configuration menu is also not as complete as the one found in the native bootloaders, so some options may require the use of Grub's command line to enable or disable. This build is intended for users who wish to attempt to run ToaruOS on real hardware. We do not provide support for ToaruOS on "bare metal". Grub CDs were built on Ubuntu 18.04 using GRUB 2.02-2ubuntu8.13, sources for which may be obtained from the Ubuntu repositories. Grub is free software under the terms of the GPLv3.

Changelog

  • bim: Several updates
  • kernel: kill(0) sends signal to process group
  • terminal: Fixed multiline scrolling in both terminal and terminal-vga.
  • terminal: Support more block characters.
  • graphics: load_sprite() returns a status code
  • imgviewer: handle error conditions

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.
  • There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.

v1.10.11

30 Jun 13:21
Compare
Choose a tag to compare

ToaruOS v1.10.11

Screenshot from 2019-06-30 22-49-15

What's New in v1.10.11?

New libc functions have been implemented to support continuing updates to Bim (the text editor). Some additional security features have been implemented.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Release Files

image.iso is the standard build of ToaruOS, built by our CI toolchain. It uses ToaruOS's native bootloaders and should work in most virtual machines using either BIOS or EFI boot.

toaruos-grub.iso is an alternative CD using Grub 2 as a bootloader. Files on this CD have been heavily compressed, making it smaller, but ToaruOS lacks decompression tools for these compression formats out of the box so extended functionality such as runtime module loading from the mounted CD may not be available without additional package installation. The Grub configuration menu is also not as complete as the one found in the native bootloaders, so some options may require the use of Grub's command line to enable or disable. This build is intended for users who wish to attempt to run ToaruOS on real hardware. We do not provide support for ToaruOS on "bare metal". Grub CDs were built on Ubuntu 18.04 using GRUB 2.02-2ubuntu8.13, sources for which may be obtained from the Ubuntu repositories. Grub is free software under the terms of the GPLv3.

Changelog

  • kernel: A limit has been implemented for recursion when calling #! interpreters.
  • esh: Print an error message when recursion limit is reached.
  • bim: Update to v1.5.2 with .biminfo support, bash highlighting, other fixups.
  • libc: Added realpath following ToaruOS's path semantics.
  • libc: sscanf family now supports whitespace before integers.
  • terminal-vga: Add support for mouse applications (eg., Bim).
  • libtoaru-termemu: Add support for ^[7 and ^[8 to save/restore cursor.

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.
  • There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.

v1.10.10

25 Jun 11:54
Compare
Choose a tag to compare

ToaruOS v1.10.10

Screenshot from 2019-06-25 20-55-48

What's New in v1.10.10?

Some security issues have been addressed to prevent a set of published exploits from remaining effective. Bim, ToaruOS's native text editor, has been updated to the latest build which adds several new features.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Changelog

  • pex: Deal with some unprotected sprintfs into small buffers to avoid buffer overflows.
  • kernel: Add bounds check to TOARU_SYS_FUNC_SETHEAP.
  • ld.so: ignore LD_LIBRARY_PATH on suid binaries.
  • bim: Updated to v1.4.5, which has many new features including a completely rewritten syntax highlighting engine, split views, current-line highlighting, and column selection and insertion.

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.
  • There are many known security issues with ToaruOS. You should not use ToaruOS in a production environment - it is a hobby project, not a production operating system. If you find security issues in ToaruOS and would like to responsibly report them, please file a regular issue report here on GitHub.

v1.10.9

27 Feb 12:43
Compare
Choose a tag to compare

ToaruOS v1.10.9

screenshot from 2019-02-27 21-45-46

What's New in v1.10.9?

Mostly just bug fixes in this release. I haven't done any releases in February, and a handful of things had piled up.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Changelog

  • lspci: Ignore blank lines, parse new format, add PCI device name tables
  • kernel: remove PCI device names
  • procfs: remove PCI device names
  • ld.so: Cleanup, better correctness
  • esh: Fix a bug in globbing

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.

v1.10.8

21 Jan 12:57
Compare
Choose a tag to compare

ToaruOS v1.10.8

screenshot

What's New in v1.10.8?

A minor followup to 1.10.7, this release adds a cal utility, fixes some keyboard interactions in the tutorial wizard, adds new file identification support in the File Browser, libc fixes, improvements to stty and a new compositor animation for dialogs.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Changelog

  • tutorial: Fix keybindings
  • file-browser: Add new file types
  • compository: new dialog animation
  • add cal
  • libc: fixes for mktime
  • stty: various improvements

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.

v1.10.7 - Tutorial Returns

11 Jan 12:01
Compare
Choose a tag to compare

ToaruOS v1.10.7

screenshot

What's New in v1.10.7?

Happy new year! This release adds a status bar to the File Browser, brings back the old tutorial wizard, and fixes several bugs.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Changelog

  • ata: fix small reads
  • kernel: store module text address for debugging
  • boot: update description for "writable root"
  • jpeg: fix bad rounding of image sizes
  • esh: support for redirecting stderr, fix redirects for shell functions
  • file-browser: add a status bar
  • libc: fix opendir error values
  • graphics: basic TGA loading support
  • rline: fix backspace in the legacy line editor
  • menu: smarter menu spawning
  • sdf: kerning tweaks
  • add tutorial

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.

v1.10.6

27 Dec 12:52
Compare
Choose a tag to compare

ToaruOS v1.10.6

screenshot from 2018-12-27 21-54-30

What's New in v1.10.6?

Fixes have been implemented for issues introduced in the previous release related to running Quake and generally running mkdir -p. Fixes for SDL applications have been implemented. The CD drive is now available for reading by regular users. The navigation bar in the File Browser has been improved.

What is ToaruOS?

ToaruOS is a hobbyist, educational operating system for x86 PCs, focused primarily on use in virtual machines. It provides a Unix-like environment, complete with a graphical desktop interface, shared libraries, feature-rich terminal emulator, and support for running Python 3.6, GCC, and several other ports. The core of ToaruOS, provided by the CD images in this release, is built completely from scratch. The bootloader, kernel, drivers, C standard library, and userspace applications are all original software created by the authors, as are the graphical assets.

Who wrote ToaruOS?

ToaruOS is primarily written by a single maintainer, with several contributions from others. A complete list of contributors is available from AUTHORS.

Running ToaruOS

It is recommended that you run ToaruOS in a virtual machine / emulator, for maximum compatibility. ToaruOS's driver support is limited, and running on real "bare metal", while possible, does not provide the most complete experience of the OS's capabilities except on very particular hardware. ToaruOS is regularly tested in VirtualBox, QEMU, and VMWare Player, and can be successfully booted (with poor performance) in Bochs. ToaruOS is intended to run from a live CD, though it is possible to install to a hard disk. Additional details on running ToaruOS in different virtual machines is available from the README.

Changelog

  • file-browser: better text input
  • ata: provide /dev/cdrom* as o=r
  • libc: fix a parse mistake in strtoul
  • kernel: fix mkdir -p
  • sudo: fix bad timeouts because we weren't actually writing token files
  • compositor: fix missing button status when warping cursor
  • base: ship /opt/bochsrc.txt
  • (repository update) SDL: fix issues with decorations

Known Issues

  • Several utilities are missing functionality.
  • The libc's implementation of scanf is incredibly incomplete.