Starknet
Vamos a montar un Nodo de Starknet desde cero. Algunas consideraciones previas:
Tenés una pc con Windows.
Mucha paciencia.
Ganas de leer.
Paso 1 - Instalaciones - Linux
Vamos a instalar el subsistema de Windows para Linux, donde utilizaremos Linux Ubuntu (Ultima versión)
Abrimos “Windows PowerShell o CMD”, vamos a buscarlo en la barra de búsqueda de Windows, y luego seleccionamos “Ejecutar como administrador”

En el símbolo del sistema, escribís: wsl –install y esperas a que se complete el proceso.
Nota: Para que WSL se active tenés que reiniciar tu computadora.
Paso 2 - Ubuntu
Abrís la aplicación de la tienda de Microsoft y buscas Ubuntu. La instalás, y una vez instalada inicias la aplicación directamente desde la tienda o buscas Ubuntu en la barra de búsqueda de Windows.

Paso 3 - Configuración Ubuntu
Ahora a configurar Ubuntu, solo esperas unos momentos que termine la configuración inicial y luego de abrir la app creas un nombre de usuario y una contraseña.

Paso 4 - Instalando actualizaciones
Instalamos las últimas actualizaciones con los siguientes comandos, (ingresando la contraseña si te lo pide):
sudo apt update
Luego:
sudo apt full-upgrade
y apretas la letra Y
si te lo pide.
Paso 5 - Instalar herramientas de desarrollo en la distribución de Linux.
Primero verificamos la versión de Python 3 que tenemos instalada en el sistema, ingresar en terminal lo siguiente:
python3 –V
Y te va a aparecer en la terminal la versión.

Para administrar los paquetes de software para Python tenemos que instalar pip (es una herramienta que instalará y administrará los paquetes de programación que necesitamos usar más adelante):
sudo apt install -y python3-pip
Luego instalamos algunos paquetes y herramientas de desarrollo más para garantizar que tengamos una configuración sólida para nuestro entorno de programación:
sudo apt install -y build-essential libssl-dev libffi-dev python3-dev
Luego:
sudo apt-get install libgmp-dev
Luego
Aclaración: fastecdsa una herramienta de Python para hacer criptografía de curva elíptica rápida, específicamente firmas digitales.
pip3 install fastecdsa
Por último:
sudo apt-get install -y pkg-config
Instalamos Rust
Necesitamos instalar el lenguaje de programación Rust y sus herramientas, ya que el nodo@equilibrium_co está integrado en Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Por si hay algo desinstalado en el paso anterior, ejecutá:
sudo apt install cargo
Y actualizá Rust a la última versión:
rustup update stable
Paso 6 - Clonar el repositorio github de pathfinder.
En esta parte empezamos a preparar el entorno para nuestro nodo.
Crea una copia local del repositorio github de pathfinder escribiendo:
git clone --branch v0.1.2-alpha https://github.com/eqlabs/pathfinder
Reemplaza v0.1.2-alpha con una versión más nueva si existe. Lo comprobás visitando:
https://github.com/eqlabs/pathfinder/tags

Paso 7 - Crear un entorno virtual para un nodo
Instalamos una herramienta que nos permitirá crear un entorno virtual en el que se ejecutará nuestro nodo:
sudo apt install python3.8-venv
Mover a la carpeta py escribiendo:
cd pathfinder/py

Creamos el entorno virtual llamado venv:
python3 -m venv .venv
Lo activamos:
source .venv/bin/activate
Vas a saber que está en su entorno virtual cuando ves (.venv) en el lado izquierdo de tu línea de comando:

Instala estas herramientas para ejecutar el nodo:
PIP_REQUIRE_VIRTUALENV=true pip install --upgrade pip
Luego:
PIP_REQUIRE_VIRTUALENV=true pip install -r requirements-dev.txt
Para ver si los pasos anteriores funcionan, ejecutas:
pytest

Paso 8 - Ensamblando el Nodo
Podes compilar el nodo ejecutando el siguiente comando (Este paso llevará un poco más de tiempo que los demás (hasta 30 minutos aprox):
cargo build --release --bin pathfinder
Paso 9 - Crear una cuenta de Infura
Entras a https://infura.io y te registrás.
En tu tablero, haces clic en "Conectarse a la red #Ethereum en segundos"

Creas un nuevo proyecto y dale un nombre.
Dentro del tablero, haces clic en Configuración

En el panel de configuración podrá ver los puntos finales.
Copias el https
En esta etapa, tenés que decidir en qué red #Ethereum ejecutas su nodo. Aquí nosotros elegimos Mainnet.
Si el punto final elegido está en la red principal, se ejecutará en #StarkNetMainnet .
Paso 10 - Ejecutar el Nodo
Como paso final queda → ejecutar el nodo en la Capa 2
Podes probar la ejecución de tu nodo escribiendo (Reemplazar xxxxx con su número de End Point de Infura):
cargo run --release --bin pathfinder -- --ethereum.url https://mainnet.infura.io/v3/xxxxx
Comentarios Finales
No todo es color de rosas y pueden aparecer problemas en el camino. Cualquier consulta siempre va a haber alguien con ganas de ayudar en el Club de Nodos!
Haz tus preguntas aquí -> Club de Nodos
Última actualización