Skip to content

Instantly share code, notes, and snippets.

@dequis
dequis / mcresources.py
Last active January 6, 2024 12:20
This script prints a list of URLs required to download all the minecraft resources that the new launcher can access (jars, libraries, assets) Redirect stdout to a file to do something useful with it.
"""
This script prints a list of URLs required to download all the minecraft
resources that the new launcher can access (jars, libraries, assets)
Redirect stdout to a file to do something useful with it.
Will store cached json indexes in
versions.json
versions/*.json
@dequis
dequis / ldpreload.c
Created July 20, 2022 10:09
sleep(4) frizz reduction spray for zoom
/*
sleep(4) frizz reduction spray for zoom
because this thing decides to freeze for a long time every time i plug/unplug
my usb hub, or when any cable is loose. seems to be 4 seconds multiplied by
number of plug/unplug events received
caveats:
- your video will still be frozen as usual, re-enable video
- this might increase the risk of your devices not showing up after it
@dequis
dequis / n26_ynab.py
Created January 4, 2020 23:04
Script I use to send n26 transactions to YNAB. Not documented as it's not really intended to be used by anyone but me but good luck.
import requests
from n26.api import Api as N26Api
from datetime import datetime, timedelta
from pprint import pprint
ENABLE_YNAB = True
YNAB_TOKEN = '...'
BUDGET_ID = '...'
ACCOUNT_ID = '...'
# logs from #irssi, 2014-03-19
# cleaned up to remove unrelated comments, empty lines added for readability where relevant
# i joined the channel in the middle of it to ask about something else
01:25 < tinypoodle> further trial shows the bug being triggered with any string after any amount of empty spaces at start of line, whenever hitting tab while cursor is not positioned after any character of string (i.e. at any position of empty space *or* on first char in string)
01:26 < tinypoodle> not sure if the description is fully clear...
01:28 < tinypoodle> the oddish part is that ineach case the cursor jumps to end of line instantly
01:28 < dx> tinypoodle: what am i supposed to see when i do what you described there?
01:29 < tinypoodle> dx: 3 lines of error messages, but only when done in status window
01:29 < dx> oh, yeah, i can reproduce that
@dequis
dequis / skypeweb.dot
Last active May 26, 2018 00:00
skypeweb troubleshooting flowchart http://dequis.org/skypeweb.png
digraph {
graph [nodesep=0.1, pad="1,0"];
node [fontsize=9, fontname="DejaVu Sans", margin=0.01];
edge [fontsize=9, fontname="DejaVu Sans"];
start [label="I'm getting an error\ntrying to log in to skypeweb"];
using_latest [label="Are you using\nskypeweb 1.5 or newer?"];
using_latest_no [label="Upgrade to the\nlatest version"];
// gcc -g -shared -fPIC $(pkg-config --cflags bitlbee) bitlbee_ssl.c -o bitlbee_ssl.so
#include <bitlbee.h>
#include <ssl_client.h>
static void
beessl_init(account_t *acct)
{
}
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@dequis
dequis / patch.py
Last active December 19, 2017 19:01
MSN ApplicationId binary patcher for pidgin/bitlbee/etc - OBSOLETE now that pidgin/bitlbee have the correct fix - READ THE COMMENTS!
#!/usr/bin/env python
"""
MSN ApplicationId patcher for pidgin/bitlbee/whatever
(because you're too lazy to rebuild the whole thing.)
Usage examples:
python patch.py /usr/sbin/bitlbee
python patch.py /usr/lib/purple-2/libmsn.so
@dequis
dequis / gregex.c
Created February 11, 2017 02:44
Fuzzing test cases for GRegex/posix regexps
/*
$ gcc $(pkg-config --cflags glib-2.0) -lpthread gregex.c libglib-2.0.a libpcre.a -o gregex
$ echo -n 'pattern\ntext' | ./gregex
*/
#include <glib.h>
#include <string.h>
int main() {
GRegex *preg;
@dequis
dequis / yaccparse.py
Created May 19, 2013 08:50
a script that reads a file and outputs the same file.
'''
Parses a yacc grammar file.
Also removes left recursion from the output.
That's all.
Licensed under the GNU LGPL. This is distributed in the hope that it
will be useful, but WITHOUT ANY WARRANTY, because it probably won't be.
See the GNU Lesser General Public License for more details.
'''