Skip to content

Instantly share code, notes, and snippets.

View WietseWind's full-sized avatar
⌨️
Focusing

Wietse Wind WietseWind

⌨️
Focusing
View GitHub Profile
@WietseWind
WietseWind / update.sh
Last active April 24, 2024 17:31
Upate Xahaud node running xahaud natively (without Docker)
update=2024.4.21-release+858
cd /opt/xahaud/downloads/ && \
wget https://build.xahau.tech/"$update" && \
cd /opt/xahaud/bin && \
service xahaud stop && \
rm xahaud && \
ln -s ../downloads/$update ./xahaud && \
chmod +x ./xahaud && service xahaud start
@WietseWind
WietseWind / update.sh
Last active April 24, 2024 02:28
Xahaud RPC Mainnet Node (in Docker) binary update
update=2023.12.29-release+689
container=$(docker ps -a |grep xahau|cut -d " " -f 1)
build=$(docker exec -it $container /opt/xahaud/bin/xahaud -q --version|rev|cut -d "+" -f 1|rev|sed 's/[^0-9]*//g')
docker exec -it $container sh -c "curl https://build.xahau.tech/$update > /opt/xahaud/bin/new"
docker exec -it $container chmod +x /opt/xahaud/bin/new
newbuild=$(docker exec -it $container /opt/xahaud/bin/new -q --version|rev|cut -d "+" -f 1|rev|sed 's/[^0-9]*//g')
if [[ "$newbuild" -lt "$build" ]]; then
echo "Not OK, $build gt $newbuild"
@WietseWind
WietseWind / racadm.bash
Last active April 10, 2024 15:03
Install racadm on Ubuntu 20.04 / 18.04
wget http://archive.ubuntu.com/ubuntu/pool/universe/s/sblim-cmpi-devel/libcmpicppimpl0_2.0.3-0ubuntu2_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/multiverse/s/sblim-sfcb/sfcb_1.4.9-0ubuntu5_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/s/sblim-sfc-common/libsfcutil0_1.0.1-0ubuntu4_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/multiverse/c/cim-schema/cim-schema_2.48.0-0ubuntu1_all.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/o/openwsman/openwsman_2.6.5-0ubuntu3_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/s/sblim-sfcc/libcimcclient0_2.2.8-0ubuntu2_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/o/openwsman/libwsman-server1_2.6.5-0ubuntu3_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/o/openwsman/libwsman1_2.6.5-0ubuntu3_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/o/openwsman/libwsman-client4_2.6.5-0ubuntu3_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/o/openwsman/libwsman-curl-client-trans
@WietseWind
WietseWind / voucher-gen-claim.mjs
Last active April 2, 2024 13:38
Voucher generation & claim
import {
// generate,
derive
} from 'xrpl-accountlib'
import rippleAddressCodec from 'ripple-address-codec'
import {
sign,
verify
@WietseWind
WietseWind / b2m.mjs
Last active January 17, 2024 16:11
Simple B2M with hosted xPOP
import { derive, utils, signAndSubmit } from 'xrpl-accountlib'
import { TxData } from 'xrpl-txdata'
import { XrplClient } from 'xrpl-client'
import { xpop, setEndpoints as xpopEndpoints } from 'xpop'
import fetch from 'node-fetch'
// The above needs:
// npm install xrpl-accountlib xrpl-txdata xrpl-client xpop node-fetch
console.log('Obtaining XRPL Testnet account (faucet)')
@WietseWind
WietseWind / docker-ipv6-install.sh
Last active January 1, 2024 12:40
Ubuntu 22.04 with docker-ce in IPv6 only environment
# Assumptions:
# - Ubuntu 22.04
# - Docker CE
# - IPv6 only environment
# - Using netplan for IPv6 addressing
# - IPv6 /64 assigned to host
# - UFW in use (and DNS to be allowed) - otherwise skip the ufw config
# (The above is the Hetzner default)
@WietseWind
WietseWind / index.js
Created December 29, 2023 01:01
Run browserified cjs in NodeJS using sandbox vm (sample with `xrpl-accountlib`)
const fs = require('fs')
const vm = require('vm')
const sandbox = {}
// https://cdn.jsdelivr.net/npm/xrpl-accountlib/dist/browser.min.js
vm.runInNewContext(fs.readFileSync('browser.min.js'), sandbox)
var AccountLib = sandbox.require('xrpl-accountlib')
@WietseWind
WietseWind / index.js
Created July 22, 2019 11:14
Encode/Decode X-address in the browser (plain HTML+JS)
<script src="https://xrpaddress.info/js/xrpl-tagged-address-codec-browser.js"></script>
<script>
var XCodec = require('xrpl-tagged-address-codec')
console.log(XCodec.Encode({ account: 'rPEPPER7kfTD9w2To4CQk6UCfuHM9c6GDY', tag: 495 }))
console.log(XCodec.Decode('XV5sbjUmgPpvXv4ixFWZ5ptAYZ6PD28Sq49uo34VyjnmK5H'))
</script>
@WietseWind
WietseWind / list_one.xml
Created December 25, 2023 15:51
Xaman World Currencies Feed (live)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ISO_4217 Pblshd="October 1, 2021">
<CcyTbl>
<CcyNtry>
<CtryNm>AFGHANISTAN</CtryNm>
<CcyNm>Afghani</CcyNm>
<Ccy>AFN</Ccy>
<CcyNbr>971</CcyNbr>
<CcyMnrUnts>2</CcyMnrUnts>
</CcyNtry>
@WietseWind
WietseWind / mint.mjs
Last active November 24, 2023 15:28
XLS20 NFToken ID calculation with fixNFTokenRemint compatibility
/// Based on: https://gist.github.com/N3TC4T/a20fb528931ed009ebdd708be4938748
import { derive, utils, signAndSubmit, } from "xrpl-accountlib"
import { XrplClient } from "xrpl-client"
import { decodeAccountID } from "ripple-address-codec"
import { TxData } from 'xrpl-txdata'
// const wss = [ 'wss://testnet.xrpl-labs.com', 'wss://s.altnet.rippletest.net:51233', ]
const wss = [ 'wss://s.devnet.rippletest.net:51233/' ]
const client = new XrplClient(wss)