Skip to content

Instantly share code, notes, and snippets.

View creaktive's full-sized avatar
👽
🛸

Stanislaw Pusep creaktive

👽
🛸
View GitHub Profile
@creaktive
creaktive / c5.pl
Last active November 21, 2019 19:28
heptatonic scale generator
#!/usr/bin/env perl
# inspired by https://randscullard.com/CircleOfFifths/
# and http://pages.mtu.edu/~suits/notefreqs.html
use 5.010;
use strict;
use warnings;
use charnames ();
use open OUT => ':locale';
use utf8;
@creaktive
creaktive / rainbow.pl
Last active November 24, 2022 18:43
Convert light wave length (in nm) to RGB
#!/usr/bin/env perl
use strict;
use warnings;
use Carp;
use POSIX;
# Ported to Perl from: https://github.com/ArashPartow/bitmap/blob/master/bitmap_image.hpp
# Credits: Dan Bruton http://www.physics.sfasu.edu/astro/color.html
sub convert_wave_length_nm_to_rgb {
@creaktive
creaktive / git-hack.sh
Created June 15, 2018 06:47
Manually transfer all the commits from one git repo to another
mv .git .git.tmp && \
mv .git.bak .git && \
mv .git.tmp .git.bak && \
git checkout . && \
git checkout $(git rev-list --topo-order HEAD..master | tail -1) && \
CMSG=$(git show -s --format=%s) && \
export GIT_COMMITTER_DATE=$(git show -s --format=%cd) && \
export GIT_AUTHOR_DATE=$(git show -s --format=%ad) && \
mv .git .git.tmp && \
mv .git.bak .git && \
@creaktive
creaktive / sonos-reboot.pl
Last active May 24, 2018 11:11
Reboot all the Sonos speakers in the LAN
#!/usr/bin/env perl
use strict;
use warnings;
use Net::UPnP::ControlPoint;
use WWW::Mechanize;
sub sonos_discover {
my @hosts;
my $cp = Net::UPnP::ControlPoint->new();
@creaktive
creaktive / k8s-sniffer.go
Last active April 11, 2018 09:31
k8s-sniffer
package main
import (
"fmt"
"os"
"os/signal"
"syscall"
"time"
yaml "gopkg.in/yaml.v2"
0452a51fe0fe68af85e58ecba228639ca5486fb782171e23079c5e674035ba5c1a706798d5f07e201f8a7acc876edbc7fe437a3d4ac05931d996addf04485be01a;c-darwin
@creaktive
creaktive / gopro.sh
Last active August 29, 2017 16:30
GoPro HERO4 Session CLI timelapse
# unwarp, rescale & rename GoPro pics using 4 CPUs
find /Volumes/NO\ NAME/DCIM/ -type f -regex '.*/G[0-9]+.JPG' |
sort |
perl -MPOSIX=strftime -lne 'printf qq(convert "%s" -filter Lanczos -distort barrel "0.06335 -0.18432 -0.13009" -resize 1440x1080 -font Courier -pointsize 32 -draw "gravity southeast fill white text 0,0 \\\"%s\\\"" -quality 100 tl%05d.jpg\0), $_, strftime("%Y-%m-%d %H:%M", localtime [stat($_)]->[9]), ++$i' |
xargs -0 -n1 -P4 sh -c
# build timelapse at 60 fps
ffmpeg -f image2 -framerate 60 -i tl%05d.jpg -s 1440x1080 -pix_fmt yuv420p timelapse.mp4
#!/bin/sh
wifienable() {
lipc-set-prop com.lab126.wifid enable 1
}
wifidisable() {
lipc-set-prop com.lab126.wifid enable 0
}
#include <iostream>
#include <set>
#include <math.h>
int n_divisors(int n) {
int l = sqrt(n);
std::set<int> f;
f.insert(n);
for (int i = 1; i <= l; i++)
if (n % i == 0) {
#include <iostream>
#include <math.h>
int main() {
int w = 6;
int l = pow(10, w - 1);
int t = pow(10, w);
int h = t - 1;
for (long i = h; i > l; i--) {