Skip to content

Instantly share code, notes, and snippets.

import argparse
import json
import signal
import time
import timeit
start_time = timeit.default_timer()
parser = argparse.ArgumentParser()
parser.add_argument('--no-heartbeat', action='store_true', help='disable heartbeat logs')
@inkychris
inkychris / signals.py
Created November 8, 2022 16:46
Long running process that terminates on different (Windows compatible) signals
import logging
import os
import signal
import sys
import time
import timeit
start_time = timeit.default_timer()
logger = logging.getLogger(__name__)
@inkychris
inkychris / timeout.ps1
Last active November 8, 2022 19:19
Timeout process wrapper for Powershell
param(
[int][Parameter(Mandatory)]$Timeout,
[int][Parameter(Mandatory)]$KillTimeout,
[string[]][Parameter(Mandatory, ValueFromRemainingArguments)]$Arguments
)
$ErrorActionPreference = "stop"
$ArgumentsString = $Arguments[1..$Arguments.Length] -replace "^|$", "`"" -join " "
@inkychris
inkychris / nginx.conf
Created May 13, 2020 10:15
A minimal HTTP Nginx config for serving static files
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
server {
@inkychris
inkychris / broadcast.ps1
Created April 19, 2020 17:16
UDP Broadcast Server/Monitor - Powershell
param(
[ValidateSet("serve", "monitor")]
[Parameter(Mandatory = $true)]
[string]$Command,
[string]$Address = "255.255.255.255",
[int]$Port = 5606
)
if ($Command -eq "serve") {
@inkychris
inkychris / broadcast.py
Last active April 19, 2020 14:09
UDP Broadcast Server and Client
import socket
import time
def serve(port):
with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as sock:
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
while True:
sock.sendto(bytes(time.ctime(), encoding='utf-8'), ('<broadcast>', port))
time.sleep(1)
@inkychris
inkychris / pre_post.gcode
Created May 4, 2019 11:29
Cura Pre/Post Gcode
[ START GCODE ]
---------------
M140 S{material_bed_temperature}
G28 ;Home
M190 S{material_bed_temperature}
M109 S{material_print_temperature_layer_0}
G90 ;Absolute positioning
G1 Z1 F6000 ;Move the head up slightly
G92 E0 ;Reset extruder
G1 F200 E5 ;Extrude filament onto buildplate
@inkychris
inkychris / argparser.regex
Created April 12, 2019 14:26
Basic Argument Parsing Regular Expression
(?:\s|\A)(?:(?:--test)[\s=]?)(.+?)(?:\s|\z)
@inkychris
inkychris / .minttyrc
Created March 15, 2019 14:33
Git Bash Theme - Monokai
Font=Consolas
FontHeight=12
FontSmoothing=full
AllowBlinking=yes
Columns=128
Rows=64
PgUpDnScroll=yes
ThemeFile=
Transparency=
BoldAsFont=no
@inkychris
inkychris / slowprint.go
Created March 13, 2019 14:01
A test program for printing slowly to STDOUT
package main
import (
"fmt"
"os"
"strconv"
"time"
)
func main() {