From 7e95b3501dcf8239e59c9cf6607ff67968d08b65 Mon Sep 17 00:00:00 2001
From: Eugen <negbie@posteo.de>
Date: Wed, 1 Dec 2021 19:32:47 +0100
Subject: [PATCH] Ignoe derp.yaml, don't panic in Serve()

---
 .gitignore | 1 +
 app.go     | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/.gitignore b/.gitignore
index 610550b9..ddec49c0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,6 +17,7 @@
 /headscale
 config.json
 config.yaml
+derp.yaml
 *.key
 /db.sqlite
 *.sqlite3
diff --git a/app.go b/app.go
index db788908..0fe65761 100644
--- a/app.go
+++ b/app.go
@@ -418,12 +418,12 @@ func (h *Headscale) Serve() error {
 
 	err = h.ensureUnixSocketIsAbsent()
 	if err != nil {
-		panic(err)
+		return err
 	}
 
 	socketListener, err := net.Listen("unix", h.cfg.UnixSocket)
 	if err != nil {
-		panic(err)
+		return err
 	}
 
 	// Handle common process-killing signals so we can gracefully shut down:
@@ -441,7 +441,7 @@ func (h *Headscale) Serve() error {
 
 	networkListener, err := net.Listen("tcp", h.cfg.Addr)
 	if err != nil {
-		panic(err)
+		return err
 	}
 
 	// Create the cmux object that will multiplex 2 protocols on the same port.