1package main
2
3import (
4 "flag"
5 "fmt"
6 "log"
7 "os"
8
9 "github.com/charmbracelet/soft/config"
10 "github.com/charmbracelet/soft/server"
11)
12
13var (
14 Version = ""
15 CommitSHA = ""
16
17 version = flag.Bool("version", false, "display version")
18)
19
20func main() {
21 flag.Parse()
22
23 if *version {
24 if len(CommitSHA) > 7 {
25 CommitSHA = CommitSHA[:7]
26 }
27 if Version == "" {
28 Version = "(built from source)"
29 }
30
31 fmt.Printf("Soft Serve %s", Version)
32 if len(CommitSHA) > 0 {
33 fmt.Printf(" (%s)", CommitSHA)
34 }
35
36 fmt.Println()
37 os.Exit(0)
38 }
39
40 cfg := config.DefaultConfig()
41 s := server.NewServer(cfg)
42 log.Printf("Starting SSH server on %s:%d\n", cfg.Host, cfg.Port)
43 err := s.Start()
44 if err != nil {
45 log.Fatalln(err)
46 }
47}