File size: 1,573 Bytes
3a20c66
 
 
 
a1288b3
3a20c66
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/env bash
set -euo pipefail

EXT_ID="___PASTE_YOUR_CHROME_ID___"   # e.g. jmifplpjgpagacdfibjkjcckibkjdjel
PKG="https://github.com/zk1tty/rebrowse-app/releases/download/v0.1/rebrowse_host-0.1.0-py3-none-any.whl"
# or: git+https://github.com/zk1tty/rebrowse-app#subdirectory=native_host

log(){ printf "\033[1;32m▶ %s\033[0m\n" "$1"; }

# 1. Python check
if ! command -v python3 >/dev/null; then
  echo "❌ Python 3 not found. Install it first."; exit 1; fi
PYV=$(python3 - <<'EOF' 'import sys,platform,os; print(".".join(map(str,sys.version_info[:3])))' EOF)
log "Python $PYV found"

# 2. pipx
if ! command -v pipx >/dev/null; then
  log "Installing pipx"
  python3 -m pip install --user --upgrade pipx
  python3 -m pipx ensurepath
  export PATH="$HOME/.local/bin:$PATH"
fi

# 3. rebrowse-host venv
if ! pipx list | grep -q rebrowse-host; then
  log "Installing $PKG via pipx"
  pipx install --force "$PKG"
else
  log "rebrowse-host already installed ➜ upgrading"
  pipx upgrade rebrowse-host
fi

HOST_PATH="$(pipx list | awk '/rebrowse-host/ {print $NF}')/bin/rebrowse-host"

# 4. Native-Messaging manifest
MAN_DIR="$HOME/.config/google-chrome/NativeMessagingHosts"
mkdir -p "$MAN_DIR"
MAN_FILE="$MAN_DIR/rebrowse_host.json"
cat >"$MAN_FILE" <<JSON
{
  "name": "rebrowse_host",
  "description": "Rebrowse native host",
  "path": "$HOST_PATH",
  "type": "stdio",
  "allowed_origins": [
    "chrome-extension://$EXT_ID/"
  ]
}
JSON
log "Manifest written to $MAN_FILE"

echo -e "\n✅  Installation complete!  Reload the Chrome extension and start recording."