Skip to content

Instantly share code, notes, and snippets.

phaer phaer

Block or report user

Report or block phaer

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
@phaer
phaer / convert.py
Created Aug 15, 2018
kubernetes open api to hcl2 spec
View convert.py
import sys
import json
from collections import OrderedDict
from contextlib import contextmanager
def resolve_json_pointer(spec, reference):
prefix, definitions, name = reference.split('/')
return spec.get(definitions).get(name)
@phaer
phaer / wikidata-versions.sh
Last active Mar 6, 2018
query software versions on wikidata.org
View wikidata-versions.sh
# See https://wikidata.org/wiki/P348 https://wikidata.org/wiki/Q83, https://wikidata.org/wiki/Q13166 for a
# definition of the arguments. Or paste the query to https://query.wikidata.org for a nice online editor.
curl -sSH 'Accept: application/sparql-results+json' --data-urlencode query@- https://query.wikidata.org/sparql <<EOF \
| jq '.results.bindings | map({"key": .softwareLabel.value, "value": .version.value}) | from_entries'
SELECT ?softwareLabel ?version WHERE {
?software wdt:P348 ?version;
FILTER ( ?software IN (wd:Q13166, wd:Q83))
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
View ansible-snippets.sh
# filter setup module through jq.
ansible -i inventory '*' -m setup -o | sed 's/^\(.*\) | SUCCESS => \(.*\)/{"\1": \2}/' | jq .
View gite_myrepos.py
#!/usr/bin/env python3
"""
A litte tool to generate a .mrconfig file for https://myrepos.branchable.com/
from a https://gitea.io/ account.
sudo apt install python3 python3-requests
Check possible values for your MR_REPO_TEMPLATE with
$ curl --user ${GITEA_USER}:{$GITEA_PASS} https://${GITEA_HOST}/api/v1/user/repos | jq .
"""
@phaer
phaer / metalab-teletext-remote.ino
Last active Jan 14, 2017
Metalab Teletext Remote control code.
View metalab-teletext-remote.ino
#include <IRremote.h>
#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 4;
// define the symbols of the buttons on the keypads.
const char hexaKeys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
@phaer
phaer / sshjail.py
Created Dec 23, 2016
connection_plugin for Ansible and FreeBSD jails, connecting through ssh on the jailhost.
View sshjail.py
# connection_plugin for Ansible and FreeBSD jails, connecting
# through ssh on the jailhost.
# inspiration: https://github.com/austinhyde/ansible-sshjail
from ansible.errors import AnsibleError
from ansible.plugins.connection import ConnectionBase
from ansible.plugins.connection import ssh
try:
from __main__ import display
except ImportError:
@phaer
phaer / mpd-youtube-dl.py
Last active Dec 15, 2016
A simple script to pipe URIs through youtube-dl and into musicpd.
View mpd-youtube-dl.py
#!/usr/bin/env python3
"""
A simple script to pipe URIs through youtube-dl and into musicpd.
pip3 install python-mpd2 youtube-dl
"""
import sys
import mpd
import youtube_dl
View broker.ml
open Lwt.Infix
open Websocket_lwt
open Ppx_lwt
open Frame
let ip_port = ("127.0.0.1", 3000);;
let clients = Hashtbl.create 10;;
let section = Lwt_log.Section.make "stream_shape";;
Lwt_log.(add_rule "*" Debug);;
@phaer
phaer / overpass-query.txt
Created Apr 14, 2016
Get RBL number for viennese public transport stops around a given location
View overpass-query.txt
/*
This has been generated by the overpass-turbo wizard.
The original search was:
“(railway=station or railway=tram_stop or highway=bus_stop) around Semperdepot”
*/
[out:json][timeout:25];
// adjust the search radius (in meters) here
{{radius=600}}
// gather results
(
View definitions.units
#
# This file is the units database for use with GNU units, a units conversion
# program by Adrian Mariano adrianm@gnu.org
#
# August 2015 Version 2.13
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006
# 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015
# Free Software Foundation, Inc
#
You can’t perform that action at this time.