<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Developers' guide on Lima</title><link>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/</link><description>Recent content in Developers' guide on Lima</description><generator>Hugo</generator><language>en</language><atom:link href="https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Internal data structure</title><link>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/internals/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/internals/</guid><description>&lt;h2 id="lima-home-directory-lima_home"&gt;Lima home directory (&lt;code&gt;${LIMA_HOME}&lt;/code&gt;)&lt;/h2&gt;
&lt;p&gt;Defaults to &lt;code&gt;~/.lima&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Note that we intentionally avoid using &lt;code&gt;~/Library/Application Support/Lima&lt;/code&gt; on macOS.&lt;/p&gt;
&lt;p&gt;We use &lt;code&gt;~/.lima&lt;/code&gt; so that we can have enough space for the length of the socket path,
which must be less than 104 characters on macOS.&lt;/p&gt;
&lt;p&gt;Unix: The directory can not be located on an NFS file system, it needs to be local.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;_block-device-&amp;lt;disk&amp;gt;.lock&lt;/code&gt; files coordinate host block-device use across VZ instances.
Raw/block aliases and partitions share the whole-disk lock. The files remain after
the VM stops so another VM cannot lock a different inode for the same disk.&lt;/p&gt;</description></item><item><title>Virtual Machine Drivers</title><link>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/drivers/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/drivers/</guid><description>&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;⚡ Requirement&lt;/th&gt;
					&lt;th&gt;Lima &amp;gt;= 2.0&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Lima supports two types of drivers: &lt;strong&gt;internal&lt;/strong&gt; and &lt;strong&gt;external&lt;/strong&gt;. This architecture allows for extensibility and platform-specific implementations. Drivers are unware whether they are internal or external.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;💡 See also&lt;/strong&gt;: &lt;a href="https://deploy-preview-5702--lima-vm.netlify.app/docs/config/vmtype/"&gt;VM Types&lt;/a&gt; for user configuration of different virtualization backends.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="internal-vs-external-drivers"&gt;Internal vs External Drivers&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Internal Drivers&lt;/strong&gt; are compiled directly into the &lt;code&gt;limactl&lt;/code&gt; binary and are registered automatically at startup by passing the driver object into &lt;code&gt;registry.Register()&lt;/code&gt; function and importing the package in the main limactl code using Go&amp;rsquo;s blank import &lt;code&gt;_&lt;/code&gt;. For example:&lt;/p&gt;</description></item><item><title>Git tips</title><link>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/git/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-5702--lima-vm.netlify.app/docs/dev/git/</guid><description>&lt;h2 id="squashing-commits"&gt;Squashing Commits&lt;/h2&gt;
&lt;p&gt;To combine multiple commits into one (recommended unless your PR covers multiple topics):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#8f5902;font-style:italic"&gt;# Adjust the number based on how many commits you want to squash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git rebase -i HEAD~3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;In the interactive editor that appears:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Keep the first commit as &lt;code&gt;pick&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Change subsequent commits from &lt;code&gt;pick&lt;/code&gt; to &lt;code&gt;fixup&lt;/code&gt; (short form&lt;code&gt;f&lt;/code&gt;). You may also choose &lt;code&gt;squash&lt;/code&gt; (&lt;code&gt;s&lt;/code&gt;), however, &lt;code&gt;fixup&lt;/code&gt; is recommended to keep the commit message clean.&lt;/li&gt;
&lt;li&gt;Save and close the editor to proceed&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Example:&lt;/p&gt;</description></item></channel></rss>