Skip to content

Instantly share code, notes, and snippets.

View sphaugh's full-sized avatar
🕉️
幸せになりなさい

Sean Haugh sphaugh

🕉️
幸せになりなさい
  • Austin, TX
View GitHub Profile

To completely disable a service in systemd (so it doesn't start automatically and can't be started by dependencies), follow these steps:


🔧 1. Disable the service

This stops it from starting automatically on boot:

sudo systemctl disable <service-name>
@sphaugh
sphaugh / scratch.md
Created April 3, 2025 16:28
Slack vs. Teams
Category Slack (✅ Pros / ❌ Cons) Microsoft Teams (✅ Pros / ❌ Cons)
Cost ❌ Additional cost (not included in MS365) ✅ Included in MS365 (no extra cost)
User Experience (UX) ✅ Clean, intuitive interface; especially good for tech teams ❌ Clunky, can be confusing or slow for new users
Integrations ✅ Best-in-class third-party app ecosystem (GitHub, GCP, etc.) ❌ Weaker support for some third-party integrations
@sphaugh
sphaugh / cata.ts
Created September 12, 2024 03:19
import { Covariant } from "@effect/typeclass";
import { absurd, dual } from "effect/Function";
import { Kind, TypeLambda } from "effect/HKT";
type Algebra<F extends TypeLambda, R, O, E, A> = (fa: Kind<F, R, O, E, A>) => A;
class Fix<F extends TypeLambda, R, O, E, A> {
constructor(public unfix: Kind<F, R, O, E, Fix<F, R, O, E, A>>) {}
}
import * as Context from "@effect/data/Context";
import * as Effect from "@effect/io/Effect";
import type { Span } from "@effect/io/Tracer";
import type { RpcResponse } from "@effect/rpc/Resolver";
import type { RpcHandlers, RpcRouter } from "@effect/rpc/Router";
import * as Server from "@effect/rpc/Server";
import * as aws from "aws-lambda";
export const ApiGatewayRequest = Context.Tag<aws.APIGatewayProxyEventV2>();
#!/bin/sh
set -e
# Automatically added by dh_python3
if command -v py3compile >/dev/null 2>&1; then
py3compile -p helix -V 3.2-
fi
if command -v pypy3compile >/dev/null 2>&1; then
pypy3compile -p helix -V 3.2- || true
fi
from base64 import b64decode
from functools import wraps
from io import BytesIO, StringIO
from werkzeug.datastructures import Headers
from werkzeug.formparser import parse_form_data
def use_form(func):
@wraps(func)
@sphaugh
sphaugh / forms.py
Created October 10, 2021 14:58
Form submission with Werkzeug
from base64 import b64decode
from functools import wraps
from io import BytesIO, StringIO
from werkzeug.datastructures import Headers
from werkzeug.formparser import parse_form_data
def use_form(func):
@wraps(func)
-- install packer
local install_path = vim.fn.stdpath 'data' .. '/site/pack/packer/start/packer.nvim'
if vim.fn.empty(vim.fn.glob(install_path)) > 0 then
vim.fn.execute('!git clone https://github.com/wbthomason/packer.nvim ' .. install_path)
end
vim.api.nvim_exec(
[[
augroup Packer
-- install packer
local install_path = vim.fn.stdpath 'data' .. '/site/pack/packer/start/packer.nvim'
if vim.fn.empty(vim.fn.glob(install_path)) > 0 then
vim.fn.execute('!git clone https://github.com/wbthomason/packer.nvim ' .. install_path)
end
vim.api.nvim_exec(
[[
augroup Packer
-- install packer
local install_path = vim.fn.stdpath 'data' .. '/site/pack/packer/start/packer.nvim'
if vim.fn.empty(vim.fn.glob(install_path)) > 0 then
vim.fn.execute('!git clone https://github.com/wbthomason/packer.nvim ' .. install_path)
end
vim.api.nvim_exec(
[[
augroup Packer