Η αρχιτεκτονική πίσω από την ταχύτητα

Το zerobrew δεν αποτελεί έναν αυτόνομο package manager, αλλά έναν βελτιστοποιημένο client για το οικοσύστημα του Homebrew. Ενώ το παραδοσιακό Homebrew εκτελεί μια σειρά από Ruby scripts για την αξιολόγηση των formulae, την αποσυμπίεση, την επαναγραφή των paths μέσω install_name_tool και την επαναϋπογραφή των binaries, το zerobrew εκτελεί τη μετατόπιση (relocation) εντός της ίδιας της διεργασίας (in-process).

Βελτιστοποίηση μέσω content-addressable storage

Η θεμελιώδης διαφορά έγκειται στο πώς διαχειρίζεται τα δεδομένα. Χρησιμοποιώντας ένα content-addressed store, το zerobrew αποθηκεύει τα artifacts με τρόπο που επιτρέπει την άμεση deduplication. Σε συνδυασμό με τη χρήση APFS clonefiles, η εγκατάσταση ενός πακέτου μετατρέπεται από μια διαδικασία rebuild σε μια λειτουργία τύπου copy-on-write, η οποία είναι πρακτικά ακαριαία.

Σεβασμός στο οικοσύστημα και περιορισμοί

Είναι κρίσιμο να κατανοήσουμε ότι το zerobrew «στέκεται στους ώμους» του Homebrew. Δεν συντηρεί δικές του λίστες πακέτων ούτε build farm, αλλά βασίζεται αποκλειστικά στα pre-built bottles που παρέχει η κοινότητα του Homebrew. Παρά τις εντυπωσιακές επιδόσεις, το project βρίσκεται σε πειραματικό στάδιο και δεν υποστηρίζει ακόμη post-install steps, γεγονός που σημαίνει ότι ορισμένα πακέτα που απαιτούν πολύπλοκες ρυθμίσεις μετά την εγκατάσταση ενδέχεται να μην λειτουργούν όπως αναμένεται.