Category Archives: Projects

How To Punch A Hole Through Windows Firewall

Windows 7 does a pretty decent job of sealing itself off from the wild and the wooly of the Interweb with its built-in firewall, but sometimes you have an application running that needs to interact with the outside world: a game or an FTP server, perhaps. In order for these applications to work correctly, you’re going to need to punch a hole in your firewall by adding an exception to Windows Firewall.

First, open Windows Firewall settings from the System and Security settings in the Control Panel.

In the left sidebar, click “Allow a program of feature through Windows Firewall”

Choose the program from the list and check the box to the left to allow an exception. Check the boxes to the right to specify which networks the exception is allowed on.

If your application does not appear on the list, click the “Allow another program…” button in the lower left, and either highlight the program from the list or browse for the executable file, then click the “Add” button. (NOTE: for FileZilla Server, make sure that “FileZilla server.exe” is given the exception NOT “FileZilla server interface.exe”)

How To Setup a Windows FTP Server With FileZilla

FileZilla is the de facto Windows FTP server solution. It is an open-source, free application distributed under the GNU public licence.

Installation is fairly straightforward, simply download and run the installer binary. Be careful, though, because Sourceforge sneaks some “sponsored software” into the installer, and you may end up with a little bloatware that you didn’t want or need. The default settings are fine, but you may want to change the default port if you’re going to be opening this sucker to the entire Interweb. Today, though, we’re staying behind the safety of our hardware firewall, so we can only access files if we’re connected to the same wifi.

Setup is a little convoluted, but can be made simple by following these easy steps:

One the server daemon is running and you are in the main window, click the “Users” button to add users to the server.

In the Users window, click the “Add” button on the right side, type in a username and click “OK”. The user you just specified will be enabled automatically. You can assign a password for this user by checking the box next to “Password” and typing one in.

Clicking the “Shared Folders” branch (on the left side), you can add directories and assign permissions. I only assign write, delete, and append permissions to my admin account while I give other users the ability to read files on the server. Each directory will require an alias, so give it something easy to remember when you open it in your FTP client.

For more information on setting up FileZilla Server, including how to punch a hole through the Windows Firewall, consult the FileZilla Wiki.

For the first time in nearly a decade, I’m using Windows as a primary OS

I have to admit, I haven’t used Windows on a machine that I own since 2006 when Microsoft wanted me to pay for a new license for the copy of Windows XP Pro that I legally purchased as an upgrade to the same computer I had been using since 2002. Microsoft–to put it mildly, and in plain terms–royally pissed me off that day, and I swore off their products for what might have seemed forever. I switched to Ubuntu 6.06 and became an instant fan of Linux, reliving some of my youth spent digging around in MS-DOS and writing lines upon lines of code. I ran various flavours of Linux for years all the while staying sure of myself that I could run anything just as well as I could with Windows.

In 2010, that all came crashing down–literally–when a bookshelf fell from the wall in my tenement apartment and crushed my laptop. I did the best I could to revive it, but the hardware was circling the drain. It was time for a new computer. I bought a MacBook Pro.

I’m a fan of OSX at its core level. The system is based on UNIX (“It’s a UNIX system. I know this!”), so it’s sorta like Linux…except that it just works. No muss, no fuss, and no compatibility issues that need to be sorted. I’ve been happily using OSX going on 5 years now, but for the VCR, I was not going to attempt the foolhardy pursuit of building a hackintosh. Ubuntu proved very capable in building a functioning software suite, but when I got to the higher end of the project’s performance envelope–namely in areas regarding emulation–Ubuntu’s OpenGL processing was simply falling short.

Finally, for the first time in nearly a decade, I have installed Windows as a primary operating system on a machine that I own. Thankfully, I missed the Vista era (as Vista is to 7 what ME was to XP), and in my experimenting with Windows 8 at my day job, I knew that tiled monstrosity wouldn’t see day one on my network! Windows 8 is a jumbled mess that can’t decide if it’s going to be for desktops or tablets, showing the shortcomings of both and the advantages of neither. Even the 8.1 upgrade still managed to take away a lot of the core functionality that I would rely on for the VCR. For this reason, I took the plunge and bought a copy of Windows 7 Home Premium.

So far, the $99 price tag has shown its value against my open-source mistress in the gaming realm, allowing me to play my entire games library without complex compatibility layers or other desenrascanço. I can even purchase new games from Steam and Good Old Games to go along with the hundreds of titles I already own! There are a few key functionality options in Windows that one does not enjoy in Ubuntu as well. The case in point: EventGhost. Ubuntu does have an ability to program macros to various events in the OS, but only in Windows is there a GUI that walks you through setup quickly and easily.

The bottom line: Linux is fantastic and an unbeatable bargain for the price (free), but for the foreseeable future when you need a little extra multimedia support, it’s worth dropping a Benjamin to get DirectX.

How To Watch Netflix and Hulu in Linux

Linux is great for many applications, but the plugins that drive streaming services like Netflix and Hulu are closed-source and the developers have little to no interest in supporting a “fringe” operating system. Thankfully, the fine folks at Google saw the wisdom in giving back to the community that helped build them by building Netflix and Hulu support into the Google Chrome browser.

Install Google Chrome by downloading the appropriate package from the Chrome website and you’re ready to go!

How To Setup a Generic Joystick or Gamepad In Ubuntu Linux

If you’re going to play games using RetroArch, you’re going to need a proper controller. There are a variety of wired, “classic-style” controllers out there that can offer you a variety of retro experiences, but they all need a driver to work. Fortunately, the Ubuntu repositories have you covered!

First, install the Joystick input driver package:

sudo apt-get install joystick

Next, install the Joystick Configuration package:

sudo apt-get install jstest-gtk

Now you can use jstest-gtk to configure your settings and calibrate the controller. Everything else is ready to go!

How To Install RetroArch And Libretro In Ubuntu Linux

RetroArch may be the single greatest contribution to classic gaming emulation since the dawn of Nesticle: a multi-console emulator frontend spanning the history of videogames from the Atari 2600 through Playstation eras. Libretro is the companion to RetroArch that contains all the emulator cores.

Installing RetroArch and Libretro in Windows or OSX is a fairly simple process of downloading the RA binary and the Libretro cores, but in Linux, it takes a little more effort.

First, add the Hunter Kaller repository to Ubuntu and update:

sudo add-apt-repository ppa:hunter-kaller/ppa
sudo apt-get update

Install RetroArch and Libretro with a couple of terminal commands:

sudo apt-get install retroarch
sudo apt-get install libretro*

When you run RetroArch, the Libretro cores will be located in /usr/lib/libretro/

How To Install The nMedia PRO-LCD USB Module In Ubuntu Linux

CREDIT: nMedia

To maintain a level of authenticity, the VCR required an external display like the one originally installed to show status, function, channel number, etc. I opted to replace the original 7-segment display module with a USB-powered LCD to put a modern spin on the old look. There aren’t many display modules available, so I did a little research to make sure that the nMedia PRO-LCD would be compatible with Linux drivers. Fortunately, it is, but it took much cursing and gnashing of teeth to get it working.

First, make sure that the USB cord and power supply are plugged in.

CREDIT: nMedia
CREDIT: nMedia
CREDIT: nMedia

Power-on the computer, and the display should show a test pattern with the words “MCE Indicator TM for Media Center” dancing around. Now, it’s time to install drivers!

From the terminal, execute the following:

sudo apt-get install LCDproc

Once LCDproc is installed, configure the daemon by editing /etc/LCDd.conf in Nano or another text editor. Change the following settings to the appropriate values:







Reboot, and your LCD is ready for input! Or is it output?

How To Setup IR Remote Control Access In Ubuntu Linux

What HTPC setup would be complete without a remote control to command your rig from across the room? For the VCR, I chose the SIIG Vista MCE Remote for its compatibility and range of functions. It also happened to be reasonably-priced at Micro Center when I bought it.

To get started, plug in your IR receiver USB dongle and install LIRC from the terminal:

sudo apt-get install lirc

During installation, you will be presented with a dialog asking you to select the specific remote control you have.

For the SIIG Vista MCE remote, choose “Windows Media Center Transceivers/Remotes (all)”

Then, choose your brand of IR blaster (if applicable). In this example, I do not have one installed, so I chose “None”.

Allow the installation to finish, then install LIRC X Utilities from the terminal with the following command:

sudo apt-get install lirc-x

Test your remote’s communication with the irw terminal command.

Point the remote at the receiver and press a few buttons, you should get some coded output on the screen. If so, congratulations! Press C to quit IRW.

If there is no output, verify that the dongle is working (there’s usually a red light that accompanies keypresses) and that the correct remote was selected in setup. You may need to reboot for the computer to recognise the new hardware.

For more on remote control setup, click here.

How To Make Applications Run Automatically On Startup In Ubuntu Linux

Sometimes it’s just handy to have a particular application run automatically on boot, especially if your system is not going to have a keyboard or traditional input device attached. In Ubuntu, this is done quite simply by copying the application’s *.desktop file to a dedicated autostart folder.

The *.desktop files for your applications should be located in the /usr/share/applications folder in the file system.

Copy the file for the application you wish to autostart, and paste in /home/.config/autostart (make sure that you are showing hidden files).

If the folder does not already exist, you will have to create it.

Paste the *.desktop file, reboot, and your application will start automatically.