feat: fixes install dependencies to use texlive

This commit is contained in:
2024-12-12 17:01:56 -05:00
parent 2b265a4ca5
commit a480e942bc
3 changed files with 25 additions and 9 deletions

View File

@@ -23,14 +23,18 @@ public extension CliClient {
try await runCommand(quiet: quiet, shell: shell, args)
}
func installDependencies() async throws {
func installDependencies(
quiet: Bool = false,
shell: String? = nil
) async throws {
guard let url = Bundle.module.url(forResource: "Brewfile", withExtension: nil) else {
throw CliClientError.brewfileNotFound
}
try await runCommand(
quiet: false,
shell: .zsh(useDashC: true),
"brew", "bundle", "--file", url.cleanFilePath
quiet: quiet,
shell: shell.orDefault,
"brew", "bundle",
"--file", url.cleanFilePath
)
}

View File

@@ -1,4 +1,4 @@
brew "ansible"
brew "imagemagick"
cask "mactex-no-gui"
brew "pandoc"
brew "texlive"

View File

@@ -10,14 +10,26 @@ struct InstallDependenciesCommand: AsyncParsableCommand {
commandName: commandName,
abstract: createAbstract("Ensure required dependencies are installed"),
discussion: Discussion {
VStack {
Note {
"Homebrew is required to install dependencies."
}
HStack {
"See Also:".yellow.bold.underline
"https://brew.sh"
}
}
.separator(.newLine(count: 2))
}
)
func run() async throws {
@OptionGroup var globals: BasicGlobalOptions
mutating func run() async throws {
@Dependency(\.cliClient) var cliClient
try await cliClient.installDependencies()
try await cliClient.installDependencies(
quiet: globals.quiet,
shell: globals.shell
)
}
}