-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.sh
More file actions
executable file
·64 lines (57 loc) · 2.01 KB
/
setup.sh
File metadata and controls
executable file
·64 lines (57 loc) · 2.01 KB
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
54
55
56
57
58
59
60
61
62
63
64
#!/usr/bin/env bash
# SPDX-License-Identifier: PMPL-1.0-or-later
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath)
#
# Affinescriptiser — Universal Setup Script
# Detects platform and shell, installs just, then hands off to Justfile.
set -euo pipefail
echo "═══════════════════════════════════════════════════"
echo " Affinescriptiser — Setup"
echo "═══════════════════════════════════════════════════"
echo ""
# Platform detection
OS="$(uname -s)"
ARCH="$(uname -m)"
echo "Platform: $OS $ARCH"
# Shell detection
CURRENT_SHELL="$(basename "$SHELL" 2>/dev/null || echo "unknown")"
echo "Shell: $CURRENT_SHELL"
echo ""
# Check for just
if ! command -v just >/dev/null 2>&1; then
echo "just (command runner) is required but not installed."
echo ""
case "$OS" in
Linux)
if command -v cargo >/dev/null 2>&1; then
echo "Installing just via cargo..."
cargo install just
elif command -v brew >/dev/null 2>&1; then
echo "Installing just via Homebrew..."
brew install just
else
echo "Install just from: https://just.systems/man/en/installation.html"
exit 1
fi
;;
Darwin)
if command -v brew >/dev/null 2>&1; then
echo "Installing just via Homebrew..."
brew install just
else
echo "Install Homebrew first: https://brew.sh"
echo "Then: brew install just"
exit 1
fi
;;
*)
echo "Install just from: https://just.systems/man/en/installation.html"
exit 1
;;
esac
echo ""
fi
echo "Running diagnostics..."
just doctor
echo ""
echo "Setup complete. Run 'just help-me' for common workflows."