Installation
Installation
RocheDB installs command-line binaries named roche, roched, rochecli,
rochebench, and rochesim.
For normal use, the command should be available as roche, not as
bin/roche. The bin/ form is only for source-tree development and smoke
tests.
Prerequisites
- Nim
2.0.0or newer gitgccor another C compiler supported by Nimlibsodiumdevelopment files fornimsodium
User Install
Install RocheDB from Nimble:
nimble install rochedb
Use a source checkout when you want to run the full test suite, examples, or driver smoke tests:
git clone https://github.com/puffball1567/rochedb.git
cd rochedb
nimble install -y
Nimble installs binaries into ~/.nimble/bin by default. Add it to your shell
PATH if roche --help is not found:
export PATH="$HOME/.nimble/bin:$PATH"
For a persistent shell setup:
printf '\nexport PATH="$HOME/.nimble/bin:$PATH"\n' >> ~/.profile
Then verify:
roche --help
roched --help
System Install
For server-style deployments, use /usr/local/bin, matching the usual source
install location for database tools such as MySQL or PostgreSQL client/server
binaries.
Build repo-local binaries:
nim c -d:release --nimcache:/tmp/nimcache_roche -o:bin/roche src/rochecli.nim
nim c -d:release --nimcache:/tmp/nimcache_roched -o:bin/roched src/roched.nim
Install them onto the system PATH:
sudo install -m 0755 bin/roche /usr/local/bin/roche
sudo install -m 0755 bin/roched /usr/local/bin/roched
Optional development and benchmark tools:
nim c -d:release --nimcache:/tmp/nimcache_rochebench -o:bin/rochebench src/rochebench.nim
nim c -d:release --nimcache:/tmp/nimcache_rochesim -o:bin/rochesim src/rochesim.nim
sudo install -m 0755 bin/rochebench /usr/local/bin/rochebench
sudo install -m 0755 bin/rochesim /usr/local/bin/rochesim
Verify:
command -v roche
command -v roched
roche --help
Source-Tree Development
Use repo-local binaries only when you explicitly want to test the current checkout without installing it:
nim c -d:release --nimcache:/tmp/nimcache_roche -o:bin/roche src/rochecli.nim
bin/roche --help
Documentation and examples use roche for installed usage. Test scripts may use
bin/roche to avoid depending on the user’s PATH.