Install an Addon - HL Vanilla Community
<main> <article class="userContent"> <div class="embedExternal embedImage display-large float-none"> <div class="embedExternal-content"> <a class="embedImage-link" href="https://us.v-cdn.net/6030677/uploads/XRHPM3B5EWS6/microsoftteams-image-288-29.png" rel="nofollow noreferrer noopener ugc" target="_blank"> <img class="embedImage-img" src="https://us.v-cdn.net/6030677/uploads/XRHPM3B5EWS6/microsoftteams-image-288-29.png" alt="MicrosoftTeams-image (8).png" height="108" width="1356" loading="lazy" data-display-size="large" data-float="none"></img></a> </div> </div> <p>In <strong>Higher Logic Vanilla (Vanilla)</strong>, you can install addons by adding them to one of the following directories:</p><ul><li><code class="code codeInline" spellcheck="false" tabindex="0">/themes</code></li><li><code class="code codeInline" spellcheck="false" tabindex="0">/plugins</code></li></ul><h2 data-id="install-an-addon-by-symlink">Install an addon by symlink</h2><p>Most addons have their source code managed in a virtual console system (VCS) tool like Git. Copying a directory would make it difficult to update in the future through the VCS, so Vanilla prefers to <a href="https://en.wikipedia.org/wiki/Symbolic_link" rel="nofollow noreferrer ugc">symlink</a> addons. Picture the following directory structure in a <a href="https://github.com/vanilla/vanilla-docker" rel="nofollow noreferrer ugc">vanilla-docker</a> setup.</p><h3 data-id="workspace"><strong>Workspace</strong></h3><ul><li>vanilla<ul><li>plugins</li><li>themes</li></ul></li><li>vanilla-docker</li><li>repo-with-addons<ul><li>plugins/my-addon</li></ul></li></ul><h3 data-id="the-objective">The objective</h3><p>Our goal here is to have <code class="code codeInline" spellcheck="false" tabindex="0">my-addon</code> be installed in the <code class="code codeInline" spellcheck="false" tabindex="0">vanilla plugins</code> directory.</p><h2 data-id="make-a-symlink">Make a symlink</h2><h3 data-id="macos-or-linux">MacOS or Linux</h3><pre class="code codeBlock" spellcheck="false" tabindex="0">cd ~/workspace/vanilla/plugins ln -s ../../repo-with-addons/plugins/my-addon </pre><p><strong>📝 NOTE</strong>: A relative symlink is used. This allows the symlink to continue to work when things are synced into the docker instance.</p><h3 data-id="windows">Windows</h3><pre class="code codeBlock" spellcheck="false" tabindex="0">cd /D %userprofile%\workspace\vanilla\plugins mklink \D my-addon ..\..\repo-with-addons\plugins\my-addon </pre><p><br></p> </article> </main>