Skip to content

Instantly share code, notes, and snippets.

# Block facebook.com mon-fri, 08:00 - 17:00, from desktop net
# Fetches all subnets registered to Facebook and it's domain aliases
for i in $(whois -h whois.radb.net -- '-i origin AS32934' |
awk '/^route:/ { if(!uniq[$2]++) print $2 }'); do
$ipt -A FORWARD -s $desktop_net -d $i \
-m time --timestart 08:00 --timestop 17:00 --weekdays Mon,Tue,Wed,Thu,Fri \
-j DROP
done
@timss
timss / btrfs.txt
Last active August 20, 2017 10:42
ion notes (i3 / kde / iommu)
# /etc/fstab
defaults,ssd,noatime,compress=lzo
# defrag/recompress post-install
btrfs filesystem defragment -r -v -c lzo / /home
# fstrim (weekly trim)
cp /usr/share/doc/util-linux/examples/fstrim.{service,timer} /etc/systemd/system
systemctl enable fstrim.timer
@timss
timss / packages.txt
Last active January 10, 2020 20:58
QEMU/KVM, OVMF, UEFI – invalid block device contents
- qemu/kvm 2.6
- edk2.git/ovmf x64 20160728
- libvirt-daemon 2.0.0
@timss
timss / service.yml
Created August 17, 2016 08:07
Disable autostart of services after first installation on Debian/Ubuntu
---
- name: Check if service is installed
stat:
path: /etc/init.d/{{ item }}
register: services
with_items:
- apache2
- mysql
- name: Disable autostart of services after installation
@timss
timss / include.yml
Last active February 28, 2017 16:05
Ansible 'become' clause for include statements
# ./roles/foo/tasks/main.yml
- include: foo.yml
- include: foo.yml
become: yes
# ./roles/foo/tasks/foo.yml
- lineinfile:
dest: "~/.bashrc" # resolves '~' on runtime as any other command', unlike ansible_env.HOME
regexp: "^HISTSIZE=.*"
line: "HISTSIZE=10000"
@timss
timss / log.py
Created April 11, 2017 07:56
Python logging across multiple modules with custom handler/filter and splitting loglevels between stdout/stderr
#!/usr/bin/env python3
import logging
import sys
import sublog
logger = logging.getLogger()
# http://stackoverflow.com/a/24956305/1076493
@timss
timss / startuptime.md
Last active June 29, 2017 21:04
timss/vimconf startup time

Normal desktop:

$ grep -m 1 "model name" /proc/cpuinfo 
model name	: Intel(R) Core(TM) i5-4570 CPU @ 3.20GHz

$ time vim -c q .vimrc
real    0m0.159s
user    0m0.120s
sys     0m0.004s
@timss
timss / bluetooth_resume.yml
Created May 18, 2018 13:44
Simple Ansible playbook for configuring systemd to restart the bluetooth service on resume
- hosts: all
connection: local
vars:
ask_become_pass: yes
tasks:
- name: Configure systemd to restart bluetooth service on resume
copy:
dest: /lib/systemd/system-sleep/bluetooth-resume
mode: 0755
content: |
@timss
timss / discord_emojis.js
Created August 21, 2023 12:13
"Acquire" Discord emojis
// console.log(p[0].children)
//var p = document.querySelectorAll("[class*=emojiItem]");
// or console.log() stuff
// var a = window.open("");
// emojiImage-123abc is used for server settings emoji
// emojiItem-123abc is used for the emoji picker, but can be tricky to filter out
// default emojis or just the emoji of the server you're in
var p = document.querySelectorAll("[class*=emojiImage]");