Unix Computing

Everything in my (computing) world has a little unix within. Here are related survival tips:

Unix (desktop and servers)

  • Servers
  • FreeBSD
  • FreeBSD Package Updates
    • Package management systems will generally make the management of software tools close to automatic. On FreeBSD and macOS, there is pkg and homebrew respectively. Typical update commands:
      • (FreeBSD:)        pkg update  ; pkg upgrade
      • (macOS homebrew:) brew update ; brew upgrade
    • The "pkg" tool itself is ready to use on FreeBSD but you need to manually install the "brew" tool on macOS (see below)
  • Thinking BSD Unix with Linux and macOS
    • Linux systems have package management built-in but, if you want a BSD type experience, then "homebrew for Linux" is recommended. The one-line install command is at brew.sh
    • The "brew" command is similar to the FreeBSD "pkg" command
    • You gain access to the usual build tools (and easy selection of versions)
  • Using Unix with macOS
    • The essentials are homebrew and XQuartz ... 
    • macOS Workspace Setup by Nenad Novaković covers the basic install of Xcode (command line tools), the package manager homebrew (with great hints for brew command use for common unix tools and also macOS GUI tools), and support services like up-to-date Apache httpd, dnsmasq, php, etc. (written July 2018). From Nenad's article, just 4 shell commands entered in a Terminal window get you the basic setup for new users:
        xcode-select --install
        ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
        brew upgrade && brew update
        brew install cask
      The above commands install the software build system (compilers etc.), then uses ruby to install homebrew, then uses homebrew to update itself, and then uses brew to install a component that allows you to also manage the macOS type GUI apps.
    • A handler for "command not found" can be triggered in recent versions of shells like zsh, bash, etc. The Homebrew Command Not Found handler can automatically suggest how to install a command using brew if checking shows that it exists.
    • From Unix to Mac OS-X, by Tom Loredo at Cornell, is an excellent introduction to OS-X for FreeBSD users. New users should at least skim this documentation, right through to the end, where you will find a link to the very thorough Unix and OS X: The Absolute Essentials from UCSC Scott Lab. (updated April 2017)
  • OS-X/macOS hacks
  • Wine Bottler is a macOS tool that automates the repackaging of Windows apps into standalone macOS apps (essentially packages them with all necessary WINE run-time components). This can be very useful in restricted engineering teaching environments.