|
1 | 1 | # capsuleOS |
2 | 2 |
|
3 | | -> One-command macOS bootstrap. Built for me, shared for you. Working spaghetti beats perfect vaporware. |
| 3 | +> One-command macOS bootstrap. Built for me, shared for you. |
4 | 4 |
|
5 | 5 | ## What It Does |
6 | 6 |
|
7 | | -Bootstraps a complete macOS development environment with 100+ curated packages, dotfiles, and configurations. One command, eight minutes, done. |
8 | | - |
9 | | -**Installs:** |
10 | | - |
11 | | -- **Homebrew packages** |
12 | | -- **GUI apps** |
13 | | -- **Rust tools** |
14 | | -- **Dotfiles** |
15 | | -- **1Password integration** |
16 | | -- **macOS defaults** |
| 7 | +Complete macOS development environment: 100+ packages, dotfiles, GUI apps, Rust tools, 1Password integration, and system defaults. |
17 | 8 |
|
18 | 9 | ## Install |
19 | 10 |
|
20 | 11 | ```bash |
21 | | -bash <(curl -fsSL https://github.com/jpdck/capsuleOS/releases/download/latest/install.sh)> |
| 12 | +bash <(curl -fsSL https://github.com/jpdck/capsuleOS/releases/download/latest/install.sh) |
22 | 13 | ``` |
23 | 14 |
|
24 | | -That's it. Go make coffee. |
| 15 | +Idempotent. Re-run anytime to update packages and refresh dotfiles. |
25 | 16 |
|
26 | 17 | ## What Happens |
27 | 18 |
|
28 | | -1. Installs/updates Xcode Command Line Tools |
29 | | -2. Installs/updates Homebrew |
30 | | -3. Bundles packages from [Brewfile](Brewfile) |
31 | | -4. Connects to 1Password (you'll need a service token) |
32 | | -5. Imports SSH keys from your vault |
33 | | -6. Optionally configures macOS system settings |
34 | | -7. Clones this repo to `~/Projects/capsuleOS` |
35 | | -8. Symlinks dotfiles to your home directory |
36 | | -9. Installs Rust tools from [Cargofile](Cargofile) |
37 | | -10. Installs Amber framework |
38 | | - |
39 | | -## Debugging |
40 | | - |
41 | | -The installer outputs all progress to the terminal. To save a log for debugging: |
42 | | - |
43 | | -```bash |
44 | | -bash install.sh 2>&1 | tee install.log |
45 | | -``` |
46 | | - |
47 | | -Or with the one-liner: |
48 | | - |
49 | | -```bash |
50 | | -curl -fsSL https://github.com/jpdck/capsuleOS/releases/download/latest/install.sh | bash 2>&1 | tee install.log |
51 | | -``` |
| 19 | +1. Xcode Command Line Tools + Homebrew setup |
| 20 | +2. Bundles packages from [Brewfile](Brewfile) |
| 21 | +3. Connects to 1Password and imports SSH keys |
| 22 | +4. Applies macOS system settings (optional) |
| 23 | +5. Clones repo to `~/Projects/capsuleOS` |
| 24 | +6. Symlinks dotfiles via GNU Stow |
| 25 | +7. Sets up automated update schedule |
| 26 | +8. Installs Rust tools from [Cargofile](Cargofile) |
| 27 | +9. Installs Amber framework |
| 28 | +10. Installs Python packages via conda |
52 | 29 |
|
53 | | -This captures both stdout and stderr to `install.log` while showing output in real-time. |
54 | 30 |
|
55 | 31 | ## Requirements |
56 | 32 |
|
57 | 33 | - macOS (tested on Tahoe 26.2) |
58 | | -- Internet connection |
59 | | -- 1Password account (for SSH key import) |
| 34 | +- 1Password account with service token |
60 | 35 |
|
61 | 36 | ## Why Amber? |
62 | 37 |
|
63 | | -This installer is written in [Amber](https://amber-lang.com/) - a modern, typesafe language that transpiles to bash. You get readable source code ([Scripts/installer.ab](Scripts/installer.ab)) that compiles to portable bash ([Scripts/installer.sh](Scripts/installer.sh)). |
64 | | - |
65 | | -Run either version. They're identical. |
| 38 | +Written in [Amber](https://amber-lang.com/) (type-safe, transpiles to bash) because I love typed languages. |
66 | 39 |
|
67 | 40 | ## Customize |
68 | 41 |
|
69 | | -Fork it. Edit `Brewfile` and `Cargofile`. Change dotfiles in `dotfiles/`. Run the installer. That's the point. |
70 | | - |
71 | | -## Re-run Safely |
72 | | - |
73 | | -Idempotent. Run it again to update packages and refresh dotfiles. Won't break existing setups. |
74 | | - |
75 | | -## Build From Source |
76 | | - |
77 | | -```bash |
78 | | -# Install Amber |
79 | | -bash <(curl -sL "https://github.com/amber-lang/amber/releases/download/0.5.1-alpha/install.sh") |
80 | | - |
81 | | -# Build installer |
82 | | -cd Scripts |
83 | | -amber build installer.ab ../install.sh |
84 | | -``` |
85 | | - |
86 | | -## No Support |
87 | | - |
88 | | -This is a personal project. Use at your own risk. |
| 42 | +Fork it. Edit `Brewfile`, `Cargofile`, and `dotfiles/`. That's the point. |
89 | 43 |
|
90 | 44 | ## License |
91 | 45 |
|
|
0 commit comments