This article will document how to deploy K3s to a cluster of Raspberry Pis.
I am using the following:
| steps: | |
| - name: Clone repo | |
| env: | |
| SSH_KEY: ${{ secrets.SSH_KEY }} | |
| run: | | |
| echo "${{ secrets.SSH_KEY }}" > /tmp/ssh-key | |
| chmod 0600 /tmp/ssh-key | |
| eval `ssh-agent` | |
| ssh-add /tmp/ssh-key | |
| ssh -A -o StrictHostKeyChecking=no |
This is a self-contained example of both the rendezvous server (UDP brokering) and a fully-asyncio P2P client that:
pystun3)miniupnpc)asyncioYou’ll need to install:
Below is a beginner-friendly roadmap you can follow from absolute zero to your first industry-recognized credential. Skim it all once, then work through it one phase at a time.
| What | Why it matters | How to tackle it |
|---|---|---|
| Computer fundamentals (how files, memory, processes, permissions work) | Security builds on IT basics. | Any free “Introduction to IT” YouTube playlist or Google Career Certificate “Foundations of Cybersecurity” module 1. ([Coursera][1]) |
| **Netw |
| -----BEGIN CERTIFICATE----- | |
| MIIHKzCCBZOgAwIBAgIQClNlrwBehz1gXoEoS5ulXDANBgkqhkiG9w0BAQsFADBg | |
| MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTcwNQYDVQQD | |
| Ey5TZWN0aWdvIFB1YmxpYyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gQ0EgT1YgUjM2 | |
| MB4XDTI1MTAxMzAwMDAwMFoXDTI2MTExMjIzNTk1OVowbzELMAkGA1UEBhMCVVMx | |
| DjAMBgNVBAgTBVRleGFzMS0wKwYDVQQKEyRFeHBlcmlhbiBJbmZvcm1hdGlvbiBT | |
| b2x1dGlvbnMsIEluYy4xITAfBgNVBAMTGGVudGl0bGVtZW50LnNhYXMuZWRxLmNv | |
| bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczOUGJlRmBMMwokA3Z | |
| 21Zl98jup551uunm7/VMT2342eDIqnbyD5EQL7EVabV7nRkA9SRVRG5pLJer1oAe | |
| Zbnz7SXQxpdQUtPFE6a6TpYPtTQiBZ22qfPm7bsl8y7BOFMTAExt4XsLNCuU8pul |
| #!/bin/bash | |
| # yt-nas - Download videos/audio with yt-dlp and upload to NAS | |
| # Usage: yt-nas <url> [video|audio] [custom-filename] | |
| set -e | |
| # Configuration | |
| NAS_USER="anthony" | |
| NAS_HOST="naspi5" |
| <div id="matrix-container" style="width: 100%; height: 100%; overflow: hidden; background: black; position: relative;"> | |
| <canvas id="matrix-canvas" style="width: 100%; height: 100%; display: block;"></canvas> | |
| </div> | |
| <script> | |
| (() => { | |
| const container = document.getElementById('matrix-container'); | |
| const canvas = document.getElementById('matrix-canvas'); | |
| const ctx = canvas.getContext('2d', { alpha: false }); |
fieldtheory (ft) is a CLI tool that syncs your X/Twitter bookmarks locally. Its built-in ft sync command reads cookies directly from Chrome — but that feature is macOS-only. On Linux you'll see:
Couldn't connect to your Chrome session.
This script is a drop-in workaround. It extracts the cookies from Chrome or Brave on Linux using the GNOME Secret Service (keyring), then calls fieldtheory's internal sync function directly.