Skip to content

Instantly share code, notes, and snippets.

@movitto
movitto / xrp-64to58.cpp
Created December 17, 2018 22:14
XRP Base64 -> Base58 Convertor: Converts Base64 addresses output by various rippled requests to the Standard Base58 Representation (in C++ and Ruby)
// Converts a Base64 XRP address to standard Base58 representation
// Compile with:
// g++ b64.cpp -lssl -lcrypto
#include <stdlib.h>
#include <utility>
#include <string>
#include <iostream>
#include <boost/optional.hpp>
#include <boost/container/small_vector.hpp>
@movitto
movitto / sonic-pi-ruby-2.5.patch
Created January 7, 2019 20:40
Update sonic-pi vendored *rugged* dep to work with ruby 2.5
diff --git a/app/server/ruby/vendor/rugged-0.26.0/ext/rugged/rugged_blame.c b/app/server/ruby/vendor/rugged-0.26.0/ext/rugged/rugged_blame.c
index 91716301f..9acd33253 100644
--- a/app/server/ruby/vendor/rugged-0.26.0/ext/rugged/rugged_blame.c
+++ b/app/server/ruby/vendor/rugged-0.26.0/ext/rugged/rugged_blame.c
@@ -188,6 +188,11 @@ static VALUE rb_git_blame_count(VALUE self)
return UINT2NUM(git_blame_get_hunk_count(blame));
}
+static VALUE rugged_blame_enum_size(VALUE rb_blame, VALUE rb_args, VALUE rb_eobj)
+{
@movitto
movitto / xrp-account-entropy.rb
Created February 6, 2019 14:54
Determine XRP account entropy by character and substring occurances in Base58 representation
#!/usr/bin/ruby
# Determine XRP account entropy, takes in a list of XRP accounts and
# outputs distribution by length, character, positional character,
# substring, and case-insensitive substring
require 'workers'
# Add method to extract all String substrings of a given length
class String
def substrings(n)
@movitto
movitto / xrpl-rocksdb.rb
Last active April 24, 2019 21:29
XRPL NodeStore - Type Extraction
# Work in progress: Ruby Script that parses rippled rocksdb node store and
# dumps out data types.
#
# Written by Dev Null Productions <devnullproductions@gmail.com>
#
# Many thanks for help received on XRPChat:
# https://www.xrpchat.com/topic/31118-question-pertaining-to-hashing-database-lookups/
#
# Requires upstream build of rocksdb-ruby to incorporate recent changes.
# Also the 'bistro' and 'tty-cursor' rubygems (gem install these).
@movitto
movitto / xag.rb
Created April 30, 2019 23:53
XRP Account Generator
#!/usr/bin/ruby
#
# Written by Dev Null Productions <devnullproductions@gmail.com>
#
# Small script to generate new XRPL account as described in the following document:
# https://developers.ripple.com/accounts.html
#
# Simply run it with:
# ruby xag.rb
#
@movitto
movitto / rippled.rpm.sh
Last active May 19, 2019 17:39
Commands needed to build the rippled RPM on a fresh CentOS 7 install
# Setup rippled RPM build environemnt on CentOS
# From a fresh CentOS install
# Update system, reboot
sudo yum update
sudo reboot
# Install deps
sudo yum install protobuf-static openssl-static zlib-static
@movitto
movitto / xrptipbot.vue
Last active July 25, 2019 04:30
Embedding xrptipbot in a vuejs application
// VueJS does not permit <script> tags to be embedded in component templates
// Inorder to embed the xrptipbot widget (as described here: https://www.xrptipbot.com/account/embed):
// Add the following to your vuejs component template (make sure to change the tip receipient!):
<div id="xrptipbot">
<a amount="5.00" size="175" to="DevNullProd" network="twitter" href="https://www.xrptipbot.com" target="_blank"></a>
</div>
// Then add / extend the component 'mounted' hook to add the script:
mounted : function(){
@movitto
movitto / lvmbak.sh
Last active August 23, 2019 14:53
Take LVM snapshot / cycle old ones out at specified interval
#!/bin/bash
# Take LVM snapshot / cycle old ones out at specified interval
# Set executable: chmod +x lvmbak.sh
# Make sure to setup sudo correctly:
# # visudo
# <USER> ALL= NOPASSWD: /sbin/lvcreate
# <USER> ALL= NOPASSWD: /sbin/lvremove
# <USER> ALL= NOPASSWD: /sbin/lvs
@movitto
movitto / lvd.sh
Created August 28, 2019 20:49
Remove all LVM Snapshots with a certain prefix
#!/bin/bash
# Remove all LVM Snapshots
# Set executable: chmod +x lvmbak.sh
VG="dnp00" # LVM volume group we are snapshoting
BACKUP_PREFIX="dnv1-snap-" # Prefix of snapshot volume name.
/sbin/lvs -o lv_name --noheadings | sed -n "s@$BACKUP_PREFIX@@p" | while read DATE; do
if [ "$DATE" ]; then
@movitto
movitto / xrpl-dash1.html
Created October 9, 2019 21:13
Prototype XRPL Node Dashboard Concept - Utilitzing consensus subscription patch
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.js"></script>
<script type="application/javascript" src="ripple-1.3.3-min.js"></script>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script src="https://d3js.org/d3.v4.js"></script>
<!-- -->