This is the first release of Unleashed - an operating system fork of illumos. For more information about Unleashed itself, see our website [1]. After taking way too long, I think we managed to get all the pieces in place to make the first release. I hope that future releases will be much more timely. Given our goals, it should not surprise anyone that we managed to rip out a *lot* of code. While in general "lines of code" is a horrible metric, I think it demonstrates the magnitude of our changes quite well. As of today, the Unleashed repo [2] has about 15.3Mloc while illumos-gate has 20.3Mloc. The extent of changes doesn't stop there. We did not just remove code, but in quite a few instances added code (e.g., import of bmake and libressl) or replaced existing code with a better version from one of the BSDs (e.g., sed/grep/awk). In the future, these emails will contain a list of changes from the previous release. Obviously, this being the first release means that there is no previous release to compare against. So, these are changes we've made since we forked the illumos-gate repo. With all this said, give the release a spin. If you find any issues or want to contribute, let us know on IRC or the mailing list. Happy hacking! Jeff. [1] http://unleashed-os.org [2] http://repo.or.cz/unleashed.git/ --- A '-' means that the support for that feature was removed, a '+' means that the support for that feature was added, and a '*' means that the behavior was changed. - 32-bit x86 kernel support (32-bit x86 applications are still supported) - sparc support - xen domU and dom0 support - Trusted Solaris aka. Trusted Extensions - SVR4 pkg support & code - solaris10 zone brand - GRUB - ndd(8) (use ipadm(8) and dladm(8) instead) - closed source components were removed, including: - in.iked(8) and related utilities - kmdb modules: mpt and nfs - kernel drivers: atiatom, bnx, ixgb, sdpib, usbser_edge, glm, mpt, adpu320, bcm_sata, lsimega, marvel88sx, acpi_toshiba, intel_nhmex - avs ("Sun StorageTek Availability Suite") - tcopy(1) - /usr/ucb and libbc ("SunOS/BSD Compatibility Package") - rdist(1), rcp(1), rlogin(1), rlogind(1m), rsh(1), rshd(1m) - uucp services (uuencode and uudecode are still present) - libslp, slpd ("Service Location Protocol daemon") - Java bits: poold(8), libzfs_jni, libadt_jni, libdtrace_jni, DTrace Java support, parts of libdns_sd - Sun Studio and lint build support - getpwent_r(3c), fgetpwent_r(3c), which are non-standard and were different from other OSes - getpw(3c) - POSIX.1c Draft versions of several reentrant functions were removed. Applications using the draft versions have to be modified; users of the standard versions are unaffected. - readdir_r - getpwuid_r - getpwnam_r - c_synonyms.so - drop support for Riyadh87, Riyadh88, and Riyadh89 timezones - routeadm(1m), svc:/network/routing/legacy-routing, svc:/network/ipv[46]-forwarding removed. use ipadm to manage forwarding and smf to manage the routing-related daemons. - xpg4, xpg6 directories were removed, utilities moved to /usr/bin. - troff(1), nroff(1), addbib(1), checknr(1), deroff(1), diffmk(1), eqn(1), indxbib(1), lookbib(1), refer(1), roffbib(1), soelim(1), tbl(1), ul(1), vgrind(1), /usr/bin/makedev /usr/bin/ta removed -- made obsolete by mandoc - pre-XPG5 behavior: ungetwc(3c), putwchar(3c), putwc(3c), fputwc(3c), fputws(3c), fgetwc(3c), getwc(3c), getwchar(3c), fgetws(3c) - C89 behavior: fprintf(3c), fscanf(3c), fwprintf(3c), fwscanf(3c), printf(3c), scanf(3c), snprintf(3c), sprintf(3c), sscanf(3c), swprintf(3c), swscanf(3c), vfprintf(3c), vfscanf(3c), vfwprintf(3c), vfwscanf(3c), vprintf(3c), vscanf(3c), vsnprintf(3c), vsprintf(3c), vsscanf(3c), vswprintf(3c), vswscanf(3c), vwprintf(3c), vwscanf(3c), wprintf(3c), wscanf(3c) + awk(1) replaced with a version imported from FreeBSD + libcurses, libxcurses, libxcurses2, terminfo were replaced by ncurses + grep(1) replaced with a version imported from FreeBSD + errc(3), warnc(3) were added to libc + fts(3) added to libc + reallocarray(3) added to libc + LibreSSL (libcrypto, libssl, libtls, openssl(1), nc(1)) added + cpio-formatted boot archives * man(1) is mandoc. mandoc.db support added, eliminating the need for manpage symlinks. * socket interfaces are now in libc. libsocket, libxnet and libnsl remain as filter libraries. * socket implementation was modified to be more reasonable by default, and it is no longer possible to choose an alternate socket implementation. msg_accrights was removed and msg_control members are now always visible in struct msghdr. Documentation was updated and moved to section 2: accept(2), bind(2), connect(2), getpeername(2), getsockname(2), getsockopt(2), listen(2), recv(2), send(2), shutdown(2), socket(2), socketpair(2), and the new sockatmark(2) and CMSG_DATA(3) * make(1) is bmake(1) instead of dmake(1) * sed(1) replaced with a version imported from FreeBSD * locale data has been updated to CLDR v28; tools to generate it were imported from FreeBSD. This fixes many character classification errors. * install(1m) was replaced by install(1) from OpenBSD. * all process security flags are on by default * putwchar(3c), putwc(3c), fputwc(3c), and fputws(3c) have only XPG5 behavior * man pages from section 1M have been moved to section 8; third party code (libncurses, namely) is not affected