Skip to content

ULOS2-beta.4

Compare
Choose a tag to compare
@Ocawesome101 Ocawesome101 released this 20 Sep 01:39
· 47 commits to release since this release

Nearly seven months after the last beta, this release brings support for unmanaged filesystems (currently just SimpleFS) and partitioning (OSDI, MTPT) along with a plethora of other, smaller, tweaks and changes.

To install this release, run pastebin run tkhgk4AJ beta.4 from OpenOS. If running an beta 2 or newer you can simply run uptu. Release beta.5 contains changes to file permission semantics that will break existing installations. Do not use older installer images.

Changelog:

  • misc: fixed release script not setting permissions correctly
  • misc: sudo and passwd are now properly setuid when packaged and should work on new installations
  • misc: split all repositories into dev and release branches.
  • cldr: added support for selecting which filesystem to load boot configuration from
  • cldr: added support for loading from unmanaged drives
  • cldr: added SimpleFS support
  • cldr: added support for disk partitions
  • cldr: added support for OSDI partitioning
  • cynosure-2: fixed several bugs with the untested hdX block device code
  • cynosure-2: fixed file descriptor flush propagation causing ttys to not flush when instructed
  • cynosure-2: added SimpleFS driver (!)
  • cynosure-2: added sync() system call
  • cynosure-2: added generic partition table support using new devfs handlers
  • cynosure-2: added support for MTPT and OSDI partition table formats
  • cynosure-2: flush all buffers before shutdown
  • cynosure-2: added SYSTEM loglevel used only for poweroff/reboot messages
  • cynosure-2: file permissions are now set on creation according to the process's umask at the filesystem level rather than the kernel calling chmod
  • cynosure-2: devfs devices now have a type field
  • cynosure-2: added device handler support to the devfs
  • cynosure-2: added reregister ioctl to re-run device handlers, useful if e.g. a partition table changes
  • cynosure-2: mount() syscall now accepts e.g. hda2 in addition to /dev/hda2
  • cynosure-2: close() now returns whether the file descriptor truly closed
  • cynosure-2: devfs devices now have a defined type field
  • cynosure-2: rootfs kernel arg now accepts address,partitionid e.g. 4b2cef,2
  • cynosure-2, liblua: added new error ENOTEMPTY
  • liblua: fixed posix.errno missing ENOSYS
  • liblua: file:close() now only marks files as closed if they're actually closed. not doing this was causing weird issues.
  • coreutils: fixed ls missing colors for unknown file types
  • coreutils: fixed chmod not matching its mode argument correctly
  • coreutils: added mkfs.sfs utility
  • coreutils: added mkpart utility
  • coreutils: added diskinfo utility
  • coreutils: wc can now read from standard input
  • coreutils: added dd utility (not like gnu dd)
  • coreutils: tweaked ls's output formatting slightly
  • coreutils: fixed some errant behavior in cp
  • coreutils: marked a few files executable that were not previously
  • upt: post-install scripts are now properly included in packages when building
  • upt: package downloads now verify size
  • upt: fixed package size counting
  • upt: package size is now stored only in packages.upl, and not in packages' /meta file
  • upt: upti now accepts -l to invoke uptl before attempting installation
  • upt: upt.meta.split() can now return data as key-value pairs rather than an array of values
  • vbls: added umask builtin
  • vbls: fixed a small tokenizer issue causing /etc/profile to be processed incorrectly
  • installer: added support for installing to block devices, currently only as simplefs
  • installer: now installs Prism BIOS when installing to block devices
  • installer: remove broken tmpfs checks
  • installer: entering 0 as a filesystem selection will exit the installer
  • installer: now clears eeprom data after installing
  • installer: now prompts the user to press Enter before quitting (most of the time)