# Generated files
precious ^(config\.status|config\.cache)$
-# Build-in-place makes these directories, so just ignore them
-precious ^(info)$
-
# Install-in-place makes these directories, so just ignore them
backup ^(bin|data|lock|site-lisp)$
--- /dev/null
+# Only two real source files: "dir", and this file, ".arch-inventory"
+source ^(dir|\.arch-inventory)$
+
+# Everything else is generated at compile time. Unfortunately, the "backup"
+# category overrides the "source" category, so we have to have horrible
+# regexp that matches everything _except_ "dir"...
+
+# 1 or 2 characters long
+backup ^[-_.a-zA-Z0-9][-_.a-zA-Z0-9]?$
+# 4 or more characters long
+backup ^[-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9]+$
+# 3 chars long, but 1st char not "d"
+backup ^[-_.abce-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9]$
+# 3 chars long, but 2nd char not "i"
+backup ^[-_.a-zA-Z0-9][-_.a-hj-zA-Z0-9][-_.a-zA-Z0-9]$
+# 3 chars long, but 3rd char not "r"
+backup ^[-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-qs-zA-Z0-9]$
+
+# arch-tag: 60144ab9-cdc1-45b6-8193-b9683c80ec86