)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"baa3480d25e08bb89d8d6bb93668dae4bbd726f7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3518d361_446b3184","updated":"2025-10-22 17:12:10.000000000","message":"Ugh honestly, I .don\u0027t think this is right still. No fault of yours, we don\u0027t document it well\n\nIf the `.py` version is there - you literally just need to point your `./extract-files.py ~/path/to/lineage-whatever.zip` and it\u0027ll do it all. Regardless of type. WE can abstract that to the user even.\n\nWe should have a \"23.0 and above, or extract-files.py is present\" page, and a \"bash extract utils\" page that has all this legacy dump it yourself stuff. maybe like we set up gapps and gapps_old? something like that","commit_id":"590740fc3375e54e341e602aed0b2cddf4eb0967"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"fbd731d489b6f5c5f2aa8b7756160ded61ca14c2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"04b660fe_212adf17","updated":"2025-11-06 05:35:02.000000000","message":"feedback if anyone has it, please","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e22542b587cae43519681c1a971e4b45495630e5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"8503871e_c4767e22","updated":"2025-10-25 15:49:18.000000000","message":"how do we feel about this one? CC @bruno @michael","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3d2f6f7049ed4edae70f3bc69d85b86a9639764e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"78015d6f_67509d92","updated":"2025-11-10 04:49:40.000000000","message":"another call for \"I\u0027d like to merge this soon because I\u0027m tired of walking users through manually extracting shit they don\u0027t need to\"\n\nPls give thoughts/objections if you have any,","commit_id":"ca4aae2b100414eb99029125b8a51e4df84a71ef"}],"_includes/templates/device_build.md":[{"author":{"_account_id":13648,"name":"Bruno Martins","email":"bgcngm@gmail.com","username":"bgcngm","avatars":[{"url":"https://www.gravatar.com/avatar/3d939ee28d51d14e76de3a4510b309ce.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/3d939ee28d51d14e76de3a4510b309ce.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/3d939ee28d51d14e76de3a4510b309ce.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/3d939ee28d51d14e76de3a4510b309ce.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"de2f7a9a462b51ed06b22f201f482d85663a396e","unresolved":true,"context_lines":[{"line_number":72,"context_line":"Now ensure your {{ device.vendor }} {{ device.name }} is connected to your computer via the USB cable, with ADB and root enabled, and that you are in the"},{"line_number":73,"context_line":"`~/android/lineage/device/{{ device.vendor_short }}/{{ device.codename }}` folder."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"If you are building LineageOS 22 or newer, run `extract-files.py`:"},{"line_number":76,"context_line":"```"},{"line_number":77,"context_line":"./extract-files.py"},{"line_number":78,"context_line":"```"}],"source_content_type":"text/x-markdown","patch_set":1,"id":"36187765_00fa936c","line":75,"updated":"2025-10-18 10:10:26.000000000","message":"This isn\u0027t true for all devices.","commit_id":"ece713b14268fd321a75fe0557e2a94c25f27ed8"},{"author":{"_account_id":36080,"name":"Hex","display_name":"Hex","email":"planhet.r20@gmail.com","username":"Hex","avatars":[{"url":"https://www.gravatar.com/avatar/2925aae4380d8035bc4e165f1be5c79a.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/2925aae4380d8035bc4e165f1be5c79a.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/2925aae4380d8035bc4e165f1be5c79a.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/2925aae4380d8035bc4e165f1be5c79a.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c9a30e35766a8212cf9309a7e12b27acf2accf51","unresolved":false,"context_lines":[{"line_number":72,"context_line":"Now ensure your {{ device.vendor }} {{ device.name }} is connected to your computer via the USB cable, with ADB and root enabled, and that you are in the"},{"line_number":73,"context_line":"`~/android/lineage/device/{{ device.vendor_short }}/{{ device.codename }}` folder."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"If you are building LineageOS 22 or newer, run `extract-files.py`:"},{"line_number":76,"context_line":"```"},{"line_number":77,"context_line":"./extract-files.py"},{"line_number":78,"context_line":"```"}],"source_content_type":"text/x-markdown","patch_set":1,"id":"cdecc4b4_75553d1b","line":75,"in_reply_to":"36187765_00fa936c","updated":"2025-10-18 11:45:04.000000000","message":"Done","commit_id":"ece713b14268fd321a75fe0557e2a94c25f27ed8"},{"author":{"_account_id":35350,"name":"Matthew","display_name":"Inhishonor","email":"inhishonor@protonmail.com","username":"Inhishonor","avatars":[{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"891e9e085a982858dee8374e062cd0121ff93fd1","unresolved":true,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Now ensure your {{ device.vendor }} {{ device.name }} is connected to your computer via the USB cable, with ADB and root enabled, and that you are in the"},{"line_number":73,"context_line":"`~/android/lineage/device/{{ device.vendor_short }}/{{ device.codename }}` directory."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"If there is `extract-files.py` in the device directory, run it:"},{"line_number":76,"context_line":"```"},{"line_number":77,"context_line":"./extract-files.py"},{"line_number":78,"context_line":"```"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"1227a271_0fe65776","line":75,"range":{"start_line":74,"start_character":0,"end_line":75,"end_character":63},"updated":"2025-11-07 17:15:02.000000000","message":"```suggestion\n\nIf the device directory contains `extract-files.py`, run it with:\n```","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3e536f5f2a3e90c39bca7205ced1737f98a74a98","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Now ensure your {{ device.vendor }} {{ device.name }} is connected to your computer via the USB cable, with ADB and root enabled, and that you are in the"},{"line_number":73,"context_line":"`~/android/lineage/device/{{ device.vendor_short }}/{{ device.codename }}` directory."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"If there is `extract-files.py` in the device directory, run it:"},{"line_number":76,"context_line":"```"},{"line_number":77,"context_line":"./extract-files.py"},{"line_number":78,"context_line":"```"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"de810d6c_9e047ff3","line":75,"range":{"start_line":74,"start_character":0,"end_line":75,"end_character":63},"in_reply_to":"1227a271_0fe65776","updated":"2025-11-10 04:47:37.000000000","message":"Fix applied.","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"}],"pages/extracting_blobs_from_zips.md":[{"author":{"_account_id":35350,"name":"Matthew","display_name":"Inhishonor","email":"inhishonor@protonmail.com","username":"Inhishonor","avatars":[{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"891e9e085a982858dee8374e062cd0121ff93fd1","unresolved":true,"context_lines":[{"line_number":9,"context_line":"cd ~/android/lineage/device/vendor_name/device_name/"},{"line_number":10,"context_line":"```"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"If there is `extract-files.py` in the device directory, run it:"},{"line_number":13,"context_line":"```"},{"line_number":14,"context_line":"./extract-files.py path/to/lineage-*.zip"},{"line_number":15,"context_line":"```"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"26cef7ef_5fbb5172","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":63},"updated":"2025-11-07 17:15:02.000000000","message":"```suggestion\nIf the device directory contains `extract-files.py`, run it with:\n```","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3e536f5f2a3e90c39bca7205ced1737f98a74a98","unresolved":false,"context_lines":[{"line_number":9,"context_line":"cd ~/android/lineage/device/vendor_name/device_name/"},{"line_number":10,"context_line":"```"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"If there is `extract-files.py` in the device directory, run it:"},{"line_number":13,"context_line":"```"},{"line_number":14,"context_line":"./extract-files.py path/to/lineage-*.zip"},{"line_number":15,"context_line":"```"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"a6d66832_dafca570","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":63},"in_reply_to":"26cef7ef_5fbb5172","updated":"2025-11-10 04:47:37.000000000","message":"Fix applied.","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":36111,"deleted":true},"change_message_id":"6c9c9fee3b068ccf265cf5f124f63e8261702561","unresolved":false,"context_lines":[{"line_number":13,"context_line":"```"},{"line_number":14,"context_line":"./extract-files.py path/to/lineage-*.zip"},{"line_number":15,"context_line":"```"},{"line_number":16,"context_line":"Otherwise, follow [this guide](extracting_blobs_from_zips_manually.html)."}],"source_content_type":"text/x-markdown","patch_set":3,"id":"ffda9792_30d4d182","line":16,"range":{"start_line":16,"start_character":66,"end_line":16,"end_character":71},"updated":"2025-11-06 05:45:13.000000000","message":".md?","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"37f952b9aa69aea4cc8b7619d5936e1b121aed0f","unresolved":false,"context_lines":[{"line_number":13,"context_line":"```"},{"line_number":14,"context_line":"./extract-files.py path/to/lineage-*.zip"},{"line_number":15,"context_line":"```"},{"line_number":16,"context_line":"Otherwise, follow [this guide](extracting_blobs_from_zips_manually.html)."}],"source_content_type":"text/x-markdown","patch_set":3,"id":"bb088729_120bf3de","line":16,"range":{"start_line":16,"start_character":66,"end_line":16,"end_character":71},"in_reply_to":"ffda9792_30d4d182","updated":"2025-11-10 04:48:51.000000000","message":"no? that\u0027s just wrong","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"}],"pages/extracting_blobs_from_zips_manually.md":[{"author":{"_account_id":35350,"name":"Matthew","display_name":"Inhishonor","email":"inhishonor@protonmail.com","username":"Inhishonor","avatars":[{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"891e9e085a982858dee8374e062cd0121ff93fd1","unresolved":true,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"If you have a split block-based OTA file, you will need to decompress, extract and mount each file as described below."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"If files are compressed with [brotli](https://en.wikipedia.org/wiki/Brotli) `*.br`, you need to decompress them using the `brotli` utility:"},{"line_number":38,"context_line":"```"},{"line_number":39,"context_line":"sudo apt install brotli"},{"line_number":40,"context_line":"brotli --decompress --output\u003dsystem.new.dat system.new.dat.br"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"cf60710c_ea1ed506","line":37,"range":{"start_line":37,"start_character":0,"end_line":37,"end_character":8},"updated":"2025-11-07 17:15:02.000000000","message":"if \"the\" files","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3e536f5f2a3e90c39bca7205ced1737f98a74a98","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"If you have a split block-based OTA file, you will need to decompress, extract and mount each file as described below."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"If files are compressed with [brotli](https://en.wikipedia.org/wiki/Brotli) `*.br`, you need to decompress them using the `brotli` utility:"},{"line_number":38,"context_line":"```"},{"line_number":39,"context_line":"sudo apt install brotli"},{"line_number":40,"context_line":"brotli --decompress --output\u003dsystem.new.dat system.new.dat.br"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"9474b454_6384807c","line":37,"range":{"start_line":37,"start_character":0,"end_line":37,"end_character":8},"in_reply_to":"cf60710c_ea1ed506","updated":"2025-11-10 04:47:37.000000000","message":"Done","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":35350,"name":"Matthew","display_name":"Inhishonor","email":"inhishonor@protonmail.com","username":"Inhishonor","avatars":[{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/a67892f3e9b57f28fdcc5bb11c158b97.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"891e9e085a982858dee8374e062cd0121ff93fd1","unresolved":true,"context_lines":[{"line_number":56,"context_line":"sudo mount -r system.img system/"},{"line_number":57,"context_line":"```"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Unlike the above, if you have a `super.img` file, you need to get a copy of `lpunpack` to extract images from it. This script can extract the content of the Super partition into it\u0027s respective component partitions that can be mounted. Luckily, `lpunpack` is easily buildable, executing the following from a LineageOS 17.1 or greater tree:"},{"line_number":60,"context_line":"```"},{"line_number":61,"context_line":"source build/envsetup.sh"},{"line_number":62,"context_line":"breakfast your_device_codename"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"a94ba440_7956c278","line":59,"range":{"start_line":59,"start_character":277,"end_line":59,"end_character":286},"updated":"2025-11-07 17:15:02.000000000","message":"execute","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":16185,"name":"Nolen Johnson","email":"johnsonnolen@gmail.com","username":"njohnson","avatars":[{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/35fbec921061bf203f1189ddc1cb9697.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3e536f5f2a3e90c39bca7205ced1737f98a74a98","unresolved":false,"context_lines":[{"line_number":56,"context_line":"sudo mount -r system.img system/"},{"line_number":57,"context_line":"```"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Unlike the above, if you have a `super.img` file, you need to get a copy of `lpunpack` to extract images from it. This script can extract the content of the Super partition into it\u0027s respective component partitions that can be mounted. Luckily, `lpunpack` is easily buildable, executing the following from a LineageOS 17.1 or greater tree:"},{"line_number":60,"context_line":"```"},{"line_number":61,"context_line":"source build/envsetup.sh"},{"line_number":62,"context_line":"breakfast your_device_codename"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"c169a9f0_ea284ee0","line":59,"range":{"start_line":59,"start_character":277,"end_line":59,"end_character":286},"in_reply_to":"a94ba440_7956c278","updated":"2025-11-10 04:47:37.000000000","message":"Done","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":35487,"name":"Ferdinand Saurenbach","email":"ferdi.saurenbach@gmail.com","username":"FSaurenbach","avatars":[{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"00325d9d50740b05fb03fbfe07be4fe1b1405134","unresolved":true,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Move to the directory of your device `~/android/lineage/device/vendor_name/device_name/` and run `extract-files.sh` as follows:"},{"line_number":106,"context_line":"```"},{"line_number":107,"context_line":"./extract-files.sh ~/android/system_dump/"},{"line_number":108,"context_line":"```"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"If you mounted any images, unmount them:"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"b3fc2c21_7d99f59b","line":107,"range":{"start_line":107,"start_character":16,"end_line":107,"end_character":18},"updated":"2025-11-06 21:21:48.000000000","message":"Maybe python script here as well?","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"},{"author":{"_account_id":35487,"name":"Ferdinand Saurenbach","email":"ferdi.saurenbach@gmail.com","username":"FSaurenbach","avatars":[{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/6cd73fd3c7746d66b282f6efde7abe1e.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"209fa3f0304116f6727dd6607791fd24dddf2c0c","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Move to the directory of your device `~/android/lineage/device/vendor_name/device_name/` and run `extract-files.sh` as follows:"},{"line_number":106,"context_line":"```"},{"line_number":107,"context_line":"./extract-files.sh ~/android/system_dump/"},{"line_number":108,"context_line":"```"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"If you mounted any images, unmount them:"}],"source_content_type":"text/x-markdown","patch_set":3,"id":"ff9ad8c4_b3b1a157","line":107,"range":{"start_line":107,"start_character":16,"end_line":107,"end_character":18},"in_reply_to":"b3fc2c21_7d99f59b","updated":"2025-11-06 21:28:14.000000000","message":"nvm","commit_id":"69127ba7151df8cf93676d0b91b7f09a655056b4"}]}
