En un largo plazo, es probable que la mayoría de las plataformas sean compatibles en cierta medida.
El lenguaje de programación de Grin rust
ha compilado metas para la mayoría de las plataformas.
¿Qué funciona hasta ahora?
- Linux x86_64 y MacOS [grin + mining + development]
- Todavía no funciona con windows 10 [grin kind-of builds. No mining yet. Help wanted!]
- rust 1.34+ (usa rustup- por ejemplo,
curl https://sh.rustup.rs -sSf | sh; source $HOME/.cargo/env
)- Si rust está instalado, puede simplemente actualizar la versión con
rustup update
- Si rust está instalado, puede simplemente actualizar la versión con
- clang
- ncurses y libs (ncurses, ncursesw5)
- zlib libs (zlib1g-dev or zlib-devel)
- pkg-config
- libssl-dev
- linux-headers (reportado como necesario en Alpine linux)
- llvm
Para las distribuciones basadas en Debian (Debian, Ubuntu, Mint, etc), todo en un comando (exceptuando Rust):
apt install build-essential cmake git libgit2-dev clang libncurses5-dev libncursesw5-dev zlib1g-dev pkg-config libssl-dev llvm
Para las Mac:
xcode-select --install
brew install --with-toolchain llvm
brew install pkg-config
brew install openssl
git clone https://github.com/mimblewimble/grin.git
cd grin
cargo build --release
Grin también puede compilarse en modo debug (sin la etiqueta --release
, pero usando la etiqueta --debug
o --verbose
) esto hará que la sincronización rápida sea excesivamente lenta debido a la gran sobrecarga de las operaciones criptográficas.
Con una compilación finalizada se obtiene:
target/release/grin
- los binarios principales de grin
Todos los datos, configuración y archivos de registro creados y utilizados por Grin se encuentran en el directorio oculto ~/.grin
(bajo el directorio home del usuario) por defecto. Puede modificar toda la configuración editando el archivo ~/.grin/main/grin-server.toml
.
También es posible hacer que Grin cree sus propios archivos de datos en el directorio actual. Para ello ejecute:
grin server config
Lo que generará un archivo grin-server.toml
en el directorio actual, preconfigurado para usar el directorio actual para todos sus datos. Ejecutando Grin desde un directorio que contiene el archivo grin-server.toml
usará los valores de ese archivo en lugar de los valores por defecto de ~/.grin/main/grin-server.toml
.
Durante las pruebas, ponga el binario de Grin en su ruta de esta manera:
export PATH=/path/to/grin/dir/target/release:$PATH
Donde path/to/grin/dir
es su ruta absoluta al directorio raíz de la instalación de Grin.
Puede ejecutar grin
directamente (pruebe grin help
para más opciones).
Grin se ejecuta con valores predeterminados, y puede configurarse aún más a través del archivo grin-server.toml
. Este fichero es generado por grin en su primera ejecución, y contiene documentación sobre cada opción disponible.
Aunque se recomienda que realice toda la configuración de grin server a través de grin-server.toml
, también es posible suministrar cambios de comandos para grin que anulan cualquier configuración en el archivo.
Para obtener ayuda sobre los comandos de grin y sus cambios intente:
grin help
grin wallet help
grin client help
docker build -t grin -f etc/Dockerfile .
Puede ubicar la caché de Grin para que se ejecute dentro del contenedor
docker run -it -d -v $HOME/.grin:/root/.grin grin
Rust (cargo) puede compilar Grin para muchas plataformas, así que en teoría ejecutar grin
como un nodo de validación en un dispositivo de baja potencia podría ser posible. Para hacer una compilación cruzada grin
en una plataforma x86 Linux y generar binarios de ARM, por ejemplo para Raspberry-pi.
La página de la wiki Cómo usar grin y las páginas de enlaces tienen más información sobre las características que disponemos, resolución de problemas, etc.
Tenga en cuenta que todas las funciones de minería de Grin se han trasladado a un paquete independiente llamado grin_minner. Una vez que el nodo de grin esté listo y funcionando, puede empezar a minar compilando y ejecutando grin-miner con su nodo Grin en funcionamiento.