Find me on Google+


Making A Fedora 20 based Steam Machine

After having a nightmare with getting Valve's SteamOS running on an old laptop that I wanted to repurpose as a Steam Machine, I decided to go the "I know this works" route and go with Fedora.  I had originally plopped CentOS 7 on this system, but ran into a really basic but frustrating issue of not having drivers for the joystick available.  So I went with SteamOS, failed with HDMI out and screen centering issues (half on the laptop screen and half on my TV).  Then to Fedora.

Fedora makes this ridiculously simple.  I am going to presume you are doing a stock Fedora 20 install here.  These instructions should work for 19, and 21, and presumably for all future releases that support 32-Bit binaries in the same fashion (we will get to that part later).  I am also presuming an NVIDIA based GPU and an Intel CPU.  Also, assume that all commands here are done with root priveleges unless otherwise noted (either as root, using su, or via sudo).


System Setup

1) After installation is complete go an install the RPM Fusion repository.

Make sure here that you install the repo, run a "yum update", and reboot.  The NVIDIA drivers depend on that basic task to ensure that your drivers and kernel are in sync with the latest releases of each.

2) Again over at RPM Fusion, follow the guide for getting your NVIDIA drivers installed.

This is going to be a key area, for several obvious reasons, but also the lesser obvious to Linux newbies.  If you are running on a 64-Bit install, you NEED to install the 32-Bit xorg component that they detail, and it won't hurt to also get installed the extra hardware acceleration component as well (VDPAU).

3) Once this is all done, do the following:

yum install steam vim

4) After installing those, you now have a choice.  The option I went for was an automated login for a steam account that autolaunches Steam in Big Picture mode.  If you go this route you will need to add a user for this purpose (Settings -> Users) and set that user to auto-login.  You can set a password here if it forces you to, we will remove this in a bit.  For multiple Steam accounts, you will be able to manage those within Steam (not saving the password for the steam account is a simple start for that).

After you create that account, run

vim /etc/passwd

And edit the account so that the line goes from "username:x:blah" to "username::blah".  Note the removal of the x, but not the adjoining colons.  That makes the account have no password.

5) Login as that user now.  If you want to tweak the GNOME (or really whatever desktop you chose to install) environment, thats fine.  Fire up Steam.  Login, and set via the settings anything that you want setup, such as launching in BIg Picture Mode, etc.  You can close out Steam.  


GNOME Control Panel Tweaks

6) Configure your screens as you see fit, such as disabling or mirroring a laptop screen, etc.

7) Configure your audio appropriately

8) Edit the power settings to not kick off the screensaver or blank the screen.

9) Disable Pop-Up notifications.


Finishing Up

10) Reboot.  You should be at Steam.  If you have already connected a controller, it should work fine.  Other optional things that can be done are installing java or any other desktop app.  You can inject those into Steam just like you would on the desktop client (it still is, just a new UI).  Another option is to get the controller setup for use as a mouse. 


Been a busy fellow ...

Well, aside from now pretty much running all EL7 on anything that it will run on, VMs included, and a massive security audit involving going over SELinux policies and firewall rules, I have had quite the time computing.

Got a repo up for Fedora 20 and EL7.  Sofar not too bad.  Had a private one (well was public but never showed anyone how to get to it).  Cleaned it up a bit and redid it so its public.  The focus is on getting software available to EL7.  So anything that isn't there is getting a query for srpms to rebuild.  If I have to go manual, or if the software is so new compared to whats there in the Fedora repos, I will host the newer version.  Priority for srpms is current release then as a last resort the rawhide rpms.  This has been working as a safe policy for nearly a decade of rolling up rpms.

Redid my vm running Mumble and other things.  Not a Debian fan in the slightest.  Reloaded it with CentOS 7 and its rocking hard.  A bit better performance too.  Kernel and better packages may be the cause... (had a few flaky .debs that I think were being a PITA.  Never learnt how to do .debs well).  A bunch of services are now finally offered officially and correctly.  Those who are to have access have been notified in one fashion or another.

Fixed my VM server somewhat.  Some bad SELinux policies and permissions and firewall settings.  Also applies to all VMs I host here as well.  All hail KVM and tuned!

Now its just to migrating my website and email (I know, been saying this for years now, literally).


CentOS 7 a few months in ...

Well, I have been using RHEL, Oracle, and CentOS on several of my machines each now for some time, but not on my main tower due to EL6 being inadequate for gaming (PulseAudio related mostly).  Well that changed shortly after CentOS 7 got dropped on us all.

C7 has been phenomenally great.  I have been very happy with RHEL and Oracle overall for servers, and that has not changed.  At all.  If I can afford the entitlement, I go RHEL, otherwise its Oracle.  But at least Oracle has a lack of usability for desktop usage.  Its really not well suited at all for this, as alot of necessary packages are just not there.

C7 + Nux + EPEL + ELRepo make things very very nice.  The one hangup for many is getting wine.i686 working correctly.  No need to struggle there.  I detailed what needs to be done here and in short :

  1. yum install glibc.i686 alsa-lib.i686 libXv.i686 libXScrnSaver.i686 libSM.i686 libXi.i686 libXrender.i686 libXrandr.i686 freetype.i686 fontconfig.i686 zlib.i686 glib2.i686 libstdc++.i686
  2. And then install PlayOnLinux
  3. Set PoL to use a non-system wine

Steam works great.

Chrome and Firefox work very well also.

Screen Recorder seems to be in proper order, although I havent toyed with it too much.

GNOME 3.8 runs very well.  As much as I played with other DE's, GNOME was better.  I have not, however, tried a MATE install yet or Cinnamon.  Cin always worked very well for its usability, footprint and stability.  

Server and client side, KVM is rocking hard, and I am loving it.  Glad I stopped paying for VMWare.  

And packaging up RPMs seems to be a bit simpler, now that alot of the Fedora tools are updated to a more recent rev, doing mock and yum-builddep runs are a walk in the park.

Long story short, aside from a very select few packages that are not present, I couldn't be happier.  Once again, Red Hat hit a homerun, and with the much more up to date libraries, things I depend on are going to be good at least until EL8 drops if not longer.


Going forward, once I can scrounge some spare time, I will be setting up a repo soon to host my packages I have rolled up to keep things clean on my end.  They are all clean packages that pass mock and rpmlint tests.  I will try to keep it only dependent on EPEL + base, but there may be a few issues that prevent that from time to time.  I will need to sit down and develop a battle plan for getting a build bot enabled and a way to track when new packages should and could be made to make life saner.

I also plan on actually getting them videos done.  I have a bunch of stuff for EL6 that is there and waiting for post, but porbably will be updated to be more EL6/7 centric rather than just the latest and greatest.  I won't touch EL5 anymore, far too ancient for my tastes.


KVM oopsie

For those that didn't know, KVM hangs bad when an NFS mount disappears.  I ran into an issue where  I forgot to delete an old NFS data share.  The current one was up, but I disabled the old node.  Well that went badly.  Eventually I figured out that other than fstab, I needed to remove the xml file and a symlink to it -- etc/libvirt/storage (the xml file) and /etc/libvirt/storage/autostart (symlink).




3com 3824 1Gb Managed Switch now in my possession

Got me a new piece of gear, a used (off ebay) 3com 3824 managed switch.  For my records and for yours, here are some reset instuctions for getting brand new setting setup if they weren't cleared prior to shipping off.


1) Get a null modem cable that has a DB9 on one end, and whatever suits you on the other.  I went with a DB9<->DB9 cable + null modem adapter + DB9<->USB.

2)Connect up cable to the serial console.

3)Install and fire up a terminal emulator of some sort.  For linux (RHEL, Fedora, openSUSE), grab minicom.  Configure it up to use 19200/8/N/1.  This should be printed on the front of the unit next to the serial port.

4)When you fire up, you should automatically be in the admin serial console screen at a lovely login.  Login with recover/recover as your login/password.  It will ask you to reset the unit to complete the password reset.  Do so by pulling the plug on it for a few moments and reconnecting it.  

5)Once its back up, you should have a reset prompt asking for the new password.  Your admin login will be admin/newpassword

6)To set the IP address info, enter the command 'protocol ip basicConfig'

7)Now we need to go and do a factory reset; enter 'system control initialize'


There you have it!