{"id":1017,"date":"2008-02-22T16:03:51","date_gmt":"2008-02-22T06:03:51","guid":{"rendered":"http:\/\/www.flamingspork.com\/blog\/2008\/02\/22\/solaris-linux-it-is-gnu-folks\/"},"modified":"2008-02-22T16:03:51","modified_gmt":"2008-02-22T06:03:51","slug":"solaris-linux-it-is-gnu-folks","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2008\/02\/22\/solaris-linux-it-is-gnu-folks\/","title":{"rendered":"Solaris, Linux, it is GNU folks&#8230;"},"content":{"rendered":"<p><a href=\"http:\/\/krow.livejournal.com\/583459.html\">Brian &#8220;Krow&#8221; Aker&#8217;s Idle Thoughts &#8211; Solaris, Linux, it is GNU folks&#8230;<\/a><\/p>\n<p>Brian hits the nail on the head&#8230; The way you get a usable system is install all the GNU tools.<\/p>\n<p>This is how I go from fresh Ubuntu install to building MySQL:<\/p>\n<p>apt-get build-dep mysql-server<\/p>\n<p>apt-get install bison<\/p>\n<p>(now go and build).<\/p>\n<p>(and i could do this graphically if I wasn&#8217;t so stuck in my ways)<\/p>\n<p>For Solaris? umm&#8230; there was a point where I could get Solaris to apply security updates and Brian could get all the stuff needed to build a MySQL Server. Together we had the knowledge needed&#8230; but neither was as trivial as with Ubuntu and combining knowledge was too much &#8211; I just gave up and went on to more productive things.<\/p>\n<p>Even on an existing Solaris system&#8230; getting your PATH right is a trip into some weird fantasy land seemingly designed to annoy you. No doubt this all made some sense back in the day&#8230; but now it just causes pain when all you want to do is compile your program, find the bug and fix it.<\/p>\n<p>When I started at SGI several years ago, what&#8217;s the first thing I did? Went and installed all the GNU packages. IRIX is a lot nicer then.<\/p>\n<p>Same with MacOS X &#8211; the first thing you do is go and install darwinports or fink and get a remotely usable system.<\/p>\n<p>With Windows, it varies &#8211; but the shell is so outrageously shit you need cygwin just for bash, you need either emacs or VisualStudio to get an editor you don&#8217;t want to kill, Firefox for a web browser that works etc etc etc. The fact that the Windows packing system just blows chunks makes it the most painful experience of all.<\/p>\n<p>So even if you&#8217;ve heard rave things about the debugger in VisualStudio &#8211; actually getting a Windows install to the state where you can run the debugger takes <strong>hours<\/strong>. Click click click, upgrade, yes, install, swap disks, upgrade, upgrade, wait, reboot, install manually, install manually, install manually. ick.<\/p>\n<p>Project Indiana is possibly the saviour of Solaris. Default userland is gnu, default shell is bash. Starts to make it feel like home. Just as when Solaris started shipping GNOME made it feel more homely.<\/p>\n<p>Solaris comes with a version of vi that is old enough to drink in bars. Project Indiana realises that a drunk editor isn&#8217;t a good idea and ships something sensible.<br \/>\nThe BSDs get a lot of things right. Sane userland that is familiar to people. Jumping onto a FreeBSD box is remarkably easy.<\/p>\n<p>The typical thing said by people is &#8220;backwards compatibility&#8221; and all that&#8230; basically so that everyone can run their apps from 1985 and not change a thing. Worthy goal. Of course, 1985 does not need to be the default environment in 2008.<\/p>\n<p>There is a standard for the unixy way of things: it&#8217;s Linux with GNU tools in userland.<\/p>\n<p>Just as Windows set the big standard for having a kind of usable GUI (the Mac did it better, but Windows got the numbers) &#8211; and to get people to use Linux on the Desktop we needed to get it to a stage where those people are comfortable.<\/p>\n<p>If you want your UNIXy system to be used by anybody today, you need to have it be comfortable for Linux people.<\/p>\n<p>On the other hand though, Ubuntu is still the best desktop I&#8217;ve ever used and am rather happy with it (no matter how much i bitch and moan about certain things being obviously broken).<\/p>\n<p>(and no, I&#8217;m not switching my desktop to any Solaris variant &#8211; but wholeheartedly look forward to the days when maintaing software than runs on Solaris is a heck of a lot easier because Solaris becomes less annoying).<\/p>\n<p>One more point: OSX and Solaris are the only remotely proprietary UNIXes left. Everybody else is either dead or doesn&#8217;t know it yet. Solaris is nearly all free (AFAIK there&#8217;s still just some binary only drivers around&#8230; which sucks&#8230; but these things can take time, so that&#8217;s okay) and OSX has parts which are (sometimes seemingly dependent on phase of the moon) free-ish. So really, OSX is the one last hold out of the largely proprietary UNIX world. It&#8217;s a fascinating thing to think about&#8230;. freedom wins.<\/p>\n<p>(and this no doubt goes on far too long and incoherently&#8230;. but that&#8217;s because of long days and late nights because of upcoming really cool stuff which I&#8217;ll blog about later)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Brian &#8220;Krow&#8221; Aker&#8217;s Idle Thoughts &#8211; Solaris, Linux, it is GNU folks&#8230; Brian hits the nail on the head&#8230; The way you get a usable system is install all the GNU tools. This is how I go from fresh Ubuntu &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2008\/02\/22\/solaris-linux-it-is-gnu-folks\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[2,14],"tags":[],"class_list":["post-1017","post","type-post","status-publish","format-standard","hentry","category-life-the-universe-and-everything","category-mysql"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-gp","jetpack-related-posts":[{"id":1260,"url":"https:\/\/www.flamingspork.com\/blog\/2008\/11\/21\/scaling-mysql-on-a-256-way-t5440-server-using-solaris-zfs-and-java-17\/","url_meta":{"origin":1017,"position":0},"title":"Scaling MySQL on a 256-way T5440 server using Solaris ZFS and Java 1.7","author":"Stewart Smith","date":"2008-11-21","format":false,"excerpt":"Scaling MySQL on a 256-way T5440 server using Solaris ZFS and Java 1.7 *cough* (and then wipe coffee off the computer) of course the real aim should be to scale with one instance on the machine as scaling with multiple instances on the one machine isn't scaling at all -\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1146,"url":"https:\/\/www.flamingspork.com\/blog\/2008\/07\/16\/adventures-with-opensolaris\/","url_meta":{"origin":1017,"position":1},"title":"Adventures with OpenSolaris","author":"Stewart Smith","date":"2008-07-16","format":false,"excerpt":"So... some colleagues have been experimenting with DTrace a bit, and I've been (for a while now) wanting to experiment with it. The challenge now, instead of in the past, is that I'm setting up a Solaris based system - not getting one premade. I chose OpenSolaris as I'd previously\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.flamingspork.com\/blog\/wp-content\/uploads\/2008\/07\/screenshot-300x198.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":491,"url":"https:\/\/www.flamingspork.com\/blog\/2005\/10\/19\/solaris-10-under-qemu\/","url_meta":{"origin":1017,"position":2},"title":"Solaris 10 under QEMU","author":"Stewart Smith","date":"2005-10-19","format":false,"excerpt":"I'm currently watching a Solaris 10 install under QEMU on my laptop. It seems to be taking a while, but getting there. (I got a Solaris 10 DVD in my AUUG shwag) Basically, I want to play with DTrace and see how easy it is to do things with it.\u2026","rel":"","context":"In &quot;cool gadgets&quot;","block_context":{"text":"cool gadgets","link":"https:\/\/www.flamingspork.com\/blog\/category\/cool-gadgets\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":943,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/11\/29\/bug-id-6493264-solaris-libc-should-provide-posix_memalign\/","url_meta":{"origin":1017,"position":3},"title":"Bug ID: 6493264 Solaris libc should provide posix_memalign","author":"Stewart Smith","date":"2007-11-29","format":false,"excerpt":"Bug ID: 6493264 Solaris libc should provide posix_memalign At least it's acknowledged as a problem :) Although I now have to go and implement it in the NDB portlib. I wish we could drop support for everything other than linux 2.6... would make this stuff a lot nicer.","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3702,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/03\/14\/ghosts-of-mysql-past-part-10\/","url_meta":{"origin":1017,"position":4},"title":"Ghosts of MySQL past, part 10","author":"Stewart Smith","date":"2014-03-14","format":false,"excerpt":"At the end of 2007, the first alpha of MySQL 6.0 was released. Alpha is the key word here, 5.0 was in decent shape by this stage, 5.1 was not ready and there were at least rumors of a MySQL 6.1 tree. I'll go into MySQL 6.0 later, but since\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"IMG_20140310_111449","src":"https:\/\/i0.wp.com\/www.flamingspork.com\/blog\/wp-content\/uploads\/2014\/03\/IMG_20140310_111449-283x300.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1309,"url":"https:\/\/www.flamingspork.com\/blog\/2008\/12\/12\/debian-about-1234533-times-easier-to-install-than-solaris\/","url_meta":{"origin":1017,"position":5},"title":"Debian about 1234533 times easier to install than Solaris","author":"Stewart Smith","date":"2008-12-12","format":false,"excerpt":"After what many hours trying to netboot the T1000 to install Solaris Express, I wondered \"how hard is it for debian?\". Easy. get the sparc64 boot.img, put it on TFTP server, add \"filename \"boot.img\";\" or similar to dhcp, boot the T1000 from the service console something like this \"bootmode bootscript=\"boot\u2026","rel":"","context":"In &quot;drizzle&quot;","block_context":{"text":"drizzle","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/drizzle-work-et-al\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/1017","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=1017"}],"version-history":[{"count":0,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/1017\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=1017"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=1017"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=1017"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}