usage: cube [option]
options:
-h, --help show this help
shapes:
-c, --cube (default)
-t, --tetrahedron
-o, --octahedron
-d, --dodecahedron
-i, --icosahedron
q or esc quitsemerge --ask app-eselect/eselect-repository
eselect repository add noahburchell git https://github.com/noahburchell/noahburchell-overlay.git
emaint sync --repo noahburchell
emerge --ask app-misc/cube
cube --help# you need xcode 16.3+ (apple clang 17)
brew install noahburchell/cube/cuberun it without installing anything:
nix run github:noahburchell/cube
nix run github:noahburchell/cube -- --icosahedroninstall it into your profile:
nix profile install github:noahburchell/cubeor add it to a flake:
{
inputs.cube.url = "github:noahburchell/cube";
# then, in your config:
# environment.systemPackages = [ inputs.cube.packages.${pkgs.system}.default ];
# or, with the overlay:
# nixpkgs.overlays = [ inputs.cube.overlays.default ];
# environment.systemPackages = [ pkgs.cube ];
}hacking it (drops you in a shell with a compiler, make, bear, clangd and a debugger):
nix develop
makeos support status:
- linux ✅
- macos ✅
- windows ❌
distro packaging status:
- gentoo ✅
- brew ✅
- nix ✅
- arch ❔ (i made the PKGBUILD, but AUR account registrations are closed)
- everything else ❌
you have to build it
dependencies:
- linux, macos, or a bsd
- make (
gmakeon the bsds) - gcc 14+ or clang 19+
you need xcode 16.3+ (apple clang 17). older xcode accepts -std=gnu23
but has no c23 constexpr, so the build will fail. if that happens:
brew install llvm
make CC="$(brew --prefix llvm)/bin/clang"homebrew gcc works too.
run gmake, not make.
freebsd 14.2+ has a new enough clang in base. on openbsd and netbsd, install one
from packages/pkgsrc and the makefile will find it on its own: it looks for
clang19, clang20, gcc14, gcc15 and egcc on path.
grab the release tarball:
curl -LO https://github.com/noahburchell/cube/archive/refs/tags/v1.2.tar.gz
tar xf v1.2.tar.gz
cd cube-1.2or clone the repo:
git clone --depth 1 https://github.com/noahburchell/cube.git
cd cubemake -j"$(nproc 2>/dev/null || sysctl -n hw.ncpu)"
sudo make install
cube --helpmake install puts the binary in /usr/bin by default. so if you don't have root, or you
just don't want it there:
make install PREFIX="$HOME/.local" # make sure its in pathare you unhappy with the characters i chose for shading?
- change them in shapes.c, it should be clear how to do so
do you want the shapes to spin faster/slower?
- spin period was chosen for a reason. changing it may introduce stutter
demo? just install it! you will like it im sure
seriously, the demo gif is outdated and i havent gotten around to updating it. it will be updated soon
if you have any questions contact me: cube@nburch.org
GNU General Public Licence v3.0