Skip to content

Instantly share code, notes, and snippets.

View ed-asriyan's full-sized avatar
🙃
having fun

Ed Asriyan ed-asriyan

🙃
having fun
View GitHub Profile
@fortuna
fortuna / merge_results.tsv
Last active November 27, 2025 08:42
Analysis of blocking in Russia. All entries in one table.
strategy server_net server_port isp url_scheme exit_code img error
$key Digital Ocean 443 Bee Line Cable http 0
$key Digital Ocean 443 Bee Line Cable https 0
$key Digital Ocean 443 MTS PJSC http 28 curl: (28) Operation timed out after 10006 milliseconds with 0 bytes received
$key Digital Ocean 443 MTS PJSC https 28 curl: (28) Connection timed out after 10005 milliseconds
$key Digital Ocean 443 PJSC MegaFon http 0
$key Digital Ocean 443 PJSC MegaFon https 56 curl: (56) Failure when receiving data from the peer
$key Digital Ocean 443 Tele2 Russia http 0
$key Digital Ocean 443 Tele2 Russia https 0
$key Digital Ocean 5555 Bee Line Cable http 0
@sindresorhus
sindresorhus / esm-package.md
Last active May 5, 2026 02:50
Pure ESM package

Pure ESM package

The package that linked you here is now pure ESM. It cannot be require()'d from CommonJS.

This means you have the following choices:

  1. Use ESM yourself. (preferred)
    Use import foo from 'foo' instead of const foo = require('foo') to import the package. You also need to put "type": "module" in your package.json and more. Follow the below guide.
  2. If the package is used in an async context, you could use await import(…) from CommonJS instead of require(…).
  3. Stay on the existing version of the package until you can move to ESM.
@DragorWW
DragorWW / storybook-config-auto-title.js
Created November 26, 2019 23:28
Storybook: auto title base on file path
/*
Read the https://storybook.js.org/docs/guides/guide-react/
Configure:
1) open ./storybook/config.js
2) remove configure(require.context('../src', true, /\.stories\.js$/), module);
3) replace with the code below
4) change path prepare in to getTitle function
5) remove in story files export default.title
@CollinChaffin
CollinChaffin / Enable-DockerRemoteAPI.md
Created September 5, 2019 00:17
Enable Docker Remote API on Photon OS v3(+)

Enable Local/Remote Docker API on PhotonOS

Prerequisites

You must have already performed the following in one form or another as well as properly set a STATIC IP. Bear in mind many instructions do not properly show how to commit iptables changes on Photon which then survive reboots.

iptables -A INPUT -p tcp --dport 2375 -j ACCEPT
iptables -A INPUT -p tcp --dport 2376 -j ACCEPT
iptables-save > /etc/systemd/scripts/ip4save
@fortuna
fortuna / Queries.md
Last active November 23, 2025 09:37
Grafana dashboard for Outline Servers

Example Queries

1h active keys by location:

sum(max(increase(shadowsocks_data_bytes{access_key!=""} [1h])) by (access_key, location) > bool 0) by (location)

1h usage by location:

sum(increase(shadowsocks_data_bytes{dir=~"c<p|p>t"} [1h])) by (location)

Screen Quick Reference

Basic

Description Command
Start a new session with session name screen -S <session_name>
List running sessions / screens screen -ls
Attach to a running session screen -x
Attach to a running session with name screen -r
@rd13
rd13 / gist:7372208
Created November 8, 2013 14:59
Enigma C++
#include <iostream>
#include <cstring>
using namespace std;
char alpha[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char rotors[3][27] =
{
"EKMFLGDQVZNTOWYHXUSPAIBRCJ",
"AJDKSIRUXBLHWTMCQGZNPYFVOE",
"BDFHJLCPRTXVZNYEIWGAKMUSQO"
@thoas
thoas / puller.py
Created January 10, 2012 15:04
Migration script from MySQL to PostgreSQL via SQLAlchemy
#!/usr/bin/env python
import getopt
import sys
from sqlalchemy import create_engine, MetaData, Table
from sqlalchemy.dialects.mysql.base import TINYINT
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.exc import ProgrammingError