Fighting the System

A blog of hacks and workarounds

I Created My First Chrome Theme!

I recently switch to Chrome from Firefox. I’m not sure how long I’ll stay but I really missed Firefox’s awesome dark Developer Edition Theme. The Chrome web store was lacking an equivalent, so I made one! You can find it on the Chrome Web Store under the name, Developer Edition Dark. It’s open source on GitHub too!

In the rest of this post, I’ll provide some notes on Chrome theme creation. Documentation online was quite sparse, so if this helps someone else I’ll be happy.

Running ExacqVision DVR Server on Hyper-V

ExacqVision is a DVR suite for security cameras. It works all right, I can’t really complain on that front. However, they license their software based on the MAC address of the server. This is pretty stupid on its face because it means a failure of the NIC means you need to relicense your server (which costs $$$ for a transfer) and in virtual environments, MAC addresses change easily. It gets really stupid when the software is incapable of reading the NIC’s MAC just because it is a Hyper-V NIC and I can’t license my server because of it. Thankfully, it’s possible to work around the issue.

Fix Non-working G930 Headset After Windows 10 Upgrade

I like my Logitech G930 wireless headset, but I also like running Windows 10 Preview builds. It seems like after every upgrade my headset stops working. I simply get no audio out of it. Reinstalling the application does not solve the problem. After every upgrade, I follow these steps to fix the audio:

  1. Exit the Logitech Gaming Software application.
  2. Open Explorer.
  3. In the address bar, go to %userprofile%\AppData\Local\Logitech
  4. Delete the Logitech Gaming Software folder.
  5. Restart the Logitech Gaming Software application.

Audio should work again!

How to Use Cincinnati Bell Fioptics With Your Own Router

I recently purchased gigabit Fioptics Internet service from Cincinnati Bell. At first I was hesitant to go through with it. I did not want to use a crappy ISP router and forgo my wonderful ASUS RT-N66U or be stuck running some sort of NAT-behind-NAT nightmare network. The day after installation, I took it upon myself to get my ASUS RT-N66U gateway working and remove Cincinnati Bell’s router. I was able to do this while keeping my Fioptics TV and on-demand features working. It was easy, but there is not much guidance out there on the Internet so I figured I would document my setup online.

Results of the 2015 /r/Linux Distribution Survey

Introduction

About three years ago after seeing a failed comment survey on /r/Linux I decided to create a “real” survey using Google docs to find out what Linux Distributions the folks at /r/Linux were using. These past three years, the results of those surveys were very well received so I wanted to continue the tradition. You can still view the 2012 survey, the 2013 survey, and the 2014 survey.

As always, I’d like to prefix this by saying I’m no statistician. My stats knowledge is limited to a college class I took four years ago and can barely remember. If you feel like I’m representing anything incorrectly or have any kind of constructive feedback I’d appreciate a reddit PM about it or a comment on this page’s reddit thread.

Hardening Firefox to Protect Privacy

Your web browser is your gateway to the Internet. Unfortunately, sometimes the gate works both ways. In this guide I will cover some tricks to help protect yourself online. I have been using Firefox configured like this for quite a while and wanted to share this with you. I’ll admit this configuration could probably go further (eg. disabling JavaScript, employing NoScript, disabling remote fonts, etc.) but I feel like this setup provides a good balance between protecting privacy/security and keeping the browser usable.

Deploy Application Updates With Ninite With a Cache on Your LAN

Recently we purchased Ninite Pro for our organization and have implemented silent application updating via a scheduled task with PowerShell. This process uses a cache on our LAN to store updates and speed the whole process along. After some thinking I decided I wanted to get this working off-site so that when students take their laptops home over the summer, they can continue to receive updates.

Enable Bitlocker Disk Encryption via Scheduled Task

Enable Bitlocker Disk Encryption Via Scheduled Task

I’ve been working on deploying Bitlocker across our Active Directory domain via a scheduled task. My goals here were as such:

  • Enable encryption on any platform which is capable of running it.
  • Prepare the disk for encryption (if necessary).
  • On some of our devices (HP EliteBooks) the TPM was not enabled by default, so I needed to enable it.

The advantage of using a scheduled task to enable Bitlocker (versus a startup or shutdown script) is that I can configure it to run when the computer is idle. I liked this solution over a startup script because my users on laptops very very rarely reboot their computers, and so startup scripts very very rarely get a chance to run.

Schedule a Task to Update ShadowProtect After Hours

Recently I needed to deploy some updates to some computers running StorageCraft ShadowProtect. In doing this, I was faced with three problems:

  1. After installing the update, backups cannot be performed until you reboot.
  2. I cannot reboot the servers during work hours.
  3. I am going out of town this evening to see my girlfriend and I don’t want to update remotely.

The solution here is a little automation with the help of a little batch and schtasks on my workstation.

Remove All Drivers From a Windows Image by a Certain Vendor

For when you find that you just need to remove all of the drivers from a captured image, or only those of certain makes. PowerShell makes it easy to script this removal so you aren’t manually typing a ton of dism commands. I found myself needing to purge some problematic Intel drivers from an image in order to get USB working on some of our older machines. I found that it is possible to remove all drivers from a mounted Windows image and then commit the changes back to the captured WIM completely in PowerShell. Read on if you need the skinny.