Let me start out by explaining the title. My dad and I have a tendency to name things after places and people in Monty Python. "Ipswich" (the name of a city in England) is a reference to the Parrot Sketch (i.e., the "palindrome" of Bolton). "Notlob" was already taken by one of the family computers, otherwise I would have chosen that far sillier name.
I'm sure some of you are asking right now, "Wait, a LINUX gaming rig?" Yep, we've been running Linux on pretty much all of the computers at home since my early years of grade school. I saw my dad using the command line, I got interested, and the rest is history...
Just before going into high school (2011) I ordered myself a "gaming" laptop from CyberPowerPC's "Xplorer" line with an i7-2630QM and a GT 520M. The CPU to this day is more than adequate. The GPU was good enough for me in the early days of Steam on Linux when your only choices for games on Linux were Valve's own games and a bunch of indie games, neither of which are very demanding, so for a while, I was just fine.
However, in the past couple years some AAA titles came to Linux like Borderlands 2 and Metro: Last Light. I had bought both long before the thought of building a new computer even popped into my head. Performance, as you can imagine, was less than stellar. Borderlands 2 is barely playable at the lowest settings at 720p with framerates mostly in the low 20's and sometimes dipping down to 10 fps. Metro: Last Light was a similar story.
So eventually it dawned upon me that I was going to need a new computer. And since my dad has built a few computers before, I decided to give it a try myself. After long hours of discussing my part lists with my friend Paul and struggling with my Newegg order Ipswich was born.
Enough of my life story, let's get to the parts.
AMD Athlon X4 860K: Probably the best budget CPU out there. It's comparable to the Pentium G3258 and Core i3 in performance. The 860K has 4 threads (so does the Core i3 but no i3's overclock) whereas the G3258 only has 2. The 4 threads are a lot more useful than 2 cores for doing things like compiling the kernel (which I have done already with this machine) so it was a no-brainer.
CRYORIG H7: Saw good reviews on this and I'm glad I made the choice. It's super quiet even under load and it looks good. I have no clue about the temps because
lm_sensors doesn't display the right temperature. I'll have to figure that out before I do any overclocking. But good luck finding one. The only place I was able to get it was at Newegg. I must have bought the last one since right after I ordered it, it was out of stock. It's still out of stock at the time of writing.
Gigabyte GA-F2A88X-UP4: Gigabyte boards are known for the best compatibility in Linux. Plus it has dual BIOS and it just freaking looks good. I mean seriously. Plus it doesn't have a Killer LAN chip which from what I've heard doesn't play nice with Linux. I'm OK with the Realtek chip this one has. The BIOS has a decent number of options but don't use the mouse. It's mainly designed for keyboard navigation and the mouse is really laggy. A major problem with this mobo is that the sensor drivers in Linux are...lackluster. I don't see any fan speeds, nor do I see temperatures for anything except the CPU die, and even then the readings aren't right. Kinda ticks me off. Hopefully Linux 4.2 or 4.3 fixes the issue.
G.Skill Ripjaws RAM: It's a good-looking, relatively cheap kit. G.Skill is known within LMG for good compatibility so it seemed like a no-brainer. I've had no issues with it so far.
Samsung 840 EVO: I had actually purchased this as an upgrade for my laptop, but it's much better in my new rig. I see much faster bootup times (1-2 sec from bootloader to login) on my new rig and it's almost like I breathed new life into the thing. My laptop must have been bottlenecking it.
WD Blue: Pretty standard 1TB drive for games and media. Not much to say here.
MSI GTX 960 4GB: This is miles ahead of my laptop's graphics (as one would expect). It looks absolutely beautiful with is backplate, exposed heatpipes, and illuminated MSI logo. 4GB of VRAM is a bit odd for this card but it should help in VRAM-hungry games like Batman: Arkham Knight which came free with the card. I'll have to wait until the fall when it comes out on Linux to play it but hopefully the have all the bugs ironed out by then. We can only hope.
NZXT S340: In the words of LinusTech, this case doesn't suck. Cable management is pretty much a no-brainer (although I had to reroute the power cable for the graphics card because I'm a n00b). It's a very simple but elegant case with a side panel window and a place to show off my SSD. Sweet! Also, make sure to put in the hard drive before installing the PSU. The manual suggests putting two screws on the side of the drive towards the front of the case but IMO it's not secure enough. I put in another screw in the middle hole on the other side and now I'm a lot more confident that it'll stay put. Another thing that I didn't like was the fan placement, with two fans as exhaust and no intake. But this was easily fixed by moving the top exhaust to the lower slot in the front as an intake to get some airflow over the graphics card.
EVGA 550 GS: Made by Seasonic, nice black cables (all are flat except for the 24-pin which is a pain to manage), 80+ Gold rated, and has plenty of headroom for overclocking and upgrades in the future (I don't plan on SLI).
Rosewill Wireless Card: It's based on a Realtek RTL8192CE. I chose it specifically because I've had good luck with Realtek wireless cards before in Linux. Thought it was going to work perfectly until I kept getting disconnect issues to the point that I couldn't even see my wifi in NetworkManager. Updating the kernel to mainline 4.1 fixed the issue. I could have had a Linksys one that we had lying around but 1) it's legacy PCI, 2) it doesn't support 802.11n, 3) it only has 1 antenna, and 4) I can't hide it under my graphics card. This wasn't too expensive so it's not a big deal.
Asus VS229H-P: An absolutely superb (and inexpensive!) monitor for 1080p. I highly recommend it if you're OK with the 5ms response time, which should be good enough for most users (it's certainly good enough for me!). I got tired of the seriously crappy TN panel on my laptop and wanted something legitimately good. It's IPS, has a decent response time, and it just freaking looks good. Viewing angles are awesome as expected from an IPS panel. There is no noticeable backlight bleed which is defnintely a plus (although yours might be different). My only gripe is that it's kinda wobbly. Hopefully by tightening some screws in the stand I can fix this problem.
CM Storm Quickfire TK: I like this keyboard but it wasn't exactly the best purchase in the bunch. What's great is that it doesn't require any special software and all the media keys work out of the box in Linux. It also has a red backlight, which goes great with my color scheme. The only thing I'm not a huge fan of is the Cherry MX Red switches. They are great linear switches for gaming. What they're not too great at is typing. Many times I find myself making typos and hitting keys accidentally since they are actuated so easily. I also find myself bottoming out a lot and it doesn't feel good. I can type faster with it though. But hey, maybe this stuff will improve over time. I definitely had to get used to it when I first got it and I've improved a lot since then. By the way, I would have gotten the Cherry MX Brown version but I couldn't find it in stock anywhere. Whatever.
Corsair Raptor M45: This is an awesome mouse. I got it to replace a Logitech mouse that I had gotten from a friend. At first I was leery of the Linux support but it works great out of the box. It has adjustable DPI (usually I keep it at the lowest setting but sometimes I bump it up), two buttons on the side, and a nice solid scroll wheel. Just wish it had horizontal scrolling, but I rarely need it anyway.
Operating System: Definitely something of note in this build. I decided Arch Linux was the way to go over something like Ubuntu since it comes with more up-to-date software. It's a Linux distro which you set up piece by piece from a command line, which isn't quite as hard as it sounds but has definitely brought in its own challenges. However, it has been a learning experience for me. This hasn't been the first time I've run Arch but it's been a while since I've run it on my laptop and it's nice to get back into it.
A couple issues I had with it are that 1) no matter what I try, I can't have a graphical login (which is fine because
startx works just as well :P) and 2) I've been fighting with
lm_sensors to get proper temperature info from the CPU (as previously stated), so overclocking will have to wait.
The moral of the story: Linux is not for the faint of heart. I would not recommend Arch Linux for someone just looking to get into Linux. If you want to get into Linux I would strongly recommend Linux Mint or Ubuntu. However, if you want to learn more about the inner workings of Linux, Arch is a good place to go.
For those who are interested, the desktop environment I'm running is Cinnamon, using the Numix theme and Faenza icon pack. My background is "Ghosts" by Justin Maller if my memory serves me right.
Other remarks: All my months of research into PC hardware has definitely paid off, and overall I'm happy with how this turned out. Eventually I'm going to have to get some case lighting, probably white LEDs.
One thing to check during the build process is the SATA connections. It doesn't matter too much in the end but for my own sanity when I'm partitioning drives, etc. I need a drive order that makes sense. So, naturally, when I went to format my hard drive, I expected it to be
/dev/sdb (the second hard drive) but nope, it was
/dev/sda instead. It's a good thing I was using GParted which showed the unformatted drive, because I would have been in a world of trouble if I had formatted my SSD instead. So I had to do some gymnastics around the graphics card to move those SATA cables around. It was a pain but worth it in the end.
Also, I had to switch around the hard drive LED connector on the motherboard since it didn't originally light up, but that was easily fixed.
Nothing is overclocked since I don't want to risk damaging my new computer right away, as well as the faulty reading for the CPU. GPU temps, however, read just fine through the
nvidia-smi command and the NVIDIA control panel.
Sorry about the crappy pictures, they were taken with my Moto G. Plus I don't exactly have a steady hand for taking pictures on a smartphone.
UPDATE 7/6/15: All problems I have had with my Linux setup have been solved. I fixed the display manager issue by reinstalling a previously installed display manager, disabling it, and reinstalling the one I wanted to use. It's been so long since I've used Arch that I forgot that I had to do that!
The sensors problem was resolved by compiling and installing a different version of the
it87 module, which is the driver for my Super I/O chip. I had to look on the
lm_sensors supported hardware list and found this little gem. After installing it I loaded the module (
sensors-detect doesn't do it for you because it doesn't recognize the chip) and now I get all sorts of information about temperatures, voltages, and fan RPMs. I've updated the details with temperature information.
I believe the low CPU idle temp can be explained by the fact that I've enabled C-state in the BIOS which sets the voltage to 0.4 V and the clock speed to 1.7 GHz at idle.
CPU load temps (45°C @ 4.0 GHz) are taken while compiling the Linux kernel. GPU load temps are taken while running the Unigine Heaven benchmark.
UPDATE 7/10/15: I have finally done some overclocking on my CPU! Right now it's a relatively modest overclock of 4.2 GHz and having run a proper stress test I'm confident that it's stable. The command I used to stress test the CPU:
stress -c 4 -t 1h
As you can see, the test was supposed to run for a full hour. However, I was not comfortable with my computer running hot while I was away for supper, plus it was noticeably warming up my room. So I ended up killing it before I went to eat. It had been running for half an hour without a hitch, and I'd call that stable.
As far as temps go, I think I'm comparing apples and oranges here.
stress runs a worst-case-scenario load on the CPU which just keeps running
sqrt() until it times out. Before at 4.0 GHz I was compiling the Linux kernel and using that as my "stress test". However, compiling the Linux kernel is a lot more complex than just calculating a square root for a few minutes. Since these loads are vastly different, it is obvious why there is almost a 15°C difference in temperature.