diff --git a/README.md b/README.md index 77fe0b96eb78e3d6ccd4470e0d64714808a60efd..68b6bfe69402c6b4e482c3fdf78e81158dc1702b 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Soft Serve Build Status

-A tasty, self-hosted Git server for the command line. 🍦 +A tasty, self-hostable Git server for the command line. 🍦 Soft Serve screencast diff --git a/main.go b/main.go index f6052c285da945e926d99b911beb1fdf4799118a..b9a702bc723f77557b4be84e34e43597114f52f9 100644 --- a/main.go +++ b/main.go @@ -1,13 +1,42 @@ package main import ( + "flag" + "fmt" "log" + "os" "github.com/charmbracelet/soft/config" "github.com/charmbracelet/soft/server" ) +var ( + Version = "" + CommitSHA = "" + + version = flag.Bool("version", false, "display version") +) + func main() { + flag.Parse() + + if *version { + if len(CommitSHA) > 7 { + CommitSHA = CommitSHA[:7] + } + if Version == "" { + Version = "(built from source)" + } + + fmt.Printf("Soft Serve %s", Version) + if len(CommitSHA) > 0 { + fmt.Printf(" (%s)", CommitSHA) + } + + fmt.Println() + os.Exit(0) + } + cfg := config.DefaultConfig() s := server.NewServer(cfg) log.Printf("Starting SSH server on %s:%d\n", cfg.Host, cfg.Port)