Files
pmg/internal/alias/zsh.go
T
Abhisek DattaandGitHub b15ce33fe4 fix: MacOS MDM based Deployment (#277)
* fix: MacOS MDM deployment script

* fix: Handle shell alias for bash on macos

* fix: Code review fixes

* fix: Code review fixes

* feat: Add support for global config file

* feat: Add support for global config file

* fix: Code review fixes

* fix: Avoid blocking CLI for analytics flush
2026-05-21 14:32:30 +05:30

33 lines
735 B
Go

package alias
import "path/filepath"
type zshShell struct{}
var _ Shell = &zshShell{}
func NewZshShell() (*zshShell, error) {
return &zshShell{}, nil
}
func (z zshShell) Source(rcPath string) string {
return defaultShellSource(rcPath)
}
func (z zshShell) PathExport(binDir string) string {
return defaultPathExport(binDir)
}
func (z zshShell) Name() string {
return "zsh"
}
// zsh reads .zshrc for every interactive shell, login or not, so one file covers it.
func (z zshShell) CandidateRcFiles(homeDir string) []string {
return []string{filepath.Join(homeDir, ".zshrc")}
}
func (z zshShell) InstallRcFiles(homeDir string, create bool) ([]string, error) {
return singleRcFile(filepath.Join(homeDir, ".zshrc"), create)
}