Skip to content

Instantly share code, notes, and snippets.

@poontology
poontology / FW-SLR-HOWTO.md
Last active April 19, 2025 13:10
Block VR HMD from accessing anything but SLR

VR HMDs are really verbose at calling home. for video viewing local HereSphere + stashvr can still be used simply by allowing traffic between the LAN IPs (don't even need DNS) but to enable cloud streaming from service such as SLR while blocking everything else here's one approach:

setup

  • HMD is connecting to WiFi AP that gives it a static DHCP lease for 10.20.0.30
  • opnsense firewall used as gateway router at 10.20.0.1
  • pi.hole DNS running at 10.20.0.2
@poontology
poontology / slrjav.csv
Last active April 19, 2025 02:26
SLR JAV info
name path vidcount actual_vidcount javcodes
100%VR /studios/100vr 1 1 HPVR001
3DV&R /studios/3dvr 165 165 VRVR-133
4KVR /studios/4kvr 108 103 DOVR-116
AQUA /studios/aqua 254 200 AQULA055
AromaPlanning /studios/aromaplanning 76 76 VARM-036
Asari VR /studios/asari-vr 27 27 FRVR014
BakunouVR /studios/bakunouvr 21 18 BNVR-007 NGVR-007
CasanovA /studios/casanova 793 710 CASMIANI056 CAFR553 CAPI040
ChinChinVR /studios/chinchinvr 132 129 CCVR082
@poontology
poontology / cleanup.sql
Last active September 15, 2024 17:51
Cleanup log of api_dump.sqlite from https://sukebei.nyaa.si/view/4045598
$ sqlite3 api_dump.sqlite
SQLite version 3.46.1 2024-08-13 09:16:08
Enter ".help" for usage hints.
sqlite> select count(*) from gallery;
2378815
sqlite> .changes on
sqlite> .timer on
sqlite> delete from gallery where category!='Manga' and category!='Doujinshi';
Run Time: real 129.907 user 28.681102 sys 63.180995
changes: 1489668 total_changes: 1489668
@poontology
poontology / stash_phash_transfer.py
Last active March 30, 2025 02:17
utility script to transfer phashes from one stash db to another
#!/usr/bin/env python
# coding: utf-8
# utility script for https://github.com/stashapp/stash
# 2024, poontology
# finds fingerprints from destination db that are without phashes then finds
# phashes from source db that matches the oshashes and copies the phashes over
# (benefit being to avoid rehashing thousands of large video files)
# NOTE: target db files need to be writable (sudo or chown them)
@poontology
poontology / stashdb-utils.user.js
Last active October 25, 2024 08:38
Userscript utilities for stashdb.org
// ==UserScript==
// @name stashdb-utils
// @namespace https://gist.github.com/poontology
// @version 0.1
// @description Userscript utilities for stashdb.org
// @author poontology
// @match https://stashdb.org/*
// @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant none
// ==/UserScript==
@poontology
poontology / crontab.sh
Last active February 18, 2023 09:58
czechvr scene identifcation by filename
#!/bin/bash
# install in `crontab -e` as: @daily $HOME/cvr_id_gist/crontab.sh
cd "${0%/*}"
./update_czechvr_csv.py && git add . && git commit -m "updates $(date +%Y-%m-%d)"
@poontology
poontology / crontab.sh
Last active February 18, 2023 09:57
naughtyamericavr scene identifcation by filename
#!/bin/bash
# install in `crontab -e` as: @daily $HOME/cvr_id_gist/crontab.sh
cd "${0%/*}"
./update_navr_csv.py && git add . && git commit -m "updates $(date +%Y-%m-%d)" && git push
@poontology
poontology / redgifs_filter.js
Created April 20, 2022 10:13
tampermonkey script to filter redgifs tags
// ==UserScript==
// @name redgifs_filter
// @namespace http://tampermonkey.net/
// @version 0.1
// @description remove gifs with specified tags
// @author You
// @match https://www.redgifs.com/*
// @icon https://www.google.com/s2/favicons?domain=redgifs.com
// @grant none
// ==/UserScript==
@poontology
poontology / stash_tag.js
Last active April 23, 2022 19:00
graphql script to add a specific tag to all scenes in stashapp, try it in chrome developer console
let graphqlUrl = "http://ip:9999/graphql"
async function updateSceneTags(input) {
return await fetch(graphqlUrl, {
"headers": {
"content-type": "application/json"
},
"body": JSON.stringify({
query: `mutation MyMutation($input: [SceneUpdateInput!]!) {
scenesUpdate(input: $input) { id }