treewide: add license header and enable haslicense linter

Change-Id: I873a8d4082d75e8f813d8a726a41187eea7a065e
Reviewed-on: https://review.monogon.dev/c/monogon/+/3825
Tested-by: Jenkins CI
Reviewed-by: Leopold Schabel <leo@monogon.tech>
diff --git a/osbase/nvme/cmd_linux.go b/osbase/nvme/cmd_linux.go
index 96054ff..0fd45dd 100644
--- a/osbase/nvme/cmd_linux.go
+++ b/osbase/nvme/cmd_linux.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 //go:build linux
 
 package nvme
diff --git a/osbase/nvme/cmd_unsupported.go b/osbase/nvme/cmd_unsupported.go
index 747a33d..cd2ab08 100644
--- a/osbase/nvme/cmd_unsupported.go
+++ b/osbase/nvme/cmd_unsupported.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 //go:build !linux
 
 package nvme
diff --git a/osbase/nvme/error.go b/osbase/nvme/error.go
index 8c4a207..a2a60d0 100644
--- a/osbase/nvme/error.go
+++ b/osbase/nvme/error.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 import "fmt"
diff --git a/osbase/nvme/format.go b/osbase/nvme/format.go
index 8bde44a..703daad 100644
--- a/osbase/nvme/format.go
+++ b/osbase/nvme/format.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 // SecureEraseType specifices what type of secure erase should be performed by
diff --git a/osbase/nvme/health.go b/osbase/nvme/health.go
index 775742f..929c307 100644
--- a/osbase/nvme/health.go
+++ b/osbase/nvme/health.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 import (
diff --git a/osbase/nvme/identify.go b/osbase/nvme/identify.go
index 218d089..8e15a3f 100644
--- a/osbase/nvme/identify.go
+++ b/osbase/nvme/identify.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 import (
diff --git a/osbase/nvme/nvme.go b/osbase/nvme/nvme.go
index f46546d..f8573e2 100644
--- a/osbase/nvme/nvme.go
+++ b/osbase/nvme/nvme.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 // Package nvme provides methods and data structures for issuing commands to
 // device speaking the NVMe protocol.
 // This package is written against the NVMe Specification Revision 1.3 and
diff --git a/osbase/nvme/selftest.go b/osbase/nvme/selftest.go
index 8f46995..ad2bb9b 100644
--- a/osbase/nvme/selftest.go
+++ b/osbase/nvme/selftest.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 import (
diff --git a/osbase/nvme/struct_test.go b/osbase/nvme/struct_test.go
index b26a48e..9741664 100644
--- a/osbase/nvme/struct_test.go
+++ b/osbase/nvme/struct_test.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 import (
diff --git a/osbase/nvme/uint128le.go b/osbase/nvme/uint128le.go
index a25adb7..3b98f7d 100644
--- a/osbase/nvme/uint128le.go
+++ b/osbase/nvme/uint128le.go
@@ -1,3 +1,6 @@
+// Copyright The Monogon Project Authors.
+// SPDX-License-Identifier: Apache-2.0
+
 package nvme
 
 import (