Skip to content

Instantly share code, notes, and snippets.

@davidondrej
davidondrej / pi-openrouter-setup.md
Created April 6, 2026 13:16
making the default Pi setup simpler & easier

Here's the full setup to make Pi use OpenRouter by default, with your API key stored locally inside Pi's own config (no system-wide env var needed):


Step 1 — Create Pi's config directory (if it doesn't exist)

mkdir -p ~/.pi/agent
@framp
framp / lenovo-yoga-slim-7-14akp10-guide.md
Last active June 28, 2026 11:48
Installing Arch Linux on Lenovo Yoga Slim 7 14AKP10

Installing Arch Linux on Lenovo Yoga Slim 7 14AKP10

After spending 24 hours across planes and airports I got back home and spent the rest of my weekend trying to get this beautiful laptop to work.

Here are the fixes so you don't have to suffer.

General

Install Arch Linux as usual.

How to Interact with Shadow DOM Elements: A Developer’s Guide to Automation

This article presents is a comprehensive guide on how to extract the path to Shadow DOM elements (the “shadow path”) and then use that path to interact with those elements—whether that’s setting values, firing events, or clicking buttons. We’ll walk through:

  1. Why Shadow DOM poses unique challenges for automation.
  2. How to generate a shadow path for nested elements.
  3. Why setting values and clicking buttons in Shadow DOM sometimes fails if done “the usual way.”
  4. A working solution that shows how to properly set values on custom elements, trigger events, and click buttons.

Use this article both to understand the concepts and to train a GPT bot or any developer on the intricacies of Shadow DOM automation.

http://goaccess.io/man
** install **
apt-get install goaccess
cd /var/log/nginx
**main logs**
zcat access.log.*.gz | goaccess access.log --log-format=COMBINED -o /var/www/sitename.com/htdocs/report-server.html
@CodeBrauer
CodeBrauer / README.md
Last active May 4, 2025 08:31
A collection of awesome tools for bahn.de / DB / Deutsche Bahn
@mvidaldp
mvidaldp / sdcard_fix.md
Created April 11, 2022 12:43
SD card formating fix via ADB shell when Android GUI fails (internal, portable/external or mixed). Works on Retroid Pocket 2+

I wrote this short tutorial because extending my internal storage using my new micro SD card on my Retroid Pocket 2+ failed all the time. Only setting it up as portable/external worked. However, this instructions should work in any Android 5.0+ device.

So, in case you have problems setting up your SD card on your Android device via graphical interface (setting up storage as extended internal memory or portable), and you get a corrupted SD card or any other error, follow these steps to fix it via adb shell:

  1. Make sure you have adb access to your Android device: Settings > System > About, touch/click on Build number until Developer options are enabled:
  2. Go to Settings > System > Developer options and enable USB debugging.
  3. Assuming you have adb installed on your remote terminal run the following:

adb shell

@pstoute
pstoute / managewp-7g-context.conf
Last active March 22, 2022 01:05
7G Whitelist Rules for ManageWP IP addresses
if ($remote_addr ~* "(34.211.180.66|54.70.65.107|34.210.224.7|52.41.5.108|52.35.72.129|54.191.137.17|35.162.254.253|52.11.12.231|52.11.29.70|52.11.54.161|52.24.142.159|52.25.191.255|52.34.126.117|52.34.254.47|52.35.82.99|52.36.28.80|52.39.177.152|52.41.237.12|52.43.13.71|52.43.76.224|52.88.96.110|52.89.155.51|54.187.92.57|54.191.32.65|54.191.67.23|54.191.80.119|54.191.135.209|54.191.136.176|54.191.148.85|54.191.149.8|52.26.122.21|52.24.187.29|52.89.85.107|54.186.128.167|54.191.40.136|52.88.119.122|52.89.94.121|52.25.116.116|52.88.215.225|54.186.143.184|52.88.197.180|52.27.171.126|34.211.178.241|52.24.232.158|52.26.187.210|52.42.189.119|54.186.244.128|54.71.54.102|34.210.35.214|34.213.77.188|34.218.121.176|52.10.190.191|52.10.225.96|52.11.187.168|52.25.139.76|52.43.127.200|54.191.108.9|54.70.201.228|44.224.174.169|52.32.57.81|44.225.177.160|34.223.186.249|44.224.135.238|44.226.111.14|44.225.203.104|44.226.100.122|44.224.250.144|44.225.118.211|54.189.93.69|44.231.184.112|44.238.10.27|54.185.116.30|44.238.58.95|
@pstoute
pstoute / betteruptime-7g-context.conf
Last active July 10, 2023 18:37
7G Whitelist for Better Uptime IPs
if ($remote_addr ~* "(23.88.41.31|3.220.166.35|45.33.100.21|45.56.78.139|45.79.47.102|143.42.97.120|143.42.97.213|116.202.157.36|116.202.33.182|142.132.140.32|142.132.140.42|142.132.140.47|142.132.140.77|168.119.90.223|168.119.96.203|54.243.207.163|74.207.228.249|95.216.117.142|139.162.109.252|142.132.140.107|142.132.140.122|172.104.109.161|172.105.169.250|172.105.173.108|172.105.190.118|172.105.206.169|2a01:4f9:2b:1b6e::|2a01:4f8:10b:3d1b::|2a01:4f8:231:2ac9::|2a01:4f8:251:53df::|2a01:4f8:261:1254::|2a01:4f8:261:1257::|2a01:4f8:261:1262::|2a01:4f8:261:1280::|2a01:4f8:261:1296::|2a01:4f8:261:129f::|2a01:4f8:c17:ef62::|2a01:4f8:c010:9ef1::|2400:8902::f03c:92ff:fe47:3951|2400:8902::f03c:92ff:fe47:395f|2400:8902::f03c:92ff:fecd:665e|2400:8907::f03c:92ff:fe47:3955|2400:8907::f03c:92ff:fe47:397a|2400:8907::f03c:92ff:fe47:399e|2600:3c00::f03c:92ff:feaa:0335|2600:3c00::f03c:92ff:feaa:0354|2600:3c02::f03c:92ff:feba:b84a|2600:3c02::f03c:92ff:feba:d761|2a01:7e00::f03c:93ff:fe22:2372|2a01:7e00::f03c:93ff:fe22:23c8)") {
@nakami
nakami / paybackhelper.js
Created January 28, 2022 16:27
Adds a button to the Payback website to activate all coupons
// ==UserScript==
// @name Activate All Payback Coupons
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Activating all Coupons on Payback.de with one click
// @author nakami
// @copyright 2022 nakami
// @license GNU General Public License v2.0
// @include http*://www.payback.de/coupons*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js
@taskylizard
taskylizard / fmhy.md
Last active July 5, 2026 07:41
/r/freemediaheckyeah, in one single file (view raw)