Skip to content

Instantly share code, notes, and snippets.


So it's been a while since I set up a #FreeBSD desktop from scratch, and things have gotten easier? :rising-intonation: :confused-dog-face: Curious? Read on!

Maybe I overcomplicated things last time (you can see the script here, it seems some steps are now redundant. Anyway, here's the simplest way I know to get a capable desktop system set up.

I'm doing this on an M1 Mac with VMware Fusion Tech Preview and FreeBSD 13.1-RELEASE. After (or during) install create a user and add it to the groups video, wheel and operator with

% pw usermod $USER -G wheel,operator,video
tehpeh / docker-on-centos-8.txt
Created September 1, 2021 02:07
How to install and configure Docker on Centos 8 (VM instead of using Docker Desktop)
View docker-on-centos-8.txt
# Install docker
# from:
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
sudo yum install docker-ce docker-ce-cli
# check fingerprint 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
# OR if error on install, sometimes specific version of is needed
sudo dnf install
tehpeh /
Last active November 30, 2022 00:55
Root on ZFS with GPT custom partitions and geli
# Tested on FreeBSD 11.2
# Start installation as usual, but choose 'Shell' in the partitioning menu.
# References:

Keybase proof

I hereby claim:

  • I am tehpeh on github.
  • I am tehpeh ( on keybase.
  • I have a public key ASDLIJg_xlMG_yAFltDtnTVw7u_Jlax5OvVPUtShgP7FKgo

To claim this, I am signing this object:

tehpeh /
Last active August 25, 2022 13:35
Dynamic DNS for Mac OS X with CloudFlare and ddclient

Update June 2019

The patch described below may no longer be necessary. CloudFlare instructions here. Perl module JSON::Any may still be required, however, see comments.


Dyn's free dynamic DNS service will be ending on Wednesday, May 7th, 2014.

CloudFlare, however, has a little known feature that will allow you to update your DNS records via API or a command line script called ddclient. This will

tehpeh / google-analytics-outbound-link-tracking.html
Last active December 16, 2015 13:28
Outbound link tracking for Google Analytics using YUI3 (SquareSpace compatible)
View google-analytics-outbound-link-tracking.html
tehpeh / db.rake
Created September 17, 2012 02:05
Enable hstore on rake db:schema:load
View db.rake
namespace :db do
namespace :enable do
desc "enable hstore extension"
task :hstore => [:environment, :load_config] do
ActiveRecord::Base.connection.execute('CREATE EXTENSION IF NOT EXISTS hstore;')
Rake::Task['db:schema:load'].enhance ['db:enable:hstore']
tehpeh / tddium.rake
Created June 27, 2012 06:33 — forked from tddium/tddium.rake
Installing hstore extension in Postgresql 9.1 database for Tddium
View tddium.rake
# Copyright (c) 2011, 2012 Solano Labs All Rights Reserved
namespace :tddium do
desc "load database extensions"
task :db_hook do
Kernel.system("psql #{ENV['TDDIUM_DB_NAME']} -c 'CREATE EXTENSION hstore;'")
tehpeh / nginx-initd-centos
Created May 8, 2012 06:45
View nginx-initd-centos
# nginx - this script starts and stops the nginx daemon
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /etc/sysconfig/nginx
tehpeh / nginx-initd-ubuntu
Created May 8, 2012 06:44
View nginx-initd-ubuntu
#! /bin/sh
# Provides: nginx
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: nginx init.d dash script for Ubuntu <=9.10.
# Description: nginx init.d dash script for Ubuntu <=9.10.