@@ -160,26 +160,37 @@ if [ -f "$TEMP_DIR/$LIBRARY_NAME" ]; then
160160 ui_print " Patched file installed at $TARGET_DIR /$LIBRARY_NAME "
161161
162162 if [ " $APEX_DIR " = true ]; then
163- POST_DATA_FS_SCRIPT=" $MODPATH /post-data-fs.sh"
164- APEX_LIB_DIR=" /apex/com.android.btservices/lib64"
165- MOD_APEX_LIB_DIR=" $MODPATH /apex/com.android.btservices/lib64"
166- WORK_DIR=" $MODPATH /apex/com.android.btservices/work"
163+ # Check if OverlayFS is supported
164+ mkdir -p /tmp/overlayfs-test/{lower,upper,work,mount}
165+ if mount -t overlay overlay -o lowerdir=/tmp/overlayfs-test/lower,upperdir=/tmp/overlayfs-test/upper,workdir=/tmp/overlayfs-test/work /tmp/overlayfs-test/mount 2> /dev/null; then
166+ ui_print " OverlayFS is supported."
167+ umount /tmp/overlayfs-test/mount
167168
168- mkdir -p " $MOD_APEX_LIB_DIR " " $WORK_DIR "
169+ POST_DATA_FS_SCRIPT=" $MODPATH /post-data-fs.sh"
170+ APEX_LIB_DIR=" /apex/com.android.btservices/lib64"
171+ MOD_APEX_LIB_DIR=" $MODPATH /apex/com.android.btservices/lib64"
172+ WORK_DIR=" $MODPATH /apex/com.android.btservices/work"
169173
170- cp " $TEMP_DIR /$LIBRARY_NAME " " $MOD_APEX_LIB_DIR /$LIBRARY_NAME "
171- set_perm " $MOD_APEX_LIB_DIR /$LIBRARY_NAME " 0 0 644
174+ mkdir -p " $MOD_APEX_LIB_DIR " " $WORK_DIR "
172175
173- cat << EOF > "$POST_DATA_FS_SCRIPT "
176+ cp " $TEMP_DIR /$LIBRARY_NAME " " $MOD_APEX_LIB_DIR /$LIBRARY_NAME "
177+ set_perm " $MOD_APEX_LIB_DIR /$LIBRARY_NAME " 0 0 644
178+
179+ cat << EOF > "$POST_DATA_FS_SCRIPT "
174180#!/system/bin/sh
175181mount -t overlay overlay -o lowerdir=$APEX_LIB_DIR ,upperdir=$MOD_APEX_LIB_DIR ,workdir=$WORK_DIR $APEX_LIB_DIR
176182EOF
177183
178- set_perm " $POST_DATA_FS_SCRIPT " 0 0 755
179- ui_print " Created script for apex library handling."
180- ui_print " You can now restart your device and test aln!"
181- ui_print " Note: If your Bluetooth doesn't work anymore after restarting, then uninstall this module and report the issue at the link below."
182- ui_print " https://github.com/kavishdevar/aln/issues/new"
184+ set_perm " $POST_DATA_FS_SCRIPT " 0 0 755
185+ ui_print " Created script for apex library handling."
186+ ui_print " You can now restart your device and test aln!"
187+ ui_print " Note: If your Bluetooth doesn't work anymore after restarting, then uninstall this module and report the issue at the link below."
188+ ui_print " https://github.com/kavishdevar/aln/issues/new"
189+ else
190+ ui_print " OverlayFS is not supported. Aborting..."
191+ abort " OverlayFS is not supported."
192+ fi
193+ rm -rf /tmp/overlayfs-test
183194 fi
184195else
185196 ui_print " Error: patched file missing."
0 commit comments