This commit is contained in:
2026-05-31 10:33:57 -04:00
parent a93fa2f61f
commit b78cc02d5c
4 changed files with 42 additions and 89 deletions

View File

@@ -8,10 +8,10 @@ import (
"lash/internal/app"
"lash/internal/errx"
share "lash/internal/shareLink"
"net"
"net/http"
"os"
"github.com/hashicorp/mdns"
"github.com/grandcat/zeroconf"
)
var versionFlag = flag.Bool("version", false, "Print out version and exit.")
@@ -38,19 +38,27 @@ func main() {
Handler: srv,
}
info := []string{"lash"}
service, err := mdns.NewMDNSService("lash", "__foobar.__tcp", "", "", *port, []net.IP{net.ParseIP(share.GetLocalIP())}, info)
host, err := os.Hostname()
if err != nil {
errx.FatalPerror(err)
}
mdns_server, err := mdns.NewServer(&mdns.Config{Zone: service})
defer mdns_server.Shutdown()
zeroServer, err := zeroconf.Register(
host,
"_http._tcp",
"local.",
*port,
[]string{"path=/"},
nil,
)
defer zeroServer.Shutdown()
if err != nil {
errx.FatalPerror(err)
}
// TODO(vxc): Make this more portable
errx.Log("Your share link is http://%s.local:%d", host, *port)
errx.Log("Your share link is %s", share.GenerateShareLink(*port))
errx.Log("Your token is \033[1;92m%s\033[0m", lash.Token)
errx.Log("starting server at http://0.0.0.0:%d", *port)