tag:github.com,2008:https://github.com/runtimeverification/k/releases Release notes from k 2026-02-03T00:08:26Z tag:github.com,2008:Repository/50041690/v7.1.314 2026-02-10T11:37:30Z K Framework Release v7.1.314 <p>K Framework Release v7.1.314</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.313 2026-01-30T16:00:08Z K Framework Release v7.1.313 <p>K Framework Release v7.1.313</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.312 2026-01-30T13:10:44Z K Framework Release v7.1.312 <p>K Framework Release v7.1.312</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.311 2026-01-29T11:30:12Z K Framework Release v7.1.311 <p>K Framework Release v7.1.311</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.310 2026-01-06T22:24:48Z K Framework Release v7.1.310 <p>K Framework Release v7.1.310</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.309 2026-01-06T19:28:08Z K Framework Release v7.1.309 <p>K Framework Release v7.1.309</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.308 2025-12-19T02:22:58Z K Framework Release v7.1.308 <p>K Framework Release v7.1.308</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.307 2025-12-18T16:57:21Z K Framework Release v7.1.307 <p>K Framework Release v7.1.307</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.306 2025-12-15T09:37:58Z K Framework Release v7.1.306 <p>K Framework Release v7.1.306</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins tag:github.com,2008:Repository/50041690/v7.1.305 2025-12-13T22:53:13Z K Framework Release v7.1.305 <p>K Framework Release v7.1.305</p> <hr> <h2>copyright: Copyright (c) Runtime Verification, Inc. All Rights Reserved.</h2> <h1>Installing the K Framework</h1> <h2>Fast Installation (preferred)</h2> <p>The preferred way to install K is the <code>kup</code> tool, which is based on <a href="https://nixos.org/download.html" rel="nofollow">Nix</a>.<br> No knowledge of Nix is required to use <code>kup</code>.</p> <p>Install <code>kup</code> and <code>K</code> by running the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="bash &lt;(curl https://kframework.org/install) kup install k"><pre>bash <span class="pl-s"><span class="pl-pds">&lt;(</span>curl https://kframework.org/install<span class="pl-pds">)</span></span> kup install k</pre></div> <p>List available versions with:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup list k"><pre>kup list k</pre></div> <p>If <code>kup</code> indicates that there's a newer version, you can update by simply running:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k"><pre>kup install k</pre></div> <p>To install a specific version, run:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="kup install k --version v6.3.11"><pre>kup install k --version v6.3.11</pre></div> <p>Note that the versions marked as ✅ are cached in Runtime Verification's Nix binary cache and thus are the fastest to install.</p> <h2>Install through packages</h2> <p>We currently strive to provide packages for the following platforms:</p> <ul> <li>Ubuntu Jammy Jellyfish (22.04)</li> <li>macOS Ventura (13) via Homebrew</li> <li>Docker Images</li> </ul> <h2>Pre-installation Notes</h2> <ul> <li> <p>We <strong>do not</strong> currently support running K natively on Windows. To use K on<br> Windows 10, you are encouraged to install the<br> <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">Windows Subsystem for Linux (version 2)</a><br> and follow the instructions for installing Ubuntu Jammy.</p> <p>If you have already installed WSL, before proceeding, you will need to<br> enter the WSL environment. You can do this by:</p> <ol> <li>opening up the command prompt (accessible by searching <code>cmd</code> or<br> <code>command prompt</code> from the start menu);</li> <li>using the <code>wsl.exe</code> command to access the WSL environment.</li> </ol> </li> <li> <p>To use K in other non-linux environments (e.g. Windows 8 or earlier),<br> you will need to use a virtual machine (VM) software. We assume you have:</p> <ol> <li>Created a virtual machine</li> <li>Installed a Linux distribution (e.g. Ubuntu Jammy Jellyfish) on your<br> virtual machine</li> </ol> <p>Consult your virtual machine software if you need help with the above<br> steps. We recommend the free VirtualBox virtual machine software.</p> <p>Before proceeding, follow the virtual machine softare UI to start your<br> Linux virtual machine and enter the command line environment.</p> </li> <li> <p>WSL and virtual machine users should be aware that, if you use your web<br> browser to download the package, you will need to make it accessible to<br> the command line environment. For this reason, we recommend downloading the<br> package from the command line directly using a tool like <code>wget</code>. For<br> example, you could copy the package download URL and then type:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="wget &lt;package-download-url&gt;"><pre class="notranslate"><code>wget &lt;package-download-url&gt; </code></pre></div> <p>where <code>&lt;package-download-url&gt;</code> is replaced by the URL you just copied.</p> </li> <li> <p>K depends on version 4.8.15 of Z3, which may not be supplied by package<br> managers. If this is the case, it should be built and installed from source<br> following the<br> <a href="https://github.com/Z3Prover/z3#building-z3-using-cmake">instructions</a> in<br> the Z3 repository. Other versions (older and newer) are not supported by K,<br> and may lead to incorrect behaviour or performance issues.</p> </li> </ul> <h2>Downloading Packages</h2> <p>Download the appropriate package from the GitHub, via the<br> <a href="https://github.com/runtimeverification/k/releases">Releases</a> page.<br> Releases are generated as often as possible from <code>master</code> build.</p> <h2>Installing Packages</h2> <p>For version <code>X.Y.Z</code>, distribution <code>DISTRO</code>, and package ID <code>ID</code>, the following<br> instructions tell you how to install on each system. Note that this typically<br> requires about ~1.4GB of dependencies and will take some time.</p> <ul> <li>On Linux systems, K will typically be installed under <code>/usr</code>.</li> <li>On macOS/brew, K will typically be installed under <code>/usr/local</code>.</li> </ul> <h3>Ubuntu Jammy (22.04)</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sudo apt install ./kframework_amd64_ubuntu_jammy.deb"><pre>sudo apt install ./kframework_amd64_ubuntu_jammy.deb</pre></div> <h3>macOS (Homebrew)</h3> <p><a href="https://brew.sh/" rel="nofollow">Homebrew</a> (or just brew) is a third-party package manager<br> for MacOS.<br> If you have not installed brew, you must do so before installing the K<br> Framework brew package.</p> <p>With brew installed, do the following to install the K Framework brew package<br> (with build number <code>BN</code>):</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v"><pre>brew install kframework--X.Y.Z.ID.bottle.BN.tar.gz -v</pre></div> <h4>Homebrew Alternate Installation</h4> <p>To directly install the latest K Framework brew package without needing to<br> download it separately, do the following:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew install runtimeverification/k/kframework"><pre>brew install runtimeverification/k/kframework</pre></div> <p>Or, to streamline future K Framework upgrades, you can <code>tap</code> the K Framework<br> package repository. This lets future installations/upgrades/etc... use the<br> unprefixed package name.</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="brew tap runtimeverification/k brew install kframework"><pre>brew tap runtimeverification/k brew install kframework</pre></div> <h3>Docker Images</h3> <p>Docker images with K pre-installed are available at the<br> <a href="https://hub.docker.com/repository/docker/runtimeverificationinc/kframework-k" rel="nofollow">runtimeverification/kframework-k Docker Hub repository</a>.</p> <p>Each release at <code>COMMIT_ID</code> has an image associated with it at<br> <code>runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</code>.</p> <p>To run the image directly:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre>docker run -it runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>and to make a Docker Image based on it, use the following line in your<br> <code>Dockerfile</code>:</p> <div class="highlight highlight-source-dockerfile notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="FROM runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID"><pre><span class="pl-k">FROM</span> runtimeverificationinc/kframework-k:ubuntu-jammy-COMMIT_ID</pre></div> <p>We also create Ubuntu 22.04 images with the <code>ubuntu-jammy-COMMIT_ID</code> tags.</p> <h2>Testing Packages</h2> <p>The easiest way to test the K package is to copy a K tutorial language and<br> check if you can compile and run an included example.</p> <ol> <li> <p>Start by cloning the K tutorial from the <a href="https://www.github.com/runtimeverification/pl-tutorial">K PL Tutorial</a>. This command typically will be like:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ git clone https://www.github.com/runtimeverification/pl-tutorial"><pre>$ git clone https://www.github.com/runtimeverification/pl-tutorial</pre></div> </li> <li> <p>Now you can try to run some programs:</p> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$ cd pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple"><pre>$ <span class="pl-c1">cd</span> pl-tutorial/2_languages/1_simple/1_untyped $ make kompile $ krun tests/diverse/factorial.simple</pre></div> </li> </ol> rv-jenkins