Skip to content

About

A custom Homebrew tap for managing version-controlled development tools and dependencies.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

32 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Personal Homebrew Tap

Formula Tests

A custom Homebrew tap for managing version-controlled development tools and dependencies.

What is this repository for?

This repository serves as my personal, version-controlled package manager for critical development tools. By maintaining my own Homebrew tap, I ensure:

  • Version Control: Lock specific versions of critical tools (OpenSSL, PostgreSQL, AWS CLI, Redis, etc.)
  • Consistent Development Environments: Eliminate "works on my machine" issues caused by version drift
  • Security & Compliance: Audit and validate all packages before adoption
  • Build Reproducibility: Ensure CI/CD environments match local development setups exactly
  • Disaster Recovery: Maintain internal copies of critical dependencies, surviving upstream changes or deprecations

Usage

Installing the Tap

# 1. Tap the repository
brew tap dsaenztagarro/tap

# 2. Install packages from the tap
brew install dsaenztagarro/tap/ca-certificates
brew install dsaenztagarro/tap/openssl-ruby

# 3. Verify installation
brew list --versions | grep dsaenztagarro

For Ruby Development

For Ruby development, use the openssl-ruby formula which provides a stable, controlled OpenSSL version:

# 1. Install openssl-ruby
brew install dsaenztagarro/tap/openssl-ruby

# 2. Configure Ruby to use it
cat >> ~/.zshrc << 'EOF'
# Force Ruby to use stable OpenSSL version
export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix dsaenztagarro/tap/openssl-ruby)"
EOF

# 3. Reload shell
source ~/.zshrc

# 4. Install Ruby
rbenv install 3.4.3

# 5. Verify
ruby -ropenssl -e 'puts OpenSSL::OPENSSL_LIBRARY_VERSION'

See docs/OPENSSL_RUBY_INCIDENT.md for detailed explanation of why this approach is recommended.

Updating Packages

# Update tap formulas
brew update

# Upgrade a specific package (example)
brew upgrade dsaenztagarro/tap/ca-certificates

# Check for available updates
brew outdated

Note on openssl-ruby: This formula is designed to NOT auto-upgrade. You control when to upgrade by updating the formula yourself after testing.

Reasons to Adopt

Key Benefits

  1. Dependency Version Control

    • Lock specific versions of critical tools
    • Prevent version drift across environments
    • Enable deterministic development environments
  2. Security & Compliance

    • Audit and validate packages before adoption
    • Quickly patch or rollback problematic versions
    • Track exactly which versions have been vetted
  3. Build Reproducibility

    • Ensure CI/CD environments match local setups
    • Reduce build failures due to upstream package changes
    • Pin formula commits to specific, tested versions
  4. Disaster Recovery

    • Survive upstream formula deletions or breaking changes
    • Maintain internal copies of critical dependencies
    • Quick recovery when Homebrew core formulas are deprecated
  5. Engineering Excellence

    • Maintain professional-grade tooling practices
    • Reduce setup time and troubleshooting
    • Standardized tooling across all projects

Industry Adoption

Industry Leaders Using Custom Taps

Several major technology companies maintain custom Homebrew taps for their engineering teams:

This practice follows the same professional standards used by industry leaders.

Available Formulas

Formula Description Current Version
ca-certificates Mozilla CA certificate store 2025-11-04
openssl-ruby Stable OpenSSL for Ruby installations 3.5.7
engineer Terminal client for the Engineer study-tracking app 0.2.0

Note: openssl-ruby is specifically designed for Ruby development. It requires explicit configuration and doesn't auto-upgrade, providing a stable SSL/TLS foundation for Ruby applications. See docs/OPENSSL_RUBY_INCIDENT.md for the full story.

More formulas will be added as the tap matures. See the Formula/ directory for all available packages.

Maintenance Philosophy

This tap is maintained as part of my personal engineering excellence practice:

  • Version Control: All formulas are versioned and tracked
  • Security: Regular monitoring for CVE updates
  • Testing: Formulas are tested before addition
  • Documentation: Clear documentation for all decisions

Documentation

Internal Documentation

External Resources


Maintained by: David Saenz Tagarro
Last Updated: 2025-11-14
Purpose: Personal engineering excellence practice

About

A custom Homebrew tap for managing version-controlled development tools and dependencies.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages