The developer cockpit.
teaBASE is a macOS ≥13.5 Preference Pane.
Warning
teaBASE is in beta, almost certainly there are edge cases we are not yet catering to. Please report any issues you encounter.
Set up SSH as securely as possible and configure git
to prove your identity
by signing your commits.
Our gpg
signing is best in class secure with way less bloat, hassle and
overhead than GNU’s GPG suite.
Tip
We store your GPG private key in the macOS keychain, signed such that it is impossible for any other app to get it. We never expose it, it is fetched for as small a time as possible into memory, used to sign your commits and then discarded.
Note
We use a custom fork of withoutboats’s bpb.
A fork scaled “package manager” for the vibrant Git ecosystem.
teaBASE’s dotfile sync keeps your dotfiles versioned, backed up to a private
GitHub repo and synchronized to any number of computers automatically.
You can easily override, restore or otherwise fiddle with how it works because
it’s all just git
under the hood.
Note
Dotfiles are .
prefixed files in your home directory and are how open
source stores configuration.
Caution
Read the script before enabling this.
We have carefully made every effort to ensure data loss is impossible but:
this is new software!
We make it easy to install popular terminals and editors and set them as defaults. We also optionally can configure macOS to open all common programmer file formats with your chosen editor.
Create an encrypted .dmg
with your dotfiles, working source trees and
your GPG private key ready for re-import. The pack can also reinstall your
apps and tools.
Note
Building teaBASE requires Xcode >=16, which requires macOS >=14.5. You can check device compatibility here.
Prefpanes are fiddly.
- Build the prefpane with Xcode.
- Select to show the build folder from the Product menu
- Quit “System Settings.app” (if open) †
- Open the
.prefPane
product from inside theDebug
subfolder
† System Settings.app doesn’t seem to otherwise reload the
.prefPane
bundle.
Debugging is hard. In theory you can connect the debugger. In practice logging
with a teaBASE:
prefix and filtering in “Console.app” or showing
NSAlert
s is the path of least resistance.
More tools like this should be Preference Panes in our opinion. You don’t
need Menu Bar apps or clutter in your /Applications
for rarely used
configuration tools. If you disagree we’d like to hear your take though.
Preference Panes are old school and the continued integration of them into macOS is not well documented nor well supported. We didn’t want to risk potential deployment hassles by choosing Swift here even though we would prefer Swift.