From d130e9f73c6b5fb2ff25d01a794f7562c307b19c Mon Sep 17 00:00:00 2001
From: bjorn3 <17426603+bjorn3@users.noreply.github.com>
Date: Thu, 4 Jan 2024 15:31:44 +0100
Subject: [PATCH] Use the new config include functionality for creating the
 base system files

---
 config/aarch64/acid.toml                    | 29 +----------
 config/aarch64/demo.toml                    | 49 +-----------------
 config/aarch64/desktop-minimal.toml         | 49 +-----------------
 config/aarch64/desktop.toml                 | 49 +-----------------
 config/aarch64/dev.toml                     | 49 +-----------------
 config/aarch64/jeremy.toml                  | 49 +-----------------
 config/aarch64/raspi3bp/server-minimal.toml | 49 +-----------------
 config/aarch64/resist.toml                  | 49 +-----------------
 config/aarch64/server-minimal.toml          | 49 +-----------------
 config/aarch64/server.toml                  | 49 +-----------------
 config/base.toml                            | 56 +++++++++++++++++++++
 config/i686/acid.toml                       | 29 +----------
 config/i686/demo.toml                       | 49 +-----------------
 config/i686/desktop-minimal.toml            | 49 +-----------------
 config/i686/desktop.toml                    | 49 +-----------------
 config/i686/dev.toml                        | 49 +-----------------
 config/i686/jeremy.toml                     | 49 +-----------------
 config/i686/resist.toml                     | 49 +-----------------
 config/i686/server-minimal.toml             | 49 +-----------------
 config/i686/server.toml                     | 49 +-----------------
 config/x86_64/acid.toml                     | 29 +----------
 config/x86_64/demo.toml                     | 49 +-----------------
 config/x86_64/desktop-contain.toml          | 49 +-----------------
 config/x86_64/desktop-minimal.toml          | 49 +-----------------
 config/x86_64/desktop.toml                  | 49 +-----------------
 config/x86_64/dev.toml                      | 49 +-----------------
 config/x86_64/jeremy.toml                   | 49 +-----------------
 config/x86_64/resist.toml                   | 49 +-----------------
 config/x86_64/server-minimal.toml           | 49 +-----------------
 config/x86_64/server.toml                   | 49 +-----------------
 30 files changed, 114 insertions(+), 1303 deletions(-)
 create mode 100644 config/base.toml

diff --git a/config/aarch64/acid.toml b/config/aarch64/acid.toml
index 239b524e1..5a51fa2d4 100644
--- a/config/aarch64/acid.toml
+++ b/config/aarch64/acid.toml
@@ -1,5 +1,7 @@
 # Configuration for using acid
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -52,30 +54,3 @@ acid tls
 acid thread
 shutdown
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
diff --git a/config/aarch64/demo.toml b/config/aarch64/demo.toml
index 538c467a3..25e67d3b2 100644
--- a/config/aarch64/demo.toml
+++ b/config/aarch64/demo.toml
@@ -1,5 +1,7 @@
 # Default demo configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -141,50 +143,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/desktop-minimal.toml b/config/aarch64/desktop-minimal.toml
index d45faf1a5..122255b44 100644
--- a/config/aarch64/desktop-minimal.toml
+++ b/config/aarch64/desktop-minimal.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -80,50 +82,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/desktop.toml b/config/aarch64/desktop.toml
index 2f43eac28..1ca4502f7 100644
--- a/config/aarch64/desktop.toml
+++ b/config/aarch64/desktop.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -141,50 +143,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/dev.toml b/config/aarch64/dev.toml
index 017a7d1f6..008481bcd 100644
--- a/config/aarch64/dev.toml
+++ b/config/aarch64/dev.toml
@@ -1,5 +1,7 @@
 # Configuration for development, includes cargo and rustc
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -162,50 +164,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/jeremy.toml b/config/aarch64/jeremy.toml
index abddeb70d..f9189d9fa 100644
--- a/config/aarch64/jeremy.toml
+++ b/config/aarch64/jeremy.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -137,50 +139,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/raspi3bp/server-minimal.toml b/config/aarch64/raspi3bp/server-minimal.toml
index 9d41547c4..7920a51d7 100644
--- a/config/aarch64/raspi3bp/server-minimal.toml
+++ b/config/aarch64/raspi3bp/server-minimal.toml
@@ -1,5 +1,7 @@
 # Minimal configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -68,50 +70,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/resist.toml b/config/aarch64/resist.toml
index d15e04b65..44a35eeab 100644
--- a/config/aarch64/resist.toml
+++ b/config/aarch64/resist.toml
@@ -1,5 +1,7 @@
 # Configuration for using resist
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -122,50 +124,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/server-minimal.toml b/config/aarch64/server-minimal.toml
index f0f5ef6be..ff1442119 100644
--- a/config/aarch64/server-minimal.toml
+++ b/config/aarch64/server-minimal.toml
@@ -1,5 +1,7 @@
 # Minimal configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -67,50 +69,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/aarch64/server.toml b/config/aarch64/server.toml
index 9af0ba1b8..790d1a7c4 100644
--- a/config/aarch64/server.toml
+++ b/config/aarch64/server.toml
@@ -1,5 +1,7 @@
 # Default server configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -132,50 +134,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/base.toml b/config/base.toml
new file mode 100644
index 000000000..8b6bffbd1
--- /dev/null
+++ b/config/base.toml
@@ -0,0 +1,56 @@
+# Base configuration: This configuration is meant to be included by
+# other configurations rather than use directly. It is the greatest
+# common divisor of all other configurations and misses several
+# parts necessary to create a bootable system.
+
+# General settings
+[general]
+# Do not prompt if settings are not defined
+prompt = false
+
+[[files]]
+path = "/usr/bin"
+data = "../bin"
+symlink = true
+
+[[files]]
+path = "/usr/include"
+data = "../include"
+symlink = true
+
+[[files]]
+path = "/usr/lib"
+data = "../lib"
+symlink = true
+
+[[files]]
+path = "/usr/share"
+data = "../share"
+symlink = true
+
+[[files]]
+path = "/tmp"
+data = ""
+directory = true
+# 0o1777
+mode = 1023
+
+[[files]]
+path = "/dev/null"
+data = "null:"
+symlink = true
+
+[[files]]
+path = "/dev/random"
+data = "rand:"
+symlink = true
+
+[[files]]
+path = "/dev/urandom"
+data = "rand:"
+symlink = true
+
+[[files]]
+path = "/dev/zero"
+data = "zero:"
+symlink = true
diff --git a/config/i686/acid.toml b/config/i686/acid.toml
index 239b524e1..5a51fa2d4 100644
--- a/config/i686/acid.toml
+++ b/config/i686/acid.toml
@@ -1,5 +1,7 @@
 # Configuration for using acid
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -52,30 +54,3 @@ acid tls
 acid thread
 shutdown
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
diff --git a/config/i686/demo.toml b/config/i686/demo.toml
index c8cdf5752..39f989256 100644
--- a/config/i686/demo.toml
+++ b/config/i686/demo.toml
@@ -22,6 +22,8 @@
 #                                                                            #
 ##############################################################################
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -177,53 +179,6 @@ data = """
 redox
 """
 
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
-
 [[files]]
 path = "/home/user/Welcome.txt"
 data = """
diff --git a/config/i686/desktop-minimal.toml b/config/i686/desktop-minimal.toml
index d45faf1a5..122255b44 100644
--- a/config/i686/desktop-minimal.toml
+++ b/config/i686/desktop-minimal.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -80,50 +82,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/i686/desktop.toml b/config/i686/desktop.toml
index 66aeeb0dc..a1a4bcb78 100644
--- a/config/i686/desktop.toml
+++ b/config/i686/desktop.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -142,50 +144,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/i686/dev.toml b/config/i686/dev.toml
index 017a7d1f6..008481bcd 100644
--- a/config/i686/dev.toml
+++ b/config/i686/dev.toml
@@ -1,5 +1,7 @@
 # Configuration for development, includes cargo and rustc
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -162,50 +164,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/i686/jeremy.toml b/config/i686/jeremy.toml
index d4a33df55..f43db1241 100644
--- a/config/i686/jeremy.toml
+++ b/config/i686/jeremy.toml
@@ -1,5 +1,7 @@
 # Jeremy's configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -170,53 +172,6 @@ data = """
 redox
 """
 
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
-
 [[files]]
 path = "/home/user/Welcome.txt"
 data = """
diff --git a/config/i686/resist.toml b/config/i686/resist.toml
index d15e04b65..44a35eeab 100644
--- a/config/i686/resist.toml
+++ b/config/i686/resist.toml
@@ -1,5 +1,7 @@
 # Configuration for using resist
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -122,50 +124,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/i686/server-minimal.toml b/config/i686/server-minimal.toml
index f0f5ef6be..ff1442119 100644
--- a/config/i686/server-minimal.toml
+++ b/config/i686/server-minimal.toml
@@ -1,5 +1,7 @@
 # Minimal configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -67,50 +69,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/i686/server.toml b/config/i686/server.toml
index 842652bf6..47b3cca68 100644
--- a/config/i686/server.toml
+++ b/config/i686/server.toml
@@ -1,5 +1,7 @@
 # Default server configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -128,50 +130,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/acid.toml b/config/x86_64/acid.toml
index 239b524e1..5a51fa2d4 100644
--- a/config/x86_64/acid.toml
+++ b/config/x86_64/acid.toml
@@ -1,5 +1,7 @@
 # Configuration for using acid
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -52,30 +54,3 @@ acid tls
 acid thread
 shutdown
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
diff --git a/config/x86_64/demo.toml b/config/x86_64/demo.toml
index 19841dcf5..c7a5bd02a 100644
--- a/config/x86_64/demo.toml
+++ b/config/x86_64/demo.toml
@@ -22,6 +22,8 @@
 #                                                                            #
 ##############################################################################
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -198,53 +200,6 @@ data = """
 redox
 """
 
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
-
 [[files]]
 path = "/home/user/Welcome.txt"
 data = """
diff --git a/config/x86_64/desktop-contain.toml b/config/x86_64/desktop-contain.toml
index 080166756..d8112a169 100644
--- a/config/x86_64/desktop-contain.toml
+++ b/config/x86_64/desktop-contain.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -143,53 +145,6 @@ data = """
 redox
 """
 
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
-
 [[files]]
 path = "/etc/contain.toml"
 data = """
diff --git a/config/x86_64/desktop-minimal.toml b/config/x86_64/desktop-minimal.toml
index d45faf1a5..122255b44 100644
--- a/config/x86_64/desktop-minimal.toml
+++ b/config/x86_64/desktop-minimal.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -80,50 +82,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/desktop.toml b/config/x86_64/desktop.toml
index 66aeeb0dc..a1a4bcb78 100644
--- a/config/x86_64/desktop.toml
+++ b/config/x86_64/desktop.toml
@@ -1,5 +1,7 @@
 # Default desktop configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -142,50 +144,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/dev.toml b/config/x86_64/dev.toml
index 017a7d1f6..008481bcd 100644
--- a/config/x86_64/dev.toml
+++ b/config/x86_64/dev.toml
@@ -1,5 +1,7 @@
 # Configuration for development, includes cargo and rustc
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -162,50 +164,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/jeremy.toml b/config/x86_64/jeremy.toml
index b4c22f300..1c0199b81 100644
--- a/config/x86_64/jeremy.toml
+++ b/config/x86_64/jeremy.toml
@@ -1,5 +1,7 @@
 # Jeremy's configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -242,50 +244,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/resist.toml b/config/x86_64/resist.toml
index d15e04b65..44a35eeab 100644
--- a/config/x86_64/resist.toml
+++ b/config/x86_64/resist.toml
@@ -1,5 +1,7 @@
 # Configuration for using resist
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -122,50 +124,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/server-minimal.toml b/config/x86_64/server-minimal.toml
index f0f5ef6be..ff1442119 100644
--- a/config/x86_64/server-minimal.toml
+++ b/config/x86_64/server-minimal.toml
@@ -1,5 +1,7 @@
 # Minimal configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -67,50 +69,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
diff --git a/config/x86_64/server.toml b/config/x86_64/server.toml
index 842652bf6..47b3cca68 100644
--- a/config/x86_64/server.toml
+++ b/config/x86_64/server.toml
@@ -1,5 +1,7 @@
 # Default server configuration
 
+include = ["../base.toml"]
+
 # General settings
 [general]
 # Filesystem size in MiB
@@ -128,50 +130,3 @@ path = "/etc/hostname"
 data = """
 redox
 """
-
-[[files]]
-path = "/usr/bin"
-data = "../bin"
-symlink = true
-
-[[files]]
-path = "/usr/include"
-data = "../include"
-symlink = true
-
-[[files]]
-path = "/usr/lib"
-data = "../lib"
-symlink = true
-
-[[files]]
-path = "/usr/share"
-data = "../share"
-symlink = true
-
-[[files]]
-path = "/tmp"
-data = ""
-directory= true
-# 0o1777
-mode = 1023
-
-[[files]]
-path = "/dev/null"
-data = "null:"
-symlink = true
-
-[[files]]
-path = "/dev/random"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/urandom"
-data = "rand:"
-symlink = true
-
-[[files]]
-path = "/dev/zero"
-data = "zero:"
-symlink = true
-- 
GitLab