a music making program for 24-bit unicode terminals.
written in rust with ratatui on crossterm for jack and pipewire.
tek is available as source, statically linked binaries, and on the aur.
author is reachable via mastodon @[email protected] or matrix @unspeaker:matrix.org
usage
- requirements: linux; jack or pipewire; 24-bit terminal (i use kitty)
- recommended: midi controller; samples in wav format; lv2 plugins.
keymaps
- Arranger:
- arrows: navigate
- tab: enter editor
- q: enqueue clip
- space: play/pause
- Editor:
- arrows: navigate
- , / .: change note length
- enter: write note
- - / =: zoom midi editor
- z: zoom lock/unlock
- del: delete
- Global:
- esc: options menu
- f1: help/command list
- f2: rename
- f6: save
- f9: load
installation
binary download
you can download tek 0.2.0 "almost static" from codeberg releases. this standalone binary release, should work on any glibc-based system.
from distro repositories
arch linux
tek 0.2.0-rc7 is available as a package in the AUR. you can install it using your preferred AUR helper (e.g. paru):
paru -S tekbuilding from source
requires docker.
git clone --recursive -b 0.2 https://codeberg.org/unspeaker/tek cd tek # enter directory cat bin/release-glibc.sh # preview build script sudo bin/release-glibc.sh # run build script sudo cp bin/tek /usr/local/bin/tek # installdesign goals
-
inspired by trackers and hardware sequencers, but with the critical feature that 90s samplers lack: able to resample, i.e. record while playing!
-
pop-up scratchpad for musical ideas. low resource consumption, can stay open in background. but flexible enough to allow expanding on compositions
-
human- and machine- readable project format simple representation for project data enable scripting and remapping.