Skip to content

kparc/k

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

k installer

npm

a lightweight npm package to install/update the runtime of k language on supported architectures and platforms:

* mac/x86_64
* lin/x86_64

tba:

* mac/aarch64
* lin/aarch64
* lin/rv64gcv
* win64/wsm32

usage

$ npm i @kparc/k -g
$ echo 2+2|k

devmode

in case the installer runs as non-root and finds a directory named shakti in your $HOME, it will check out latest documentation and examples from shakti.sh into that directory.

faq

how to upgrade?

the upgrade is the same as install. for convenience, consider adding the following to your rc file:

alias kup="npm i @kparc/k --global --quiet --no-audit --yes"

additional flags suppress non-essential output, skip audit checks (k has no dependencies), and automatically accepts prompts (see below).

how to downgrade?

rolling back to previous versions is not yet supported. to uninstall, use:

$ npm uninstall @kparc/k -g
removed 1 package in 0.333s

the installer fails with EACCESS.

on correctly configured systems, the global npm installation directory (e.g. /usr/lib/node_modules) is owned by the superuser. use the following command to give npm the necessary one-time permissions:

$ sudo npm install @kparc/k --global --unsafe

relaxing ownership of the npm directory is not recommended.

i don't have administrative rights on my system.

omit -g flag, the package will be placed in your home directory. you can then add ~/node_modules/@kparc/k/bin to your PATH.

why do i have to accept a license on first install?

while k installer is distributed under MIT license, k itself is subject to Shakti Software Evaluation Agreement. the agreement is not re-displayed unless there are changes to the previously accepted version.

the checksum of previously accepted EULA text is stored in @kparc/.shakti.eula.crc.

i'm having issues.

the installer targets LTS, which is recommended for most users and ships with npm 6.*. if your environment is configured to use latest features and/or npm 7.*, you may experience minor difficulties, e.g. excessively verbose npm output during installation. please raise an issue and include parts of npm i @kparc/k -g --verbose that seem relevant.