Skip to content

Releases: johnpatrickroach/better-anonymity

v1.0.4 - Clean Setup (No Stderr Noise)

27 Mar 23:31

Choose a tag to compare

🎉 v1.0.4 - Silent Setup

Fixed

  • Setup bin/better-anonymity setup now runs cleanly - no "weird outputs"
    • sysadminctl auth errors (interactive mode)
    • defaults NAT/basename parsing fails
    • launchctl "usage"/unload errors (mediaremoted)
    • NFS /etc/exports not found
    • AssetCache "already deactivated"

Changes

  • All hardening commands idempotent (|| true, checks)
  • Direct execute_sudo for edge cases bypassing parsing bugs

Install

brew install better-anonymity/tap/better-anonymity
OR
pip install better-anonymity --upgrade

v1.0.3 - The Ironclad Network Update

27 Mar 01:38

Choose a tag to compare

What's New in v1.0.3

The Ironclad Network Update brings three highly anticipated legacy security features into the modern modular codebase, greatly expanding device anonymity and network-level defense natively on macOS.

This update introduces zero new dependencies, relying entirely on native macOS kernel tools and daemons for maximum performance and security.

🛡️ Hardware IP Firewall Blocklisting (pfctl)

  • Native Threat Blocking: Added the b-a firewall blocklist command which aggregates and injects threat intelligence IP lists (FireHOL, EmergingThreats, BinaryDefense) directly into the macOS Packet Filter (pfctl) kernel layer.
  • Dynamic Rule Mapping: Injects a persistent <blocklist> table without polluting existing configurations. Completely reversible via dynamic pf.conf flushing during uninstallation.

🌐 Aggressive Browser Hardening

  • Automated Anti-Fingerprinting: Added the b-a harden browser command to discover installed Firefox and LibreWolf profiles automatically.
  • Static user.js Injection: Surgically injects a highly restrictive user.js payload designed to disable WebRTC, telemetry, safe browsing remote lookups, and fingerprinting vectors.
  • Resilient Backups: Automatically creates stamped .old backups of your existing user.js and prefs.js files for safe and clean restorations.

👻 Persistent MAC Address Spoofing

  • Event-Driven Rotation: Redesigned the b-a wifi auto-spoof LaunchDaemon to utilize native macOS WatchPaths.
  • Dynamic Triggers: The system now automatically rotates and cryptographically scrambles your Wi-Fi interface MAC address not just at boot, but securely upon sleep wakes and network state changes.

⚙️ Automation & Test Suite Fixes

  • 100% Logic Test Pass Rate: Addressed deep execution traps and Mock-leakage within the headless bash testing framework. The tests/unit_logic.sh suite now runs cleanly end-to-end without hanging.
  • Python Shim: Bumped the PyPI distribution to 1.0.3 for universal package availability.

v1.0.2 – Installation Documentation Update

25 Mar 19:19

Choose a tag to compare

v1.0.2 – Installation Documentation Update

This patch updates the project documentation to clarify and simplify the installation process for end users.

📝 Documentation Updates

  • Streamlined Installation Instructions: Updated the README.md to explicitly highlight that cloning the repository is no longer required for installation via package managers.
  • Clearer Options: Separated installation paths into distinct, easy-to-read sections for Homebrew, PyPI (Pip), and Source Code.

To update via Python:
pip install --upgrade better-anonymity

To update via Homebrew:
brew upgrade better-anonymity

v1.0.1 – Production Distribution & Uninstallation Fixes

25 Mar 00:21

Choose a tag to compare

v1.0.1 – Production Distribution & Uninstallation Fixes

This patch release solidifies the CLI for production use via PyPI and Homebrew by ensuring that all components (including bash script assets) are bundled correctly across environments.

🐛 Bug Fixes

  • Python Shim Pathing: Fixed an isolated environment issue where pip install better-anonymity would fail due to missing bash scripts. The .whl bundle now dynamically includes the bin/, lib/, and config/ assets natively inside the Python package!
  • Homebrew Uninstallation: Fixed a bug where better-anonymity uninstall would fail to recognize a Homebrew installation. The CLI now gracefully detects standard Homebrew cellars and cleanly invokes brew uninstall better-anonymity internally.
  • PyPI Uninstallation: better-anonymity uninstall now recognizes standard pip installations and securely invokes pip uninstall -y better-anonymity to remove its own CLI shims.
  • Defaults Read Noise: Silenced terminal noise generated by restore_default when resetting configuration variables without values.

🚀 Enhancements

  • Global Package Manager Skip: Running better-anonymity install cli on a package manager installation (Homebrew/Pip) will now intelligently skip writing redundant wrapper scripts to /usr/local/bin while continuing to append necessary .bashrc / .zshrc profile aliases (torify, stay-connected, etc).

To update via Python:
pip install --upgrade better-anonymity

To update via Homebrew:
brew upgrade better-anonymity

v1.0.0 – Production‑Ready Better‑Anonymity CLI

24 Mar 22:24

Choose a tag to compare

v1.0.0 – Production‑Ready Better‑Anonymity CLI

Core Refactor

  • Added native JSON configuration (config/settings.json) with a new config_get helper (Python 3 based) for fine‑grained module toggling.
  • Refactored macos_hardening.sh to respect the JSON flags, allowing users to enable/disable individual hardening actions.

Dependency Stability

  • Pin‑locked the Arkenfox Firefox user.js installer to the 128.0 release tag, preventing breakage from upstream master changes.

Sudo Keep‑Alive

  • Implemented a robust background sudo‑keepalive loop, eliminating password prompts during long‑running tasks.

Comprehensive Uninstaller

  • Restores DNS, firewall, hostname, removes installed dependencies, scrubs alias blocks from ~/.zshrc/~/.bashrc, and wipes the ~/.better-anonymity cache.

Documentation Updates

Test Coverage

  • Added extensive unit tests for the new configuration parser covering missing files, missing keys, valid values, malformed JSON, and case‑insensitive output handling.
  • All existing Bash unit tests (430+) continue to pass.

Quality Assurance

  • Full test suite passes with 0 failures, confirming stability across the toolset.