---
Date: 2026-07-13
Author: Hermes
Tags: [project, bibleverse, pi, imac, screensaver, gitea]
---

# BibleVerse Pi / iMac - Tactility replica

Replicated `Apps/BibleVerse` from `git.reynafamily.com/adolforeyna/tactility_apps` (v6 2142871 editorial - Georgia Italic serif, 15px lift, menu auto-show 10s, animated book picker, no black bar).

## Pi project

`~/Projects/BibleVersePi/` - Python + pygame Linux replica, maximized auto-fit
- Bible: `bible/` 66 bin/idx + books.json WEB 31094 verses, same format as Tactility C app
- Auto-fit: binary search biggest font that fills 92%w x 88%h; Jesus wept 110pt, Genesis 1:1 67pt, mid 45-55pt (previously fixed tiers)
- UX: 1 verse fullscreen, 60s auto-advance, tap toggles chrome, 10s auto-hide, fade 220/300ms, highlight star -> favorites, book picker swipe dial animated
- Run: `./run.sh` windowed, `./run.sh --fullscreen` Pi immersive
- Persistence: `~/.local/share/bibleverse-pi/progress.txt` + `favorites.txt` same as Tactility

Autostart:
- `~/.config/autostart/bibleverse-pi.desktop` - GNOME autostart fullscreen 5s delay
- `~/.config/systemd/user/bibleverse-pi.service` - enabled, After=graphical-session.target, ExecStartPre sleep 5, Restart on-failure
- `~/bin/bibleverse-pi` not needed, using run.sh wrapper handling DISPLAY/WAYLAND/XAUTH

## iMac screensaver replacement

Replaces `~/.local/share/screensaver.html` (clock + news ticker - backup `screensaver.html.bak.clock_20260713_141309`) with maximized BibleVerse HTML version.

- `~/.local/share/screensaver.html` - 17KB HTML, maximized auto-fit JS, same UX as Pi, 92vw x 88vh, EB Garamond Google Font + Liberation fallback, particles subtle
- `~/.local/share/bible_verses.js` - 4.9MB WEB 31094 verses pre-built from Pi bible .bin/.idx via /tmp/build_bible_js.py
- `~/bin/bibleverse-kiosk.sh` - wrapper handling XAUTH=mutter file, DISPLAY=:0, WAYLAND=wayland-0, --kiosk chrome --user-data-dir=...screensaver
- `~/.config/autostart/bibleverse-screensaver.desktop` - Exec=~/bin/bibleverse-kiosk.sh, replaces old clock screensaver autostart (old one had no desktop file, was bare chrome process)
- Live: PID 433825 2026-07-13 2560x1440 iMac primary, GPU wayland --render-node-override, restart via `~/bin/bibleverse-kiosk.sh --restart`

Controls same both platforms: tap/click toggles chrome (X close, ☰ books, ◀ Prev, ❚❚/▶ Play/Pause, ▶ Next, ☆/★ Fav), B book picker, ← → Space, F fav, wheel, drag/swipe in picker, slider.

To restore old clock screensaver: `cp ~/.local/share/screensaver.html.bak.clock_* ~/.local/share/screensaver.html && ~/bin/bibleverse-kiosk.sh --restart`

## Future

- iMac font: now uses EB Garamond via Google Fonts (closest to Georgia Italic), falls back to Liberation Serif - can embed real Georgia if licensed
- Pi windowed 1024x576+ but can go 1280x800 for iMac dev same code
- To sync progress between Pi and iMac: could use brain or Nextcloud shared file - currently local per device
