Skip to content

Instantly share code, notes, and snippets.

View wzyboy's full-sized avatar

Zhuoyun Wei wzyboy

View GitHub Profile
@wzyboy
wzyboy / Better Usage.md
Created August 11, 2017 01:41 — forked from jordansissel/Better Usage.md
Strip package scripts from .deb packages (postinst, postrm, preinst, prerm)

The best way to use this tool is to hook apt's use of dpkg to run it before doing any package installs.

In your apt.conf, put this:

DPkg::Pre-Install-Pkgs {"xargs -rL1 bash /path/to/stripdeb.sh 2>&1 | logger -t stripdeb"}

Then, a demo:

% sudo apt-get install mysql-server-5.1

@wzyboy
wzyboy / main.yaml
Last active November 23, 2017 18:21
- name: Download Borg binary
get_url:
url: "{{ borg_url }}"
checksum: "{{ borg_checksum }}"
dest: "{{ borg_path }}"
mode: 0755
- name: Fix broken Python
apt:
name: python3-venv
{
"mappings": {
"_default_": {
"_meta": {
"version": "5.6.2"
},
"date_detection": false,
"dynamic_templates": [
{
"strings_as_keyword": {
#!/usr/bin/env python
'''
A Twitter archive includes only text data. This simple script parses all media
entities in the Twitter archive and extract all media URLs. One could feed the
output list to "aria2c -i" and download all the media files to disk.
Optionally, since the filenames of the media files are unique, they could be
uploaded to object storage buckets for backup purposes.
'''
@wzyboy
wzyboy / telegram.py
Last active November 12, 2018 12:38
Search thru Telegram history dumps.
#!/usr/bin/env python
'''
A simple script to search thru Telegram history dumps.
(See also: telegram-history-dump)
Example usages:
# Print dialogs
./telegram.py print /path/to/files.jsonl
@wzyboy
wzyboy / unrealized.py
Last active December 10, 2017 10:38
Compute unrealized PnL day by day
#!/usr/bin/env python
import argparse
import collections
from datetime import datetime
from beancount.loader import load_file
from beancount.ops import holdings
from beancount.core import prices
@wzyboy
wzyboy / upload_img_s3.py
Last active December 15, 2017 15:15
Attaching images in Lektor
#!/usr/bin/env python
import os
import argparse
import mimetypes
from datetime import datetime
from urllib.parse import quote
import boto3
@wzyboy
wzyboy / lektor_excerpt.py
Created December 15, 2017 15:26
Generate excerpts for Lektor
from html.parser import HTMLParser
from lektor.pluginsystem import Plugin
class HTMLTagStripper(HTMLParser):
def __init__(self):
self.reset()
@wzyboy
wzyboy / fetch-prices.py
Last active June 3, 2023 04:33
Fetch prices from IEX API for Beancount
#!/usr/bin/env python
'''A quick-and-dirty script to fetch prices from IEX API.'''
import sys
import argparse
import requests
from dateutil.parser import parse as parse_datetime
from beancount.core import data
@wzyboy
wzyboy / amortize_over.py
Last active March 20, 2024 16:29 — forked from cdjk/amortize_over.py
amortize_over beancount plugin
# Copyright (c) 2017 Cary Kempston
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
# The above copyright notice and this permission notice shall be included in all