arcfox: Inital device configuration

Change-Id: If7afc7cf58eadd1a5b6fbd0c2aea77f52cd8e34e
diff --git a/extract-files.py b/extract-files.py
new file mode 100644
index 0000000..86de6b7
--- /dev/null
+++ b/extract-files.py
@@ -0,0 +1,48 @@
+#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
+#
+# SPDX-FileCopyrightText: 2025 The LineageOS Project
+# SPDX-License-Identifier: Apache-2.0
+#
+
+from extract_utils.extract import extract_fns_user_type
+from extract_utils.extract_star import (
+    extract_star_firmware,
+    star_firmware_regex,
+)
+from extract_utils.fixups_blob import (
+    blob_fixup,
+    blob_fixups_user_type,
+)
+from extract_utils.fixups_lib import lib_fixups
+from extract_utils.main import (
+    ExtractUtils,
+    ExtractUtilsModule,
+)
+
+namespace_imports = [
+    'device/motorola/sm8650-common',
+    'vendor/motorola/sm8650-common',
+    'hardware/motorola',
+    'hardware/qcom-caf/sm8650',
+    'vendor/qcom/opensource/commonsys-intf/display',
+]
+
+blob_fixups: blob_fixups_user_type = {
+}
+
+extract_fns: extract_fns_user_type = {
+    star_firmware_regex: extract_star_firmware,
+}
+
+module = ExtractUtilsModule(
+    'arcfox',
+    'motorola',
+    blob_fixups=blob_fixups,
+    lib_fixups=lib_fixups,
+    namespace_imports=namespace_imports,
+    extract_fns=extract_fns,
+)
+
+if __name__ == '__main__':
+    utils = ExtractUtils.device(module)
+    utils.run()