Installing Cahute

In order to install Cahute’s library and command-line utilities, the instructions depends on the system you want to install it on.


The guides expect p7 and p7screen to be directly usable in your command-line shell at the end of the installation process, i.e. that:

  • Either both executables are placed in a directory already referenced by your $PATH;

  • Or the directory in which both executables are placed is added to your $PATH, and your shell has been updated to take the change into account.

If neither of these is the case for your system, you will need to tweak the commands to point to the right executable in an absolute or relative fashion, e.g. /opt/cahute/bin/p7 info.

apple macOS, OS X

Cahute and its command-line utilities can be installed using homebrew Homebrew.

Once Homebrew is installed, disconnect all calculators from your computer and install the cahute formula with the following command:

brew install cahute


The installation requires that no calculator is currently connected to your computer through USB; having one currently in receive mode may result in the installation failing.

archlinux Archlinux, manjaro Manjaro Linux

Cahute and its command-line utilities are present on the Archlinux User Repository, you can pop up your favourite pacman frontend and install the cahute package:

  • Using paru:

    paru -S cahute
  • Using pikaur:

    pikaur -S cahute

Once installed, it is recommended to add your user to the uucp group, for access to serial and USB devices, by running the following command as root then restarting your session:

usermod -a -G uucp <your-username>

lephe GiteaPC

Cahute and its command-line utilities are installable as a desktop application through GiteaPC, by running the following command:

giteapc install cake/cahute@0.4

linux Other Linux distributions


This guide may not be exhaustive, and a package may exist for your distribution. Please check with your distribution’s package registry and/or wiki before proceeding!

If no package exists for your distribution, or you are to package Cahute for your distribution, you can build the command-line utilities yourself.

First, you need to install the build and runtime dependencies for Cahute:

For getting the source, you have the following options:

  • You can download the latest source package at

    curl -o cahute-0.4.tar.gz
    tar xvaf cahute-0.4.tar.gz
  • You can clone the repository and checkout the tag corresponding to the release:

    git clone cahute-0.4
    (cd cahute-0.4 && git checkout -f 0.4)

The project is present in the “cahute-0.4” directory. In the parent directory, we are to create the build directory aside it, and install from it, by running the following commands:

cmake -B build -S cahute-0.4 -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
cmake --build build
sudo cmake --install build --strip


For communicating with calculators over USB and serial, Cahute library and command-line utilities require access to such devices.

For serial devices, this is traditionally represented by being a member of the uucp group, defined as the group owner on /dev/ttyS* devices; you can check this by running ls -l /dev/ttyS*. However, by default, USB devices don’t have such rules.

CMake automatically installs the udev rules, which means you need to do the following:

  • Reload the udev daemon reload to apply the newly installed rules on the running system without a reboot, with this command as root:

    udevadm control --reload
  • Adding your user to the uucp group, then restarting your session:

    usermod -a -G uucp <your-username>

That’s it! You should be able to run the following command:

p7 --version


Since you are not using a packaged version of Cahute, the project won’t be automatically updated when updating the rest of the system, which means you need to do it manually, especially if a security update is made.

You can subscribe to releases by creating a account, and following the steps in Get notified when a release is created. You can check your notification settings at any time in Notifications.