Review: System 76 Sable

As you might guess, I am a big fan of all things open, and I tend to vote with my wallet. When the need arose to replace some iMacs in the office, I decided to check out the Sable systems offered by Linux-friendly vendor System 76.

System 76 was a sponsor at SCaLE this year (like OpenNMS) and they also sponsored the Bad Voltage Live event where they gave away a laptop and a server, so they already had my goodwill.

Back in 2008 I needed some machines for our training courses, so being an Apple fanboy at the time I bought iMacs. Outfitting training rooms can be problematic if you don’t do training full time because you usually end up with nice systems that you don’t use very often. Seems wasteful, so we decided to use them to run Bamboo and our unit tests for OpenNMS when they weren’t being used for training.

Seth noticed that it was taking those machines around 240 minutes to run the suite of tests versus 160 minutes for the newer iMacs we were using, and this was having a negative impact development (almost everything we do relies on test driven development). Since we were running Ubuntu on the boxes anyway, I decided on a Linux alternative and chose System 76 for the first six replacement systems.

I like all-in-one systems for training since they tend to move around (we use the training room as a conference room when there are no classes). The all-in-one form factor makes them easy to carry. The Sables I ordered came with a 23.6 inch touch screen at 1080p, 3.1 GHz i7 processor, 16GB of RAM and a 500GB SSD for a total price of US$1731.

The ordering process went smoothly (there was one glitch when the original quote was for seven instead of six but it was quickly corrected). I placed the order on March 18th and they shipped a week later on the 25th.

They arrived in six boxes marked AIO PC:

System 76 boxes

I think AIO must be the manufacturer in China, but I couldn’t find a similar system on the web. One box had a smashed-in corner, so I opened it first, but it was packed well enough that the unit wasn’t damaged:

System 76 open box

I removed the packing and pulled the unit out. It was wrapped to protect the screen.

System 76 screen wrap

and the whole unit was covered in plastic wrap to prevent scratches.

System 76 plastic wrap

These units come with a power brick that is external to the system and I ordered them with a Logitech keyboard and mouse. These came in a separate box along with extra cables, etc., for expansion (unlike Apple products, you can actually work on these systems).

System 76 keyboard box

The hardest part about the whole process was figuring out how to turn the darn thing on. I finally found the switch on the back of the system on the lower right side (as you face it). I felt kind of stupid and yes, I even read the little pamphlet that came with it. Perhaps they should add and IKEA-like drawing with the little dude pointing to the switch.

It booted right up into Ubuntu 14.10, and all I had to do was create an account and set the IP address. Ben was then able to get in and deploy our Bamboo image and we were up and running in no time.

System 76 screen

While we still have some iMacs being used, the Sables have, so far, proven to be a solid replacement. I haven’t really used them as a desktop, yet, but they can run our test suite in a little over an hour which is almost a four-fold increase.

System 76 in a line

While Apple doesn’t offer a 24-inch iMac anymore, the 21-inch version with similar processor, RAM and SSD is US$2399, or quite a premium. The Sable is not nearly as thin or stylish as the iMac, but it is a nice looking machine and after struggling this week to correctly replace the hard drive in a late 2009 iMac I appreciate the fact that I can work on these if I need to, and the extra cables shipped with it even encourage me to do so.

And that’s what open is all about.

♫ To Be Thick as a Brick ♫

In keeping with the musical theme this week, I thought it would be cool to post about a little bit of OpenNMS “bling” now featured at the Chatham County Public Library in Pittsboro, NC.

OpenNMS Brick

We like to both talk about OpenNMS as well as support the local community, so when I found out that the library was raising money by selling personalized bricks, I thought it would be cool to get one.

OpenNMS Brick

We also have one to be installed at the Tesla Museum. I’m going to have to take a road trip to get a picture of that one, or see if Jeremy Garcia will drive over when it is open and take one for us.

♫ The Lunatic is on My Web ♫

The TL;DR of it is that I needed to create a new forum called OpenNMS Connect. This will be a place for Luna. So far I’ve been happy.

When I first started my quest for forum software a couple of month ago, I did what most geeks do and did a search for it. I found a very helpful Wikipedia page (‘natch).

After dismissing the non-open source options, I started looking at the programming language. Now I know I really shouldn’t be a PHP snob (this blog is presented using PHP software) but having been burned in the past with security issues my first inclination is to avoid it.

Now the guys in the office are trying to get me to think all “agile-ly” and so I need a “user story”. For any forum we use it has to support LDAP, for which the story could be “User must be able to access forum using directory services” or better yet “Admin needs a central way of controlling forum access”. We implement LDAP via the FreeIPA project, and it will just be so much easier if we can add and remove people from a particular group and just have it work.

The first project I looked at was Discourse. I was especially interested in a hosted version if I could tie it into our IPA instance. Discourse is kind of the “new hotness” at the moment, but I didn’t see an easy way to implement LDAP. There is a Single Sign On (SSO) option but it would require writing our own authentication page, and it wouldn’t work if we hosted it with them anyway.

The next project that caught my eye was the eXo Platform. It’s written in Java (as is OpenNMS) and it seems to have a ton of features. Perhaps too many. In any case I put the team on it and asked them to get it working with LDAP.

They succeeded in getting LDAP authentication to work, but then hit a ton of other snags. The authenticated users couldn’t access the default /portal/intranet site no matter how often we tweaked the permissions. They could reach the /portal/meridian site but we couldn’t figure out how to change the default portal. And in all cases we couldn’t get the top menu bar to load with an LDAP user which meant you couldn’t log out, etc.

On Friday I decided to see what I could do about it. Friday was a long day.

eXo is one of those companies that produces an open source version of their software as well as a paid version. My three readers know how I feel about that business model, and it made it kind of frustrating to figure out things since I couldn’t tell if the documentation would actually work on the “community” version. Also, to access the forums you need to register, which gets you a couple of spam-y e-mails trying to sell you on their paid version. Not too obnoxious and I can understand why they do it, but it was a little annoying.

It can also be hard to administer. A lot of the configuration is buried in .war files. For example, in order to set the default portal above, you have to unpack portal.war, change it and repack it. In playing around with the system, I decided that while the LDAP authentication is nice, the platform itself is way overkill for what we need. It is huge and on our system took several minutes to start up and would often spike the load with limited users.

So I spent a lot of time looking for alternatives. Unfortunately, the only option I found that had easy to understand LDAP integration was phpBB. When I mentioned that to the team, Jeff threw up in his mouth a little and I wasn’t too happy about that choice either. I don’t have the same prejudices as some, but I felt that its style was a little dated and there have been some serious security issues in the past associated with it.

But for grins I installed phpBB anyway. It was rather easy to do, which made me happy, but then I noticed that it was not easy to make the forum itself private. Another user story is that “Admin requires that only authorized users see the forum”. You can make certain parts of phpBB private, but I kind of wanted the same thing as eXo – an initial log in screen you have to use before accessing the site.

Then it dawned on me that we could just put it in a directory by itself in the web root, say /forum, and then make a pretty splash page on on the site with a link to it. Apache LDAP authentication is something we already figured out and knew worked and I could just require a valid login to access /forum.

This caused another lightbulb to go off. If we are going to do it that way, then why not just put any forum we like behind an LDAP authenticated directory?

The downside would be that users would need to create a forum-specific user if they wanted to add content, but on the upside they could choose their own usernames, thus obfuscating their identities for people who work at sensitive organizations. Thus we could have an LDAP user tied to, say, obama@whitehouse.gov and their forum name could be something totally different, like “Hot Cocoa”.

Yes, I know it is dressing up a bug as a feature, but to me it did seem useful.

Then I thought, hey, let’s revisit Discourse. That turned out to be harder than it would seem

Well, the only way to install Discourse on CentOS is as a Docker container, and at the moment it doesn’t seem to work.

The first time I tried to install it, it died complaining about lack of access to an SMTP server. No where in the instructions did it say you had to modify the app.yml and put in a valid mail server. In any case, I did that and restarted the install.

At one point during the install process I get this:

-- 0:  unicorn (4.8.3) from
/var/www/discourse/vendor/bundle/ruby/2.0.0/specifications/unicorn-4.8.3.gemspec
Bundle complete! 92 Gemfile dependencies, 189 gems now installed.
Gems in the group development were not installed.
Bundled gems are installed into ./vendor/bundle.

I, [2015-04-04T04:49:47.161747 #38]  INFO -- : > cd /var/www/discourse
&& su discourse -c 'bundle exec rake db:migrate'
2015-04-04 04:49:55 UTC [339-1] discourse@discourse ERROR:  relation "users" does not exist at character 323
2015-04-04 04:49:55 UTC [339-2] discourse@discourse STATEMENT:      SELECT a.attname, format_type(a.atttypid, a.atttypmod),	                     pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
	                FROM pg_attribute a LEFT JOIN pg_attrdef d
	                  ON a.attrelid = d.adrelid AND a.attnum = d.adnum
	               WHERE a.attrelid = '"users"'::regclass
	                 AND a.attnum > 0 AND NOT a.attisdropped
	               ORDER BY a.attnum

which a Google search says to ignore, but then a little while later the install fails with:

FAILED
--------------------
RuntimeError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #
Location of failure: /pups/lib/pups/exec_command.rb:105:in `spawn' exec failed with the params {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle install --deployment --verbose --without test --without development'", "su discourse -c 'bundle exec rake db:migrate'", "su discourse -c 'bundle exec rake assets:precompile'"]}
68a9a49f29ad74d9ab042bcaadfb06e02ff526104fefd82039eae1588bbb6e43
FAILED TO BOOTSTRAP

on which Google is much less helpful. No matter what I did I couldn’t get past it.

This kind of brings up an issue I have with Docker. Now let’s get this out of the way: I am jealous of the Docker project. We’ve been around for 15 years and gotten little notice whereas they have become huge in a short time. It would be nice if, say, I could get up to four readers on my blog.

But I really, really, really hated how hidden this whole process was. You install software on your system and then load “magic bits” from the Internet and hope it works. I think this is great on a intranet when you need to deploy lots of the same things, but without developing it internally first it was a little scary. When it doesn’t work it is incredibly hard to diagnose. Because the app wouldn’t build I couldn’t play with the database or really do anything, so I just uninstalled and reinstalled numerous times to try to fix this.

Plus, by running in a container, we would then need to modify nginx to use our LDAP configuration and that seems to be much harder than with Apache. I didn’t think it would be easy to just forward requests to the Docker instance, but since I couldn’t get it to work I’ll never know.

By this time I said, screw it, reinstalled phpBB and went home. It’s now about 8pm and I’ve been at it 11 hours.

Well, I have a mild form of OCD, or maybe it’s just being a geek, but I couldn’t let it rest. So early this morning (as in soon after midnight) I discovered a project called Luna (an active project from the aforementioned Wikimedia page).

Luna is the next iteration of the ModernBB project which is in turn is a fork of FluxBB. It’s simple, does almost everything I could want, and was incredibly easy to install. No Docker containers, no large Java app, just some PHP that you drop in your web root. Plus the webUI is built on bootstrap just like OpenNMS.

In about an hour I had it running, had changed the style to match our color palette, and fixed an issue where jquery wasn’t getting loaded by copying it down as a local file.

OpenNMS Luna Website

The downside is that it isn’t production yet. I installed 0.7 and earlier this morning they released 0.8. Jesse fixed an issue with the internal mail system and I have a couple of more issues that I’d like to see fixed, but overall I’m very happy with it. They are aiming to release 1.0 on 13 April.

And I really like their attitude and philosophy. They are self-funded and I love Yannick’s tag line of “You Can Do Anything.”

To help that I sent them 100€. (grin)

Anyway, sorry for the long post. I’ll let you know how it goes.

OpenNMS on Bad Voltage

I had to go back through my notes, but I first met Jono Bacon on April 12th, 2008 at a LugRadio Live show in San Francisco. Jeremy Garcia, the founder of LinuxQuestions.org, I didn’t meet until this year’s SCaLE conference, but I had been following that site since at least 2009 (or at least that the oldest e-mail I still have from it). Those two guys make up half of the team behind the Bad Voltage podcast.

The other half consists of Stuart “No Fruit in Beer” Langridge and Bryan “Puffy Nipples” Lunduke, both nicknames earned at SCaLE (where they did their first live show). Stuart, the more social and less-sickly of the pair, joined us for a few drinks one evening during the conference, but I have yet to meet Bryan face to face.

Which is probably a good thing, because the few seconds I saw said face on a Google hangout this week, well, it wasn’t pretty. Ebola is nothing to joke about so I shall leave it at that, but let’s just say he was under the weather.

I was on the Hangout because the guys asked me to come on Bad Voltage. The first time I was invited was a couple of weeks ago when the taping was on a Thursday. I couldn’t make that one, so considering the history of this crew I was a little suspicious when they asked me to chat on April Fool’s Day.

Of course, this is when I found out that Bryan was deathly ill and wouldn’t be joining us, and even my thick brain can detect a pattern. Dodges me at SCaLE even with the promise of free booze. Ditches me during the one time I’m on his show. I know when I’m not wanted.

The string of “coincidences” continued during the taping when Jono’s app crashed a few minutes into our chat. In 38 shows it had never happened before and so we had to start over, and the guys were good sports and laughed at all the right moments as I repeated my stories. April Fool’s Day is also my wedding anniversary, so they got a small slice of what it is to live with me and have to suffer through my stories over and over (she’s stuck with me for 22+ years so I guess that is one miracle for her sainthood, two to go).

Anyway, after the technical glitches were sorted and Bryan was done snubbing me, I thought the chat went pretty well. It’s hard for me to fit anything into ~10 minutes and I left stuff out that I would have liked to say, but I hope it gets people interested in OpenNMS. In any case, even without my bit (or should I say especially without my bit) the show is always entertaining and you should check it out. You’ll get the occasional F-bomb and sometimes references to moose genitalia, but overall it is pretty safe for work.

Anyhoo – check it out and let me know what you think:

Bad Voltage 1×39: Ambitious but Rubbish

OpenNMS at POSSCON, 14-15 April

#NotAprilFools

I love the fact that with the possible exception of OSCON (which has blacklisted me as a speaker for some reason), the main open source conferences all tend to be grassroots, regional affairs. I love going to them and find them to be much better than the commercial and corporate shows.

One I have never been able to attend is POSSCON. Although only one state away, my schedule has not worked out to allow me to go. I’ve heard a number of good things about it, so this year I was determined to attend and The OpenNMS Group is even a gold sponsor.

We will have be a booth where you can come by and see the new OpenNMS shiny, and I will be giving a talk on the first day about switching to the Linux Desktop, and on the second day there will be a workshop on using OpenNMS.

Hope to see you there.

OpenNMS at Fifteen

It was fifteen years ago today that the OpenNMS Project was registered on Sourceforge.

OpenNMS Sourceforge Summary

The project itself was started sometime in 1999, but I wasn’t around then as I didn’t get involved until 2001. I’ve been told that it started in July of that year, but since an open source project really doesn’t exist until something gets shared, it seems that March 30, 2000, is as good a day as any to mark the birth of OpenNMS.

I went poking around on the site and wasn’t able to find the very first thing posted there. I believe it was a mockup of an administration console using the Java Swing toolkit that never actually made it into the product. While I believe the code is still in there somewhere, in switching from CVS to SVN to git, dates do get a little corrupted and I couldn’t find it.

Anniversaries don’t really mean that much in practical terms. In moving from Sunday, March 29th, to Monday, March 30th there was no substantial change in OpenNMS at all. But it does lend itself to a bit of reflection, and fifteen years is a lot of time on which to reflect.

While I have been working on OpenNMS most of my professional career, I didn’t start it. People much smarter than me did, and that has pretty much been the story of my life. My only true talent is getting intelligent and creative people to work with me, and the rest of my career is just basking in their reflected glory. In 2002, the original founders decided to stop working on the project, but I saw its potential and was able to become its maintainer.

My original plan was to simply remain a company of one and provide consulting services around OpenNMS. That didn’t work out so well, as I soon realized that it could be much bigger than one person. In September of 2004, The OpenNMS Group was born in part to insure that the OpenNMS platform would always be around. We wanted to build something amazing, and this was reflected in our goal “to make OpenNMS the de facto management platform of choice.”

Being pretty much a group of technical people, we didn’t know we were doing things wrong. For a business plan we chose “Spend less money than you earn.” For a mission statement we liked “Help Customers – Have Fun – Make Money”. I put forth my two desires that OpenNMS should never suck and that OpenNMS should always be free software. We just took it from there.

This is not to say that we haven’t met with frustration. Gartner likes to diagram companies on two axes: “Vision” and “Ability to Execute that Vision”. We have a lot of vision, but our business model doesn’t give us a lot of resources to execute that vision quickly.

In order to change this, I spent a lot of time in Silicon Valley looking for an investor. Silicon Valley is pretty much the center of the technology industry, and one would assume that they would know the best way to run a technology based business. But I was pretty much told that you can’t be anyone unless you work in the Valley, you’re too old, and most importantly, you are doing it wrong.

There seems to be a formula they like out there. You raise a bunch of money. You hire as many people as fast as you can. You get as many users as possible and you hope that some larger company will buy you out. They call this an “exit strategy”, and this is supposed to be the focus of the business. Once you “exit” you can do it all again.

The problem, as I see it, is that a lot of companies have to exit before they get bought out. They run out of money, the investors run out of interest or patience, and then they just shutter the endeavor. Sure, you have your prominent billion dollar acquisitions, but in the scheme of things they are a very, very small percentage.

Plus, I’m already doing what I love to do. I really don’t want to do anything else. My chosen field, network management, is huge and I can always find something interesting in it, such as figuring out the best way to deal with the Internet of Things.

Sure, I believe that there are companies out there that would complement what we do. Ones that have the capital to help OpenNMS grow in a way that doesn’t go against our corporate culture. And while our involvement with such a company would probably be through an acquisition, I don’t see that as much as an “exit” as an evolution. I wouldn’t do the deal if I didn’t think I’d want to continue to work on the project, so I wouldn’t be going anywhere.

I see this post has become more about the business side of OpenNMS than the project itself, but I felt it was important to think about how our business philosophy permeates the project. Thus I thought it was serendipitous that Ben sent me a link to an article about an alternative to the “exit strategy” called the “exist strategy”.

The Nishiyama Onsen Keiunkan is the world’s oldest business. It is a hot springs hotel in Japan that was founded in 705 and has been run by fifty-two generations of the same family. They have survived and even thrived for 1300+ years by having a relentless focus on their customers. Even though they have only 40 rooms, by any measure you have to call their undertaking a success.

I think there is a huge problem with the tech industry’s focus on the exit. It’s such a short term goal. I expect the goal we set for OpenNMS to take the rest of my life and maybe some time after that. By focusing on an exit the people who usually end up paying for it are your customers, and that just doesn’t strike me as a way to run a business. I’m certain that if the Nishiyama Onsen Keiunkan had focused on growth over service they would have died out a long time ago. Heck, even the company that started OpenNMS closed its doors in 2004. When they weren’t moving fast enough toward their goal for the investors, the did what today we would call “a pivot” and it didn’t work out, even thought that’s what anyone in the Valley would have said was the right decision.

Look, I don’t want to come across as some sort of holier than thou “money is evil” kind of person. I run a business, not a charity. But as a businessman, and not a gambler, I truly believe that our best chance at financial success is to find a way for us deliver the best value we can to our customers. Period. That’s our focus, and any type of “exit” is way down on the list. Heck, the current management team at The OpenNMS Group is ten years older than the rest of the guys, and we’ve even thought of selling the business to them when we wish to retire. Not sure we can do it 52 times, but that is one form of exit that is still in line with an “exist strategy”.

And that’s the thought I want to take into the next fifteen years of OpenNMS. We have a covenant with our users and they have paid us back in kind with their support. This has resulted in a number of other impressive numbers. The OpenNMS Group has prospered for more than a decade. We are getting ready for our tenth OpenNMS Developers Conference, Dev-Jam. We’ve had almost the same number of OpenNMS User Conferences, the next one is in September and hosted by the independent OpenNMS Foundation.

We still have quite a few years to go to match the numbers of the Nishiyama Onsen Keiunkan, but I think that focusing on an “exist strategy” is the way to go. We still have the greatest team of people ever assembled to work on a software project, and while the faces and names have changed over the years, I still feel like I’m standing on the shoulders of giants.

And the view is great from up here.

Framing the Net Neutrality Debate

Sorry for the delay in commenting on this, but I’ve been sick with the flu and I’m just now getting back to normal.

Back on February 26th, the FCC voted to treat the Internet as a utility. As a huge fan of “Net Neutrality” I was cautiously optimistic about this, but I was saddened by the fact that the 3-2 vote was along party lines. With the current dysfunctional US government, I was hoping that something as important as a free and open Internet would not be politicized.

Those who would try to control the Internet for their own agenda were quick to respond. Verizon issued a reply that looked like it was created on an old typewriter, implying that ideas created in 1934 (the law that formed the basis of the FCC decision) couldn’t be useful in a modern world. It’s an informal fallacy – instead of trying to describe why the world would be better off with Verizon in control of the Internet, a much harder proposition, they opted to throw a bunch of rhetoric at the problem.

Those against Net Neutrality are going to try to frame the issue as “anti-capitalist”. The problem is that a key component of free markets is “easy entry and exit”. The idea is that if one company is making a profit, competitors will enter in to the marketplace until the overall profit reaches zero. The problem with utilities such as the Internet, electricity and water is that it is not easy to enter or exit the market, which creates barriers to a truly free marketplace. While I can argue that it is uniquely American for a large corporation to try and protect its unfair advantages, it is also anti-capitalist and government should exist to maintain a level playing field.

No, what Verizon dreams about is becoming the Enron of the Internet. I managed to get my hands on a leaked, new “Venron” logo:

Enron demonstrated the problems when you try to mix in greed with a utility. Due to companies such as Enron exerting undue influence in politics, the decision was made to deregulate the generation of electricity in California. Everyone used the same rhetoric being used in the Net Neutrality debate: free markets are the best for the people and “trust us” – why would we want to hurt our own customers? This resulted in skyrocketing energy prices and rolling blackouts throughout the State.

Internet companies such as Verizon are using those same tactics to build opposition to Net Neutrality. Their pet politicians, such as Senator Ted Cruz of Texas (the State responsible for Enron) have been hard at work trying to tie a free Internet to the idea of “too much government” and you can expect them to compare it to everything from the Affordable Care Act to Climate Change.

We need to respond with the simple mantra that a vote against Net Neutrality is a vote for an “Enron of the Internet”. It’s as easy and straightforward as that. Net Neutrality means that no one company, or cabal of companies, can control the Internet – not even the government. It is a vote for freedom and democracy, and anyone who is against that is against the ideals that created our country in the first place.

Yeah, I know that the Constitution is a really old document (even older than 1934) but it has held up pretty well. Let’s make sure that the opponents of a free Internet aren’t allow to disgrace it as well.

Dell, Rhymes with Fail

Yes, I am a bit frustrated at the moment. This post is something of a plea that someone within the huge organization known as the Dell Computer company has a clue and can help me out. Before you think I’m just a big hater, here is a shot of one of our computer racks:

As you can tell, we do use a lot of Dell hardware (and yes, there is an HP box squeezed in the middle there).

I work hard. As a result of that, I feel I deserve nice things, and what I really want right now is a nice laptop. But I want a laptop that runs Linux well.

I’ve looked at the systems from System76, but I want a higher density screen than they offer. I would look at the new X1 Carbon from Lenovo, but I’m still angry at them for Stoopidfish, and while I plan to wipe any laptop I get from any vendor I still think it will be some time before I can give them money.

No, I like to support Linux-friendly vendors, so I recently ordered the Dell M3800 laptop, Ubuntu edition. I ordered it on February 2nd.

A couple of my three blog readers have contacted me eager for my review, but I wasn’t able to publish it because I have yet to receive the laptop. In fact, it appears my original order has been canceled. Here is the story.

I placed the order on the 2nd, and got an estimated delivery date of the 18th. That would have been perfect as I would have the new machine just before SCaLE. Unfortunately, it was not to be, and my estimated delivery date was pushed out until the 26th.

Well, the 26th came and went with no update from Dell. I finally decided to contact them and I was told they would expedite my case.

This week I was told that “I regret to inform you that we are not able to process the order 769577335 due to configuration mismatch.”

WTF?

You drag me along for a month and then tell me that there is a “configuration mismatch”? Now I have to reorder and go through the whole process again? Plus, there was no “mea culpa” and no offer of, heck, free shipping or an expedited order – just “so sorry, try again”.

Grrrr.

Like an idiot, I decided to try again.

I got to the order page, and that’s when I found out what the magical “configuration mismatch” was. It turns out that you can’t order a Dell M3800 laptop with Ubuntu and a second hard drive.

Seriously.

In the configuration I want, I want a 256GB SSD for the primary drive and a 1TB HDD for the secondary drive. That should make the operating system fast while giving me lots of room for files and git repos on the slower HDD.

But when I check it, I get this error:

Choosing Windows makes it go away.

I was dumbfounded. The issue that kept me from getting my laptop, and it appears the issue that will keep me from getting this laptop at all, it that Dell doesn’t know how to deal with a second hard drive on Ubuntu.

Just to make sure, I did one of those chat-thingies:

Time 	                Details
03/06/2015 10:24:51AM 	Session Started with Agent (Jayant K S)
03/06/2015 10:24:51AM 	Tarus Balog: "."
03/06/2015 10:24:59AM 	Agent (Jayant K S): "Welcome to Dell US Small Business Chat! My name is Jayant Kumar Singh and I will be your Dell.com Sales Chat Expert. I can be reached at jayant_k_singh@dell.com or via phone at 1-800-289-3355 ext. 4166817. How may I help you today?"
03/06/2015 10:25:07AM 	Agent (Jayant K S): "Hi Tarus :-)"
03/06/2015 10:25:26AM 	Tarus Balog: "I'm trying to order a Dell M3800 laptop with Ubuntu, but it tells me I can't get a secondary hard drive with Ubuntu, only Windows. Is this true?"
03/06/2015 10:25:52AM 	Agent (Jayant K S): "I am sorry about the inconveinence. Glad you chatted in today, I will try my best to help you"
03/06/2015 10:25:57AM 	Agent (Jayant K S): "Let me check"
03/06/2015 10:27:17AM 	Tarus Balog: "I get that error"
03/06/2015 10:27:26AM 	Tarus Balog: "and it goes away if I choose Windows"
03/06/2015 10:27:37AM 	Agent (Jayant K S): "ok"
03/06/2015 10:29:55AM 	Agent (Jayant K S): "I am working on it please stay connected"
03/06/2015 10:30:14AM 	Tarus Balog: "ok"
03/06/2015 10:32:12AM 	Agent (Jayant K S): "how much boot drive space do you need and how much for the second"
03/06/2015 10:33:24AM 	Tarus Balog: "I was going to order a 256GB SSD for primary and 1TD HDD for secondary"
03/06/2015 10:34:12AM 	Agent (Jayant K S): "Give me 1 Minute"
03/06/2015 10:36:53AM 	Agent (Jayant K S): "I am sorry the second hard drive is not allowed"
03/06/2015 10:37:44AM 	Tarus Balog: "Okay"

My guess is that the Dell provisioning process is so rigid that when it comes to Ubuntu they don’t know how to mount the second drive. This causes the whole thing to fall apart. I don’t know why just mounting it as /data isn’t acceptable, but just when I thought Dell was getting it together when it comes to Linux it appears it is just so much black magic to them.

My hope is that someone from the Dell Linux team will actually see this post and will reply. There is only one thing I really want to know and I have not been able to find out: are there any special PPA’s that ship with the Ubuntu version of the M3800 for drivers, etc. If not, then I’ll buy the Windows version, wipe it and at least have the hardware I want. Yes, it costs me over a $100 more for something I’ll just throw away, but at least I’ll have my laptop issue solved.

This whole process has really soured me on a brand I used to like. My current laptop is the Dell XPS 13 Ubuntu version I bought several years ago and I still like it – I just need more screen real estate. I see now why Apple is able to dominate this market. They always under-promised and over delivered (I never had an Apple order show up late and most showed up a day or more early). I never got some crazy “configuration mismatch” errors when trying to place an order.

And in the few times that Apple made a mistake, they went out of their way to make it better.