Skip to content

Instantly share code, notes, and snippets.

View ik5's full-sized avatar
🎯
Focusing

ik5 ik5

🎯
Focusing
View GitHub Profile
@ik5
ik5 / audio_windows.go
Last active October 2, 2020 05:12
Quick and dirty audio playing for MS Windows (No error validation) in Golang
// +build windows
package main
import (
"fmt"
"path/filepath"
"syscall"
"unsafe"
)
@ik5
ik5 / build.sh
Created January 2, 2020 09:26
shared object from go to c (re-take)
#!/usr/bin/env sh
echo "Building go library:"
go build -o libtest.so -buildmode=c-shared ./main.go || exit
echo "Building C executible:"
clang --verbose -DUSE_SHARED_LLVM=on -L/tmp/so -ltest -I/tmp/so main.c -o main -Wall || exit
echo "Done"
@ik5
ik5 / run-workers.sh
Created July 26, 2019 15:54
Creating 10 workers, takes the host ip using docker
#!/usr/bin/env bash
declare -i min=0
declare -i max=10
host=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')
for (( c=min; c<max; c++ )) do
echo "Going to start worker # $c"
docker run\
@ik5
ik5 / language-layout.vue
Created July 22, 2019 10:01
solving layout changes in Vue.js
<template>
<ul class="language-selector">
<li
v-for="(language, idx) in $i18n.availableLocales"
:class="{selected: language === $i18n.locale}"
>
<a @click="changeLayout(language, $t(`languages.list[${idx}].bidi`))>
<Flag
:country="$t(`languages.list[${idx}].country-code`)"
:title="language"
@ik5
ik5 / custom_json_unmarshal.go
Last active November 2, 2023 12:59
Example of custom unmarshal of JSON in golang
package main
import (
"encoding/json"
"fmt"
"reflect"
)
type To []string
@ik5
ik5 / schema-bad
Created June 25, 2019 08:58
simple schema for blog post
From - String
To - String/List of string
Message - String
@ik5
ik5 / tmux-cheatsheet.markdown
Created June 17, 2019 05:29 — forked from MohamedAlaa/tmux-cheatsheet.markdown
tmux shortcuts & cheatsheet

tmux shortcuts & cheatsheet

start new:

tmux

start new with session name:

tmux new -s myname
@ik5
ik5 / int_to_ip.rb
Created June 5, 2019 11:17
short script to convert 32 bit integer to IPv4
#!/usr/bin/env ruby
require 'ipaddr'
ARGV.each do |int|
puts "#{int} = #{IPAddr.new(int.to_i, Socket::AF_INET).to_s}"
end
@ik5
ik5 / vim_cheatsheet.md
Created April 17, 2019 16:22 — forked from awidegreen/vim_cheatsheet.md
Vim shortcuts

Introduction

  • C-a == Ctrl-a
  • M-a == Alt-a

General

:q        close
:w        write/saves
:wa[!]    write/save all windows [force]
:wq       write/save and close
@ik5
ik5 / interfaces.go
Created March 26, 2019 06:51
list all ethernet interfaces and its data including mtu, state etc...
package main
import (
"fmt"
"net"
)
func main() {
ifaces, err := net.Interfaces()
for _, iface := range ifaces {