Skip to content

Instantly share code, notes, and snippets.

rootdir: protorepo
sources:
- grpckit/accounts # non-proto entries will be searched for proto files, and named relative to root dir.
- grpckit/books/books.proto # you can specify specific files ending with .proto
output: gen # gen is the default output directory (should be gitignored)
plugins:
- name: go # the name of the plugin will be suffixed with _out, i.e. go_out.
args: paths=source_relative # args will be passed in to the plugin flag
- name: validate
args: lang=go
@mhamrah
mhamrah / DellXPS13_9360
Created September 22, 2019 02:20
Minimal instructions for installing arch linux on a DELL XPS 13 9360 - UEFI, Toshiba 512GB NVMe SSD, with full system encryption using dm-crypt and luks
# Reference:
# https://wiki.archlinux.org/index.php/installation_guide
# https://github.com/variadico/xpslinux
# https://gist.github.com/njam/85ab2771b40ccc7ddcef878eb82a0fe9
# https://gist.github.com/brammitch/281e9a2f3aca57ae4a333fc63732f602
# https://wiki.archlinux.org/index.php/Dell_XPS_13_(9360)
# http://www.bhartiya.io/always-updated-arch-linux-tutorial/30411
# Set a bigger font size on the arch usb bootup shell
# Setfont sun12x22
@mhamrah
mhamrah / README.md
Last active August 20, 2018 21:44
WSL Setup
@mhamrah
mhamrah / readme.md
Last active July 24, 2018 19:31
dotnet commands cheat sheet

Add a package to a project

dotnet add <PROJECT PATH> package <NUGET PACKAGE> project path is optional

Add a reference to an existing project

dotnet add <PROJECT PATH> reference <REFERENCE PROJECT PATH> project path is optional

Add a project to a solution

dotnet sln add

@mhamrah
mhamrah / main.go
Created July 9, 2018 15:54
Set go variable with LD
import (
"fmt"
)
// use ldflags to set this var at build time:
// go build -ldflags "-X main.version=$(git tag)"
// go build -ldflags "-X main.version=$(git rev-parse HEAD)"
var version string
func main() {
#if !defined(REQUIRE_EQUAL_CONTAINERS_H)
#define REQUIRE_EQUAL_CONTAINERS_H
#include <boost/version.hpp>
#include <utility>
#include <vector>
#if BOOST_VERSION >= 105900
namespace boost
@mhamrah
mhamrah / scale-fleet
Created April 10, 2015 01:29
scale-fleet
#!/bin/bash
FLEET_HOST=http://gotham.gettyimages.io:8080
SERVICE=$1
DESIRED_SIZE=$2
INSTANCES=($(curl -s $FLEET_HOST/fleet/v1/units | jq ".units[].name | select(startswith(\"$SERVICE@\"))" | grep '\w@\d\.service'))
CURRENT_SIZE=${#INSTANCES[@]}
@mhamrah
mhamrah / boot.sh
Last active August 29, 2015 14:14 — forked from skippy/boot.sh
#!/bin/bash
# set -eo pipefail
export CONSUL_NUM_INSTANCES=${CONSUL_NUM_INSTANCES:-3}
echo " => stopping consul"
fleetctl stop -block-attempts=10 \
$(eval echo "consul-server@{1..$CONSUL_NUM_INSTANCES}.service") \
consul-agent.service
# FIXME: sometimes it takes awhile for systemd to stop things...
@mhamrah
mhamrah / sse.js
Created January 18, 2015 16:12
simple sse script
if(!!window.EventSource) {
var source = new EventSource('/messages');
var el = document.querySelector('#sse');
source.addEventListener('published', function(e) {
console.log('published: ' + e.data);
var p = document.createElement('p');
p.textContent = e.data;
el.appendChild(p);
}, false);
@mhamrah
mhamrah / RocksDb.scala
Created December 7, 2014 05:12
persistence-test
package com.hamrah.akka.persistence.rocksdb
package journal
import akka.persistence._
import akka.persistence.journal._
import com.typesafe.config._
import scala.collection._
import scala.concurrent.Future
import scala.concurrent.duration._