Skip to content

Instantly share code, notes, and snippets.

View keshihoriuchi's full-sized avatar

Takeshi Horiuchi keshihoriuchi

View GitHub Profile
const z = (f) => {
const g = (x) => {
return f((v) => {
const xx = x(x);
return xx(v);
});
};
return g(g);
};
@keshihoriuchi
keshihoriuchi / download_cloudwatch_logs.ts
Last active October 15, 2021 18:57
Download CloudWatch Logs by TypeScript and AWS SDK
import {
CloudWatchLogsClient,
DescribeLogGroupsCommand,
DescribeLogStreamsCommand,
GetLogEventsCommand,
} from "@aws-sdk/client-cloudwatch-logs";
import { fromIni } from "@aws-sdk/credential-provider-ini";
import * as date from "date-fns";
import fs from "fs";
@keshihoriuchi
keshihoriuchi / main.go
Last active January 6, 2021 23:21
Slack created channel notifier
package main
import (
"bytes"
"crypto/rand"
"encoding/json"
"errors"
"io/ioutil"
"net/http"
"net/url"
@keshihoriuchi
keshihoriuchi / Dockerfile
Last active October 28, 2020 18:19
Building docker image installed sshd from debian:buster. cf. https://docs.docker.jp/engine/examples/running_ssh_service.html
FROM debian:buster
RUN apt-get update && apt-get install -y openssh-server
RUN mkdir /var/run/sshd
RUN echo 'root:screencast' | chpasswd
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
# SSH login fix. Otherwise user is kicked off after login
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
@keshihoriuchi
keshihoriuchi / App.tsx
Last active April 11, 2022 17:58
WebRTC on React Hooks and TypeScript
import React, { useEffect, MutableRefObject, useRef, useState } from "react";
import "./App.css";
const VideoRoom: React.FC = () => {
const refSelfMediaStream: MutableRefObject<MediaStream | null> = useRef(null);
const refSelfVideo: MutableRefObject<HTMLVideoElement | null> = useRef(null);
const refPc1: MutableRefObject<RTCPeerConnection> = useRef(
new RTCPeerConnection()
);
const refPc2: MutableRefObject<RTCPeerConnection> = useRef(
@keshihoriuchi
keshihoriuchi / create_ca.sh
Created August 27, 2017 21:29
CA用ファイル作成
#!/bin/bash
# Ubuntuデフォルトの/etc/ssl/openssl.cnf 前提。ベースは/usr/lib/ssl/misc/CA.sh
set -ex
CATOP="./demoCA"
mkdir ${CATOP}
mkdir -p ${CATOP}/certs
mkdir -p ${CATOP}/crl
@keshihoriuchi
keshihoriuchi / patch.fix.tumblr.getForm.tbrl.js
Last active August 19, 2017 09:28
patch.fix.tumblr.getForm.tbrl.js
// ==Taberareloo==
// {
// "name" : "Fix Tumblr.getForm 2017.08"
// , "description" : "Fix Tumblr.getForm 2017.08"
// , "include" : ["background"]
// , "version" : "0.0.1"
// , "downloadURL" : "https://gist.githubusercontent.com/keshihoriuchi/183993d8ba41828530f1269b5ea45550/raw/patch.fix.tumblr.getForm.tbrl.js"
// }
// ==/Taberareloo==
@keshihoriuchi
keshihoriuchi / parallel.rb
Created November 2, 2015 22:35
Thread.abort_on_exceptionを書き換えるコードを安全に並列実行する
require 'parallel'
require 'retryable'
res = Parallel.map((1..10).to_a, in_threads: 10) do |a|
Retryable.retryable(tries: 50) do
Parallel.map([a], in_processes: 1) do |b|
Thread.current.abort_on_exception = true
exit if [1, 2].sample == 1
b + 1
end[0]
@keshihoriuchi
keshihoriuchi / settings.json
Last active August 29, 2015 14:22
Visual Studio Code の設定
// Place your settings in this file to overwrite the default settings
{
"editor.wrappingColumn": 0,
"editor.insertSpaces": true,
"editor.tabSize": 2
}
@keshihoriuchi
keshihoriuchi / Dockerfile
Created February 28, 2015 01:46
CentOS で SSH できる Dockerfile
FROM centos:centos6
RUN yum install -y passwd openssh openssh-server openssh-clients sudo
RUN sed -ri 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config
RUN /etc/init.d/sshd start
RUN /etc/init.d/sshd stop
# setup user
RUN useradd docker
RUN passwd -fu docker