@@ -34,6 +34,7 @@ def setUp(self):
3434 self .fish_log = self .logs_dir / "fish.log"
3535 self .fisher_log = self .logs_dir / "fisher.log"
3636 self .brew_log = self .logs_dir / "brew.log"
37+ self .duti_log = self .logs_dir / "duti.log"
3738
3839 self .write_stub (
3940 "sudo" ,
@@ -93,6 +94,13 @@ def setUp(self):
9394 esac
9495done
9596
97+ exit 0
98+ """ ,
99+ )
100+ self .write_stub (
101+ "duti" ,
102+ """#!/bin/bash
103+ printf '%s\n ' \" $*\" >> \" $FAKE_DUTI_LOG\"
96104exit 0
97105""" ,
98106 )
@@ -107,6 +115,7 @@ def setUp(self):
107115 "FAKE_FISHER_LOG" : str (self .fisher_log ),
108116 "FAKE_BREW_LOG" : str (self .brew_log ),
109117 "FAKE_SUDO_LOG" : str (self .sudo_log ),
118+ "FAKE_DUTI_LOG" : str (self .duti_log ),
110119 }
111120 )
112121
@@ -183,7 +192,7 @@ def snapshot_managed_repo(self) -> dict[str, tuple[str, str | None]]:
183192 "fish" ,
184193 "claude" ,
185194 "opencode" ,
186- "warp " ,
195+ "ghostty " ,
187196 "codex" ,
188197 "factory" ,
189198 "fisher" ,
@@ -400,13 +409,15 @@ def test_starship_creates_first_run_destination(self):
400409 self .assertEqual (starship_result .returncode , 0 , msg = starship_result .stderr )
401410 self .assertTrue ((self .home / ".config" / "starship.toml" ).exists ())
402411
403- def test_warp_setup_restores_settings_and_tab_configs (self ):
404- result = self .run_cmd ("bash" , "warp /setup.sh" )
412+ def test_ghostty_setup_restores_config_and_sets_default_terminal (self ):
413+ result = self .run_cmd ("bash" , "ghostty /setup.sh" )
405414
406415 self .assertEqual (result .returncode , 0 , msg = result .stderr )
407- self .assertTrue ((self .home / ".warp" / "settings.toml" ).exists ())
408- self .assertTrue (
409- (self .home / ".warp" / "default_tab_configs" / "worktree.toml" ).exists ()
416+ self .assertTrue ((self .home / ".config" / "ghostty" / "config" ).exists ())
417+ self .assertTrue (self .duti_log .exists ())
418+ self .assertIn (
419+ "com.mitchellh.ghostty" ,
420+ self .duti_log .read_text (encoding = "utf-8" ),
410421 )
411422
412423 def test_codex_setup_seeds_config_when_absent_and_preserves_existing (self ):
@@ -497,16 +508,13 @@ def test_update_backs_up_curated_opencode_files(self):
497508 self .assertTrue ((self .fixture / "opencode" / "dcp.jsonc" ).exists ())
498509 self .assertTrue ((self .fixture / "opencode" / "prompts" / "custom.md" ).exists ())
499510
500- def test_update_backs_up_warp_config (self ):
511+ def test_update_backs_up_ghostty_config (self ):
501512 self .seed_update_sources ()
502513
503514 result = self .run_cmd ("bash" , "update.sh" )
504515
505516 self .assertEqual (result .returncode , 0 , msg = result .stderr )
506- self .assertTrue ((self .fixture / "warp" / "settings.toml" ).exists ())
507- self .assertTrue (
508- (self .fixture / "warp" / "default_tab_configs" / "worktree.toml" ).exists ()
509- )
517+ self .assertTrue ((self .fixture / "ghostty" / "config" ).exists ())
510518
511519 def test_update_strips_codex_project_paths (self ):
512520 self .seed_update_sources ()
@@ -893,11 +901,8 @@ def seed_update_sources(self) -> None:
893901 )
894902 self .write_file (opencode_dir / "prompts" / "custom.md" , "prompt\n " )
895903
896- warp_dir = self .home / ".warp"
897- self .write_file (warp_dir / "settings.toml" , "[appearance]\n font_size = 13.0\n " )
898- self .write_file (
899- warp_dir / "default_tab_configs" / "worktree.toml" , 'name = "Worktree"\n '
900- )
904+ ghostty_dir = self .home / ".config" / "ghostty"
905+ self .write_file (ghostty_dir / "config" , "theme = GitHub Dark\n " )
901906
902907 codex_dir = self .home / ".codex"
903908 self .write_file (
0 commit comments