The "Copyfree Software (http://copyfree.org/) News Roundup" is back!
- The big news for the past month is obviously the release of FreeBSD version 8.2 (http://www.freebsd.org/releases/8.2R/announce.html). Changes in the core OS include improved Xen (http://en.wikipedia.org/wiki/Xen) virtualization support, LZMA (http://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Markov_chain_algorithm) (7z) compression support in tar, stronger crypto, ZFS (http://en.wikipedia.org/wiki/ZFS) file system improvements (though that part is restrictively licensed and still far behind Solaris 11 (http://www.oracle.com/us/products/servers-storage/solaris/index.html)), a few new drivers, and bug-fixes. New release package versions (http://distrowatch.com/freebsd) include: Gnome 2.32.1, KDE 4.5.5, Firefox 3.6.13, Gimp 2.6.11, Python 2.6.6, perl 5.12.3, PHP 5.3.5, Apache 2.2.17, and PostgreSQL 9.0.3. The KDE-based distro of FreeBSD issued a simultaneous PC-BSD 8.2 release (http://www.pcbsd.org/content/view/202/11/) with improvements to the installation procedure (particularly partitioning and ZFS support). The analogous Gnome-centric FreeBSD distro called GhostBSD (http://en.wikipedia.org/wiki/GhostBSD) v2 is still in beta (http://ghostbsd.org/422/ghostbsd-2-0-x86-beta-is-out-now/).
The most exciting FreeBSD features, however, are still being held back for version 9 (http://www.freebsd.org/snapshots/). What might finally compel me to switch from "Copyfreer" OpenBSD is the addition of the permissively-licensed Clang (http://en.wikipedia.org/wiki/Clang)/LLVM (http://en.wikipedia.org/wiki/Low_Level_Virtual_Machine) compiler infrastructure as a viable alternative to the restrictively-licensed GNUopoly of GCC. The core system and many key ports (including Chromium) make it through the transition unharmed. Another great addition will be the ability to finally run FreeBSD (http://www.daemonology.net/blog/2010-12-13-FreeBSD-on-EC2.html) on Amazon's cloud framework (http://aws.amazon.com/), which should be stable by the time v9 is released (although, as with most platforms, NetBSD got there first (http://www.feyrer.de/NetBSD/bx/blosxom.cgi/index.front?-tags=ec2)). Other v9 improvements (http://ivoras.sharanet.org/freebsd/freebsd9.html) will include: significant TCP/IP stack improvements, tickless (dynamic tick) mode, and other performance optimizations, as well as USB 3.0 support. PC-BSD v9 (http://blog.pcbsd.org/2011/02/9-current-20110225-snapshot-available-for-testing/) will be the breakthrough release that finally moves away from just KDE and offers users a choice of any desktop environment, as well as better handling of PBI packages (http://www.pbidir.com/) with pbi_add. Progress is also being made in replacing (and eventually removing) the remaining GNU commands from the core system, most of which are rather trivial: cpio, ar, ranlib, bc, dc, find (the BSD version of that command is reaching feature parity with GNU), etc. But be warned - the current alpha testing versions of 9 are still very unstable, and it's also slower than the production release will be due to the debugging compiler settings and other debugging-related overhead.
- For people sticking with OpenBSD (http://www.openbsd.org/), like myself, the biggest news of the month comes from the Hybrid Source (http://hybridsource.org/) mastermind Sprewell - Chromium 10.0.648 is now available on OpenBSD (http://chromium.hybridsource.org/)! This is just the first compilation, so it's still very shaky, unstable, and slow, but it's a new beginning. (The previous porting efforts (http://sightly.net/peter/openbsd/chromium/) seem to have stalled some time ago...)
I believe -- and, heck, even Microsoft admits (http://thetechjournal.com/tech-news/silverlight-is-shifted-to-html5-by-microsoft.xhtml) -- that HTML5 is the future, so bringing the world's most Copyfree modern Web client (http://code.google.com/chromium/terms.html) to the world's most Copyfree operating system (http://www.openbsd.org/policy.html) and achieving optimal performance for this combination is very important work. Of course there are other Copyfree WebKit-based browsers available for OpenBSD, like the minimalist surf (http://surf.suckless.org/), but those are not the kinds of browsers most people can live with on a day-to-day basis. Chrome (http://en.wikipedia.org/wiki/Google_Chrome) / Chromium (http://en.wikipedia.org/wiki/Chromium_(web_browser)) offers everything that a modern client stack needs: innovative lightning-fast JavaScript (http://www.eweek.com/c/a/Application-Development/Google-Chrome-10-Hits-Beta-with-Speedier-Crankshaft-898489/), leading HTML5 feature support (http://html5test.com/results.html), a growing collection of extensions (https://chrome.google.com/extensions/), blacklists and other security features, etc. One innovative feature from Google that I really like is Native Client (http://en.wikipedia.org/wiki/Google_Native_Client), which allows secure in-browser execution of x86 compiled code, and it seems to be picking up some momentum (http://developers.slashdot.org/story/11/02/24/1617233/Google-x86-Native-Browser-Client-Maybe-Not-So-Crazy-After-All). So, once again, huge kudos to Sprewell for his porting work, and I hope many stability and performance enhancements are yet to come!
- Chad Perrin (http://sob.apotheon.org/), the superhero behind Copyfree.org (http://copyfree.org/), has been writing many interesting articles / blog posts on sites like Tech Republic (http://www.techrepublic.com/topics/chad+perrin), including: Code Reuse and Technological Advancement (http://blogstrapping.com/?page=2011.060.00.28.21)" (also: Licensing and the Singularity), "When 'Open Source' Software Isn't Truly Open Source (http://www.techrepublic.com/blog/opensource/when-open-source-software-isnt-truly-open-source/2141)", The Difference Between Secrecy and Privacy as Security Concepts (http://www.techrepublic.com/blog/security/the-difference-between-secrecy-and-privacy-as-security-concepts/5002)" (mentions WikiLeaks), "Key Open Source Security Benefits (http://www.techrepublic.com/blog/security/key-open-source-security-benefits/4941)", "How a Server Side Language Achieves Popularity (http://blogstrapping.com/?page=2011.029.07.44.45)", "A Skeptic's History of C++ (http://www.techrepublic.com/blog/programming-and-development/a-skeptics-history-of-c-/3379)", and on pf (http://www.techrepublic.com/blog/security/filtering-pf-firewall-logs/5046) [2] (http://www.techrepublic.com/blog/security/the-book-of-pf-is-the-canonical-reference-for-the-pf-firewall/5030), rssh (http://www.techrepublic.com/blog/security/set-up-a-secure-file-transfer-account-with-rssh/4975), logwatch (http://www.techrepublic.com/blog/opensource/use-logwatch-to-make-log-watching-a-little-easier/2246), sysctl (http://www.techrepublic.com/blog/security/use-sysctl-security-settings-to-lock-down-a-freebsd-system/4978), and burncd (http://www.techrepublic.com/blog/opensource/preparing-installation-media-at-the-freebsd-command-line/2168), among other topics. Always a great read!
- The February TIOBE programming language popularity index (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html) reports remarkable gains for Python (http://www.python.org/), which is still remains my favorite server-side scripting language, as it has been for a very long time. Python is now at the #4 spot, behind only C/C++ and Java, leapfrogging PHP and making the PHB (http://en.wikipedia.org/wiki/Pointy-haired_Boss)'s who've made me code Perl instead of "that obscure snake language" a decade ago hang their heads in shame! (Well, not really, and I doubt they'd remember.) The current stable versions of Python are 2.7.1 and 3.2 (just released) (http://developers.slashdot.org/story/11/02/21/1336215/Python-32-Released), but most UNIX distributions are still on 2.6.x (OpenBSD -stable is mostly still on 2.5.4, although later versions are available, and the most popular Web server OS (http://scottlinux.com/?p=668) CentOS is on 2.4.3).
Python's Copyfree status (http://docs.python.org/license.html) remains imperfect, as is PHP's (http://en.wikipedia.org/wiki/PHP_License), but it's definitely Copyfree-er than Mono, Ruby, or Perl. Not all of Python's components and packages share the same license, however, so a Copyfree purist (and anyone who just wants to avoid confusion (http://blog.devork.be/2009/11/python-modules-and-gpl-i-still-dont-get.html) and potential legal liabilities) will want to avoid modules like: Git, Paramiko, PyQt, PyGTK, wxPython, PyMedia, Plone, web2py, CubicWeb, SQLObject, Lupy, SimPy, PyMT, Conio, etc, etc, etc (http://pypi.python.org/pypi?:action=browse&show=all&c=65). Be sure to check around and pay attention to licenses for every package you use - there are plenty of Copyfree alternatives available (http://pypi.python.org/).
- The TIOBE index also shows Java further solidify its #1 spot in programming language popularity, and Java continues to improve in terms of performance (http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=all) as well, but the potential for a viable Copyfree Java stack is looking increasingly grim. The one project on which I've placed all of my Java-related hopes for the past few years was Apache Harmony (http://harmony.apache.org/), even though it was being developed at a snail's pace, with FreeBSD support being rather lame and support for other BSD's non-existent. Oracle obviously abandoned that project after acquiring Sun, and in October it was announced that IBM is disengaging from Harmony (http://en.wikipedia.org/wiki/Apache_Harmony#Disengagement_from_IBM) to back Oracle's restrictively-licensed Java stack instead, which leaves Google as Harmony's sole major backer. Given the recent legalistic aggression (http://www.pcworld.com/article/217438/googles_java_infringement_refuted.html) used against it, Google would be wiser to focus its long-term plans on own technology stack, including Native Client and Go (http://en.wikipedia.org/wiki/Google_Go). Now there's something called "IcedRobot (http://www.icedrobot.org/)" endeavoring "the GNUlization of Android" and moving things from Harmony to the GPL'ed OpenJDK. So this is the time for Java programmers to strongly consider a plan to move on to something else...
- When jumping between exotic OS'es on bare hardware (i.e. not in virtualization), hardware compatibility becomes a major issue, and the biggest problem usually tends to be wireless connectivity. Some operating systems support very few (if any) wireless adapters, especially if you need to use the newer 802.11n standard - even Linux and Solaris (http://www.oracle.com/technetwork/server-storage/solaris11/downloads/downloads-sol11-168267.html?ssSourceSiteId=ocomen) are often a pain in the butt, much less OS'es like *BSD, MINIX (http://www.minix3.org/), Haiku (http://haiku-os.org/), House (http://programatica.cs.pdx.edu/House/), QNX (http://en.wikipedia.org/wiki/QNX), etc. And the drivers that are present are often buggy, incomplete, offer limited encryption features, etc. Fortunately all those problems have a simple hardware solution - use a "universal" wifi adapter like NetGear WNCE2001 (http://www.netgear.com/landing/wnce2001.aspx) (currently $59.44 if you search for it on Newegg (http://newegg.freetalklive.com/) or Amazon (http://amazon.freetalklive.com/)).
This device connects to a standard Ethernet port and doesn't require your operating system to know anything about wireless - all configuration is done via a simple Web-based interface served by the device. It will work with anything that has an Ethernet port - old computers without USB, Macs, video game consoles (you may need to hook it up to something with a Web browser first to configure it), DVR's, routers (use your old cheap wired hub to set up a wireless bridge), etc. Ethernet also offers the possibility of using a much longer cable than USB, so you could more easily place it closer to a window, on a car roof, or wherever else the signal is best. Plus you'll never have to worry about losing the driver CD and not being able to reconnect after reinstalling the OS, as often happens with Windows. So if you're thinking about buying a USB wifi adapter, I would strongly recommend getting an Ethernet one instead.
- "Free Software Hero Attacked by Communist Fanatic" - that should have been the headline of this article (http://www.theregister.co.uk/2010/12/15/stallman_on_chrome_os/) covering Stalinman's bashing of Google Chrome OS. And, needless to say, his site (http://stallman.org/) is still an endless torrent of calls for government violence - unions, taxes, regulations, luddism, government control of media... Don't let the parts you agree with fool you - all tyrants initially claim to support "freedom", which they define as them being in control. Sample quote: "evidence shows Obama's economic stimulus worked - and that right-wing budget cuts will cause disaster". When you use GNU software and don't speak out against it, this is precisely the kind of philosophy you are endorsing! Silence implies consent!
- Things not being covered include: BSD podcasts (no (http://webbaverse.com/category/the-bsd-show/feed) new (http://bsdtalk.blogspot.com/) episodes (http://freebsdforall.blogspot.com/) in all these months), DraglonFly's lousy benchmark performance (http://www.phoronix.com/scan.php?page=article&item=dragonfly_hammer&num=1) (give it time), BSD Magazine (http://bsdmag.org/) (I can't stand PDF's), Haiku OS (http://haiku-os.org/) (things seem to have slowed down), PostgreSQL 9 (http://www.postgresql.org/about/featurematrix) (it's awesome, but I've been in a NoSQL mood lately), the OpenBSD backdoor allegations (they're FUD), and of course OpenBSD / AerieBSD failing my "culture test" (http://marc.info/?t=129750909300001&r=2) (nobody's perfect).
And, in conclusion... More Devilettes (http://en.wikipedia.org/wiki/Devilette)! ;)
(http://alexlibman.net/img/bak/bsd-devilettes.jpg) (http://alexlibman.net/img/bak/bsd-devilettes.jpg)