Can we have a simple description of the problem `kup` solves?

Open
#112 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
35/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Stale
Tech stack
nixos, python
Domain
documentation

Research direction

Start by reading the kup source and the existing instructions referenced in the issue, then compare its role with NixOS and the K Framework tooling. Done means adding a concise explanation of the problem kup solves and how it differs from using NixOS alone.

Written by the indexing model from the issue text.

Description

Hi,

I'm new to both K and NixOS, although I've been watching NixOS for a while and wanted to use it. So, a lot is a bit overwhelming.

One thing that is a bit confusing to me, even after searching, is the precise role of kup. I think it's not quite documented anywhere; it's said that it manages the installation of the bits and pieces of K, using NixOS as a backend. What I find is there is instructions of how to do things, which probably is the most important part for most users. And then I found this bit in an old Medium post:

Easy Installation

We have developed a one-line installation tool called kup, which is based on Nix. It provides a simple package manager for K-based projects, allowing a user to install and maintain everything with a simple command. We have made changes to the CLI options to improve the usability of the tools. The image below shows the CLI interface:

I presume kup solves some technical problem that was not entirely trivial using only NixOS. I guess originally I was a bit suspicious (due to my some security background); then I skimmed the source code of kup, and now I'm just curious. :)

Is it something like managing the dependencies between different versions of K Framework tools better than NixOS supports?

I can see that a lot of work has gone into making this user friendly, and I genuinely appreciate it!

Dominant language
Python
Stars
10
Forks
2
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from runtimeverification/kup

All issues in runtimeverification/kup

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.