Announcing: nuOS 0.0.9.1b1 - a whole NEW FreeBSD distro, NOT a fork
PLEASE reply to this only in freebsd-chat. I have posted this
announcement to five freebsd mailing lists, I hope I am not overstepping.
Hello everybody. My name's Chad J. Milios. Long-time lurker, sparse rare
TL;DR? -- Skip below to our summary of features in an outline format
then grab it at http://nuos.org .
I would like to enthusiastically announce the release of an open-source
project of much pride and passion of my good friend Scott C. Ziegler and
myself which we have brought forth thanks to the support and
contributions of about 15 others. I believe it is solidly ready to be
shared with the world in the hopes that others may help build out the
software and community in a way that promotes quality, innovation and
collaboration much like FreeBSD has led the open-source community at doing.
The nuOS project ( http://nuos.org ) is about bringing back the power to
the people! Currently, technical software, hardware and networking
power. Ultimately, the power of personal communication and community
self-organization. Currently made by geeks/nerds/hackers for
geeks/nerds/hackers, our intent is to create an entirely new software
ecosystem that promotes quality, easy to use software that is for
any-and-every man woman and child yet without lassoing us all into one
herd of sheeple. ;) Simple, common things should always be EASY.
Complex, amazing or never-before imagined things should always be POSSIBLE.
We have a live image for download from our site. (Fully functional at
189 MB, just cat or dd to your 4 GB or larger usb drive or select it as
a flat-file virtual disk in your hypervisor of choice. It is not an ISO
and nuOS does not work well from optical media.) Or grab our source
(currently hosted by GitHub at https://github.com/CropCircleSys/nuOS )
and build the entire system from any FreeBSD 9.1 system with one simple
yet deeply customizable command. (We only build/test on amd64 and would
like that to change in the future.)
It is my belief that our software is PRODUCTION READY with our new beta
release. It might just be the answer to the management headaches you may
be having. Take the plunge tonight and find yourself breezing through
your day-job with "nu"-found ease tomorrow morning. If you're the
comfortable yet cautious type, watch the discussion for a week or two
first instead. Either way, we intend to cause a positive large and
lasting motion in the FreeBSD community.
I hope you will give nuOS a look and offer your assessments and ask any
questions you have. Please tear it and us apart in discussion with the
goal of a better FreeBSD for us all! Documentation is one area that is
sorely lacking though it is mostly because Scott and I consider most of
our code clear enough to have been pretty self-documenting [for our
purposes we've had until now]. It is our hope that with the community's
help we will bring more and more of this platform to the high standard
of quality that FreeBSD is known for. We aren't trying to create our own
new garden. We offer this code with hopes that it, in part or in whole,
might be some day included in canonical FreeBSD releases.
We have NO intention on forking FreeBSD and are instead developing a
very lightweight suite of tools which hopefully capture and collect
modern best practices while providing a testing and proving ground for
advanced FreeBSD features. We want to bring computing to more people,
bring more computer users to open source, bring more high-value and
responsible open-source users to FreeBSD and bring more current FreeBSD
users guidance and enlightenment regarding advanced features in the face
of FreeBSD's typical adherence to maximal backward compatibility, legacy
support and solid ground yet sometimes daunting array of intimately
detailed configuration choices.
We do not seek to limit those choices or to shift the ground beneath
current FreeBSD users' feet. We seek to offer an alternative flavor of
default system for those interested in taking a step back from their
current perspective in order to take a giant flying leap forward. This
doesn't mean giving up anything in terms of compatibility or
configurabilty, quite the contrary. Throughout our evolution, we seek to
always maintain the environment that FreeBSD users have come to know and
love while reducing the issues that sometimes irk them. We simply seek
to provide a better way to structure, provision and maintain production
systems and development processes.
Outline of features:
Extends plain old FreeBSD 9.1 (RELEASE or STABLE) and maintains total
We seek to remain nimble
Expect a production-ready seal of approval to lag behind releases
by no more than a week or two
and prebuilt images and packages
e.g. releases like 9.2 and 10.0, et al
Someone should be able to build it and use all applicable
features on 8.4 with ease
we simply haven't the time or inclination to even try
Default full ZFS filesystem layout, completely legacy-free
Boot from ZFS, boot to ZFS
If you'd like use all 100.0% of all your drives for one large zpool
Use one large zpool for all of your
alternate boot environments, including one called "rescue"
which is included
NO partitions, not some tiny /, not even a /boot
Just ZFS datasets in their infinite flexibility
/etc is now a ZFS dataset of its own
How did we do it?
Decades of conventional wisdom says /etc must be on /.
Check it out, discuss the whys and the trade-offs.
nu_jail - provision all sorts of jails
Yet no cookie-cutter limitations
Clean-room jails provisioned almost instantly
ZFS clone of /etc and /var give you almost no storage overhead
nullfs and/or unionfs mounts of /, /usr, /usr/local give you almost
no memory overhead
Run 1,000 jails and 10,000 Apache instances
they safely access the same executable memory pages
they securely know not of one-another's existence
Advanced intra-host networking with VIMAGE kernel by default,
Made for developers who want robustness, power and flexibility
Unlimited development, testing, staging and production environments
Uses all of the new jail and vnet features of FreeBSD 9.1
We cleaned out all of the cruft left over from earlier versions
That is just a taste of the features that we consider complete enough
for use in your PRODUCTION systems. There are many more features
production ready, our approach to package management for instance is in
the early stages and provides simple functionality but does so in a way
that is predictable, reliable and SOLID. It is also our strong
commitment that we will never cram any of these features down your
throat. You may take some a la carte without penalty and you may bring
your own tools like pkg-ng, portupgrade or portmaster.
We never store data in strange places or formats, we use the standard
editable text configuration files and other sanctioned FreeBSD
ways-of-doing-things as a single source of truth. ALL of the nuOS system
is manageable from the command line and those utilities have no external
dependencies, just sh, sed, awk and make from the base FreeBSD system.
APIs still being built atop our core utilities and being packaged for
open-source release expose interfaces such as HTTP REST, SNMPv3 and
Mailman and may do so using advanced software packages from the ports
collection. Functionality will NOT be introduced in APIs, web-apps or
GUIs that is not equally usable, first-class, from the command line. Not
even curses GUIs. Curse curses!
All that being said, the project is in it's infancy. Just breaching the
birth-canal, quite literally, with this announcement. It's not going to
do your work for you or cook you dinner just yet. What it offers is
clean and complete. Incomplete areas will be clearly marked with orange
cones and yellow tape. They will not impede your path should you decide
to avoid them.
It should be noted that the nuOS project is a loose not-for-profit
association currently sponsored by a for-profit corporation, Crop Circle
Systems, Inc. ( http://ccsys.com ) of which I am a founder. (A
corporation with a market cap of about that of a used Yugo, but a
for-profit corporation nonetheless.) All code released from the project
is and shall be covered by either the Simplified BSD license or Mozilla
Public License v2.0 if it is not simply placed into the public domain.
WARNING: It should be noted that the live boot image includes three user
accounts with default names and passwords. "joe": He's your normal
barely-privileged user, employee of business or all-around troublemaker;
this would be your boss. "ninja": That's you, technical sword for honor
and/or for hire. "sumyungai": That's me, your distributor. (Or you, when
you disseminate nuOS to other ninjas along with your value-added
contribution/support.) All of this is easily customizable with a few
command line options when you stage a real deployment.
On the live boot image the root account has no password and the local
ttys are assumed physically secured, as per FreeBSD default, so you can
just log in as root from the local console and change the account
passwords and/or add one for root if you like. sshd is the one service
already enabled but the network is not configured by default.
Uncommenting a line in /etc/rc.conf.local is all it takes to enable
auto-dhcp on every interface though most admins will want to add an
appropriate line for their preferred interface.
Thank you from Scott and myself for reading. Hopefully I'll be thanking
you for trying, discussing and contributing!