Here’s a complete workflow to automatically apply your own protections to files via CI Workflow.
# Save the script as protect-files.sh
chmod +x protect-files.sh| #!/usr/bin/env bash | |
| set -euo pipefail | |
| # ─── Variables (override via environment) ───────────────────────────────────── | |
| RUNNER_USER="${RUNNER_USER:-$USER}" | |
| RUNNER_NAME="${RUNNER_NAME:-repo-runner-ephemeral}" | |
| RUNNER_LABELS="${RUNNER_LABELS:-repo=default,arch=$(uname -m),role=ci,ephemeral}" | |
| RUNNER_ID="${RUNNER_ID:-default}" # used in paths and service name | |
| RUNNER_ROOT="${RUNNER_ROOT:-/opt/actions-runner/$RUNNER_ID}" | |
| RUNNER_WORK="${RUNNER_WORK:-/home/$RUNNER_USER/actions-work/$RUNNER_ID}" |
| #!/bin/bash | |
| # Enhanced file finder script with fzf integration | |
| # Save to /usr/local/bin/f and make executable with: chmod +x /usr/local/bin/f | |
| # Process arguments | |
| depth="" | |
| num_regex='^[0-9]+$' | |
| extensions=() | |
| copy_to_clipboard=true | |
| max_depth="" |
| #!/usr/bin/env bash | |
| # Autostart tiler: Chromium (LEFT -> $URL) + terminal (RIGHT -> tmux attach to "recent" + optional follow-up) | |
| # - If a tmux session exists, attach to the most-recent one by default. | |
| # - Optionally inject a FOLLOWUP_CMD into that tmux session as a new window or split. | |
| # - Falls back to plain shell if no tmux sessions exist. | |
| # - Preserves your original tiling logic. | |
| set -euo pipefail | |
| # ---------------- config ---------------- |
| ##### dce example output ##### | |
| ## Select a service: | |
| ## 1) video-api | |
| ## 2) video-web | |
| ## ?# 1 | |
| ## Connecting to service: video-api | |
| ############################## | |
| unalias dce | |
| # V1: Docker Compose Exec with built-in service selectiondce() { |
| """ | |
| Move each finished recording to a UNC share. | |
| OBS ▶ Tools ▸ Scripts ▸ + ▸ select this file | |
| --------------------------------------------------------- | |
| • Works with Simple or Advanced output mode. | |
| • No change to your regular Recording Path is required; | |
| in fact, keeping it on a local SSD makes the initial write faster. | |
| --------------------------------------------------------- | |
| Tested with Python 3.11 + OBS 30. |
To Update Drivers:
| docker run --rm -i -v "$PWD":/w linuxserver/blender:4.4.3 \ | |
| blender --factory-startup -b --python - <<'PY' | |
| import bpy, math, os | |
| vid = "/w/phone_screen.mp4" # <<< your vertical video | |
| assert os.path.exists(vid), "Video missing" | |
| # ------------------------------------------------------ build objects | |
| bpy.ops.mesh.primitive_plane_add(size=2) | |
| plane = bpy.context.object |
| # /scripts/two_cam_auto_vfx.py | |
| """ | |
| Two-Camera VFX Auto-Rig -- Audio-Sync, Insta360-aware Edition | |
| ───────────────────────────────────────────────────────────────────────────── | |
| • Imports hero + witness plates | |
| • Automatically aligns them via audio-waveform cross-correlation | |
| • Auto-detects FPS, resolution & 360⇆rectilinear | |
| • Injects missing XMP → always pano-aware | |
| • Tracks witness plate on a seeded grid, iteratively cleans & re-solves | |
| • Builds RigRoot ▶ WitnessCam ▶ HeroCam hierarchy |
A comprehensive system for capturing NDI streams, recording them, and processing with MoviePy for professional video production workflows.
# Install required packages
!pip install ndi-python opencv-python ipywidgets moviepy numpy pillow
# Note: Ensure NDI SDK/Runtime is installed on your system