v1.2.1.5
- Fixed non-sparsechunk img files in Motorola firmware not getting the header fix
- Fixed crash on a failed payload.bin unpack.
v1.2.1.4
- Fixed ext4 img files not mounting and crashing the kitchen
- Updated to Python 3.8.
v1.2.1.3
- Fixed downloads so kitchen can complete the install
- Fixed building some img files that were failing with the out of space error
- Fixed all symlinks going in symlinks-system file when using mount to extract a single partition that is not system
- Fixed extracting some newer img files that can only be mounted as read-only
- Unpack odm.img from payload.bin if it exists
- Store project forceencryption type in project srk.conf instead of main srk.conf
- Added support for extracting Samsung Beta firmware with AP_xxxx.tar in a 7z file
- Fixed some devices by-name paths not being found during the ROM flash
- Fixed Busybox download not working due to the change in the XDA website
- Allow boot.img to unpack in a new project even if there is no default.prop
- Fixed new.dat conversion on partitions with a period in the name
- Fixed mount extract adding rootfs context for /system on system-as-root firmware
- Fixed extracting 7z files that contain files/directories with spaces in the name
- Fixed regression where old ROM files/directories are not moved before extracting new
- Detect spaces in manually created project names and replace with underscore
- Use auto for mount filesystem type argument instead of ext4, which should allow extracting any filesystem type your kernel supports
- Call the main kitchen launcher from anywhere, no need to cd into kitchen directory.
v1.2.1.3
- Fixed downloads so kitchen can complete the install
- Fixed building some img files that were failing with the out of space error
- Fixed all symlinks going in symlinks-system file when using mount to extract a single partition that is not system
- Fixed extracting some newer img files that can only be mounted as read-only
- Unpack odm.img from payload.bin if it exists
- Store project forceencryption type in project srk.conf instead of main srk.conf
- Added support for extracting Samsung Beta firmware with AP_xxxx.tar in a 7z file
- Fixed some devices by-name paths not being found during the ROM flash
- Fixed Busybox download not working due to the change in the XDA website
- Allow boot.img to unpack in a new project even if there is no default.prop
- Fixed new.dat conversion on partitions with a period in the name
- Fixed mount extract adding rootfs context for /system on system-as-root firmware
- Fixed extracting 7z files that contain files/directories with spaces in the name
- Fixed regression where old ROM files/directories are not moved before extracting new
- Detect spaces in manually created project names and replace with underscore
- Use auto for mount filesystem type argument instead of ext4, which should allow extracting any filesystem type your kernel supports
- Call the main kitchen launcher from anywhere, no need to cd into kitchen directory.
v1.2.1.3
- Fixed downloads so kitchen can complete the install
- Fixed building some img files that were failing with the out of space error
- Fixed all symlinks going in symlinks-system file when using mount to extract a single partition that is not system
- Fixed extracting some newer img files that can only be mounted as read-only
- Unpack odm.img from payload.bin if it exists
- Store project forceencryption type in project srk.conf instead of main srk.conf
- Added support for extracting Samsung Beta firmware with AP_xxxx.tar in a 7z file
- Fixed some devices by-name paths not being found during the ROM flash
- Fixed Busybox download not working due to the change in the XDA website
- Allow boot.img to unpack in a new project even if there is no default.prop
- Fixed new.dat conversion on partitions with a period in the name
- Fixed mount extract adding rootfs context for /system on system-as-root firmware
- Fixed extracting 7z files that contain files/directories with spaces in the name
- Fixed regression where old ROM files/directories are not moved before extracting new
- Detect spaces in manually created project names and replace with underscore
- Use auto for mount filesystem type argument instead of ext4, which should allow extracting any filesystem type your kernel supports
- Call the main kitchen launcher from anywhere, no need to cd into kitchen directory.
v1.2.1.2
- Fixed bloat_custom needing system/ prepended to the path on system_as-root firmware
- Fixed a possible crash when building img files more than once, or when building img files not originally extracted by the kitchen
- Fixed project directory beta partition size detection method only checking the system directory size
- Fixed su.d for system-as-root devices
- Updated Android Image Kitchen by @osm0sis to v3.7
- Updated Busybox installer by @osm0sis to v1.31.1
- Fixed a couple code derps
- Extract optics.img from Samsung firmware if it exists
- Moved smali download to the same server as all the other kitchen tool downloads
- Added support for Android 10 Motorola firmware extraction
- Fixed system_other.img contents not being copied to the correct locations if the directory structure is not consistent with system.img
- Fixed the Ubuntu4Kitchen launcher update removing the launcher during kitchen update
- Use Python3 for kitchen launcher since Python2 is no longer shipped with the latest Linux distros
- Fixed crash during img extraction on an NTFS file system and there is a period at the end of a directory name
- Added support for extracting and including system_ext.img
- Fixed crash when unpacking a boot.img from a system-as-root device
- Added an error message about no ramdisk when unpacking a boot.img from a system-as-root device
- Extract prism.img from Samsung firmware if it exists
- Fixed possible crash when choosing set_metadata perm type
- Added support on all platforms for unpacking the new super.img showing up in Android 10 firmware
- Added support for extracting xz compressed GSI images
- Added support for extracting non-Google firmware.tgz files
- Fixed changelog not working when an update is not available
- Fixed asserts menu showing a comma instead of None after removing asserts
- Include busybox in the ROM and use busybox commands instead of /sbin commands to run programs from the updater-script
- Asserts are now a global option that defaults to no asserts on fresh install
- Fixed selinux error message getting cut off
- Ask all partition size questions at the beginning of the ROM build for raw_img and sparse_dat perm types
- Remember the last manually entered img size for each partition in each project, and ask if you want to use it the next time you choose manual size
- Fixed unrooting pre-rooted system-as-root firmware
- Added support for Android 11 developer preview
- Fixed a bug in configure.sh that did not detect the slot properly on some system-as-root devices
- Added support for extracting zip and tar files that include img.lz4 files
- Fixed showing error when unpacking some recovery.img even when successful
- Add exdirs to 00_project_files/srk.conf and remove the exdirs file
- Fixed Build menu > Custom zip menu zips not including an update-binary
- Allow Build menu > Custom zip menu zips to build if at least one directory in the list exists
- Fixed raw_img and sparse_dat perm types not flashing on some Samsung system-as-root devices
- Updated vdexExtractor to the latest official commit that supports Android 10
- Updated launchers to allow the kitchen to restart itself when required
- Added ro.product.system.device and ro.product.system.name to the list of props to look for when finding the device name
- When determining partition size from a system.img, check if system_other.img exists, compare the sizes, and use the larger one
- Added option to list the files in your project that will be removed using Debloat ROM, Custom debloat, and Remove Samsung Knox
- Improved the error messages when ext4 img build fails, including directory and img size comparison when size is the problem
- Added support for the /system_root mount point showing up in new TWRP builds for system-as-root devices
- Cleaned up configure.sh, hopefully improving the range of devices it works with
- Abort flash and show fail message when configure.sh does not find the by-name paths
- Fixed Debloat ROM showing Debloated on system-as-root devices
- Fixed Remove Samsung Knox showing No Knox on system-as-root devices
- Added support for additional update-binary files, allowing flashing on architectures other than arm
- Added arm64, x86, and x86_64 update-binary files for sparse_dat and raw_img perm types depending on firmware abi (Big thanks to @Captain_Throwback for building the binaries!!)
- Removed all update-binary files from kitchen zip, and added them to the tools downloads
- Extract product.img from firmware packages if it exists
- Complete rewrite for O, P, and Q deodex function; All vdex files in the project directory (except inside 00_project_files) will be deodexed
- Fixed extracting some newer system.img files that can only be mounted as read-only.
v1.2.1.1
- Do not move boot.img or ramdisk to/from the AIK directory (Thanks to @osm0sis for making this possible!!)
- Fixed AIK downloads not working consistently (Thanks to @osm0sis for allowing private AIK links!!)
- Fixed crash during Android Q deodex (Q deodex will be supported if/when vdexExtractor supports the new dex version)
- Fixed several possible crashes.
v1.2.1.0
- Update individual tools that have changed instead of downloading the entire tools zip each time a binary is updated
- Added suppoprt for extracting firmware with SpreadTrum pac files
- Try all downloads 5 times before giving up, with hope that AIK downloads will work better
- Reset All Tools is now more like refresh all tools, meaning we compare the checksums and replace only if they do not match
- Fixed crash when extracting zip files with spaces in the file name
- Log img file creation in img_build.log instead of main.log
- Refactored code to use a color dictionary instead of an import
- Strip trailing spaces and line endings from each line in bloat_custom before searching.
v1.2.0.9
- Fixed pulling img files from device while booted to rooted Android
- Fixed building zip files with parenthesis in name
- Added dead project message when choosing SuperSU root method and ask for confirmation
- Moved Magisk to option 1 in the root menu
- Added suggestion to change USB mode on device from charging to file transfer (MTP) if stuck when pulling img files from Android.
v1.2.0.8
- Fixed crash if a file does not exist when validating kitchen files
- Fixed deleting projects from the main menu
- Fixed crash if smali.zip does not download properly
- Create new apk including the deodexed classes if apk does not exist when deodexing
- Added screen_clear config option that will use either no screen clearing, or tput clear
- Removed use_tput config option in favor of the new screen_clear config option
- Automatically fix geometry errors in ext4 img files during extraction
- Fixed Samsung devices pulling img files from the device through adb (hopefully)
- Fixed lag during extraction after entering your rom name and after choosing the perm type
- Fixed kitchen updater for future updates
- Many other small fixes.
v1.2.0.7
- Fixed relative path symlinks being converted into absolute path
- Fixed system_image.emmc.win being treated like a tar backup
- Added support for extracting TWRP win (tar) backups other than system
- Added support for extracting TWRP win (tar) backups that are also gzipped
- Added new option in Misc Tools > Flashable zip options for long set_metadata updater-script that removes most of the recursive lines and expands the permissions added.
v1.2.0.6
- Fixed crash when extracting due to missing inport.
v1.2.0.5
- Validate checksum of all kitchen files during install and after updates
- Allow to continue when checksums do not match for less important files after update
- Check if apk is already aligned before zipaligning
- Added odm to configure.sh to fix flashing errors on Samsung devices when odm is included in the ROM
- Several small fixes that may have caused crashes
- Code refactoring for performace improvments
- Updated md5 for Busybox Installer by @osm0sis.
v1.2.0.4
- Updated kitchen updater to work with the launcher/installer found in the new *4kitchen Linux distros
- Fixed crash when building rom.zip on some firmware
- Show update menu even if there is no update when checking for updates.
v1.2.0.3
- Fixed kitchen updater always saying it is up to date even if there is an update available
- Fixed crash if vdex file exists but jar file does not when deodexing O and P
- Remove vdex symlinks after deodex.
v1.2.0.2
- Better exception handling when Busybox.zip does not download properly from xda link
- Updated vdexExtractor by @anestisb to the latest commit
- Another attempt at configure.sh
- Added support for extracting Samsung firmware with HOME.md5 and lz4 compression.
v1.2.0.1
- Added configuration option to use tput instead of ascii escape codes to clear the screen
- Updated md5 for Android Image Kitchen v3.4 by @osm0sis
- Updated md5 for Busybox Installer v1.29.3 by @osm0sis
- Fixed extraction of rom.zip that includes payload.bin.
v1.2.0.0
- Complete rewite of the Free kitchen
- Code based on the Donate kitchen
- Dropped support for 32-bit Linux
- No update path from Bash version, a fresh install is required
- Android Pie deodex support
- Latest vdexExtractor
- Magisk root option
- Many, many more fixes and improvements.
v1.1.9.5
- Fixed openjdk 10 being detected as java 1.0 due to new version output without decimal or dash
- Fixed api not being detected during extraction when system/build.prop and system/vendor/build.prop exist causing the updater-script to use default permissions.
v1.1.9.4
- Removed all code attempting to get the kitchen running properly in cygwin and WSL
- Added error message when running in cygwin and WSL
- Removed init.d support.
v1.1.9.3
- Fixed some vendor set_metadata lines being skipped.
v1.1.9.2
- Updated img2sdat.py by @xpirt to v1.6
- Updated md5 for Busybox Installer by @osm0sis
- Updated md5 for Android Image Kitchen v3.2 by @osm0sis.
v1.1.9.1
- When patching sepolicy for Oreo deodex, do not patch cil files if either zygote or dalvikcache_data_file do not already exist in the file
- Remove framework jar files from knox debloat list.
v1.1.9.0
- Fixed flashing issues since adding the backup/restore and changing the location of configure.sh.
v1.1.8.9
- Fixed grep errors during extraction.
v1.1.8.7
- Updated vdexExtractor by @anestisb
- Use new --ignore-crc-error argument to the vdexExtractor command if deodex fails without it
- Write crc ignored files to deodex_crc_ignored log for reference
- Find zygote and dalvikcache_data_file names before patching sepolicy and cil to be sure we get everything patched
- Added backup/restore to all perm types to provide addon.d survival script support
- Updated smali/baksmali to v2.2.3
- Improvements to /vendor set_metadata lines on devices where the default vendor context is not vendor_file
- Added check for Python version to be sure it is 3.5 or higher
- Added support for version, product, and cust partitions in configure.sh for Huawei ROMs.
v1.1.8.6
- Fixed skipping nonplat_file_contexts on Pixel style system.img causing failure when building ext4 img
- Show preparing files text after extracting system.img files.
v1.1.8.5
- Added option to patch sepolicy to allow zygote execute permission for dalvikcache_data_file after deodexing Oreo
- Updated vdexExtractor by @anestisb
- Moved changelog to a different server
- Added several files to the Samsung knox remove list
- Make sure all files with unique permissions make it into the set_setadata updater-script
- Removed pre-defined set_metadata_recursive lines from the updater-script when extracting from img file
- Prevent / being used in zip name
- Fixed updater-script getting wiped when building ROM if there are a large amount of set_metadata lines.
v1.1.8.4
- Fixed AIK download failing due to xda devdb no longer allowing direct downloads from external source.
v1.1.8.3
- Added support for Oreo deodexing with vdexExtractor by @anestisb
- Fixed some file capabilities not being read completely from the mounted img and getting ignored
- Added support for extracting new Samsung firmware that uses lz4 compression
- Fixed /data mount when flashing after adding userdata to the ROM.
v1.1.8.2
- Massive improvements to set_metadata updater-script lines when extracting a system.img as the base
- Sort extract options alphabetically
- New kitchen launcher written in Python to prevent closing double-click to run window after keyboard interupt
- Added support for extracting roms that include system.new.dat.br
- Updated configure.sh to find full byname partition path on device
- Updated updater-scripts to reflect the new configure.sh changes
- Fixed adding /data support not replacing the partition placeholder and not working
- Removed some unused dependencies.
v1.1.8.1
- Updated md5 for Android Image Kitchen by @osm0sis to v3.1
- Use apk name for deodexing instead of app directory name in case the names are different
- General cleanup.
v1.1.8.0
- Fixed removing flags following verify when removing dm-verity
- Call /sbin/unzip instead of busybox unzip when installing SuperSU and Busybox.
v1.1.7.9
- Fixed ownership of fstab and default.prop/prop.default when they are changed and exist outside the boot.img
- Fixed extracting Moto firmware that includes system_b.img
- Fixed extracting Moto firmware that uses sparsechunks and standard ext4.
v1.1.7.8
- Updated checksum for Android Image Kitchen v3.0 by @osm0sis
- Fixed dm-verity status display if fstab exists but dm-verity is in the dtb
- Fixed fstab detection
- Fixed default.prop detection when default.prop is a symlink to /system/etc/prop.default.
v1.1.7.7
- Added support for removing dm-verity from dtb.
v1.1.7.6
- Added support for extracting more Moto firmware
- Added support for fixing Moto system.img with additional superblock.
v1.1.7.5
- Improved on-device by-name detection in configure.sh by testing the path for system and boot
- Fixed /data not flashing in sparse_dat roms if set_metadata is chosen for /data
- Added Free to the banner
- Added devices: Aqua Air, dream2lte, dreamlte, gracelte, hero2lte, marlin, mido.
v1.1.7.4
- New update-binary compiled by @nkk71 to hopefully fix all update-binary errors/issues
- Removed extra mount command in sparse_dat updater-script (thanks @firefds).
v1.1.7.3
- Fixed E:unknown command [] at the end of flashing due to tabs in the updater-script (thanks @nkk71 for finding the solution)
- Removed getcap and bc dependencies
- Added python2 and python3 dependencies
- Replaced oat2dex latest commit with latest release.
v1.1.7.2
- Code cleanup/restructure
- New kitchen launcher with quit and restart options
- Fixed init.d and insecure boot on root owned ramdisk
- Fixed two boot messages that were not showing up
- Updated SuperSU to v2.82 SR5
- Updated Busybox installer by @osm0sis to latest version
- New update-binary for use in all perm types, patched and compiled by @Captain_Throwback
- Updated smali, baksmali, and oat2dex to the latest commits
- Fixed SuperSU.zip download not working since their SSL cert expired.
v1.1.7.1
- Fixed extraction on devices that have spaces in the device name
- Fixed getting mmc partitions from recovery.img
- Removed a single blank line from the top of all screens.
v1.1.7.0
- Updated make_ext4fs for Oreo
- make_ext4fs now uses pure AOSP permissions and capabilities
- Added /system/vendor/etc to fstab check locations
- Look for device name in ro.build.description as a last resort
- Updated img2sdat by @xpirt to version 1.5
- Added link to the Donate version thread in the main menu.
v1.1.6.9
- Added at least partial support for Pixel/XL Oreo
- Added at least partial support for devices such as Odroid where the root partition contains the system files and ramdisk
- Added mmc file for odroidxu3.
v1.1.6.8
- Added support for plat/nonplat_file_contexts as found in Android Oreo
- Fixed apks not getting deodexed if system/app is in the path name but are not in /system/app
- Look for system/init.rc instead of system/default.prop for Pixel/XL firmware detection
- Pixel/XL updater-script: Added / in front of egl symlinks.
v1.1.6.7
- Goodbye git-lfs nightmare, download zips instead
- Updated SuperSU to v2.82-SR3
- Added option to Update all tools in the Misc tools menu.
v1.1.6.6
- Added fileencryption to the forceencrypt removed list
- Add boot.img to updater-script and ROM.zip when building for Pixel/XL devices.
v1.1.6.5
- Properly handle new java -version output
- Skip app when deodexing if there is an app directory but no apk
- Updated Busybox Installer by @osm0sis to v1.27.1.
v1.1.6.4
- Exclude .ftm from fstab list.
v1.1.6.3
- Updated SuperSU to v2.82-SR1
- Limit fstab check to the directory we are looking in
- All boot/recovery.img operations are now run as root
- Removed build.prop requirement when unpacking boot.img.
v1.1.6.2
- Added /data mount and unmount commands when /data/app is enabled.
v1.1.6.1
- Added mofd_v1 to the fstab ignore list
- Fixed fstab not being detected and hanging if /system is not in any existing fstab.
v1.1.6.0
- Fixed Pixel/XL slot detection in configure.sh
- Cleaned up some unused oatdump code.
v1.1.5.9
- Make configure.sh world readable, writable, and executable.
v1.1.5.8
- Added bc to the list of dependencies the kitchen installs if missing
- Changed some things that should help the kitchen run in Windows 10 Creators Edition WSL (still not supported)
- Updated configure.sh to hopefully make it compatible with more devices.
v1.1.5.7
- Added support for sec_omc.zip files in newer cache.img like gs8
- Fixed cache.img not being extracted from tar.md5 when not contained in a zip
- Updated Android Image Kitchen by @osm0sis to v2.8.
v1.1.5.6
- Fixed failing to get directory contexts from system.img
- Included binaries in repo to fix install binary loop.
v1.1.5.5
- Updated smali/baksmali to v2.2.1
- Do not use fstab with .fota in the name.
v1.1.5.4
- Do not use fstab with .fwup in the name.
v1.1.5.3
- Do not use fstab with nodata in the name
- Removed duplicate /system/vendor/firmware set_metadata line.
v1.1.5.2
- Updated Android Image Kitchen by @osm0sis to v2.7.
v1.1.5.1
- Better detection of the correct fstab file when there are several
- Fixed extracting rom zips that contain files with chunk in the name but are not sparsechunk.
v1.1.5.0
- Remove all dm-verity flags from fstab instead of only /system
- Small change to allow running in OSX
- Updated Busybox installer by @osm0sis
- Get file context from file_contexts if ls -Z produces "unlabeled" output.
v1.1.4.9
- Added support for deodexing system/vendor/framework.
v1.1.4.8
- Added api to smali command
- Set api to 26 before deodexing Android O
- Deodex PrebuiltGmsCore/app_chimera with the rest of the ROM
- Updated smali/baksmali to latest commit to fix deodexing on pre O roms.
v1.1.4.7
- Updated smali/baksmali to the latest commits
- Fixed cap_test error in Android O
- Enabled Android O deodexing (Alpha)
- Removed oatdump deodex method for M and N.
v1.1.4.6
- Updated img2sdat
- Updated sdat2img
- Use ls instead of stat to determine file contexts (thanks to @osm0sis for the tip)
- All menus are now ENTER free unless there are more than 9 options
- Added support for /system/CDA (hopefully)
- Fixed some local permission issues building system.img/sparse_dat roms
- Check to be sure files/directories exist before writing metadata line when extracting system.img
- Initial support for Android O
- Prevent deodexing Android O until it works.
v1.1.4.5
- Fixed KitKat and older deodex not finding the correct smali/baksmali
- Combined L-N deodex functions eliminating ~1500 lines of code
- Added error checking to smali/baksmali deodex method
- Updated smali/baksmali to the latest commits
- Create set_metadata lines for all /system/bin and system/vendor/bin files when extracting system.img.
v1.1.4.4
- Allow extracting zips with the word recovery in the file name
- Possibly fixed pulling system.img from some devices
- Fixed custom zips not being packed properly
- Added question asking if you want custom zips to delete the existing directories when flashing
- Fixed updater-script not using capitalized partition names when required.
v1.1.4.3
- Fixed file_contexts not being grabbed before unpacking boot.img manually
- Fixed vendor and extra partitions being added to the updater-script more than once.
v1.1.4.2
- Changed WSL to use Imgextractor.exe to extract img files (OS interoperability must be supported by your version of WSL)
- Replaced all unpack/repack tools with Android Image Kitchen by @osm0sis
- The Windows version of AIK will be downloaded and used when running in cygwin (not tested)
- Updated Busybox to v1.26.2 by @osm0sis.
v1.1.4.1
- Fixed building boot/recovery flashable zips
- Updated mkbootimg/unpackbootimg by @osm0sis
- Added grandprimevelte to devices.
v1.1.4.0
- Fixed not adding the main menu and exit options in the by-name detection menu
- Added option to choose smali/baksmali when there are more than one in tools/smali/current
- Added visual confirmation for oat2dex, smali, and baksmali file selection on the deodex confirm page
- Cleaned some badly formatted code.
v1.1.3.9
- Removed getcap requirement for WSL/cygwin
- Fixed regression in updater-script for vendor, data, misc partitions, and devices that do not use by-name
- Only get permissions and capabilities if we are extracting api 19+
- Added option to return to main menu or quit from by-name detection menu.
v1.1.3.8
- Removed setcap as it is not required
- Updated make_ext4fs source to support Nougat
- Added custom HTC 10 file capabilities to make_ext4fs (thanks @Captain_Throwback)
- Changed SuperSU and Busybox updater-script lines to use /sbin/sh instead of busybox sh (thanks again @Captain_Throwback)
- Renamed slotdetect.sh to configure.sh
- Added on-device by-name detection (thanks @bigrammy)
- Changed by-name detection through adb to use the find command (thanks again @bigrammy)
- Added ability to get by-name from device while booted in custom recovery (previously it only worked from Android)
- Updated smali/baksmail to latest commit
- Updated SuperSU to v2.79-SR3.
v1.1.3.7
- Fixed mode in updater-script
- Add capabilities to local files when extracting system.img/vendor.img.
v1.1.3.6
- Get original file permissions, contexts, and capabilities from mounted system.img and vendor.img when extracting and choosing set_metadata perm type
- Changed permission for su binary in pre-rooted devices.
v1.1.3.5
- Added support for TWRP that appends _a to by-name in recovery.fstab
- Fixed by-name not being detected on devices that contain fstab.zram* files.
v1.1.3.4
- Fixed vendor contexts not being added to the updater-script.
v1.1.3.3
- Fixed unmount errors after flashing SuperSU and/or Busybox
- Added support for Motorola systemchunk files extraction
- Added a couple devices to the device repo
- Allow building ROM with no boot.img after confirmation.
v1.1.3.2
- Fixed config directory not being added to all zips
- Fixed custom zips updater-script.
v1.1.3.1
- Hopefully fixed the /tmp/slotsel error when flashing.
v1.1.3.0
- ROM will now detect active slot on Pixel devices and flash to it (thanks to @mdalexca for the slot detection method and support)
- Prevent using sparse_dat on Pixel devices since it won't work
- Hopefully added Pixel device support for cygwin
- Fixed set_metadata perm type being chosen automatically when extracting a new rom
- Updated SuperSU to v2.79-SR2.
v1.1.2.9
- Updated SuperSU to v2.79-SR1
- Added update-binary to support Nougat sparse_dat (Thanks @Captain_Throwback)
- Updated img2sdat by @xpirt to v1.1
- Use the correct sparse_dat transfer list version for the ROM we are building
- Replaced set_perm with set_metadata in custom zip updater-script
- Use ifelse to unmount if mounted at the beginning of the updater-script.
v1.1.2.8
- Fixed system/default.prop detection when building a rom zip.
v1.1.2.7
- Replaced rimg2sdat with img2sdat.py by @xpirit
- Removed 32-bit sparse_dat restriction
- Updated sdat2img.py by @xpirit
- Updated SuperSU to v2.78-SR5.
v1.1.2.6
- Fixed kitchen terminating right when it starts.
v1.1.2.5
- When extracting system.img, check for all img files in ROM directory and ask if you want to extract and include them
- Add support for xz compressed system.new.dat files in CM builds
- Alpha testing for Pixel devices.
v1.1.2.4
- Use 0550 perms on init.sec.boot.sh when ro.board.platform=exynos5 to fix wifi.
v1.1.2.3
- Do not deodex framework files that are already deodexed in M and N using oatdump and smali/baksmali.
v1.1.2.2
- Updated SuperSU to v2.78-SR4
- Added delete existing directories to updater-script when creating a custom zip
- cygwin - Added notice on first run about cygwin being slower than native Linux
- cygwin - Do not allow zip signing until it gets fixed.
v1.1.2.1
- Updated smali/baksmali to the latest commit
- Changed init.sec.boot.sh permissions to 0644
- Added kitchen version to the support.zip
- cygwin - Improved the speed of converting symlinks during extraction
- cygwin - Fixed error about symlinks.orig.
v1.1.2.0
- Updated Busybox Installer by @osm0sis
- Added a support option in Misc Tools to create a small zip of things that help me when you have an issue
- cygwin - Added aapt.exe and updated most of the binaries thanks to @DarkHeart Z
- cygwin - Fixed not being able to choose sparse_dat.
v1.1.1.9
- Use aapt.exe if it exists in tools dir for repacking apk and jar during deodexing on cygwin, otherwise error message
- Fix device name not being recognized if there are more than one ro.product.device lines in build.prop.
v1.1.1.8
- Fixed cygwin img extraction.
v1.1.1.7
- Updated SuperSU to v2.78-SR3
- Alpha test for cygwin img extract.
v1.1.1.6
- Cleaned up the way we look for and move old rom files to the 00_project_files directory when extracting
- Move bootimg and recoveryimg directories to 00_project_files when extracting new.
v1.1.1.5
- Added check to see if the kitchen was really updated after an update
- Added color back to the kitchen versions on the update screen
- Fixed confusing screen after choosing to extract images from custom recovery.
v1.1.1.4
- Added a bunch of devices
- Fixed mmcblk devices not detecting properly from recovery.img if eol carriage returns are present in fstab
- Updated SuperSU to v2.78 SR2.
v1.1.1.3
- Added option to choose temporary device storage path for adb pull img files, or enter the path manually
- Added the latest adb v1.0.36 for 64-bit Linux OS
- Fixed vendor.img not being extracted from device on N roms
- Updated L deodex algorithm to match M oat2dex
- Added option to choose oat2dex version when deodexing L roms
- Fixed custom zip failing when choosing to zipalign before building.
v1.1.1.2
- Reverted to /proc/meminfo for physical ram detection
- oat2dex for M: Removed option to keep framework when errors occur
- oat2dex for M: Check for errors after finished deodexing the entire rom and report problems all at once
- oat2dex for M: Updated framework deodex algorithm
- Updated smali/baksmali to latest commit.
v1.1.1.1
- Fixed issue where M and N twframework.jar and possibly others would not get deodexed using smali/baksmali and oatdump
- Use aapt to pack classes*.dex instead of 7-zip.
v1.1.1.0
- Do not check english-srk for missing lines when choosing it from the language menu
- Use free utility to determine total ram for heapsize
- Added check to be sure custom heapsize is not greater than the installed physical ram
- Improved the heapsize status in the menu.
v1.1.0.9
- Added custom heapsize option to the Misc Tools Menu
- Added option to choose which oat2dex you want to use if there are more than one in the /kitchen/tools/smali/current directory
- git will only track the current oat2dex the kitchen includes so adding more will no longer disrupt the updater.
v1.1.0.8
- Updated Busybox installer by @osm0sis to v1.25.1
- When building a custom zip that includes lib, lib64 is now included if it exists
- Changed p7zip compression from maximum to normal since there is no apparent size difference and it is less resource intensive.
v1.1.0.7
- Updated smali/baksmali and oat2dex to the latest commits
- Added a check for universe and multiverse repositories before trying to install dependencies, and add the repos if they do not exist.
v1.1.0.6
- Check if framework/oat exists before trying to deodex it for all M and N methods
- Added option to create sparse or raw when choosing to build system.img from the build menu.
v1.1.0.5
v1.1.0.4
- Changed bash check to use $BASH instead of $SHELL
- Fixed M and N smali/baksmali and oatdump deodex methods leaving stray dex files in framework and not creating jar files that do not already exist
- Path without spaces error is now English only due to the language file not being loaded before the error
- Fixed partition size detection using adb shell on N devices
- Updated smali/baksmali and oat2dex to the latest commits.
v1.1.0.3
- Fixed a few missing UI elements
- Rewrite of the smali/baksmali M deodex method using the new 2.2b
- New deodex method for N using the new smali/baksmali 2.2b
- Added oatdump and smali/baksmali labels in the menu for N roms
- Added notification and question regarding deletion of META-INF directory within apk files after deodexing N roms (now you get to choose).
v1.1.0.2
- Fixed Nexus firmware not extracting since they changed the format from tgz to zip.
v1.1.0.1
- The kitchen is now translatable using language files
- Added language chooser if there are files other than english in the languages directory
- If there are new english language elements added after an update, the non-english active language file will be updated with the new english elements for easy translation
- Added Misc Tools menu
- Added language reset to the Misc Tools menu
- Moved Zip new devices to share to Misc Tools menu
- Added Extra Directory menu
- Moved /data/app support to Extra Directory menu
- Updated SuperSU to v2.78-SR1.
v1.1.0.0
- Added support for deodexing Xperia Z2 Marshmallow ROMS
- Removed all Windows Subsystem for Linux (WSL) restrictions
- Possibly made the kitchen more friendly to WSL and CYGWIN (I do not support these in any way and have not tested).
v1.0.9.9
- Completely new Marshmallow deodex method using AOSP oatdump and dexrepair by @anestisb.
v1.0.9.8
- Completely new Nougat deodex method using AOSP oatdump and dexrepair by @anestisb
- Already deodexed files will now show in green during all deodex methods.
v1.0.9.7
- Replaced the update-binary with one that supports flashing zip files larger than 2GB in TWRP v3.0.0-0 and higher (Thanks to @nkk71 for creating the TWRP patch and providing a pre-compiled update-binary
- Thanks to @_that for pointing me in the right direction)
- Added compatibility for other flashable root zips such as phh's superuser
- Changed name of root directory in rom from supersu to rootzip
- Updated SuperSU to v2.78.
v1.0.9.6
- Updated smali, baksmali, and oat2dex to the latest commits
- Added additional checks for set_metadata in case we need to set contexts for symlinks that only exist after the flash
- All contexts in file_contexts will now be added to the updater-script as long as the files exist in the rom, even if we don't have the correct uid/gid for the files
- Changed the order of the get by-name menu, making boot/recovery images recommended
- Added updater for the Installer/Launcher in case you are using Ubuntu4Kitchen or added the kitchen launcher manually.
v1.0.9.5
- Added support for new kind of Samsung firmware structure with multiple tar.md5 files.
v1.0.9.4
- Fixed another variable issue with smali/baksmali M deodex method.
v1.0.9.3
- Fixed M smali/baksmali method for priv-app.
v1.0.9.2
- Fixed cpio error when unpacking boot.img with hidden directories in ramdisk
- Remove smali/baksmali as a backup for M oat2dex method
- Added better error logging when deodexing M using oat2dex and when deodexing N
- Allow keeping framework odex files when apps have errors so you can easily try the smali/baksmali method after the oat2dex method
- Reverted M baksmali command to the way it was in v1.0.8.8 and earlier
- New Feature - When deodexing M using oat2dex method, you now have the option to choose official oat2dex v0.86 or Latest commit built from source
- Update oat2dex to the latest commit.
v1.0.9.1
- Added support for odex.app.sqsh and odex.priv-app.sqsh
- Fixed framework directory being moved to system/app if there is an odexed apk in framework while deodexing L.
v1.0.9.0
- Added support for deodexing api level 24, Android Nougat
- Added check to be sure build.prop exists after extracting
- Added notice of possible failure before deodexing.
v1.0.8.9
- Fixed Samsung csc files with spaces in the name not getting copied to system
- Added cache.img.ext4 and cache.ext4 rename to cache.img before rom extraction
- Updated smali/baksmali to latest commit
- Updated 7z to v16.02
- Determine the largest java heap size for deodexing while keeping 500M for your system
- Improved the way files for extraction are detected in the ROM directory.
v1.0.8.8
- Updated SuperSU to version 2.76
- Updated oat2dex.jar used in N roms to latest commit
- Fixed csc not being extracted in s7 edge ROMS.
v1.0.8.7
- Fixed deodexing M with smali/baksmali
- All deodex methods will now use all classes instead of only classes.dex, classes2.dex, and classes3.dex.
v1.0.8.6
- Fixed L deodex deleting all apps after deodexing.
v1.0.8.5
- Fixed exit_deo errors, and hopefully the other issues along with it.
v1.0.8.4
- Fixed issues deodexing Lollipop roms since v1.0.8.1.
v1.0.8.3
- Fixed deodexing that broke in v1.0.8.1.
v1.0.8.2
- Fixed jar files not found while deodexing.
v1.0.8.1
- Rewrote all deodex functions for efficiency.
v1.0.8.0
- Fixed a few harmless typos in the ui
- Fixed a typo in the knox remove list
- Fixed system.img.ext4 not being found and renamed to system.img.
v1.0.7.9
- Added a5xelte to device database
- Added more knox apps to be removed
- Removed the sparse_dat recommendation.
v1.0.7.8
- Updated SuperSU to v2.74-2
- Re-added support for tar.a backups
- Added LG Zone2 to device database
- Added support for getting by-name from recovery.img.
v1.0.7.7
- dm-verity - Also look for and replace verify on /vendor lines in fstab
- Fixed fstab detection.
v1.0.7.6
- Support for adding/removing forcefdeorfbe (the new forceencrypt found in N roms)
- Changed the adding/removing forceencrypt method
- dm-verity - only look for and replace verify on /system lines in fstab.
v1.0.7.5
- Fixed forceencrypt not being detected properly
- forceencrypt can now be added and removed.
v1.0.7.4
- Added support for tar.md5 files not inside a zip.
v1.0.7.3
- Added Root Menu to ROM Tools
- Moved su.d from Boot Tools to the Root Menu
- Moved root and busybox add/remove to the Root Menu.
v1.0.7.2
v1.0.7.1
- Fixed terminal background colors.
v1.0.7.0
- Updated SuperSU to v2.72.
v1.0.6.9
- Fixed assert issues
- Removed current assert display from ROM Tools
- Added device assert display to the Asserts menu
- Added custom assert display to Asserts menu
- Added ROM Tools menu option to Asserts menu
- Changing asserts will now return you to the Asserts menu instead of ROM Tools menu.
v1.0.6.8
- Fixed the random sedxxxx file appearing when building rom zip on OnePlus.
v1.0.6.7
- Fixed device name not being found on OnePlus
- Fixed by-name from boot.img not being detected on OnePlus.
v1.0.6.6
- Added ability to extract rom zips created with the new update-binary method
- Fixed an issue where the kitchen might close occasionally when you first start it.
v1.0.6.5
- Java 8 is now required to use the kitchen.
v1.0.6.4
- Removed mount/unmount for /data/app support
- Removed capabilities from data set_metadata
- Updated oat2dex, smali, and baksmali to the latest commits.
v1.0.6.3
- Fixed scrollback not going past 2 screens in gnome-terminal on Ubuntu 16.04 and probably others
- Fixed allowing special characters typed in menu to break the kitchen.
v1.0.6.2
- Fixed Samsung firmware not extracting if system.img is named system.img.ext4 inside the tar.
v1.0.6.1
- Install default-jre instead of openjdk-7-jre since it is not available in 16.04
- Added libc6-i386 to dependencies installer for 64-bit Linux.
v1.0.6.0
v1.0.5.9
- Fixed more stuff for Bash on Ubuntu on Windows
- Changed updater to read changelog from file on Bitbucket
- The kitchen updater will now only work for git clones.
v1.0.5.8
- Added apt-get update before installing dependencies
- Fixed dependencies issue using Bash on Ubuntu on Windows.
v1.0.5.7
- Updated oat2dex from latest source for N deodexing
- Fixed N Preview 2 deodexing.