Skip to content

Instantly share code, notes, and snippets.

@kflu
kflu / fb_get_token.py
Created January 14, 2023 09:21
Obtain a Facebook Access Token
#!/usr/bin/env python3
"""Obtain a Facebook Access Token
From: https://github.com/dequis/purple-facebook/issues/445#issuecomment-967542766
Changes:
- Ported to Python3
- Auto generate the MACHINE_ID UUID
- Can set EMAIL from environment variable
/*
* Reliably write data to named pipe, udp style.
*
* Compile:
* cc npcat.c -o npcat
*
* Test npcat without reader:
* mkfifo kk
* dd if=/dev/random bs=1k count=1k | npcat kk 2>/dev/null
*
@kflu
kflu / mvim_as_sys
Last active January 3, 2022 18:41
use macvim as system vim
#!/bin/sh
MVIM_DIR="/Applications/MacVim.app/Contents/bin"
DEST_DIR="$HOME/.local/bin"
mkdir -p "$DEST_DIR"
(
cd "$MVIM_DIR" || {
echo "Cannot change to dir $MVIM_DIR"
exit 2
@kflu
kflu / gist:4fd6cd3bd393daaa7636b7aa1742ee52
Created November 24, 2021 09:06
python non-block opening and reading from fifo (eagerly with select)
In [93]: import os
In [94]: fd = os.open('fifo', os.O_RDONLY | os.O_NONBLOCK)
In [95]: f = os.fdopen(fd, 'rb')
In [96]: import select
In [97]:
...: while True:
@kflu
kflu / pub keys
Last active May 19, 2021 06:41
pub keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDlHZdV4yo/DXce1SB0vy6dUpLE+hZcbn3PegG79Lztkiwk4CPYTwKukl+RvD6jfCLKDMgKw4wC3c+EkDL1UHsCG6XCUCzEr6XZUlzwsfGbcqft2neg2xAcGywAR/BU0iJ4dE8wYM5cA+asiU+POixSLv+WiLnblxBjS1CNCnOcZCeA8Os6IbXKvJPnLc2dTXXuk+A4qALFCEp8PCwGvw7gJG9GC5+ZmyqQawFmEAy/8YrOFrcpdypsdOZKr39C/red1WYk74dmyL0T+s0aq1abvgDuvn2SindjXtkIKIysdmFXfWOmKPHNlqjuKzj42NkOCgIUjrAJ9OR+wnOvsaqwgCswJy0yeb9UHWQsbi9EKjWgRjgSpwvFGj4MfzntueaW7jpcVrYf7ZCOlC8SnlqzPE/9y1FcYdajYDAMbE9U+RRndaK2aowVa42wtd+boiB3z7pCdL30cGCLXgDgfQlHfQryoHNzTKf1/h5T28Yev5kZS1nvMwaVRW6mvlIKros= mac
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdIYX93EEMsdOrRFdh+IqFhEPRiAnZA0b0vrLZ2ftxMGpTvbHSpg3e6+JfRCI/bCyusLJi2MjjHUtocuJrbhz5PBZ+hrQHHSI6Qch32IWsSnYlCb5meIC6s4AAQwECLCKOoHBKpqCEEgwP+Cwk1Cxrpg40BHpm23G+c15U1sBDP250y/FecoPms7sPICI+mzepPhbj99nAP2Jut55U7EbBtGM5OjBO8WFt8SJXjTvp57O+EC90PVQ3tKA5NIuOwp8U+tU9a1ME+9sMt4Yb9uYmQAGCyAq1J0kbHWxGC6si00S10LEJeiRhxkMFsva5QZlwFxdwL5UF1hhwtNhu+8u7 S
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDrrjp8ZFSK6Hq4a8Q3tNQ30llvr+7NLWfnt1QOCAmZH+y
@kflu
kflu / install_pycharm.sh
Created July 19, 2019 00:41
Installing PyCharm
#!/bin/bash
PYCHARM_INSTALL_DIR="$HOME/local/pycharm/pycharm-community-2019.1.3"
http_proxy=fwdproxy:8080 https_proxy=fwdproxy:8080 wget -O /tmp/pycharm.tar.gz https://download.jetbrains.com/python/pycharm-community-2019.1.3.tar.gz
mkdir -p ~/local/pycharm
tar xzf /tmp/pycharm.tar.gz -C ~/local/pycharm
cd "$PYCHARM_INSTALL_DIR/bin"
@kflu
kflu / hello
Last active March 7, 2019 06:39
test encryption
hQEMA+G25aaiqKwyAQf/UGHSm7hkA19eQbgESInCniq5Wesc1flXWacmB++3i5HQSrBWL4Bg/0nM
9tD41llLWzMr0PhBW6F8ThWmgh0QO9v3y9Dltx9BLXCYdqBBliPJgsWsYg2ML2yMEzNy2ns9gpdV
uU6k/YOPLGuKf1tPpv0TiWVekjccr5vinUvAu0DGgRBc3Gd0FtSLeulXZkfIXsS08YtSp++G6gg0
lKRN4JxO5Q0OixQFe6+bRbIc7RI50iPPLIhWpQvubv/dTFJVIiwNe8aKsY+ymIneLRWDLz5h5DZ8
HVFUotneXJKuzy1Xa4ltRPTF9BB5aJP1ny/3BRkFYnon8gLtwKqQgo9KHtJHARjSP3mmiHMJfutZ
zpd87AKcWhUrDtSGUG9bfX0SGyeAnaaEBo2p/mnOujLrcECjir2hkF3g3/sBZkXw/qk/eNJ/mL5u
cT4=
@kflu
kflu / DefaultKeyBinding.Dict
Last active October 17, 2018 23:58
DefaultKeyBinding.Dict
/* ~/Library/KeyBindings/DefaultKeyBinding.Dict
This file remaps the key bindings of a single user on Mac OS X 10.5 to more closely
match default behavior on Windows systems. This particular mapping assumes
that you have also switched the Control and Command keys already.
This key mapping is more appropriate after switching Ctrl for Command in this menu:
Apple->System Preferences->Keyboard & Mouse->Keyboard->Modifier Keys...->
Change Control Key to Command
Change Command key to Control
@kflu
kflu / 0_note.md
Created September 30, 2018 06:46
Building vim and gvim fullfeature on centos

Dependencies:

sudo yum install \
  python-devel lua-devel python36-devel \
  ruby-devel ncurses-devel ncurses-libs \
  gtk+-devel motif-static motif \
  gtk3 gtk3-devel
  
@kflu
kflu / snippets.cs
Last active May 12, 2018 18:52
C# IO
// Read from stdin (TextReader)
static IEnumerable<string> ReadLines(TextReader sr)
{
string line;
while (null != (line = sr.ReadLine())) yield return line;
}
// Parse command line