commit: fbadf7ee225c897339378a505d47c3141549469d Author: Denis Reva <denis7774 <AT> gmail <DOT> com> AuthorDate: Sat Mar 19 11:50:39 2022 +0000 Commit: Denis Reva <denis7774 <AT> gmail <DOT> com> CommitDate: Sat Mar 19 11:50:39 2022 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=fbadf7ee
sys-fs/dwarfs-bin: dwarfs with less dependencies The motivation of that ebuild is to reduce necessary dependencies for special installations such as mine. This version is use official binary package for amd64 arch. Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Denis Reva <denis7774 <AT> gmail.com> sys-fs/dwarfs-bin/Manifest | 1 + sys-fs/dwarfs-bin/dwarfs-bin-0.5.6.ebuild | 46 +++++++++++++++++++++++++++++++ sys-fs/dwarfs-bin/metadata.xml | 18 ++++++++++++ 3 files changed, 65 insertions(+) diff --git a/sys-fs/dwarfs-bin/Manifest b/sys-fs/dwarfs-bin/Manifest new file mode 100644 index 000000000..ee9bf8541 --- /dev/null +++ b/sys-fs/dwarfs-bin/Manifest @@ -0,0 +1 @@ +DIST dwarfs-0.5.6-Linux.tar.xz 5051444 BLAKE2B 35ef9a6b7a34e2b8a70dccecc85bcf570bd96250bfe4c2337872e67e8cef143b41ff7c5bdef5f198ba6622fd99c5bdd0c056db07b6116772b35ca1c74620a00b SHA512 41087ca4b5217810237fd8e97a138ea51a1c1dc4e984c7efe3626aebdea52f07c7794baf3e1dca2ef28de686a4caab75721ee09d4a2495c4144f92c3ebbac6ec diff --git a/sys-fs/dwarfs-bin/dwarfs-bin-0.5.6.ebuild b/sys-fs/dwarfs-bin/dwarfs-bin-0.5.6.ebuild new file mode 100644 index 000000000..bac1c0955 --- /dev/null +++ b/sys-fs/dwarfs-bin/dwarfs-bin-0.5.6.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="Static version of a fast very high compression read-only FUSE file system" +HOMEPAGE="https://github.com/mhx/dwarfs" +SRC_URI="https://github.com/mhx/dwarfs/releases/download/v${PV}/dwarfs-${PV}-Linux.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +RDEPEND=" + ${PYTHON_DEPS} + sys-fs/fuse:3 + !sys-fs/dwarfs +" +DEPEND=" + ${RDEPEND} +" +S="${WORKDIR}/dwarfs-${PV}-Linux/" +QA_PREBUILT=" + sbin/dwarfs + bin/* +" +src_prepare() { + default + echo "Removing legacy fuse2-related stuff" + rm sbin/dwarfs2 sbin/mount.dwarfs2 + echo "Correcting man paths" + mkdir -p usr/ + mv share/ usr/ +} + +src_install(){ + mv "${S}"/* "${D}"/ +} + +pkg_postinst(){ + elog "You may find more information in the" + elog "${HOMEPAGE}" + elog "About creating: ${HOMEPAGE}/blob/main/doc/mkdwarfs.md" + elog "About mounting: ${HOMEPAGE}/blob/main/doc/dwarfs.md" +} diff --git a/sys-fs/dwarfs-bin/metadata.xml b/sys-fs/dwarfs-bin/metadata.xml new file mode 100644 index 000000000..7926e4616 --- /dev/null +++ b/sys-fs/dwarfs-bin/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Denis Reva</name> + </maintainer> + <longdescription lang="en"> + DwarFS is a read-only file system with a focus on achieving very high compression ratios in particular for very redundant data. + This probably doesn't sound very exciting, because if it's redundant, it should compress well. However, I found that other read-only, compressed file systems don't do a very good job at making use of this redundancy. See here for a comparison with other compressed file systems. + DwarFS also doesn't compromise on speed and for my use cases I've found it to be on par with or perform better than SquashFS. For my primary use case, DwarFS compression is an order of magnitude better than SquashFS compression, it's 4 times faster to build the file system, it's typically faster to access files on DwarFS and it uses less CPU resources. + Distinct features of DwarFS are: + * Clustering of files by similarity using a similarity hash function. This makes it easier to exploit the redundancy across file boundaries. + * Segmentation analysis across file system blocks in order to reduce the size of the uncompressed file system. This saves memory when using the compressed file system and thus potentially allows for higher cache hit rates as more data can be kept in the cache. + * Highly multi-threaded implementation. Both the file system creation tool as well as the FUSE driver are able to make good use of the many cores of your system. + * Optional experimental Python support to provide custom filtering and ordering functionality. + </longdescription> +</pkgmetadata>
