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>

Reply via email to