Monorepo for Aesthetic.Computer
aesthetic.computer
1#!/bin/sh
2set -eu
3
4# Remove any existing container named "aesthetic" to prevent rebuild conflicts
5docker rm -f aesthetic 2>/dev/null || true
6
7mkdir -p \
8 .devcontainer/tezos-node \
9 .devcontainer/tezos-data \
10 .devcontainer/envs \
11 .devcontainer/.emacs.d \
12 "$HOME/.claude" \
13 "$HOME/.codex"
14
15chmod 700 "$HOME/.claude" "$HOME/.codex" 2>/dev/null || true
16
17# Claude also keeps account metadata in ~/.claude.json.
18# Ensure the file exists before bind-mounting it into the container.
19if [ ! -f "$HOME/.claude.json" ]; then
20 : > "$HOME/.claude.json"
21fi
22chmod 600 "$HOME/.claude.json" 2>/dev/null || true
23
24# Normalize script readability/executability for container startup hooks.
25# Some host filesystems/checkouts can leave restrictive bits that cause
26# postStartCommand to fail with "Permission denied" inside the container.
27chmod 755 .devcontainer .devcontainer/scripts 2>/dev/null || true
28chmod 755 .devcontainer/scripts/poststart-wrapper.sh 2>/dev/null || true
29
30if [ ! -f .devcontainer/fish_history ]; then
31 : > .devcontainer/fish_history
32fi