diff options
| author | Jeff Carr <[email protected]> | 2025-03-22 08:30:15 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-03-22 08:30:15 -0500 |
| commit | 3dd6affd6fde2f0af23b35e7014ba59b6233320a (patch) | |
| tree | bf9eb38cb1072af2119c4c3c9d0acd797ed9a1cb /get_darwin.go | |
| parent | 57706020c1a01b16ff37ad4bb33aa4e80e327714 (diff) | |
more hostname thingsv0.0.2
Diffstat (limited to 'get_darwin.go')
| -rw-r--r-- | get_darwin.go | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/get_darwin.go b/get_darwin.go index 39cbe0a..f2183a4 100644 --- a/get_darwin.go +++ b/get_darwin.go @@ -1,10 +1,9 @@ package hostname -// functions to import and export the protobuf -// data to and from config files - import ( - "os" + "bytes" + "fmt" + "os/exec" ) // scutil --get HostName @@ -13,6 +12,17 @@ import ( // scutil --set HostName my-mac.example.com func osGetHostname() (string, error) { - hostname, err := os.Hostname() - return hostname, err + return scutil([]string{"-get", "HostName"}) +} + +// getDomainName executes the 'domainname' command and returns its output. +func scutil(args []string) (string, error) { + cmd := exec.Command("scutil", args) + var out bytes.Buffer + cmd.Stdout = &out + if err := cmd.Run(); err != nil { + return "", fmt.Errorf("failed to execute 'scutil': %w", err) + } + domain := out.String() + return domain, nil } |
