Skip to content

Instantly share code, notes, and snippets.

@karl-gustav
karl-gustav / deploy.sh
Created April 30, 2018 12:46
deploy script for golang --> raspberry pi
#! /bin/bash
tar czf - brain.new brain.service | ssh smart 'tar xzf - -C /srv/brain/ && ( mv /srv/brain/brain{,.old} ; mv /srv/brain/brain{.new,} ) && systemctl daemon-reload && service brain restart'
@karl-gustav
karl-gustav / build.sh
Created April 30, 2018 12:45
build script for golang --> raspberry pi
#! /bin/bash
tar czf - brain.new brain.service | ssh smart 'tar xzf - -C /srv/brain/ && ( mv /srv/brain/brain{,.old} ; mv /srv/brain/brain{.new,} ) && systemctl daemon-reload && service brain restart'
@karl-gustav
karl-gustav / interfaces
Last active April 27, 2018 11:24
Put this into /etc/network/interfaces to have fixed IP in linux
auto lo
iface lo inet loopback
# Uncomment this to use DHCP
# auto eth0
# iface eth0 inet dhcp
auto eth0
iface eth0 inet static
address 10.0.0.5
@karl-gustav
karl-gustav / serial.example.go
Created April 6, 2018 18:10
Read /dev/ttyUSB0 (HAN Meterbus port)
package main
import (
"flag"
"io"
"log"
"time"
"github.com/goburrow/serial"
)
@karl-gustav
karl-gustav / org_number_validator.js
Last active March 9, 2018 11:03
validate if number is valid Norwegian organisation number
function isOrgNumberValid(orgNumber) {
if (orgNumber.toString().length != 9) {
return false;
}
const wheightNumbers = [3, 2, 7, 6, 5, 4, 3, 2];
const orgNumbers = orgNumber.toString().split('');
const controlDigit = orgNumbers[orgNumbers.length - 1]
const result = wheightNumbers.map((n, i) => n * orgNumbers[i]).reduce((a, b) => a+b, 0)
const rest = result % 11;
return +controlDigit === rest;
@karl-gustav
karl-gustav / apiActions.js
Created February 7, 2018 07:17
Wunderlist new tab "hack" to not show tasks assigned to somebody else (set YOUR_ID to the assignee_id of your user)
(function () {
var WL = window.WL;
var WB = wunderbits.core;
var WBDeferred = WB.WBDeferred;
var when = WB.lib.when;
WL.apiActions = {
'init': function (sdkInstance) {
@karl-gustav
karl-gustav / ssh_tunnel.txt
Created January 31, 2018 18:08
SSH tunnel How-To
ssh -f <server> -L <port on source machine>:<ip/address on target network>:<port on target network> -N
Example:
ssh -f home -L 8001:10.0.0.1:80 -N
@karl-gustav
karl-gustav / server.go
Created January 31, 2018 13:56
Golang with letsencrypt https and http-->https redirect
package main
import (
"crypto/tls"
"net/http"
"golang.org/x/crypto/acme/autocert"
)
func main() {
@karl-gustav
karl-gustav / faces.txt
Last active March 16, 2018 13:05
Good unicode text faces
(ง'̀-'́)ง
¯\_(ツ)_/¯
ಠ_ಠ
(ಥ﹏ಥ)
(ᵔᴥᵔ)
(¬‿¬)
ಠ╭╮ಠ
◉_◉
( ಠ ͜ʖರೃ)
༼ つ ◕_◕ ༽つ
@karl-gustav
karl-gustav / restic.prune.log
Created December 5, 2017 20:27
restic prune log
2017/12/05 19:49:09 restic/main.go:66 main.main 1 main []string{"/home/kg/bin/restic.debug", "-r", "b2:mini-server-backup-bucket:/important/", "prune"}
2017/12/05 19:49:09 restic/main.go:67 main.main 1 restic 0.7.3 (v0.7.3-237-g06bd606d), compiled with go1.9 on linux/386
2017/12/05 19:49:09 restic/global.go:494 main.open 1 parsing location b2:mini-server-backup-bucket:/important/
2017/12/05 19:49:09 restic/global.go:477 main.parseConfig 1 opening b2 repository at b2.Config{AccountID:"<removed>", Key:"<removed>", Bucket:"mini-server-backup-bucket", Prefix:"important", Connections:0x5}
2017/12/05 19:49:09 b2/b2.go:45 b2.Open 1 cfg b2.Config{AccountID:"<removed>", Key:"<removed>", Bucket:"mini-server-backup-bucket", Prefix:"important", Connections:0x5}
2017/12/05 19:49:09 debug/round_tripper_debug.go:77 debug.loggingRoundTripper.RoundTrip 1 ------------ HTTP REQUEST -----------
GET /b2api/v1/b2_authorize_account HTTP/1.1
Host: api.backblazeb2.com
User-Agent: blazer/0.2.1
Authorization: Basic <removed>