openwrt-mirror/package/system
Eric Fahlgren 5d85657f6d apk-tools: implement compression of on-device scripts.tar
Default behavior for apk was to create an uncompressed scripts.tar
file.  Due to the structure of tar files, with fixed block
size and null padding, this file becomes very large on OpenWrt
installations where there are typically two scripts per package.
This could cause the raw tar file to easily grow to over 500KB,
whereas the compressed file is generally around 20-30KB.

When stored in the /rom partition of a squashfs device, the file
is compressed and this is not an issue.  But, as soon as you add
or delete a package, the scripts.tar file is fully expanded into
the /overlay partition and can cause issues on small-flash devices.

This issue was addressed in an upstream commit by detecting
whether the scripts.tar file is compressed (its name must be
exactly 'scripts.tar.gz'), and then retaining that compression by
reading/writing the file using a compressed stream.

This commit applies a cherrypicked patch for the upstream commit, and
compresses the scripts.tar during construction of the device rootfs.

Fixes: https://github.com/openwrt/openwrt/issues/17108
Link: 012cdcfdf9
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-18 17:25:06 +01:00
..
apk apk-tools: implement compression of on-device scripts.tar 2025-11-18 17:25:06 +01:00
ca-certificates ca-certificates: Update to 20250419 2025-07-21 23:41:34 +02:00
fstools fstools: update to Git HEAD (2025-10-03) 2025-10-03 23:56:46 +02:00
fwtool fwtool: update to Git HEAD (2025-10-03) 2025-10-03 23:56:29 +02:00
gpio-cdev/nu801 nu801: Mark as nonshared to build in step 1 2024-11-04 21:20:37 +01:00
iucode-tool packages: refresh patches 2024-05-31 11:30:06 +02:00
mtd mtd: fix building with GCC 15.1 2025-06-08 12:20:15 +02:00
openwrt-keyring openwrt-keyring: apk: use just snapshot key explicitly 2024-11-25 12:20:59 +01:00
opkg opkg: update to Git HEAD (2025-11-05) 2025-11-05 16:47:32 +01:00
procd procd: update to Git HEAD (2025-10-04) 2025-10-04 00:08:50 +02:00
refpolicy packages: refresh patches 2024-05-31 11:30:06 +02:00
rpcd rpcd: update to Git HEAD (2025-11-07) 2025-11-08 12:12:18 +01:00
selinux-policy selinux-policy: update version to v2.8.2 2025-07-26 18:22:30 +02:00
ubox ubox: update to Git HEAD (2025-10-30) 2025-11-11 00:20:14 +01:00
ubus ubus: update to Git HEAD (2025-11-03) 2025-11-11 00:21:16 +01:00
ucert ucert: update to Git HEAD (2025-10-03) 2025-10-03 23:55:09 +02:00
uci uci: update to Git HEAD (2025-11-03) 2025-11-11 00:22:11 +01:00
urandom-seed treewide: disable QUILT refresh for unsupported packages 2023-10-20 16:13:13 +02:00
urngd urngd: update to Git HEAD (2025-10-03) 2025-10-03 23:54:41 +02:00
usign usign: update to Git HEAD (2025-10-03) 2025-10-03 23:54:34 +02:00
zram-swap treewide: replace AUTORELEASE with real PKG_RELEASE 2023-05-18 11:35:29 +02:00