+----------------------------------------------------------------------------------------------------------------------+
| FreeBSD Reference Table: Branches & Package Repositories |
+----------------------------------------------------------------------------------------------------------------------+
STEP 1: Understand the Two Separate Things
+---------------------+------------------------------------------------+--------------------------------------+-----------------------------+
| Thing | What it does | Examples | How many exist? |
+=====================+================================================+======================================+=============================+
| OS Source Branch | The operating system code itself | CURRENT, STABLE, RELENG, RELEASE | 4 types (but many instances)|
+---------------------+------------------------------------------------+--------------------------------------+-----------------------------+
| Package Repository | Pre-built apps you install with pkg | latest, quarterly, release_N | 3 types (but many instances)|
+---------------------+------------------------------------------------+--------------------------------------+-----------------------------+
Key insight: They are independent. You can mix any OS branch with any package repo (if the repo supports your OS version).
+----------------------------------------------------------------------------------------------------------------------+
STEP 2: What Each OS Branch Means (For Source)
+---------------------+------------------------------------------------+------------------------------------+-----------------------------+-----------------------------+
| OS Branch Name | What it is | Do normal users install this? | How many exist? | Example |
+=====================+================================================+====================================+=============================+=============================+
| CURRENT (main) | Bleeding edge OS development | ❌ No (only developers) | 1 (only main branch) | main -> 15.0-CURRENT |
+---------------------+------------------------------------------------+------------------------------------+-----------------------------+-----------------------------+
| STABLE (stable/X) | Next minor version development | ❌ No (only early adopters who | 1 per major version | stable/13, stable/14 |
| | | compile) | | |
+---------------------+------------------------------------------------+------------------------------------+-----------------------------+-----------------------------+
| RELENG (releng/X.Y) | Security patch branch for a specific release | ⚠️ Indirectly (via freebsd-update) | 1 per minor release | releng/13.5, releng/14.2 |
+---------------------+------------------------------------------------+------------------------------------+-----------------------------+-----------------------------+
| RELEASE (X.Y-RELEASE| Frozen snapshot from a specific date | ✅ Yes (this is the ISO you download)| 1 per minor release | release/13.5.0, release/14.2.0|
+---------------------+------------------------------------------------+------------------------------------+-----------------------------+-----------------------------+
+----------------------------------------------------------------------------------------------------------------------+
STEP 3: What Each Package Repository Means (For Apps)
+--------------------------------+-----------------------------------------------+------------------+------------------------------------+-----------------------------+-----------------------------+
| Package Repo | What it is | Updates? | Who should use it? | How many exist? | Example |
+================================+===============================================+==================+====================================+=============================+=============================+
| latest | Rolling, always newest versions | Continuous | Desktop users, developers | 1 (moving target) | .../latest |
+--------------------------------+-----------------------------------------------+------------------+------------------------------------+-----------------------------+-----------------------------+
| quarterly (label) | Moves to new branch every 3 months | Security fixes | Production servers (default) | 1 (moving target) | .../quarterly |
| | | for 3 months | | | |
+--------------------------------+-----------------------------------------------+------------------+------------------------------------+-----------------------------+-----------------------------+
| quarterly (specific) | Frozen after 3 months | No updates after | Archiving, reproducibility | Many (1 per quarter) | .../quarterly/2025Q2 |
| | | quarter ends | | | |
+--------------------------------+-----------------------------------------------+------------------+------------------------------------+-----------------------------+-----------------------------+
| release_N (e.g., release_5) | Frozen at OS release day | Never | Historical reference, bug repro | Many (1 per minor release) | .../release_5 (for 13.5) |
+--------------------------------+-----------------------------------------------+------------------+------------------------------------+-----------------------------+-----------------------------+
+----------------------------------------------------------------------------------------------------------------------+
STEP 4: What Happens When You Install From ISO (The 99% Case)
+------+------------------------------------------+-------------------------------------+-------------------------------------+-----------------------------------------------+
| Step | What happens | OS branch | Package repo | How many exist for this OS? |
+======+==========================================+=====================================+=====================================+===============================================+
| 1 | Download 13.5-RELEASE.iso | N/A | N/A | N/A |
+------+------------------------------------------+-------------------------------------+-------------------------------------+-----------------------------------------------+
| 2 | Install to hard drive | 13.5-RELEASE (frozen tag) | Not configured yet | 1 (this specific release) |
+------+------------------------------------------+-------------------------------------+-------------------------------------+-----------------------------------------------+
| 3 | Run freebsd-update | releng/13.5 (security branch) | Not configured yet | 1 (this specific releng) |
+------+------------------------------------------+-------------------------------------+-------------------------------------+-----------------------------------------------+
| 4 | Run pkg for first time | releng/13.5 | quarterly (label) | 1 (moving target to latest quarter) |
+------+------------------------------------------+-------------------------------------+-------------------------------------+-----------------------------------------------+
+----------------------------------------------------------------------------------------------------------------------+
STEP 5: What Happens Inside a Jail (OS Version + Package Repo)
+-----------------------------------+-------------------------------------+---------------------+-----------------------------------------------+-----------------------------+
| Jail OS (from base.txz) | OS branch inside jail | Default pkg repo | How many exist for this OS? | Does default work? |
+===================================+=====================================+=====================+===============================================+=============================+
| 14.2-RELEASE | 14.2-RELEASE (frozen tag) | quarterly (label) | 1 (this specific RELEASE) | ✅ Yes (if supported) |
+-----------------------------------+-------------------------------------+---------------------+-----------------------------------------------+-----------------------------+
| 13.5-RELEASE | 13.5-RELEASE (frozen tag) | quarterly (label) | 1 (this specific RELEASE) | ✅ Yes (current) |
+-----------------------------------+-------------------------------------+---------------------+-----------------------------------------------+-----------------------------+
| 13.4-RELEASE (EoL) | 13.4-RELEASE (frozen tag) | quarterly (label) | 1 (this specific RELEASE) | ❌ Fails (packages gone) |
+-----------------------------------+-------------------------------------+---------------------+-----------------------------------------------+-----------------------------+
+----------------------------------------------------------------------------------------------------------------------+
SUMMARY TABLE: Quantity Reference
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| Concept | How many exist? | Example instances |
+=====================================+=====================================+===================================================+
| CURRENT (OS branch) | 1 | main |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| STABLE (OS branch) | 1 per major version | stable/13, stable/14, stable/15 |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| RELENG (OS branch) | 1 per minor release | releng/13.5, releng/14.2, releng/14.3 |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| RELEASE (OS tag) | 1 per minor release | release/13.5.0, release/14.2.0 |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| latest (package repo) | 1 (moving) | .../latest |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| quarterly (label) | 1 (moving) | .../quarterly |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| quarterly (specific) | Many (1 per quarter) | 2025Q2, 2025Q3, 2025Q4... |
+-------------------------------------+-------------------------------------+---------------------------------------------------+
| release_N (package repo) | Many (1 per minor release) | release_0, release_1, release_2... |
+-------------------------------------+-------------------------------------+---------------------------------------------------+