summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-06-03 00:07:26 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-06-03 00:07:26 +0100
commita3bb28551df94028000fb72308a9e9baa01458b0 (patch)
tree33b14c7bf0dffbd5bb04dbd5b395514ebdda4896 /sys-fs
parent6657c680376cedf378fcf328e5fa03ed3b41d580 (diff)
gentoo auto-resync : 03:06:2024 - 00:07:25
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/Manifest.gzbin22075 -> 22071 bytes
-rw-r--r--sys-fs/btrfs-progs/Manifest8
-rw-r--r--sys-fs/btrfs-progs/btrfs-progs-6.8.1.ebuild2
-rw-r--r--sys-fs/btrfs-progs/btrfs-progs-6.8.ebuild201
-rw-r--r--sys-fs/btrfs-progs/btrfs-progs-9999.ebuild2
-rw-r--r--sys-fs/btrfs-progs/files/btrfs-progs-6.8-musl-1.2.5.patch209
-rw-r--r--sys-fs/mergerfs-tools/Manifest2
-rw-r--r--sys-fs/mergerfs-tools/mergerfs-tools-0_p20230912.ebuild32
-rw-r--r--sys-fs/mergerfs/Manifest4
-rw-r--r--sys-fs/mergerfs/mergerfs-2.40.2.ebuild (renamed from sys-fs/mergerfs/mergerfs-2.35.1.ebuild)21
10 files changed, 50 insertions, 431 deletions
diff --git a/sys-fs/Manifest.gz b/sys-fs/Manifest.gz
index 9413ea7fcd08..7e3a52b4a928 100644
--- a/sys-fs/Manifest.gz
+++ b/sys-fs/Manifest.gz
Binary files differ
diff --git a/sys-fs/btrfs-progs/Manifest b/sys-fs/btrfs-progs/Manifest
index 04f3923235e3..68a29750d024 100644
--- a/sys-fs/btrfs-progs/Manifest
+++ b/sys-fs/btrfs-progs/Manifest
@@ -1,15 +1,11 @@
-AUX btrfs-progs-6.8-musl-1.2.5.patch 6548 BLAKE2B 6c49be6ca93f12772a98b109c13c70b66e52837f037a019d79aa56a3fc7863a8971319ee61215626873ec8e1704ddd69777922a53afe72577e1bd2e181747106 SHA512 d662d5d19bfa2458dc26c8b3fec3819b10a2f1192458f9ba036b50fad120da2ad3c65e85e69e8738d9d3747a65166b04548a0ad47ce8104f21925df5a00c5d7b
DIST btrfs-progs-v6.6.3.tar.sign 566 BLAKE2B 9f8a14405f78c8eb5a92d59f9ca776cd15bfd43bc323a0f5a98cc2d9a6f782e999a792ddb266fef4dfe189e1cb8eebbd021a12b615e22bdd4097a74bf3b277a9 SHA512 07f062cf66c0e5f0bd833f0a1c9901ec06ac4eb258acec8e96ffbb0b85007a67bdc992492b25f6039fcf603352131fca8c57162fa61007e8ccf1f4edf71dab97
DIST btrfs-progs-v6.6.3.tar.xz 2557216 BLAKE2B 274fad52bcab45bd0f6496c1bc10e1736e7b766f53b712790996a8a38f74eedcc570783599bed62cd4f84e5629f2216340a66941d9fbe0c7890f1c56ed66df8a SHA512 93e1defacf0f280fc02e10a20fd2bc3775c52956a0339e30b829cc3bef85629d565cf3f6a9af126e38bbb73e8e9b9a0069abbe0e57957a56ca1a8826f5de624a
DIST btrfs-progs-v6.7.1.tar.sign 566 BLAKE2B e5aba64e199f26cef84a8cbbb034c0a5c24572e43fef2fdce79f0dbd892b1609876f681bf79de53e6473345f3de8b8fee6aac2d33673e0b080ab33fb935bd32d SHA512 8fad1c2c47356a04434e12621c526603bf651bdcb0a08deb4022d83953d8c501b8aaa2da05cbf94e0bde43b48a4135fff78a5746423466036ff4899dd79b9589
DIST btrfs-progs-v6.7.1.tar.xz 2565576 BLAKE2B 4e05e9dd80e5531425490970318389aef280f61cc636a80aa2bbc630399afd4f1f3ce649d194822ff93ff4b1774d65a504e3bed6f1426ff60830e4c0d0ac87b0 SHA512 8a2e735f036a0778a2482d42c813012269903174232bc2924af41b72bbcfb49783d5f3b7d0af085285a68754748bd76b6534a498a47cdcea94020f4262281ffc
DIST btrfs-progs-v6.8.1.tar.sign 566 BLAKE2B 843eada2b00a2370522edc95d79bcfed88bd24233e647946d4807322550593e4d5f5bb5efa6652c754dd0965dc3e389bc97698a0bd8fc5d0e850bea94de98e72 SHA512 84ebaa6ec27aa5bc87a323f5c6cc82a860fada7311ab8319127de3592294c1076d25959e412f8387d54bad3b8ff838ce39c4db4b04a658b2de2eaa7c976e2b09
DIST btrfs-progs-v6.8.1.tar.xz 2652968 BLAKE2B 34406dedc6d97bd94a498c3bbb424d34a59b8251b37f9a40a87740f96db77780a4cd76c88055b4d9e4f673b4a3621503a6bedb67ceaf20870fb26c10f49b74e0 SHA512 b5f0694e56eecf1956313b3406610c2e22658ace51a636d79efe996780bb0b03fed95e68a8c9a11dd8649958c0e7dbc7417bb479859365d47b52e478f6830d46
-DIST btrfs-progs-v6.8.tar.sign 566 BLAKE2B 2f063015b515980a88980d02ac359363506d8445bf6ebffccd0f224b09b457b9d859ec7ae1371d3dcb04cfcb29ceee75ec8f73c2adee4765ca8287a79929234c SHA512 d858033046af03d9f7bedb492eadaaae92c8d3dde451e52fc78a8a1c4dbf57078e8d907dbd3344f1414b4dad9646aef616ddec0c0fefaf65340411e84c36c96f
-DIST btrfs-progs-v6.8.tar.xz 2587804 BLAKE2B 0f4cc83fa896bc932fdcd34fffae72b0fad44424ac0b5e2b7bde44dd91fcef33f2fa2ef36eb77299de753e4d4b47794cabad5d84760b9d34a9b6765a834d15b7 SHA512 adce7c15ef5a19c4fc513f1743b4f65f2c72aa4490703d36c93230abb305c576bd69a32c4bcf19c2b58aee5b5755e0d54fb82fe649a5fe021366eb0d89af4261
EBUILD btrfs-progs-6.6.3.ebuild 4581 BLAKE2B c5fd9d72bfe270bf54838e0b0eff08cb9405711792cdd1775f21ff853a6202ba0f7ccff8a043f39da02d8cdcd36a253d03c53812ad293f64b6ce26df9e1c505e SHA512 a8af6e0941002d70cebef2fd96838c1bf630ad95bd4871e83097fd552ec5f01d253f675c05551f56c92871d5a40acae697c1f69e194c1cc9b915bb9acdb1cdc9
EBUILD btrfs-progs-6.7.1.ebuild 4581 BLAKE2B c5fd9d72bfe270bf54838e0b0eff08cb9405711792cdd1775f21ff853a6202ba0f7ccff8a043f39da02d8cdcd36a253d03c53812ad293f64b6ce26df9e1c505e SHA512 a8af6e0941002d70cebef2fd96838c1bf630ad95bd4871e83097fd552ec5f01d253f675c05551f56c92871d5a40acae697c1f69e194c1cc9b915bb9acdb1cdc9
-EBUILD btrfs-progs-6.8.1.ebuild 4581 BLAKE2B c5fd9d72bfe270bf54838e0b0eff08cb9405711792cdd1775f21ff853a6202ba0f7ccff8a043f39da02d8cdcd36a253d03c53812ad293f64b6ce26df9e1c505e SHA512 a8af6e0941002d70cebef2fd96838c1bf630ad95bd4871e83097fd552ec5f01d253f675c05551f56c92871d5a40acae697c1f69e194c1cc9b915bb9acdb1cdc9
-EBUILD btrfs-progs-6.8.ebuild 4664 BLAKE2B 0b4ecbac2a6303d8d58434c438f585c2f429ee0ee73fa1dc3e1662bdb8197cdf9d24b31c246dbfbb2f2835398c12be332f8dfb264faa1e64b29858f5443ed731 SHA512 96aff43e2b197f568cf72e17eaa17b2289024804d1c2a5aef2cff4ffde92c6db8e20752df7de9cb53df1548b29e71eb7bb5d058ebd36868359d5bbb560f4a3b6
-EBUILD btrfs-progs-9999.ebuild 4587 BLAKE2B 56fdeba0f5693caac717e63dba5c5cc62068f4b0a013c07c5407b1c19c114c8a2697ded9bcd4974e8fddb87631c8d324150e076eb7e744e4ddb650eb4684ef40 SHA512 a71b38d90bb773e5beafadae60411815f18e33c561e31c5c089d574043e7332a28968486a35fcab24893876728bceb10006b0f772bd7fdc55776afc7c9484ba7
+EBUILD btrfs-progs-6.8.1.ebuild 4581 BLAKE2B d396df46d93764918662ebef638bffd6383d959e924dcbd130851d8ea853d4e8999e4144b171080c694e1dd8d531fcaa0dfe7049a8b3479c2b40884d38f019b4 SHA512 7a26a82542bb82e3d429342b9421c8bda1b0ce5cfe516329dfca2ae8545ebdc97fa951a5755c43e981e5298a9a5bbf867e018929d74cc9bfb8b2486f4785e003
+EBUILD btrfs-progs-9999.ebuild 4587 BLAKE2B eeb427390e6c7cc2834214201d7eac292bdc83c305923110d9d512e103deb43b4206425b6efcd5843ec27dda8371755554a5e9d9ab3a6a5f1aa419351fc695ff SHA512 ff6baffe50f9c881ba5969403dd12c5d1f525677dc37acabb4344cf355ddd56328ad392e81708940582a3f93cdcbc130fa88a4935a9218258689d3d276caf5c6
MISC metadata.xml 610 BLAKE2B 70361c4d5434a98f73a3d38ed47d7be830783529db6217396f2235cdedd58744fc6e52e4de1994d28184fe9d8aa5d2982c433d47eda1868cfdb79edf0769a620 SHA512 8958c02574adb1395a9d21d9e9ad5db38570b82a1c7211752eb007eecbd0e541e880a060649641f40be877f167e14f278f14d5ef8775766ef9a6fa5d3843dc53
diff --git a/sys-fs/btrfs-progs/btrfs-progs-6.8.1.ebuild b/sys-fs/btrfs-progs/btrfs-progs-6.8.1.ebuild
index 565618d2fca3..0b8a3e9f25c2 100644
--- a/sys-fs/btrfs-progs/btrfs-progs-6.8.1.ebuild
+++ b/sys-fs/btrfs-progs/btrfs-progs-6.8.1.ebuild
@@ -157,7 +157,7 @@ src_configure() {
export EXTRA_PYTHON_CFLAGS="${CFLAGS}"
export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}"
- # bash as a tepmorary workaround for https://github.com/kdave/btrfs-progs/pull/721
+ # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721
CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
}
diff --git a/sys-fs/btrfs-progs/btrfs-progs-6.8.ebuild b/sys-fs/btrfs-progs/btrfs-progs-6.8.ebuild
deleted file mode 100644
index 1f531bde0013..000000000000
--- a/sys-fs/btrfs-progs/btrfs-progs-6.8.ebuild
+++ /dev/null
@@ -1,201 +0,0 @@
-# Copyright 2008-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit bash-completion-r1 python-single-r1 udev
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git"
- EGIT_BRANCH="devel"
- WANT_LIBTOOL="none"
- inherit autotools git-r3
-else
- VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc
- inherit verify-sig
-
- MY_PV="v${PV/_/-}"
- MY_P="${PN}-${MY_PV}"
- SRC_URI="
- https://www.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz
- verify-sig? ( https://www.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign )
- "
- S="${WORKDIR}"/${PN}-${MY_PV}
-
- if [[ ${PV} != *_rc* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
- fi
-fi
-
-DESCRIPTION="Btrfs filesystem utilities"
-HOMEPAGE="https://btrfs.readthedocs.io/en/latest/"
-
-LICENSE="GPL-2"
-SLOT="0/0" # libbtrfs soname
-IUSE="+convert python +man reiserfs static static-libs udev +zstd"
-# Could support it with just !systemd => eudev, see mdadm, but let's
-# see if someone asks for it first.
-REQUIRED_USE="static? ( !udev ) python? ( ${PYTHON_REQUIRED_USE} )"
-
-# Tries to mount repaired filesystems
-RESTRICT="test"
-
-RDEPEND="
- dev-libs/lzo:2=
- sys-apps/util-linux:=[static-libs(+)?]
- sys-libs/zlib:=
- convert? (
- sys-fs/e2fsprogs:=
- reiserfs? (
- >=sys-fs/reiserfsprogs-3.6.27
- )
- )
- python? ( ${PYTHON_DEPS} )
- udev? ( virtual/libudev:= )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="
- ${RDEPEND}
- >=sys-kernel/linux-headers-5.10
- convert? ( sys-apps/acl )
- python? (
- $(python_gen_cond_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- )
- static? (
- dev-libs/lzo:2[static-libs(+)]
- sys-apps/util-linux:0[static-libs(+)]
- sys-libs/zlib:0[static-libs(+)]
- convert? (
- sys-fs/e2fsprogs[static-libs(+)]
- reiserfs? (
- >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)]
- )
- )
- zstd? ( app-arch/zstd[static-libs(+)] )
- )
-"
-BDEPEND="
- virtual/pkgconfig
- man? (
- dev-python/sphinx
- dev-python/sphinx-rtd-theme
- )
-"
-
-if [[ ${PV} == 9999 ]]; then
- BDEPEND+=" sys-devel/gnuconfig"
-else
- BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )"
-fi
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_unpack() {
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- return
- fi
-
- if in_iuse verify-sig && use verify-sig ; then
- mkdir "${T}"/verify-sig || die
- pushd "${T}"/verify-sig &>/dev/null || die
-
- # Upstream sign the decompressed .tar
- # Let's do it separately in ${T} then cleanup to avoid external
- # effects on normal unpack.
- cp "${DISTDIR}"/${MY_P}.tar.xz . || die
- xz -d ${MY_P}.tar.xz || die
- verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign
-
- popd &>/dev/null || die
- rm -r "${T}"/verify-sig || die
- fi
-
- default
-}
-
-src_prepare() {
- default
-
- # bug 926288
- use elibc_musl && eapply "${FILESDIR}/${P}-musl-1.2.5.patch"
-
- if [[ ${PV} == 9999 ]]; then
- AT_M4DIR="m4" eautoreconf
-
- mkdir config || die
- local automakedir="$(autotools_run_tool --at-output automake --print-libdir)"
- [[ -e ${automakedir} ]] || die "Could not locate automake directory"
-
- ln -s "${automakedir}"/install-sh config/install-sh || die
- ln -s "${BROOT}"/usr/share/gnuconfig/config.guess config/config.guess || die
- ln -s "${BROOT}"/usr/share/gnuconfig/config.sub config/config.sub || die
- fi
-}
-
-src_configure() {
- local myeconfargs=(
- --bindir="${EPREFIX}"/sbin
-
- --enable-lzo
- --disable-experimental
- $(use_enable convert)
- $(use_enable man documentation)
- $(use_enable elibc_glibc backtrace)
- $(use_enable python)
- $(use_enable static-libs static)
- $(use_enable udev libudev)
- $(use_enable zstd)
-
- # Could support libgcrypt, libsodium, libkcapi, openssl, botan
- --with-crypto=builtin
- --with-convert=ext2$(usev reiserfs ',reiserfs')
- )
-
- export EXTRA_PYTHON_CFLAGS="${CFLAGS}"
- export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}"
-
- # bash as a tepmorary workaround for https://github.com/kdave/btrfs-progs/pull/721
- CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- emake V=1 all $(usev static)
-}
-
-src_test() {
- emake V=1 -j1 -C tests test
-
- if use python ; then
- cd libbtrfsutil/python || die
-
- local -x LD_LIBRARY_PATH="${S}:libbtrfsutil/python:${LD_LIBRARY_PATH}"
- ${EPYTHON} -m unittest tests/test_*.py || die "Tests failed with ${EPYTHON}"
- fi
-}
-
-src_install() {
- local makeargs=(
- $(usev python install_python)
- $(usev static install-static)
- )
-
- emake V=1 DESTDIR="${D}" install "${makeargs[@]}"
-
- newbashcomp btrfs-completion btrfs
-
- use python && python_optimize
-}
-
-pkg_postinst() {
- udev_reload
-}
-
-pkg_postrm() {
- udev_reload
-}
diff --git a/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild b/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
index c9770f5998ae..e83177d9b9ef 100644
--- a/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
+++ b/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
@@ -157,7 +157,7 @@ src_configure() {
export EXTRA_PYTHON_CFLAGS="${CFLAGS}"
export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}"
- # bash as a tepmorary workaround for https://github.com/kdave/btrfs-progs/pull/721
+ # bash as a temporary workaround for https://github.com/kdave/btrfs-progs/pull/721
CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
}
diff --git a/sys-fs/btrfs-progs/files/btrfs-progs-6.8-musl-1.2.5.patch b/sys-fs/btrfs-progs/files/btrfs-progs-6.8-musl-1.2.5.patch
deleted file mode 100644
index 19737515b616..000000000000
--- a/sys-fs/btrfs-progs/files/btrfs-progs-6.8-musl-1.2.5.patch
+++ /dev/null
@@ -1,209 +0,0 @@
-From 45ca77f9e4cfe5fd5814d553502ef99877c9e972 Mon Sep 17 00:00:00 2001
-From: David Sterba <dsterba@suse.com>
-Date: Thu, 18 Apr 2024 18:57:08 +0200
-Subject: [PATCH] btrfs-progs: add basename wrappers for unified semantics
-
-What basename(3) does with the argument depends on _GNU_SOURCE and
-inclusion of libgen.h. This is problematic on Musl (1.2.5) as reported.
-
-We want the GNU semantics that does not modify the argument. Common way
-to make it portable is to add own helper. This is now implemented in
-path_basename() that does not use the libc provided basename but preserves
-the semantics. The path_dirname() is just for parity, otherwise same as
-dirname().
-
-Sources:
-- https://bugs.gentoo.org/926288
-- https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
-
-Issue: #778
-Signed-off-by: David Sterba <dsterba@suse.com>
----
- cmds/subvolume.c | 26 +++++++++++++-------------
- common/device-utils.c | 4 ++--
- common/path-utils.c | 28 ++++++++++++++++++++++++++++
- common/path-utils.h | 2 ++
- 4 files changed, 45 insertions(+), 15 deletions(-)
-
-diff --git a/cmds/subvolume.c b/cmds/subvolume.c
-index 5d53efe6f..869d7077d 100644
---- a/cmds/subvolume.c
-+++ b/cmds/subvolume.c
-@@ -24,7 +24,6 @@
- #include <string.h>
- #include <unistd.h>
- #include <errno.h>
--#include <libgen.h>
- #include <getopt.h>
- #include <dirent.h>
- #include <stdbool.h>
-@@ -149,7 +148,7 @@ static int create_one_subvolume(const char *dst, struct btrfs_qgroup_inherit *in
- int fddst = -1;
- char *dupname = NULL;
- char *dupdir = NULL;
-- char *newname;
-+ const char *newname;
- char *dstdir;
-
- ret = path_is_dir(dst);
-@@ -170,7 +169,7 @@ static int create_one_subvolume(const char *dst, struct btrfs_qgroup_inherit *in
- ret = -ENOMEM;
- goto out;
- }
-- newname = basename(dupname);
-+ newname = path_basename(dupname);
-
- dupdir = strdup(dst);
- if (!dupdir) {
-@@ -178,7 +177,7 @@ static int create_one_subvolume(const char *dst, struct btrfs_qgroup_inherit *in
- ret = -ENOMEM;
- goto out;
- }
-- dstdir = dirname(dupdir);
-+ dstdir = path_dirname(dupdir);
-
- if (!test_issubvolname(newname)) {
- error("invalid subvolume name: %s", newname);
-@@ -364,7 +363,8 @@ static int cmd_subvolume_delete(const struct cmd_struct *cmd, int argc, char **a
- int res, ret = 0;
- int cnt;
- int fd = -1;
-- char *dname, *vname, *cpath;
-+ char *dname, *cpath;
-+ const char *vname;
- char *dupdname = NULL;
- char *dupvname = NULL;
- char *path = NULL;
-@@ -482,9 +482,9 @@ static int cmd_subvolume_delete(const struct cmd_struct *cmd, int argc, char **a
- goto out;
- }
- dupdname = strdup(cpath);
-- dname = dirname(dupdname);
-+ dname = path_dirname(dupdname);
- dupvname = strdup(cpath);
-- vname = basename(dupvname);
-+ vname = path_basename(dupvname);
- free(cpath);
-
- /* When subvolid is passed, <path> will point to the mount point */
-@@ -670,7 +670,7 @@ static int cmd_subvolume_snapshot(const struct cmd_struct *cmd, int argc, char *
- bool readonly = false;
- char *dupname = NULL;
- char *dupdir = NULL;
-- char *newname;
-+ const char *newname;
- char *dstdir;
- enum btrfs_util_error err;
- struct btrfs_ioctl_vol_args_v2 args;
-@@ -727,13 +727,13 @@ static int cmd_subvolume_snapshot(const struct cmd_struct *cmd, int argc, char *
-
- if (res > 0) {
- dupname = strdup(subvol);
-- newname = basename(dupname);
-+ newname = path_basename(dupname);
- dstdir = dst;
- } else {
- dupname = strdup(dst);
-- newname = basename(dupname);
-+ newname = path_basename(dupname);
- dupdir = strdup(dst);
-- dstdir = dirname(dupdir);
-+ dstdir = path_dirname(dupdir);
- }
-
- if (!test_issubvolname(newname)) {
-@@ -1557,7 +1557,7 @@ static int cmd_subvolume_show(const struct cmd_struct *cmd, int argc, char **arg
- struct btrfs_util_subvolume_iterator *iter;
- struct btrfs_util_subvolume_info subvol;
- char *subvol_path = NULL;
-- char *subvol_name = NULL;
-+ const char *subvol_name = NULL;
- enum btrfs_util_error err;
- struct btrfs_qgroup_stats stats;
- unsigned int unit_mode;
-@@ -1669,7 +1669,7 @@ static int cmd_subvolume_show(const struct cmd_struct *cmd, int argc, char **arg
- subvol_path = strdup("/");
- subvol_name = "<FS_TREE>";
- } else {
-- subvol_name = basename(subvol_path);
-+ subvol_name = path_basename(subvol_path);
- }
-
- if (bconf.output_format == CMD_FORMAT_JSON) {
-diff --git a/common/device-utils.c b/common/device-utils.c
-index 36108ec4e..d086e9ea2 100644
---- a/common/device-utils.c
-+++ b/common/device-utils.c
-@@ -343,14 +343,14 @@ static u64 device_get_partition_size_sysfs(const char *dev)
- char path[PATH_MAX] = {};
- char sysfs[PATH_MAX] = {};
- char sizebuf[128] = {};
-- char *name = NULL;
-+ const char *name = NULL;
- int sysfd;
- unsigned long long size = 0;
-
- name = realpath(dev, path);
- if (!name)
- return 0;
-- name = basename(path);
-+ name = path_basename(path);
-
- ret = path_cat3_out(sysfs, "/sys/class/block", name, "size");
- if (ret < 0)
-diff --git a/common/path-utils.c b/common/path-utils.c
-index 181737c4d..929e5c8fa 100644
---- a/common/path-utils.c
-+++ b/common/path-utils.c
-@@ -28,6 +28,11 @@
- #include <string.h>
- #include <errno.h>
- #include <ctype.h>
-+/*
-+ * For dirname() and basename(), but never use basename directly, there's
-+ * path_basename() with unified GNU behaviour regardless of the includes and
-+ * conditional defines. See basename(3) for more.
-+ */
- #include <libgen.h>
- #include <limits.h>
- #include "common/path-utils.h"
-@@ -482,3 +487,26 @@ int test_issubvolname(const char *name)
- strcmp(name, ".") && strcmp(name, "..");
- }
-
-+/*
-+ * Unified GNU semantics basename helper, never changing the argument. Always
-+ * use this instead of basename().
-+ */
-+const char *path_basename(const char *path)
-+{
-+ const char *tmp = strrchr(path, '/');
-+
-+ /* Special case when the whole path is just "/". */
-+ if (path[0] == '/' && path[1] == 0)
-+ return path;
-+
-+ return tmp ? tmp + 1 : path;
-+}
-+
-+/*
-+ * Return dirname component of path, may change the argument.
-+ * Own helper for parity with path_basename().
-+ */
-+char *path_dirname(char *path)
-+{
-+ return dirname(path);
-+}
-diff --git a/common/path-utils.h b/common/path-utils.h
-index 08ae0ff10..697fa6b48 100644
---- a/common/path-utils.h
-+++ b/common/path-utils.h
-@@ -39,6 +39,8 @@ int path_is_dir(const char *path);
- int is_same_loop_file(const char *a, const char *b);
- int path_is_reg_or_block_device(const char *filename);
- int path_is_in_dir(const char *parent, const char *path);
-+const char *path_basename(const char *path);
-+char *path_dirname(char *path);
-
- int test_issubvolname(const char *name);
-
diff --git a/sys-fs/mergerfs-tools/Manifest b/sys-fs/mergerfs-tools/Manifest
index 9ced628d3717..ce59313a2295 100644
--- a/sys-fs/mergerfs-tools/Manifest
+++ b/sys-fs/mergerfs-tools/Manifest
@@ -1,3 +1,5 @@
DIST mergerfs-tools-0_p20210502.gh.tar.gz 15575 BLAKE2B 0b111c8a37c7679cb5a331d942f11ad8315eb58d0e686a53ddf6ce9262fb04cde69654d6d8c597d94fba48914b5b7fc4fc35d0b6413bd817e587e1d8e70ad1b6 SHA512 8f0fefe65b277d01aa893bd8af3dad5618b403126817982740a59c7997af33480ee858158b430775d63f0aa5ade854a71d88ab99ee0d7eac8cc4cb95933204f2
+DIST mergerfs-tools-0_p20230912.gh.tar.gz 15573 BLAKE2B 3af6fe712697c3855e67282e9f0a287b71db88368d161db72569e5382325fe7b3b43b9ce20d92789e0f8295586d4b52f4fb649dd82a8fe164cc1d3ff83674e6e SHA512 1e8ce355bfa3783dedaf035b9f39b4aa4a7ec1e4280afe1f0fc761aecd0357a416de1f9d870480ac941104410824da5713fbb80b804abb13589fa0251c62ae14
EBUILD mergerfs-tools-0_p20210502-r4.ebuild 730 BLAKE2B 19befc5f77ee47de69c9ab3b683f5f28d3976e9b82e02bdb1a06e905106eb288753019b3f2b5a9b6ce9ea4aedebe5274474582518b7b49031b275df9002ea525 SHA512 14b422412db01016828089cc5bef7665abb96eecad7294c7a287d996d9e17f10f85c63814adb993bb2d5eede2b8196f433d852b18d474f1714c610268fa07606
+EBUILD mergerfs-tools-0_p20230912.ebuild 792 BLAKE2B f75d7c1b2d013de00589ed4ca0a3e729b68603f84125f7b084789e751ae8c440396b51e365ebb33f0803cd7082a163ef25256576d34a78377ac48cc7bb180c8a SHA512 53af73ae1d9b6ba8dd4121d8b0d0085e89a96ac55cf3e619918aa2d84c73c4b35d4fe2b4adc15930e6d6f98c3eb959287bee2e090cb5fc99910a725ebbe30d98
MISC metadata.xml 256 BLAKE2B b261be947390837c70e604761d31e7322ee4a45e4ddd910cb628aacd192312253ac1e6e635473c135615abeba9a30e57e11291ad54bfb00fd4557876fd05efde SHA512 41d6bd432d9c75fa0303b14a1948e53dc14f0fb135e016e8222ae52b8b77d5b8b82b848cbe64f3b16dc756a45291b14a3e37e669b07fb2aed6f3a8cd2b6426fe
diff --git a/sys-fs/mergerfs-tools/mergerfs-tools-0_p20230912.ebuild b/sys-fs/mergerfs-tools/mergerfs-tools-0_p20230912.ebuild
new file mode 100644
index 000000000000..137700575d1f
--- /dev/null
+++ b/sys-fs/mergerfs-tools/mergerfs-tools-0_p20230912.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit python-single-r1
+
+MY_COMMIT="80d6c9511da554009415d67e7c0ead1256c1fc41"
+
+DESCRIPTION="Optional tools to help manage data in a mergerfs pool"
+HOMEPAGE="https://github.com/trapexit/mergerfs-tools"
+SRC_URI="https://github.com/trapexit/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RDEPEND="${PYTHON_DEPS}"
+
+src_compile() {
+ # no build system.
+ true
+}
+
+src_install() {
+ # Explicit INSTALL= to avoid `which`
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr INSTALL=install install
+ python_fix_shebang "${ED}"
+}
diff --git a/sys-fs/mergerfs/Manifest b/sys-fs/mergerfs/Manifest
index 19daebdd07ae..9bff5c6cd703 100644
--- a/sys-fs/mergerfs/Manifest
+++ b/sys-fs/mergerfs/Manifest
@@ -1,5 +1,5 @@
-DIST mergerfs-2.35.1.tar.gz 669100 BLAKE2B 25b442f0451b525509bd908ac1cd2e70ab33db599aab58e2baeca47eeb3a0d0b93f7fddb880e8fdbf1b6928d40c650e0df23c116741cad279cdf169cea000768 SHA512 09de354ae7a7c69f6e873145a754c3ed8a840d59ccc455c8913f2562babbe8787c7eb929c0ea2571b5292928e3cee7b547b0a52cdd833b03e679e11191b4a5b5
DIST mergerfs-2.36.0.tar.gz 680473 BLAKE2B c0380834c7610724f058bd13b073622082ad8bdf4fe32815cf8a5450d1f962478a6ba3d0033d0ade446861786db6c8d3ae3dbacd6a61a526a79d849b6c7b40e7 SHA512 f20879aa5fb9ab56b1e7bba0e08aacda7e26af7e1fdcf3d57b77a2dce70fda8aa15c20e947dde6ffab3dfae8698005c9d8383c9ab2402cc4ce5de0810ce1298d
-EBUILD mergerfs-2.35.1.ebuild 1077 BLAKE2B 5416ad8a60a26e808614064c4dfa45be6552e0dfeab16d4c0c203fe39196a5cdd3390f6f9ebd76838267d7a9beb75d51e429a0bd45841eb70f8ddd0cabc4bde1 SHA512 ed5f77c414351d64620b82a93ee4038204656e4afb2104f75f95a3847d99e406d419d841b87de3180219f03a66e43fb5f4fef568e927b4d1ffa2b0bec2399e3f
+DIST mergerfs-2.40.2.tar.gz 743230 BLAKE2B c248397288465a0acb735040777504a9deca51c5d6b92753bc7ca1dc078bbba69867b93f94c049d5ae1aa75b77410bc228d270267e3550cb3b67226395337dc9 SHA512 b491007ef14ebd9c9193e730cccd7a178fb7d96426066d5a61cc654eae0b81824a3bf25258b1fafd248f4454ebe55787653f3d906cdc2e89a5cd0884db534876
EBUILD mergerfs-2.36.0.ebuild 1077 BLAKE2B 5416ad8a60a26e808614064c4dfa45be6552e0dfeab16d4c0c203fe39196a5cdd3390f6f9ebd76838267d7a9beb75d51e429a0bd45841eb70f8ddd0cabc4bde1 SHA512 ed5f77c414351d64620b82a93ee4038204656e4afb2104f75f95a3847d99e406d419d841b87de3180219f03a66e43fb5f4fef568e927b4d1ffa2b0bec2399e3f
+EBUILD mergerfs-2.40.2.ebuild 1061 BLAKE2B ab303840588c4f520a0ac18f13f567b17b00f762667cf3e95d347a235f03699b3ba9f92a189237c8cada71c3f4b99483444b726ebc7a8049ef02965c13435f94 SHA512 7f77636b84139fd6048ca80af42dc2dd277cde06971acf8ff54743f4485c815ac2cb875c31f4680254469b8f2c0835e4be914a2287eb7fe03a96fd5e6161281c
MISC metadata.xml 250 BLAKE2B 468e37e94b1911acd9d0623757a3d00c0e9437893e4962b4e56ae03abbbed0b26d30fb832f855805be3aeec08bd7b543452253bd1adcc06deffa0ac6e2af37ce SHA512 ad5b1a555e5ebf2b604ef1fa16c8b7a630b6c6733d9404adca0def5d01bc43819fc59a0bb7c433a265311ea19288aded36d70a23c711e838ad1ba47889d0002a
diff --git a/sys-fs/mergerfs/mergerfs-2.35.1.ebuild b/sys-fs/mergerfs/mergerfs-2.40.2.ebuild
index a534d6068490..12c52da625d1 100644
--- a/sys-fs/mergerfs/mergerfs-2.35.1.ebuild
+++ b/sys-fs/mergerfs/mergerfs-2.40.2.ebuild
@@ -1,39 +1,38 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="A featureful union filesystem"
HOMEPAGE="https://github.com/trapexit/mergerfs"
-
SRC_URI="https://github.com/trapexit/mergerfs/archive/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="amd64 ~riscv x86"
# Vendorized libfuse that's bundled is under LGPL-2.1.
LICENSE="ISC LGPL-2.1"
SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
IUSE="+xattr"
DEPEND="
xattr? ( sys-apps/attr )
"
-
RDEPEND="${DEPEND}"
-
BDEPEND="sys-devel/gettext"
src_prepare() {
default
- # Hand made build system at it's finest.
- echo -e "#!/bin/sh\ntrue" >tools/update-version || die
- echo "#pragma once" >src/version.hpp || die
- echo "static const char MERGERFS_VERSION[] = \"${PV}\";" >>src/version.hpp || die
+ # Hand made build system at its finest.
+ echo -e "#!/bin/sh\ntrue" > buildtools/update-version || die
+ cat <<-EOF > src/version.hpp || die
+ #pragma once
+ static const char MERGERFS_VERSION[] = "${PV}";
+ EOF
if ! use xattr; then
- sed 's%USE_XATTR = 1%USE_XATTR = 0%g' -i Makefile || die
+ sed -i -e 's%USE_XATTR = 1%USE_XATTR = 0%g' Makefile || die
fi
}