diff --git a/configs/releng/airootfs/root/customize_airootfs.sh b/configs/releng/airootfs/root/customize_airootfs.sh
index 2d7f2e03b05e17ea77d8e64c82350f393a9e8685..3f81617cd1b8c4b293df3c6ac2d34f73543b689a 100755
--- a/configs/releng/airootfs/root/customize_airootfs.sh
+++ b/configs/releng/airootfs/root/customize_airootfs.sh
@@ -7,7 +7,5 @@ echo 'Warning: customize_airootfs.sh is deprecated! Support for it will be remov
 sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen
 locale-gen
 
-cp -aT /etc/skel/ /root/
-
 sed -i 's/#\(PermitRootLogin \).\+/\1yes/' /etc/ssh/sshd_config
 sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
diff --git a/configs/releng/build.sh b/configs/releng/build.sh
index 310204b53f335f7b3a534c34293ddf224af13a81..98f48b0a3011dc5ae134407cd9d29c2d11d56465 100755
--- a/configs/releng/build.sh
+++ b/configs/releng/build.sh
@@ -130,6 +130,15 @@ make_setup_mkinitcpio() {
 
 # Customize installation (airootfs)
 make_customize_airootfs() {
+    if [[ -e "${script_path}/airootfs/etc/passwd" ]]; then
+        while IFS=':' read -a passwd -r; do
+            [[ "${passwd[5]}" == '/' ]] && continue
+            cp -RdT --preserve=mode,timestamps,links -- "${work_dir}/x86_64/airootfs/etc/skel" "${work_dir}/x86_64/airootfs${passwd[5]}"
+            chown -hR -- "${passwd[2]}:${passwd[3]}" "${work_dir}/x86_64/airootfs${passwd[5]}"
+
+        done < "${script_path}/airootfs/etc/passwd"
+    fi
+
     if [[ -e "${work_dir}/x86_64/airootfs/root/customize_airootfs.sh" ]]; then
         if [ -n "${verbose}" ]; then
             mkarchiso -v -w "${work_dir}/x86_64" -C "${work_dir}/pacman.conf" -D "${install_dir}" \
@@ -305,8 +314,8 @@ mkdir -p "${work_dir}"
 run_once make_pacman_conf
 run_once make_custom_airootfs
 run_once make_packages
-run_once make_setup_mkinitcpio
 run_once make_customize_airootfs
+run_once make_setup_mkinitcpio
 run_once make_boot
 run_once make_boot_extra
 run_once make_syslinux