pondorasti 0.1.40 → 0.1.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/commands/bootstrap.ts +34 -12
package/package.json
CHANGED
|
@@ -13,6 +13,18 @@ import { OhMyZsh } from "../tools/ohmyzsh"
|
|
|
13
13
|
// Bootstrap Command - Bootstraps a fresh machine
|
|
14
14
|
// -------------------------------------------------------------------------------------------------------------------
|
|
15
15
|
|
|
16
|
+
const installGhosttyTerminfo = async () => {
|
|
17
|
+
const terminfoDir = "/Applications/Ghostty.app/Contents/Resources/terminfo"
|
|
18
|
+
|
|
19
|
+
if (!fs.existsSync(terminfoDir)) {
|
|
20
|
+
console.log(" \x1b[90m✓ Ghostty terminfo source not found (skipped)\x1b[0m")
|
|
21
|
+
return
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
await $`infocmp -x -A ${terminfoDir} xterm-ghostty`.pipe($`tic -x -`)
|
|
25
|
+
console.log(" \x1b[32m✓\x1b[0m Ghostty terminfo installed")
|
|
26
|
+
}
|
|
27
|
+
|
|
16
28
|
const bootstrapCommand: CommandModule = {
|
|
17
29
|
command: "bootstrap",
|
|
18
30
|
describe: "Bootstrap a fresh machine with all tools and packages",
|
|
@@ -21,14 +33,14 @@ const bootstrapCommand: CommandModule = {
|
|
|
21
33
|
|
|
22
34
|
// Step 1: Clear Dock
|
|
23
35
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
24
|
-
console.log("Step 1/
|
|
36
|
+
console.log("Step 1/9: Clear Dock")
|
|
25
37
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
26
38
|
Dock.clear()
|
|
27
39
|
console.log("✓ Dock cleared")
|
|
28
40
|
|
|
29
41
|
// Step 2: Install Oh My Zsh
|
|
30
42
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
31
|
-
console.log("Step 2/
|
|
43
|
+
console.log("Step 2/9: Oh My Zsh")
|
|
32
44
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
33
45
|
try {
|
|
34
46
|
await OhMyZsh.install()
|
|
@@ -39,7 +51,7 @@ const bootstrapCommand: CommandModule = {
|
|
|
39
51
|
|
|
40
52
|
// Step 3: Install Homebrew
|
|
41
53
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
42
|
-
console.log("Step 3/
|
|
54
|
+
console.log("Step 3/9: Homebrew")
|
|
43
55
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
44
56
|
try {
|
|
45
57
|
await Homebrew.install()
|
|
@@ -50,7 +62,7 @@ const bootstrapCommand: CommandModule = {
|
|
|
50
62
|
|
|
51
63
|
// Step 4: Install packages from Brewfile
|
|
52
64
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
53
|
-
console.log("Step 4/
|
|
65
|
+
console.log("Step 4/9: Install Packages (Brewfile)")
|
|
54
66
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
55
67
|
try {
|
|
56
68
|
await Homebrew.bundle()
|
|
@@ -59,11 +71,21 @@ const bootstrapCommand: CommandModule = {
|
|
|
59
71
|
process.exit(1)
|
|
60
72
|
}
|
|
61
73
|
|
|
62
|
-
// Step 5:
|
|
74
|
+
// Step 5: Install Ghostty terminfo
|
|
75
|
+
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
76
|
+
console.log("Step 5/9: Ghostty Terminfo")
|
|
77
|
+
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
78
|
+
try {
|
|
79
|
+
await installGhosttyTerminfo()
|
|
80
|
+
} catch (error) {
|
|
81
|
+
console.log(" \x1b[33m!\x1b[0m Failed to install Ghostty terminfo (skipped)")
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// Step 6: Clone repo
|
|
63
85
|
const repoDir = path.join(os.homedir(), "repos", "pondorasti", "pondorasti")
|
|
64
86
|
const cliDir = path.join(repoDir, "packages", "cli")
|
|
65
87
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
66
|
-
console.log("Step
|
|
88
|
+
console.log("Step 6/9: Clone Repository")
|
|
67
89
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
68
90
|
try {
|
|
69
91
|
if (!fs.existsSync(repoDir)) {
|
|
@@ -80,9 +102,9 @@ const bootstrapCommand: CommandModule = {
|
|
|
80
102
|
process.exit(1)
|
|
81
103
|
}
|
|
82
104
|
|
|
83
|
-
// Step
|
|
105
|
+
// Step 7: Link dotfiles (from cloned repo)
|
|
84
106
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
85
|
-
console.log("Step
|
|
107
|
+
console.log("Step 7/9: Link Dotfiles")
|
|
86
108
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
87
109
|
try {
|
|
88
110
|
Dotfiles.basePath = path.join(cliDir, "dotfiles")
|
|
@@ -92,9 +114,9 @@ const bootstrapCommand: CommandModule = {
|
|
|
92
114
|
process.exit(1)
|
|
93
115
|
}
|
|
94
116
|
|
|
95
|
-
// Step
|
|
117
|
+
// Step 8: Apply macOS defaults
|
|
96
118
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
97
|
-
console.log("Step
|
|
119
|
+
console.log("Step 8/9: Apply macOS Defaults")
|
|
98
120
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
99
121
|
try {
|
|
100
122
|
const result = Defaults.apply()
|
|
@@ -112,9 +134,9 @@ const bootstrapCommand: CommandModule = {
|
|
|
112
134
|
process.exit(1)
|
|
113
135
|
}
|
|
114
136
|
|
|
115
|
-
// Step
|
|
137
|
+
// Step 9: Link pd from source
|
|
116
138
|
console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
117
|
-
console.log("Step
|
|
139
|
+
console.log("Step 9/9: Link pd from source")
|
|
118
140
|
console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")
|
|
119
141
|
try {
|
|
120
142
|
console.log("Running bun link...")
|