<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Start on Barn</title>
    <link>https://barn.pgsty.com/docs/start/</link>
    <description>Recent content in Start on Barn</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    
    
    
      <lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate>
    
    
      <atom:link href="https://barn.pgsty.com/docs/start/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>Quick Start</title>
        <link>https://barn.pgsty.com/docs/start/tutorial/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/tutorial/</guid>
        <description>&lt;h2 id=&#34;install&#34;&gt;Install&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;This tutorial targets the &lt;strong&gt;Barn 0.9.0 release candidate&lt;/strong&gt;. For now,&#xA;&lt;a href=&#34;../source-build/&#34;&gt;build from source&lt;/a&gt;. The package and Homebrew commands below&#xA;apply after 0.9.0 is published and the formula is updated; these links do not&#xA;establish publication. See &lt;a href=&#34;../../about/status/#documentation-baseline&#34;&gt;Status&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Barn has no compatibility layer for earlier development builds. It uses&#xA;&lt;code&gt;barn.yml&lt;/code&gt;, &lt;code&gt;BARN_*&lt;/code&gt;, and fresh &lt;code&gt;~/.barn&lt;/code&gt; state, with no old command aliases or&#xA;state migration. Stop internal old environments, preserve needed data, and&#xA;create a fresh Barn installation. Renaming an old state directory is unsupported.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Daily Operations</title>
        <link>https://barn.pgsty.com/docs/start/operations/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/operations/</guid>
        <description>&lt;p&gt;This guide describes the &lt;strong&gt;Barn 0.9.0 release candidate&lt;/strong&gt;. See&#xA;&lt;a href=&#34;../../about/status/&#34;&gt;Status&lt;/a&gt; for the publication and validation boundary.&lt;/p&gt;&#xA;&lt;h2 id=&#34;inspect-and-access&#34;&gt;Inspect and access&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ab9c2dd3-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;4&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ab9c2dd3-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn status&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn ssh meta&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn &lt;span class=&#34;nb&#34;&gt;exec&lt;/span&gt; node-1 -- hostname&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn logs meta --source serial&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Applied state is under &lt;code&gt;~/.barn&lt;/code&gt; by default (&lt;code&gt;BARN_HOME&lt;/code&gt; overrides it); these&#xA;commands work from any directory. Changing the working directory does not create&#xA;a separate deployment.&#xA;Status shows images and resources; &lt;code&gt;--verbose&lt;/code&gt; adds architecture, accelerator,&#xA;SSH ports, and PID. TCG is marked in ordinary output, and a degraded node does&#xA;not hide its peers.&#xA;&lt;code&gt;barn up&lt;/code&gt; rebuilds the default SSH aliases from the complete applied&#xA;deployment after the selected VMs are started, so a scoped &lt;code&gt;up&lt;/code&gt; never drops&#xA;unselected peers and plain &lt;code&gt;ssh meta&lt;/code&gt; just works; &lt;code&gt;barn ssh-config --install&lt;/code&gt;&#xA;rewrites it by hand if you ever need to.&#xA;&lt;code&gt;plan&lt;/code&gt;, &lt;code&gt;up&lt;/code&gt;, &lt;code&gt;reload&lt;/code&gt;, and &lt;code&gt;recreate&lt;/code&gt; prefer &lt;code&gt;-f&lt;/code&gt;, then a discovered&#xA;Inventory, then the applied spec when no file exists. &lt;code&gt;validate&lt;/code&gt; always needs&#xA;a file.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Troubleshooting</title>
        <link>https://barn.pgsty.com/docs/start/troubleshooting/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/troubleshooting/</guid>
        <description>&lt;p&gt;This page describes the &lt;strong&gt;Barn 0.9.0 release candidate&lt;/strong&gt;. Check &lt;code&gt;barn version&lt;/code&gt;&#xA;before applying version-specific guidance.&lt;/p&gt;&#xA;&lt;p&gt;Start with diagnostics (&lt;code&gt;status&lt;/code&gt; may reconcile interrupted runtime state):&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-651a117f-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;3&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-651a117f-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn doctor --json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn network status --json&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn status --json&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;download-and-path-problems&#34;&gt;Download and PATH problems&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The installer uses GitHub Release assets; &lt;code&gt;--mirror&lt;/code&gt; selects the Barn image&#xA;repository and does not redirect installer downloads. If your network needs a&#xA;proxy, set &lt;code&gt;HTTPS_PROXY&lt;/code&gt; or &lt;code&gt;ALL_PROXY&lt;/code&gt; in the terminal to your existing proxy&amp;rsquo;s&#xA;address. A macOS system proxy setting alone does not configure these environment&#xA;variables for command-line tools.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Automation and Guest Scripts</title>
        <link>https://barn.pgsty.com/docs/start/automation/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/automation/</guid>
        <description>&lt;p&gt;These examples target the &lt;strong&gt;Barn 0.9.0 release candidate&lt;/strong&gt;. Run host commands as the Unix user who owns the deployment.&#xA;Use the same inventory and &lt;code&gt;BARN_HOME&lt;/code&gt; on every invocation; a new working&#xA;directory does not create an independent lab.&lt;/p&gt;&#xA;&lt;h2 id=&#34;prepare-a-predictable-lab&#34;&gt;Prepare a predictable lab&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;For a first lab, create and review the inventory before starting automation:&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-fa288e4a-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;8&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-fa288e4a-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/barn-lab&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ~/barn-lab&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn init dual&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Edit barn.yml before proceeding.&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn validate -f barn.yml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn plan -f barn.yml&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn setup -f barn.yml --dry-run&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Keep the selected inventory in version control. Set &lt;code&gt;vm_image&lt;/code&gt; explicitly;&#xA;use a version such as &lt;code&gt;vm_image: u24@20260911.0.0&lt;/code&gt; when new nodes must use the&#xA;same base after a Catalog update. Explicit &lt;code&gt;-f&lt;/code&gt; also prevents first-run setup&#xA;from automatically moving an untouched default template to another subnet.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Storage, Files, and Service Access</title>
        <link>https://barn.pgsty.com/docs/start/storage/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/storage/</guid>
        <description>&lt;p&gt;This guide uses the &lt;strong&gt;Barn 0.9.0 release candidate&lt;/strong&gt; interface. Start with the &lt;a href=&#34;../tutorial/&#34;&gt;Quick Start&lt;/a&gt; before running the&#xA;guest-side checks. The examples use node &lt;code&gt;meta&lt;/code&gt; and the default subnet; retain&#xA;your actual names and addresses when adapting an existing inventory.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choose-disks-before-creating-the-vm&#34;&gt;Choose disks before creating the VM&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Every node has a 64 GiB root disk and, by default, one 128 GiB non-persistent&#xA;data disk at &lt;code&gt;/data&lt;/code&gt;. &lt;code&gt;vm_disk&lt;/code&gt; sets the root disk size in GiB. &lt;code&gt;vm_disks&lt;/code&gt;&#xA;replaces the entire data-disk list; &lt;code&gt;vm_disks: []&lt;/code&gt; disables extra data disks.&lt;/p&gt;</description>
      </item>
    <item>
        <title>macOS Virtual Machines</title>
        <link>https://barn.pgsty.com/docs/start/macos/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/macos/</guid>
        <description>&lt;div class=&#34;td-callout td-callout--important&#34; role=&#34;note&#34;&gt;&#xA;  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-circle-exclamation&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;Important&lt;/span&gt;&lt;/div&gt;&#xA;  &lt;div class=&#34;td-callout__body&#34;&gt;&#xA;&lt;p&gt;&lt;strong&gt;Barn 0.9.0 release candidate; unreleased.&lt;/strong&gt; This page describes the renamed&#xA;&lt;code&gt;barn mac&lt;/code&gt;, which uses fresh Barn state and provides no development-state&#xA;migration. Earlier native records are retained in &lt;a href=&#34;../../about/status/#macos-guests&#34;&gt;Status&lt;/a&gt;&#xA;and do not establish the same acceptance for the renamed build. Check the&#xA;&lt;code&gt;barn mac --help&lt;/code&gt; of the binary you run.&lt;/p&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;&lt;code&gt;barn mac&lt;/code&gt; creates and runs macOS virtual machines on an Apple Silicon Mac.&#xA;Each machine is a clean, disposable macOS with an administrator account,&#xA;passwordless sudo, pinned SSH keys and a fixed address — for testing, building&#xA;and reproducing macOS-specific behavior. It uses Apple&amp;rsquo;s Virtualization&#xA;framework directly and needs no administrator access.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Image Repositories</title>
        <link>https://barn.pgsty.com/docs/start/images/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/images/</guid>
        <description>&lt;p&gt;Normal use needs no image command first: &lt;code&gt;barn up&lt;/code&gt; resolves &lt;code&gt;u24:stable&lt;/code&gt; for&#xA;the native host architecture and pulls the resulting immutable version.&#xA;Barn uses the Catalog embedded in the installed build until you run&#xA;&lt;code&gt;barn update&lt;/code&gt;, which fetches, verifies, and activates the repository&amp;rsquo;s current&#xA;Catalog. Nothing refreshes it automatically; &lt;code&gt;image sync&lt;/code&gt; explicitly activates&#xA;an exact URL or file for recovery.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choose-an-image&#34;&gt;Choose an image&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Inspect the available aliases:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Build from Source</title>
        <link>https://barn.pgsty.com/docs/start/source-build/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/source-build/</guid>
        <description>&lt;p&gt;Barn 0.9.0 is an &lt;strong&gt;unreleased candidate&lt;/strong&gt;. Use this page to build and check a&#xA;checkout containing the rename. Installation commands for the eventual release&#xA;are in the &lt;a href=&#34;../tutorial/&#34;&gt;Quick Start&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choose-the-source&#34;&gt;Choose the source&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Use a checkout containing the Barn changes. Once that source is pushed to the&#xA;public repository, it can also be cloned with:&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-8c60e4bc-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;2&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-8c60e4bc-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/pgsty/barn.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; barn&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Do not assume a &lt;code&gt;v0.9.0&lt;/code&gt; tag exists before publication. Check the source identity&#xA;and working-tree changes first; &lt;code&gt;go.mod&lt;/code&gt; must name &lt;code&gt;github.com/pgsty/barn&lt;/code&gt; and&#xA;the command source must live in &lt;code&gt;cmd/barn&lt;/code&gt;:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Uninstall and Clean Up</title>
        <link>https://barn.pgsty.com/docs/start/uninstall/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://barn.pgsty.com/docs/start/uninstall/</guid>
        <description>&lt;p&gt;This page deletes VMs and local data. Inspect the current state and stop if any&#xA;Barn VM must remain:&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1b02f890-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;1&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1b02f890-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn st&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;1-remove-the-deployment&#34;&gt;1. Remove the deployment&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Delete nodes, persistent disks, keys, and deployment state:&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1b02f890-fence-1&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;1&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1b02f890-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;barn purge&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;This whole-deployment command asks for no confirmation. The image cache and&#xA;host network remain. Use the granular,&#xA;confirmed &lt;code&gt;barn destroy&lt;/code&gt; command instead when preserving persistent disks or&#xA;removing selected nodes.&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
