pinakes/HACKING.md
NotAShelf 297d47d52c
docs: initial 'hacking' document for Dioxus
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I58533d1577fc092fb393b70f2dd1a4146a6a6964
2026-03-06 18:29:30 +03:00

32 lines
1.2 KiB
Markdown

# Hacking Pinakes
Pinakes is a lot of things. One of the things it aims to be is _complete_. To be
complete in features, to be complete in documentation and to be complete in
hackability. This document covers, very comprehensively, how you may:
- Build Pinakes
- Develop Pinakes
- Contribute to Pinakes
for developers as well as:
- Distribute Pinakes
for Pinakes maintainers and packagers.
## Building Pinakes
Pinakes is built with Rust (nightly edition) and various crates. The most
_notable_ crate among those is Dioxus, which provides its own toolkit. The UI
for Pinakes is usually _not_ built with the Dioxus CLI but instead with
`cargo build`. This also applies to distributable build results.
[Direnv]: https://direnv.net
To build Pinakes, simply pick the components you want and build them with
`cargo build --release --package <component>`. A Nix shell is provided for
reproducible developer environments and you may obtain all build dependencies by
simply running `nix develop` or `direnv allow` if you use [Direnv]. Nix is a
cross-platform build tool and works on most Linux distributions as well as
Darwin. While distro-specific package managers _might_ work, Nix is the only
supported one.