diff --git a/common/shlibs b/common/shlibs index 58a46de863d23b..5cb3a4509007a5 100644 --- a/common/shlibs +++ b/common/shlibs @@ -970,8 +970,8 @@ libomptarget.so.18.1 libomp-18.1.8_1 libisofs.so.6 libisofs-0.6.24_1 libmpack.so.0 libmpack-1.0.5_1 libGeoIP.so.1 libgeoip-1.4.8_1 -libnilfs.so.0 libnilfs-2.1.0_1 -libnilfsgc.so.0 libnilfs-2.1.0_1 +libnilfs.so.3 libnilfs-2.3.1_1 +libnilfsgc.so.3 libnilfs-2.3.1_1 libnilfscleaner.so.0 libnilfs-2.1.0_1 libchicken.so.11 libchicken-5.1.0_1 libzix-0.so.0 zix-0.4.2_1 diff --git a/srcpkgs/mpg123-extras/template b/srcpkgs/mpg123-extras/template index 256a6832aa07d4..b226ac56256a65 100644 --- a/srcpkgs/mpg123-extras/template +++ b/srcpkgs/mpg123-extras/template @@ -1,8 +1,8 @@ # Template file for 'mpg123-extras' # Sync with mpg123 pkgname=mpg123-extras -version=1.33.5 -revision=2 +version=1.33.7 +revision=1 build_style=gnu-configure # --with-cpu not necessary, upstream detects features correctly # --with-optimization=0 makes the configure script respect xbps-src's defaults. @@ -16,7 +16,7 @@ license="LGPL-2.1-only" homepage="https://www.mpg123.org/" changelog="https://www.mpg123.de/trunk/NEWS" distfiles="https://www.mpg123.org/download/mpg123-${version}.tar.bz2" -checksum=0d7ebc8da0aff3ca383c8c6b5a6adbe402ee5bb256685b8c5499f3a739f9d6dd +checksum=31d0e35a4ca567ec9b5ebda6c3062bb4435d6d3eacd6ef0d95cadd7854dc03ee # Restrict extras to the same matching version, ignore revision _depends="libmpg123>=${version}_1<=${version}_9999" diff --git a/srcpkgs/mpg123/template b/srcpkgs/mpg123/template index 0336375d57e20c..9bbbfcde25880f 100644 --- a/srcpkgs/mpg123/template +++ b/srcpkgs/mpg123/template @@ -1,8 +1,8 @@ # Template file for 'mpg123' # Sync with mpg123-extras pkgname=mpg123 -version=1.33.5 -revision=2 +version=1.33.7 +revision=1 build_style=gnu-configure # --with-cpu not necessary, upstream detects features correctly # --with-optimization=0 makes the configure script respect xbps-src's defaults. @@ -15,7 +15,7 @@ license="LGPL-2.1-only" homepage="https://www.mpg123.org/" changelog="https://www.mpg123.de/trunk/NEWS" distfiles="${SOURCEFORGE_SITE}/mpg123/mpg123-${version}.tar.bz2" -checksum=0d7ebc8da0aff3ca383c8c6b5a6adbe402ee5bb256685b8c5499f3a739f9d6dd +checksum=31d0e35a4ca567ec9b5ebda6c3062bb4435d6d3eacd6ef0d95cadd7854dc03ee if [ "$XBPS_TARGET_LIBC" = musl ]; then # No LFS required with musl @@ -31,6 +31,7 @@ libmpg123_package() { vmove usr/lib/mpg123/output_alsa.so } } + mpg123-devel_package() { depends="libmpg123-${version}_${revision}" short_desc+=" - Development files" diff --git a/srcpkgs/nilfs-utils/template b/srcpkgs/nilfs-utils/template index 89175e29a4492e..2665dd5c5bf195 100644 --- a/srcpkgs/nilfs-utils/template +++ b/srcpkgs/nilfs-utils/template @@ -1,25 +1,27 @@ # Template file for 'nilfs-utils' pkgname=nilfs-utils -version=2.2.9 +version=2.3.1 revision=1 build_style=gnu-configure -configure_args="--without-selinux" -make_install_args="sbindir=/usr/bin" +configure_args="--without-selinux --with-libmount --enable-usrmerge=bin --enable-static" +hostmakedepends="autoconf automake libtool pkg-config" makedepends="libblkid-devel libmount-devel libuuid-devel" conf_files="/etc/nilfs_cleanerd.conf" short_desc="Log-structured file system for Linux - userspace utils" maintainer="Orphaned " -license="GPL-2.0-only, LGPL-2.1-only" +license="GPL-2.0-only" homepage="https://nilfs.sourceforge.io/" -distfiles="https://nilfs.sourceforge.io/download/${pkgname}-${version}.tar.bz2" -checksum=5df63998c2084182c8c608a29b47b1771b825b4b5fa7916c12cca2fcb7577a97 +changelog="https://raw.githubusercontent.com/nilfs-dev/nilfs-utils/refs/heads/master/ChangeLog" +distfiles="https://github.com/nilfs-dev/nilfs-utils/archive/refs/tags/v${version}.tar.gz" +checksum=f4488f2978b3054fd97f87d206032cbf376d98479759d2855b57bc24a8d8efb9 -post_install() { - mv ${DESTDIR}/sbin/* ${DESTDIR}/usr/bin/ +pre_configure() { + ./autogen.sh } libnilfs_package() { short_desc="${short_desc/utils/libraries}" + license="LGPL-2.1-only" pkg_install() { vmove "usr/lib/*.so.*" } @@ -28,6 +30,7 @@ libnilfs_package() { nilfs-utils-devel_package() { depends="${makedepends} libnilfs>=${version}_${revision}" short_desc="${short_desc/utils/development files}" + license="LGPL-2.1-only" pkg_install() { vmove usr/include vmove "usr/lib/*.a" diff --git a/srcpkgs/partclone/patches/01bbe56ce51d49a4cf05bbaafdf19936b39aee0d.patch b/srcpkgs/partclone/patches/01bbe56ce51d49a4cf05bbaafdf19936b39aee0d.patch new file mode 100644 index 00000000000000..2a7514f84af929 --- /dev/null +++ b/srcpkgs/partclone/patches/01bbe56ce51d49a4cf05bbaafdf19936b39aee0d.patch @@ -0,0 +1,99 @@ +From 01bbe56ce51d49a4cf05bbaafdf19936b39aee0d Mon Sep 17 00:00:00 2001 +From: tuxxx +Date: Mon, 22 Jun 2026 10:39:49 +0200 +Subject: [PATCH] Fix compatibility with nilfs-utils 2.3 + +Use the public nilfs_get_layout() API now that struct nilfs is opaque. Recalculate used block counts from the segment bitmap in every mode that reads it. + +Fixes https://github.com/Thomas-Tsai/partclone/issues/289 + +References https://gitlab.archlinux.org/archlinux/packaging/packages/partclone/-/work_items/10 +--- + src/main.c | 2 ++ + src/nilfsclone.c | 22 ++++++++++++++-------- + 2 files changed, 16 insertions(+), 8 deletions(-) + +diff --git a/src/main.c b/src/main.c +index 79949f8a..4fdae354 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -327,6 +327,7 @@ int main(int argc, char **argv) { + /// read and check bitmap from partition + log_mesg(0, 0, 1, debug, "Calculating bitmap... Please wait... "); + read_bitmap(source, fs_info, bitmap, pui); ++ update_used_blocks_count(&fs_info, bitmap); + + /// check the dest partition size. + if (opt.dd && opt.check && !target_stdout) { +@@ -374,6 +375,7 @@ int main(int argc, char **argv) { + /// read and check bitmap from partition + log_mesg(0, 0, 1, debug, "Calculating bitmap... Please wait... "); + read_bitmap(source, fs_info, bitmap, pui); ++ update_used_blocks_count(&fs_info, bitmap); + + /// check the dest partition size. + /* skip check free space while torrent_only on */ +diff --git a/src/nilfsclone.c b/src/nilfsclone.c +index 27540f3f..2147090f 100644 +--- a/src/nilfsclone.c ++++ b/src/nilfsclone.c +@@ -35,7 +35,6 @@ + + int mnt_x=0; + char *mnt_path = "/tmp/partclone_nilfs2_mnt/"; //fixme +-struct nilfs_super_block *sbp; + struct nilfs *nilfs; + + extern fs_cmd_opt fs_opt; +@@ -226,12 +225,18 @@ extern void read_bitmap(char* device, file_system_info fs_info, unsigned long* b + /// read super block and write to image head + extern void read_super_blocks(char* device, file_system_info* fs_info) + { ++ struct nilfs_layout layout; ++ + if (fs_open(device) != 0) { + return; // Abort + } +- sbp = nilfs->n_sb; ++ if (nilfs_get_layout(nilfs, &layout, sizeof(layout)) < 0) { ++ log_mesg(0, 1, 1, fs_opt.debug, "ERROR: Failed to get NILFS layout: %s.\n", strerror(errno)); ++ fs_close(); ++ return; ++ } + strncpy(fs_info->fs, nilfs_MAGIC, FS_MAGIC_SIZE); +- fs_info->block_size = nilfs_get_block_size(nilfs); ++ fs_info->block_size = layout.blocksize; + + if (fs_info->block_size < MIN_NILFS_BLOCK_SIZE || fs_info->block_size > MAX_NILFS_BLOCK_SIZE || (fs_info->block_size & (fs_info->block_size - 1)) != 0) { + log_mesg(0, 1, 1, fs_opt.debug, "ERROR: Invalid block size detected in superblock: %u.\n", fs_info->block_size); +@@ -239,8 +244,8 @@ extern void read_super_blocks(char* device, file_system_info* fs_info) + return; + } + +- if (sbp->s_dev_size == 0) { +- log_mesg(0, 1, 1, fs_opt.debug, "ERROR: Device size (s_dev_size) is zero in superblock.\n"); ++ if (layout.devsize == 0) { ++ log_mesg(0, 1, 1, fs_opt.debug, "ERROR: Device size is zero in NILFS layout.\n"); + fs_close(); + return; + } +@@ -249,7 +254,7 @@ extern void read_super_blocks(char* device, file_system_info* fs_info) + fs_close(); + return; + } +- fs_info->totalblock = sbp->s_dev_size / fs_info->block_size; ++ fs_info->totalblock = layout.devsize / fs_info->block_size; + + if (fs_info->totalblock == 0 || fs_info->totalblock > MAX_NILFS_TOTAL_BLOCKS) { + log_mesg(0, 1, 1, fs_opt.debug, "ERROR: Maliciously large or zero total blocks detected in superblock: %llu. Max allowed: %llu\n", fs_info->totalblock, MAX_NILFS_TOTAL_BLOCKS); +@@ -265,7 +270,8 @@ extern void read_super_blocks(char* device, file_system_info* fs_info) + } + fs_info->device_size = fs_info->totalblock * fs_info->block_size; + +- fs_info->usedblocks = fs_info->totalblock - sbp->s_free_blocks_count; +- fs_info->superBlockUsedBlocks = fs_info->usedblocks; ++ /* main.c updates usedblocks from the segment bitmap after this call. */ ++ fs_info->usedblocks = 0; ++ fs_info->superBlockUsedBlocks = 0; + fs_close(); + } diff --git a/srcpkgs/partclone/patches/glibc-2.36.patch b/srcpkgs/partclone/patches/glibc-2.36.patch deleted file mode 100644 index e31de94c99029a..00000000000000 --- a/srcpkgs/partclone/patches/glibc-2.36.patch +++ /dev/null @@ -1,24 +0,0 @@ -Index: partclone-0.3.20/src/f2fs/libf2fs.c -=================================================================== ---- partclone-0.3.20.orig/src/f2fs/libf2fs.c -+++ partclone-0.3.20/src/f2fs/libf2fs.c -@@ -22,7 +22,6 @@ - #include - #include - #include --#include - - #include "f2fs_fs.h" - -Index: partclone-0.3.20/src/partclone.c -=================================================================== ---- partclone-0.3.20.orig/src/partclone.c -+++ partclone-0.3.20/src/partclone.c -@@ -37,7 +37,6 @@ - #include - #include - #include "gettext.h" --#include - #include - #include - #define _(STRING) gettext(STRING) diff --git a/srcpkgs/partclone/template b/srcpkgs/partclone/template index a8a6912c16360f..74879e0fad14a8 100644 --- a/srcpkgs/partclone/template +++ b/srcpkgs/partclone/template @@ -1,21 +1,22 @@ # Template file for 'partclone' pkgname=partclone -version=0.3.25 +version=0.3.47 revision=1 build_style=gnu-configure configure_args="--disable-rpath --enable-ncursesw --enable-f2fs --enable-extfs --enable-hfsp --enable-fat --enable-exfat --enable-ntfs --enable-btrfs --enable-minix --enable-nilfs2" -hostmakedepends="pkg-config automake autoconf libtool" +hostmakedepends="pkg-config automake autoconf libtool gettext-devel-tools libxslt docbook-xsl" makedepends="e2fsprogs-devel libuuid-devel ncurses-devel ntfs-3g-devel - nilfs-utils-devel openssl-devel" + nilfs-utils-devel openssl-devel xxHash-devel libzstd-devel" short_desc="File system clone and restore utilities" maintainer="Orphaned " license="GPL-2.0-or-later" homepage="https://partclone.org/" distfiles="https://github.com/Thomas-Tsai/partclone/archive/refs/tags/${version}.tar.gz" -checksum=e8d19234809fb11cac9676e653865fbb789731a5cbe9b191d0308fe645d5f1c7 -CFLAGS="-DBTRFS_DISABLE_BACKTRACE" +checksum=8215844d14737d8fbb09fe1b1eafe688a8c790eafc8413a26c08e5795ac9ccd3 + +# CFLAGS="-DBTRFS_DISABLE_BACKTRACE" pre_configure() { ./autogen