From e7ac7ce843f0c6cdd10f8e95479720f72d5c3f0c Mon Sep 17 00:00:00 2001 From: TorchedSammy <38820196+TorchedSammy@users.noreply.github.com> Date: Wed, 2 Mar 2022 19:11:57 -0400 Subject: [PATCH] feat: add hilbish.os interface (closes #94) --- api.go | 10 ++++++++++ go.mod | 1 + go.sum | 2 ++ 3 files changed, 13 insertions(+) diff --git a/api.go b/api.go index cddd034..20aa591 100644 --- a/api.go +++ b/api.go @@ -16,6 +16,7 @@ import ( "github.com/yuin/gopher-lua" "github.com/maxlandon/readline" + "github.com/blackfireio/osinfo" "mvdan.cc/sh/v3/interp" ) @@ -71,6 +72,15 @@ The nice lil shell for {blue}Lua{reset} fanatics! util.SetField(L, hshuser, "data", lua.LString(userDataDir), "XDG data directory") util.Document(L, hshuser, "User directories to store configs and/or modules.") L.SetField(mod, "userDir", hshuser) + + hshos := L.NewTable() + info, _ := osinfo.GetOSInfo() + + util.SetField(L, hshos, "family", lua.LString(info.Family), "Family name of the current OS") + util.SetField(L, hshos, "name", lua.LString(info.Name), "Pretty name of the current OS") + util.SetField(L, hshos, "version", lua.LString(info.Version), "Version of the current OS") + util.Document(L, hshos, "OS info interface") + L.SetField(mod, "os", hshos) // hilbish.aliases table aliases = NewAliases() diff --git a/go.mod b/go.mod index 02f6bc6..b29aa97 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,7 @@ module hilbish go 1.16 require ( + github.com/blackfireio/osinfo v1.0.3 github.com/chuckpreslar/emission v0.0.0-20170206194824-a7ddd980baf9 github.com/maxlandon/readline v0.1.0-beta.0.20211027085530-2b76cabb8036 github.com/pborman/getopt v1.1.0 diff --git a/go.sum b/go.sum index 483de90..2501eca 100644 --- a/go.sum +++ b/go.sum @@ -8,6 +8,8 @@ github.com/Rosettea/sh/v3 v3.4.0-0.dev.0.20211022004519-f67a49cb50f5 h1:ygwVRX8g github.com/Rosettea/sh/v3 v3.4.0-0.dev.0.20211022004519-f67a49cb50f5/go.mod h1:R09vh/04ILvP2Gj8/Z9Jd0Dh0ZIvaucowMEs6abQpWs= github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d h1:licZJFw2RwpHMqeKTCYkitsPqHNxTmd4SNR5r94FGM8= github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d/go.mod h1:asat636LX7Bqt5lYEZ27JNDcqxfjdBQuJ/MM4CN/Lzo= +github.com/blackfireio/osinfo v1.0.3 h1:Yk2t2GTPjBcESv6nDSWZKO87bGMQgO+Hi9OoXPpxX8c= +github.com/blackfireio/osinfo v1.0.3/go.mod h1:Pd987poVNmd5Wsx6PRPw4+w7kLlf9iJxoRKPtPAjOrA= github.com/chuckpreslar/emission v0.0.0-20170206194824-a7ddd980baf9 h1:xz6Nv3zcwO2Lila35hcb0QloCQsc38Al13RNEzWRpX4= github.com/chuckpreslar/emission v0.0.0-20170206194824-a7ddd980baf9/go.mod h1:2wSM9zJkl1UQEFZgSd68NfCgRz1VL1jzy/RjCg+ULrs= github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI=