diff --git a/.gitignore b/.gitignore
index 2d06fe7a0c9da7fcff24447cc9d9ec161d08a2e6..fcf65cac065f44887c89661e4e879ae86688c591 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,6 @@
+# SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+# SPDX-License-Identifier: MIT
+
 *.swp
 *~
 ncdu.1
diff --git a/COPYING b/COPYING
deleted file mode 100644
index 2ff764f6669855608572d02805d805ee786e96df..0000000000000000000000000000000000000000
--- a/COPYING
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2007-2021 Yoran Heling
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/ChangeLog b/ChangeLog
index dcb02cb02242247d61b8c1d7cd8e5d65d0650896..dfac751cd3f49e6f02d3a3b2aafb95175b4a7773 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+# SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+# SPDX-License-Identifier: MIT
+
 1.15.1 - 2020-06-10
 	- (Linux) Fix build on older Linux systems (Christian Göttsche)
 	- (MacOS) Revert "Exclude firmlinks by default" behavior (until we have a better solution)
diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2071b23b0e08594ea6bc99ac71129ef992abf498
--- /dev/null
+++ b/LICENSES/MIT.txt
@@ -0,0 +1,9 @@
+MIT License
+
+Copyright (c) <year> <copyright holders>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/Makefile b/Makefile
index fcea0f815e9a58aa36b59d35baf01afe63e212e0..69660464010809b63d24f00bc472e712d0fc34e7 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,6 @@
+# SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+# SPDX-License-Identifier: MIT
+
 # Optional semi-standard Makefile with some handy tools.
 # Ncdu itself can be built with just the zig build system.
 
@@ -7,12 +10,12 @@ MANDIR ?= ${PREFIX}/share/man/man1
 
 NCDU_VERSION=$(shell grep 'program_version = "' src/main.zig | sed -e 's/^.*"\(.\+\)".*$$/\1/')
 
-debug:
-	zig build
-
 release:
 	zig build -Drelease-fast
 
+debug:
+	zig build
+
 clean:
 	rm -rf zig-cache zig-out
 
diff --git a/README.md b/README.md
index ed6cd8d99cb51ba06b9568410b7ac10a287b24f3..d6aab76196de89523db85c17dfa18718e42af984 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,8 @@
+<!--
+SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+SPDX-License-Identifier: MIT
+-->
+
 # ncdu-zig
 
 ## Description
diff --git a/build.zig b/build.zig
index 90058aac9fdd81417faa68893025871a51a3a1ef..e16eb2d20721d7e5d5548f6e4106bc20c10a0337 100644
--- a/build.zig
+++ b/build.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 const std = @import("std");
 
 pub fn build(b: *std.build.Builder) void {
diff --git a/ncdu.pod b/ncdu.pod
index 47c1a3376a44ba708edf10d5ce2e5a129736c0a1..caa9812d968adca44dba95d69e74f7e9f1b3e63b 100644
--- a/ncdu.pod
+++ b/ncdu.pod
@@ -1,3 +1,6 @@
+SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+SPDX-License-Identifier: MIT
+
 =head1 NAME
 
 B<ncdu> - NCurses Disk Usage
diff --git a/src/browser.zig b/src/browser.zig
index 0e315867b9d391ea25c1aec930cca72e9cf64a7d..1e228df91d64cb435fc9ac143049c8c1af85dba9 100644
--- a/src/browser.zig
+++ b/src/browser.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 const std = @import("std");
 const main = @import("main.zig");
 const model = @import("model.zig");
diff --git a/src/delete.zig b/src/delete.zig
index 36ebe4ac9acfb5ac53ff54f43dc4f9343be4af3d..b690d805992fa83f12cbd686a1f6fb1b37a678e6 100644
--- a/src/delete.zig
+++ b/src/delete.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 const std = @import("std");
 const main = @import("main.zig");
 const model = @import("model.zig");
diff --git a/src/main.zig b/src/main.zig
index 70c6466235b8cc44b0c165156cdb28b49c1f3c2c..040d14e8736ac83d6c0d0eab8af22273e5e434c2 100644
--- a/src/main.zig
+++ b/src/main.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 pub const program_version = "2.0-dev";
 
 const std = @import("std");
diff --git a/src/model.zig b/src/model.zig
index 0881182c9d9b32eac16bb723e74ae65aacd97338..991d87d4f7c79b1d9bab9de847654f04fbe89121 100644
--- a/src/model.zig
+++ b/src/model.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 const std = @import("std");
 const main = @import("main.zig");
 const ui = @import("ui.zig");
diff --git a/src/ncurses_refs.c b/src/ncurses_refs.c
index bcaeb3d2f055e2f61b2720293bf1af404ff24385..b458efb7d31ed0882fdcb176d031d1f342d30462 100644
--- a/src/ncurses_refs.c
+++ b/src/ncurses_refs.c
@@ -1,3 +1,7 @@
+/* SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+ * SPDX-License-Identifier: MIT
+ */
+
 #include <curses.h>
 
 /* Zig @cImport() has problems with the ACS_* macros. Two, in fact:
diff --git a/src/scan.zig b/src/scan.zig
index def9c1a5d3c704281ee5ecf1a22ea85b400ccdd3..f56c9e6f1a2ecd1f0b845aac0bd2a33e2a634221 100644
--- a/src/scan.zig
+++ b/src/scan.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 const std = @import("std");
 const main = @import("main.zig");
 const model = @import("model.zig");
diff --git a/src/ui.zig b/src/ui.zig
index cdcaa3b0395428f67a6b5933cd33beccb733b81d..d9a7d744ce9f25dada1eff6802a03a261c20dc7d 100644
--- a/src/ui.zig
+++ b/src/ui.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 // Ncurses wrappers and TUI helper functions.
 
 const std = @import("std");
diff --git a/src/util.zig b/src/util.zig
index 277a0069c42da3402557efea34310e67859e3775..4c5c8a930adc8130581b572e64fa026b02796b99 100644
--- a/src/util.zig
+++ b/src/util.zig
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: 2021 Yoran Heling <projects@yorhel.nl>
+// SPDX-License-Identifier: MIT
+
 const std = @import("std");
 
 pub fn saturateAdd(a: anytype, b: @TypeOf(a)) @TypeOf(a) {