View All Tags

FreeBSD

Why Choose FreeBSD?

FreeBSD is my preferred OS thanks to ZFS, disk encryption, the wholly-owned base system, ports/packages, jails for securing network services, and the community.

A few years ago, I found myself looking for a new OS for day-to-day use. I'd been using Mac OS X for several years because my employer provided a MacBook Pro and I really loved the nice, clean Aqua UI on top of a POSIX compliant core. However, I was setting up a desktop, didn't want to spend a fortune on Apple hardware, and wasn't sure I liked the direction Apple was heading with OS X by making it more like iOS. My requirements pretty much boiled down to security (including support for full-disk encryption), stability, flexibility, software freedom, and a thriving community for those inevitable times when I would need some wisdom. If you're reading this blog, I probably don't need to tell you why Windows was ruled out before the competition started.

Blank Results in MySQL Workbench on FreeBSD

An incompatibility with glib 2.42 causes MySQL Workbench to display a blank results grid. Here's how to patch the source code and recompile the port on FreeBSD.

There's one area where I simply don't like using the command line and that's SQL queries. When I'm working with a database, I appreciate having a decent GUI. That's why I was frustrated when I launched MySQL Workbench and found that the output was blank with no results being displayed for any query. The table editor also showed no data—no column names, indexes, nothing.

Chromebook for Power Users: Part 1

As a 'power user' who wanted to replace my laptop with something inexpensive and low maintenance, I gave a Chromebook an honest try. Was it up to the challenge?

This is the first post in a 3-part series on using a Chromebook as a power user. It gives a high-level overview of how I'm using my Chromebook and some basic Chrome OS configuration steps. Part 2 digs deeper to show advanced users how to use crouton to install Debian Linux in a chroot. Part 3 finishes up by configuring LXDE and connecting to a remote FreeBSD desktop running xrdp.

Chromebook for Power Users: Part 2

The RDP apps on Chrome OS left me wondering if my Chromebook would be useless. Then I found crouton and installed Debian Linux in a chroot to expand my options.

This is the 2nd post in a 3-part series on using a Chromebook as a power user. Part 1 gave a high-level overview of how I'm using my Chromebook and some basic Chrome OS configuration steps. This post digs deeper to show advanced users how to use crouton to install Debian Linux in a chroot. Part 3 finishes up by configuring LXDE and connecting to a remote FreeBSD desktop running xrdp.

Search Shell History Using Arrow Keys

FreeBSD's root user can easily search its shell command history using the arrow keys. Add the same search capability in the Bash shell with this change.

By default, the FreeBSD root user can type part of a command and then search through history for previous commands beginning with those characters using the up/down arrow keys. If you're new to FreeBSD or csh, you might think the convenient shell history search is specific to root or csh/tcsh. Fortunately, it's not. You can get similar functionality in Bash by creating or editing ~/.inputrc to add the following lines:

Chromebook for Power Users: Part 3

After installing Debian Linux in a chroot on my Chromebook, I slimmed LXDE down a bit before connecting to my FreeBSD desktop running xrdp.

This is the final post in a 3-part series on using a Chromebook as a power user. Part 1 gave a high-level overview of how I'm using my Chromebook and some basic Chrome OS configuration steps. Part 2 dug deeper to show advanced users how to use crouton to install Debian Linux in a chroot. This post finishes up by configuring LXDE and connecting to a remote FreeBSD desktop running xrdp.

Using Quarterly Ports on FreeBSD

FreeBSD 10.2 and higher use mismatched repos for packages and ports. This shell script simplifies updating your ports tree from the current quarterly branch.

Beginning with FreeBSD 10.2, binary packages installed using pkg are built from a quarterly SVN branch that only receives security and build updates once it's created. The goal is to provide a more stable software repository than the ports tree, which is constantly being updated and may even include broken ports at times. However, portsnap uses the latest/HEAD branch for the ports tree. Since mixing quarterly packages with current ports could lead to trouble, you have to choose one of these paths:

Enable Spell Check in Pidgin on FreeBSD

Easily enable Pidgin's spell-check feature on FreeBSD by adding a local dictionary.

Pidgin's spell-check feature doesn't work by default on FreeBSD, so I finally searched for a solution and found instructions to manually install spell-check support on Windows. That was useful enough information to get it working.

FreeBSD Shell Scripts Added to GitHub

I use some shell script libraries to make FreeBSD system configuration easier. They're now available as freebsd-scripts on GitHub for anyone to use and improve.

I recently switched my hosting provider from Digital Ocean to Vultr to get tighter control over the configuration—a more "pure" FreeBSD installation. While updating my notes to prep for the install, I considered how many configuration steps were basic file editing: add this line under that line, uncomment this line, comment that line, etc. I love the simplicity that comes when the code is the documentation, so I decided to create a small file I/O library to make it easier to write shell scripts for system configuration. Why bother maintaining notes to describe manual changes when I could write a script to perform the changes automatically?

Quick Web Searches Using the Terminal

Create shell aliases to quickly search reference sites from a terminal including DuckDuckGo, Wikipedia, Dictionary.com, AcronymFinder, Devhints, and FreshPorts.

I listened to episode #283 of The Changelog this week and learned about Devhints, which provides "cheatsheets" on a variety of development related topics. The hosts mentioned that the site looks good in Lynx, the text-based browser, but still asked about a shell script to parse it. I thought a shell script would be overkill: why not a simple alias that searches the site in Lynx?