diff --git a/README.md b/README.md
index 660092c..4b12bd4 100644
--- a/README.md
+++ b/README.md
@@ -58,25 +58,44 @@
- **Installer (.msi)**: Download and run the installer. Recommended for most users.
- **Portable (.zip)**: Extract and run `iDescriptor.exe`. No installation required.
- **Choco** :
+
```bash
choco install idescriptor --version=0.1.0
- ```
+```
#### macOS
- **Apple Silicon**: Download the `.dmg` file for M1/M2/M3/MX Macs.
-- **Intel**: Download the `.dmg` file for Intel-based Macs.
+
+ Open the `.dmg` and drag iDescriptor to Applications.
+
-Open the `.dmg` and drag iDescriptor to Applications.
+Then run the code below after moving the app to Applications
+
+
+```shell
+xattr -c ~/Applications/iDescriptor.app
+```
+
+[Click here to learn more about why this is needed](#damaged-error-on-macos).
+
+- **Intel**: Download the `.dmg` file for Intel-based Macs.
+
+ Open the `.dmg` and drag iDescriptor to Applications.
+
+
+ You shouldn't run into any issues on Intel Macs but if you do, [check this out](#damaged-error-on-macos).
#### Linux
- **AppImage**: Download, unzip, and run.
-- **Arch Linux**: Install from AUR:
+- **Arch Linux**: Install from AUR:
+
```bash
sudo pacman -Syu
yay -S idescriptor-git
```
+
make sure to do "sudo pacman -Syu" otherwise it's not going to find libimobiledevice>=1.4.0
@@ -224,9 +243,9 @@ You might get this pop-up on any platform this is because this app uses secure b
## Become a Sponsor
-Please support us at
-
-
+Please support us at
+
+
## Thanks
@@ -266,6 +285,28 @@ For example
Or if you'd like to introduce new features, feel free to open an issue or a pull request!
+## Damaged Error on macOS
+
+
+ 
+
+
+If you encounter a similar "damaged" error when trying to open the app on macOS, you can resolve this by running the following command in the terminal:
+
+```shell
+xattr -c ~/Applications/iDescriptor.app
+```
+
+You need to run this because macOS blocks apps that are not signed by an Apple Developer ID. By clearing the extended attributes, you can bypass this security feature.
+
+This not something specific to iDescriptor, for example [check this out](https://github.com/deskflow/deskflow/issues/7606).
+
+You can be more explicit and only remove the quarantine attribute like so:
+
+```shell
+xattr -dr com.apple.quarantine /Applications/iDescriptor.app
+```
+
## Star History
[](https://www.star-history.com/#iDescriptor/iDescriptor&type=date&legend=top-left)
diff --git a/resources/repo/damaged-error-macos.png b/resources/repo/damaged-error-macos.png
new file mode 100644
index 0000000..9a159b0
Binary files /dev/null and b/resources/repo/damaged-error-macos.png differ
diff --git a/scripts/deploy-dmg.sh b/scripts/deploy-dmg.sh
index 7d75bd0..2a0972f 100755
--- a/scripts/deploy-dmg.sh
+++ b/scripts/deploy-dmg.sh
@@ -93,9 +93,29 @@ for lib in "${GST_LIBS[@]}"; do
fi
done
-# Copy FFmpeg libavfilter
+# Copy FFmpeg libraries
FFMPEG_LIB_DIR="$(brew --prefix ffmpeg)/lib"
-cp "${FFMPEG_LIB_DIR}"/libavfilter.*.dylib "${FRAMEWORKS_DIR}/"
+FFMPEG_LIBS=(
+ "libavformat"
+ "libavcodec"
+ "libavutil"
+ "libswscale"
+ "libavfilter"
+)
+
+for lib_base in "${FFMPEG_LIBS[@]}"; do
+ # Use find to get the full versioned filename
+ lib_path=$(find "${FFMPEG_LIB_DIR}" -name "${lib_base}.*.dylib" -print -quit)
+ if [ -f "$lib_path" ]; then
+ lib_name=$(basename "$lib_path")
+ cp "$lib_path" "${FRAMEWORKS_DIR}/"
+ #These maybe unneeded, macdeployqt already does this but just in case
+ install_name_tool -id "@rpath/${lib_name}" "${FRAMEWORKS_DIR}/${lib_name}"
+ echo "Copied and fixed rpath for ${lib_name}"
+ else
+ echo "Warning: ${lib_base} library not found in ${FFMPEG_LIB_DIR}"
+ fi
+done
macdeployqt "${APP_PATH}" -qmldir=qml -verbose=2