Skip to content

Instantly share code, notes, and snippets.

View pepoluan's full-sized avatar
🏡

Pandu E POLUAN pepoluan

🏡
View GitHub Profile
@pepoluan
pepoluan / kernel_config_sort.py
Created March 15, 2024 11:59
Linux kernel config sorter
#!/usr/bin/env python3
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
#
# Copyright (C) 2024, Pandu POLUAN
import fileinput
import re
@pepoluan
pepoluan / json_cleaner.py
Last active April 13, 2024 14:48
Python-based JSON Cleanup Preprocessor
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
# Context: https://stackoverflow.com/a/56701174/149900
from io import StringIO
WHITESPACE = " \t\r\n"
@pepoluan
pepoluan / perftest.py
Created October 7, 2021 05:17
Sort By .items() vs Sort By .keys()
import pprint
import random
import timeit
MEMBS_COUNT = 100
indexes = list(range(MEMBS_COUNT))
random.shuffle(indexes)
orig_dict = {}
@pepoluan
pepoluan / dupefinder.py
Last active May 16, 2024 16:59
Python DupeFinder
#!/usr/bin/env python3.9
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
import os
import time
import xxhash
from collections import namedtuple
@pepoluan
pepoluan / example.py
Created December 14, 2020 16:55
Simple RFC5424-over-UDP Logging Handler & Formatter
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
facility = 23 # local7; see RFC 5424
formatter = RFC5424Formatter(appname="my-awesome", facility=facility)
syslog_handler = UTF8DatagramHandler("127.0.0.1", 514)
syslog_handler.setFormatter(formatter)
syslog_handler.setLevel(logging.DEBUG)
logger.addHandler(syslog_handler)
@pepoluan
pepoluan / detect_enc.py
Last active March 10, 2020 05:06
Simple Detection of Text File Encoding
# This code is released to the Public Domain.
# Alternatively, you can use one of the following licenses: Unlicense OR CC0-1.0 OR WTFPL OR MIT-0 OR BSD-3-Clause
# IMPORTANT:
# Please do note that this does NOT attempt to perform complex guessing e.g. CP437 or CP850 or GB18030 or JIS or...
# Well, you get the idea.
# This function will simply try to guess the most common *Unicode* encoding, i.e., UTF-8, UTF-16, and UTF-32
# More ... 'exotic' unicode encoding such as UCS-1, UCS-2, UTF-7, etc are NOT detected. (They would likely be
# detected as "utf-8" by this function)
# If you need more 'advanced' detection, use the heavyweight "chardet" library instead.
@pepoluan
pepoluan / setdns.ps1
Created December 19, 2019 04:57
DNS Switcher Script for PowerShell
# This code is released to the Public Domain.
# Alternatively, you can use one of the following licenses: Unlicense OR CC0-1.0 OR WTFPL OR MIT-0 OR BSD-3-Clause
param(
[Parameter(Mandatory=$True,Position=1)]
[string] $server,
[string] $iface = "Wi-Fi", # EDIT AS NEEDED
[string] $dns_service = "dnscrypt-proxy" # EDIT AS NEEDED
)

Keybase proof

I hereby claim:

  • I am pepoluan on github.
  • I am pepoluan (https://keybase.io/pepoluan) on keybase.
  • I have a public key ASD3184JHBHYutCiRnsXJIrOjz5XDGtzsnfOQElHSpivZgo

To claim this, I am signing this object:

@pepoluan
pepoluan / ssh_agent_listpubkeys.py
Last active February 26, 2020 04:10
SSH Agent Socket Interaction
import os
import socket
import sys
import struct
import contextlib
# Reference for the data structure / interaction:
# https://tools.ietf.org/html/draft-miller-ssh-agent-00
# Good to read:
@pepoluan
pepoluan / Byteify.vb
Created September 1, 2015 10:19
Byteify User-Defined Function -- convert "###.## KB/GB/MB/KiB/MiB/GiB" to values
' 1. Open Excel's VBA Editor using Alt-F11
' 2. Right-Click on the "VBAProject (Spreadsheet_Name)" entry and choose "Insert > Module"
' 3. Paste the below code starting from the line beginning with "Function" up to and including the line "End Function"
' 4. Now you can use the User-Defined Function in your spreadsheet
'
' SYNTAX:
' =Byteify(Cell, [AssumeBinaryPrefix=False])
' Cell : The Cell Reference (if actually a range, it will use the top left cell only)
' AssumeBinaryPrefix : KB, MB, GB will be assumed to be powers of 1024 (in other words, same as KiB, MiB, GiB)
'