After an exhausting and brilliant Juju Charmer Summit I took a week off so my parents could visit and hang out.

My dad and I try to do one project together every time we visit, so while we did do useful things around the house, this time we did something fun. We built a simulation racing chair with some wood, a recycled car seat, and these plans from Ricmotech.

Here are some build pics:

My dad scavenged some logos from a junkyard, so we dediced to paint it green and make it a sim version of my old, beloved, 1999 Grand Prix GTP. Total dorkfest, I love it.

And of course, we raced it, here’s the video:

Some tips if you’re going to build an RS-1:

  • I found working with MDF to be painful, we rebuilt parts of it in normal plywood. The shifter in particular we used a 2x4 for the middle section for stiffness.
  • Wood filler is like, simracing bondo.
  • Everyone will make fun of you, and then line up to race.

NOTE: Updated for August 2015.

It’s been about a year since I started building my own Steam console for my living room. A ton has changed since then. SteamOS has been released, In Home Streaming is out of beta and generally speaking the living room experience has gotten a ton better.

This blog post will be a summary of what’s changed in the past year, in the hopes that it will help someone who might be interested in building their own “next-gen console” for about the same price, and take advantage of nicer hardware and all the things that PC gaming has to offer.

Step 1: Choosing the hardware

  • I consider the NVIDIA GTX 750Ti to be the best thing to happen in hardware for this sort of project. It’s based on their newest Maxwell technology so it runs cool, it does not need a special power supply plug, and it’s pretty small. It’s also between $120-$150 – which means nearly any computer is now capable of becoming a game console. And a competent one at that.

  • I have settled on the Cooler Master 110 case, which is one of the least obnoxious PC case you can find that won’t look too bad in the living room. Unfortunately Valve’s slick-looking case did not kick the case makers into making awesome-looking living room style cases. The closest you can find is the Silverstone RVZ01, which has the right insides, but they ruined the outside with crazy plastic ribs. The Digital Storm Bolt II looks great, but you can’t buy the case seperately. Both cases have CD drives for some reason, boo!

  • Nvidia has a great guide on building a PC within the console-price range if you want to look around. I also recommend checking out r/buildapc, which has tons of Mini-ITX/750Ti builds.

  • Another alternative is the excellent Intel NUC and Gigabyte Brix. These make for great portable machines, but for the upcoming AAA titles for Linux like Metro Redux, Star Citizen, and so on I decided to go with a dedicated graphics card. Gigabyte makes a very interesting model that is the size of a NUC, but with a GTX 760(!). This looks to be ideal, but unfortunately when Linus reviewed it he found heat/throttling issues. When they make a Maxwell based one of these it will likely be awesome.

  • Don’t forget the controller. The Xbox wireless ones will work out of the box. I recommend avoiding the off-brand dongles you see on Amazon, they can be hit or miss.

Step 2: Choosing the software

I’ve been using SteamOS since it came out. The genious about SteamOS is that fundamentally it does only 2 things. It boots, and then runs Steam Big Picture (BPM) mode. This means for a dedicated console, the OS is really not important. I have 2 drives in the box, one with SteamOS, and one with Ubuntu running BPM. After running both I prefer Ubuntu/Steam to SteamOS:

  • Faster boot (Upstart v. SysV)
  • PPAs enable fresh access to new Nvidia drivers and Plex Home Theater
  • Newer kernels and access to HWE kernels over the next 5 years

I tend to alternate between the two, but since I am more familiar with Ubuntu it makes it easier to use for, so the rest of this post will cover how to build a dedicated Steam Box using Ubuntu.

This isn’t to say SteamOS is bad, in fact, setting it up is actually easier than doing the next few steps; remember that the entire point is to not care about the OS underneath, and get you into Steam. So build whatever is most comfortable for you!

Step 3: Installation

These are the steps I am currently doing. It’s not for beginners, you should be comfortable admining an Ubuntu system.

  • Install Ubuntu 14.04.
  • (Optional) - Install openssh-server. I don’t know about you but lugging a keyboard/mouse back and forth to my living room is not my idea of a good time. I prefer to sit on the couch, and ssh into the box from my laptop.
  • Add the graphics driver PPA.
  • Install the latest Nvidia drivers: As of this writing, nvidia-355.

After you’ve installed the drivers and all the security updates you should reboot to get to your nice new clean desktop system. Now it’s time to make it a console:

  • Log in, and install Steam. Log into steam, make sure it works.
  • Add the Marc Deslaurier’s SteamOS packages PPA. These are rebuilt for Ubuntu and he does a great job keeping them up to date.
  • sudo apt-get install steamos-compositor steamos-modeswitch-inhibitor steamos-xpad-dkms
  • Log out, and in the login screen, click on the Ubuntu symbol by the username and select the Steam session. This will get you the dedicated Steam session. Make sure that works. Exit out of that and now let’s make it so we can boot into that new session by default
  • Enable autologin in LightDM after the fact so that when your machine boots it goes right into Steam’s Big Picture mode.

We’re using Valve’s xpad module instead of xboxdrv because that’s what they use in SteamOS and I don’t want to deviate too much. But if you prefer about xboxdrv then follow this guide.

  • Steam updates itself at the client level so there’s no need to worry about that, the final step for a console-like experience is to enable automatic updates. Remember you’re using PPAs, so if you’re not confident that you can fix things, just leave it and do maintenance by hand every once in a while.

Step 4: Home Theater Bling

If you’re going to have a nice living room box, then let’s use it for other things. I have a dedicated server with media that I share out with Plex Media Server, so in this step I’ll install the client side.

Plex Home Theater:

sudo add-apt-repository ppa:plexapp/plexht
sudo add-apt-repository ppa:ppa:pulse-eight/libcec
sudo apt-get update && sudo apt-get install plexhometheater

In Steam you can then click on the + symbol, Add a non-steam game, and then add Plex. Use the gamepad (not the stick) to navigate the UI once you launch it. If you prefer XBMC/Kodi you can install that instead. I found that the controller also works out of the box there, so it’s a nice experience no matter which one you choose.

Step 5: In Home Streaming

This is a killer Steam feature, that allows you to stream your Windows games to your new console. It’s very straight forward, just have both machines on and logged into Steam on the same network, they will autodiscover each other, and your Windows games will show up in your Ubuntu/Steam UI, and you can stream them. Though it works suprisingly well over wireless, you’ll definately want to ensure you’ve got gigabit ethernet if you want to stream games 1080p at 60 frames per second.


And that’s basically it! There’s tons of stuff I’ve glossed over, but these are the basic steps. There’s lots of little things you can do, like remove a bunch of desktop packages you won’t need (so you don’t need to download and update them) and other tips and tricks, I’ll try to keep everyone up to date on how it’s going.

Enjoy your new next-gen gaming console!


  • You can change out the plymouth theme to use the one for SteamOS - but I have an SSD in the box and combined with the fast boot it never comes up for me anyway.
  • It’d be cool to make a prototype of Ubuntu Core and then provide Steam in an LXC container on top of that so we don’t have to use a full blown desktop ISO.

Whit, Chuck, and Matt are at it again. This “New Workloads Team” has been busy collecting all the hot container technology stacks from around the Open Source space and bringing them hot to you. Docker, etcd, kubes, flannel; all that hot stuff, all nice and bundle-ized for you.

Today the Kubernetes Project is releasing 1.0, and we’ve got everything you need to get a cluster up and running on any of your clouds, as well as baremetal.

Here are the instructions, feel free to kick on them and let us know how it works for you! You’ll find us on #juju and #google-containers on Freenode.

If you’re attending the Spark Summit next week in San Francisco, make sure you check out the Big Data Mine and Mingle we’re throwing at the Thirsty Bear, 16 June @ 8pm. Beer shall be had on us!

Registration/Space is limited, so click through the register button on that spot to reserve your space.

And remember that our Conducting systems and services: an evening about orchestration is happening the week after during DockerCon; space is filling up on that one too, so get in early!

We’ve got some pretty awesome sessions for this week’s Ubuntu Online Summit.

Not only are these sessions planning events for the next cycle, but this time we’ve added a bunch of tutorials and HOWTO content, so not only do you get to see how the sausage is made, you can actually learn stuff.

Here’s what we’re doing today, starting at 1500UTC, you can find more information on the schedule. I’ll post daily “what’s coming posts” in the meantime. We’ll be on #ubuntu-uos-cloud on Freenode IRC and on the hangout at each session’s page (see the links below).


  • What’s new in Juju 1.23 - Juju 1.23 is a major release, in this session we’ll go over all the new features, including storage, actions, and support for Google Cloud engine.

  • Charm debugging - This session will be all about debugging charms, including using juju dhx for quick peer charming.

  • Juju share and Juju SOS - This is a spec review. Marco and I had the idea that people should be able to easily share their session with someone else over the internet (juju share), and that people should be able to easily dump their unit logs (juju sos).

  • [Modelling Docker containers with Juju] - This one is sure to be popular; Whit, Chuck, and Matt will be going over our work to bring Docker containers to the Juju world. This will include not only the standalone docker charm but will go over all the work we’ve been doing to bring you Kubernetes. If you’re at all interested in either Kubes or Docker you’ll definately want to be at this session.

EDIT: The Docker containers session is tomorrow, instead we’ll be doing big data:

And that’s it for Monday, I’ll post tomorrow’s session at the close of the day today.

Alas, a public cloud has evaporared. And while new options come along all the time, the nature of the beast is that competition is fierce and can really ruin your day. On the other hand this allows us to try new options for price, performance, and reliability.

Remember what happened to the guy who made the wrong choice:

This is why we firmly believe that the ability to run whatever workload you want wherever you want is a crucial value we want to deliver to users. That’s why we continue to drive to ensure that you can Juju deploy on on as many clouds as possible. juju switch and scale on!

Phoronix ran an article today highlighting our work on making a Juju charm for the Phoronix Test Suite.

This enables people to easily deploy pts to any cloud that we support, so AWS, Azure, Joyent, HP Cloud, GCE,, digitalocean, and of course bare metal and OpenStack. So now you can try any cloud provider and run your own benchmarks to see which one works best for you. With Windows, Debian, and CentOS arriving in Juju soon we’ll have your cross-OS needs covered as well.

Marco Ceppi and Adam Israel will be adding some more fixes and features over the next few days, you can follow along (and help if you’d like) in the Phoronix upstream git. Many thanks to Michael Larabel for giving us an area in the pts git repo to do this work!

Thanks to Daniel Bartholemew the freshest MariaDB is now available to deploy on Ubuntu directly from MariaDB itself.

The MariaDB Juju charm comes with the following features:

  • Direct installation of the latest packages directly from upstream
  • Ability to deploy MariaDB Enterprise from the same charm, including built in support for deploying to POWER8 hardware. You can also upgrade in place to MariaDB Enterprise by providing the charm your credentials.
  • Master/slave configuration, so you can horizontally scale your MariaDB deployment with a few commands.
  • Built in support for monitoring your database with either Nagios or Munin.

And since we run just about everywhere, you can deploy this to AWS, Azure, HP Cloud, Joyent, OpenStack, and of course, to bare metal via MAAS. Check the README for more information.