sudo git clone https://github.com/skip-mev/slinky.git
cd slinky
sudo git checkout v1.0.9
sudo make install
GRPC=$(grep -A 10 '\[grpc\]' $HOME/.warden/config/app.toml | grep 'address' | grep -oP '(?<=address = ")[^"]+')
SLINKY_PORT=8080 #8080 default
sudo tee -a $HOME/.warden/config/app.toml <<EOF
[oracle]
enabled = "true"
oracle_address = "localhost:${SLINKY_PORT}"
client_timeout = "2s"
metrics_enabled = "true"
EOF
sudo systemctl restart wardend.service && sudo journalctl -u wardend.service -f --no-hostname -o cat
sudo tee /etc/systemd/system/warden-slinky.service > /dev/null <<EOF
[Unit]
Description=Slinky service
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME
ExecStart=$(which slinky) --market-map-endpoint $GRPC --log-file $HOME/sidecar.log --port $SLINKY_PORT
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable warden-slinky
sudo systemctl restart warden-slinky.service && sudo journalctl -u warden-slinky.service -f --no-hostname -o cat
journalctl -fu warden-slinky -o cat
sudo systemctl status warden-slinky
curl localhost:$SLINKY_PORT/slinky/oracle/v1/prices | jq