Skip to content

Instantly share code, notes, and snippets.

Kristian Lein-Mathisen kristianlm

  • Adellica
  • Norway
Block or report user

Report or block kristianlm

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View chicken-scheme-jwt.scm
(use matchable hmac sha2 base64 tweetnacl)
(define (base64url-decode m) (base64-decode (string-translate m "-_" "+/")))
(define (base64url-encode m)
(string-trim-right ;; remove = padding (not used/needed in jwt)
(string-translate (base64-encode m) "+/" "-_") #\=))
(define (hs256 secret) (hmac secret (sha256-primitive)))
;; b64header ignored! (read https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/)
@kristianlm
kristianlm / rotating colored square ortho.scm
Last active Dec 28, 2015
CHICKEN glls example on android
View rotating colored square ortho.scm
(use sdl2 miscmacros (prefix opengl-glew gl:) glls-render gl-utils gl-math)
;; unhappy REPL on Android? (import (prefix opengl-glew gl:))
(define window (create-window! "sokoworld" 0 0 640 480 '(resizable opengl)))
(gl-attribute-set! 'context-major-version 3)
(gl-attribute-set! 'context-minor-version 0)
(gl-create-context! window)
(gl:init)
View ota.sh
expected="c109d23ad00e8a50cf33ae1c3d811b2cd7a0bafe"
fn=index.html
curl -s google.com/$fn > /$fn.part
cs=`sha1sum /$fn.part | cut -d " " 1`
if [ "$cs" == "$expected"] ; then
echo "checksum ok $cs"
mv /$fn.part /$fn:$cs
@kristianlm
kristianlm / Xresources
Last active Aug 29, 2015
configuration.nix
View Xresources
! Use a nice truetype font and size by default...
! xterm ----------------------------------------------------------------------
xterm*VT100.geometry: 80x25
xterm*faceName: Inconsolata:style=Regular:size=8
!xterm*font: -*-dina-medium-r-*-*-16-*-*-*-*-*-*-*
xterm*dynamicColors: true
xterm*utf8: 2
xterm*eightBitInput: true
xterm*saveLines: 65568
View Android.mk
# build nanomsg for Android's aosp
# hope this is useful for someone! :D
LOCAL_PATH := $(ANDROID_BUILD_TOP)/external/nanomsg/src
include $(CLEAR_VARS)
LOCAL_SRC_FILES := core/epbase.c core/sock.c core/poll.c \
core/symbol.c core/ep.c core/pipe.c \
core/sockbase.c core/global.c devices/device.c \
View fft.c
// code from http://paulbourke.net/miscellaneous/dft/
// help from http://www.codeproject.com/Articles/9388/How-to-implement-the-FFT-algorithm
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
/*
This computes an in-place complex-to-complex FFT
x and y are the real and imaginary arrays of 2^m points.
dir = 1 gives forward transform
View nanomsg-Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := src/core/epbase.c src/core/sock.c src/core/poll.c \
src/core/symbol.c src/core/ep.c src/core/pipe.c \
src/core/sockbase.c src/core/global.c src/devices/device.c \
src/transports/inproc/ins.c src/transports/inproc/inproc.c \
src/transports/inproc/cinproc.c src/transports/inproc/binproc.c \
src/transports/inproc/sinproc.c src/transports/inproc/msgqueue.c \
View amixer-volume-loop.c
#include <stdio.h>
#include <alsa/asoundlib.h>
static char card[64] = "default";
static void error(const char *fmt,...)
{
va_list va;
View gist:76f791e6781f04bed45e
(use spiffy matchable test channel)
(include "server.scm")
(include "alist-util.scm")
;; events: `(event ...)
;; event: `(ekey event)
;; ekey: `(atype aid)
;; ==================== event-store ====================
(define (make-event-store) `(event-store . () ))
@kristianlm
kristianlm / hell.properties
Created Jan 25, 2014
Reading http://docs.oracle.com/javase/7/docs/api/java/util/Properties.html#load(java.io.Reader) and trying to create a challenge properties file for your Java properties-file parser
View hell.properties
# this is a comment. see
# http://docs.oracle.com/javase/7/docs/api/java/util/Properties.html#load(java.io.Reader)
! this too. and empty lines are allowed
# this is an space-indented comment
#this is a tab-indented and space-indented comment
# key separators include any unescaped "=", ":" or ws.
key1=value
You can’t perform that action at this time.