From a0bb3020f949ef0fe00caff718c38e5641b5d54d Mon Sep 17 00:00:00 2001 From: Denis Reva Date: Fri, 8 Jan 2021 00:33:09 +0500 Subject: [PATCH 1/4] sys-fs/dwarfs: new version 0.3.1 Ebuild changes: * Added use flags for jemalloc and python Upsteam changes: Even better compression than before Mostly thanks to a new ordering algorithm that is now enabled by default, I've seen a 15% improvement in achievable compression ratio. In my standard test of packing 48 GiB of Perl installations, the resulting DwarFS image size reduced from 556 MiB to 472 MiB without any regression in compression speed. More memory efficient FUSE driver By switching to jemalloc, the FUSE driver has become much more memory efficient, using up to ten times less memory than with the standard glibc allocator. Python scripting support The Lua scripting interface has been fully replaced by a new Python interface. I've been looking for a luabind replacement, but none of the candidates seemed to be well maintained or reasonably easy to integrate. Python is much more approachable for most people and boost::python seems well maintained. The new interface also has a lot more features. You can find an example script in the distribution. Fix for file system images created with versions before dwarfs-0.2.3 If you've created DwarFS images with the 0.2.0, 0.2.1 or 0.2.2 releases, symbolic links were stored in a way that the FUSE driver in the 0.2.x releases could not read them back correctly. With the new 0.3.0 release, these old images, including the symbolic links, can now be read again, so there's no need to rebuild your old images. Improved file system format The file system format has been updated with the 0.3.0 release to include integrity checking via SHA2-512/256 hashes as well as features that should make recovery easier in case of file system image corruption. In addition to the SHA hashes, the extremely fast xxHash library is used to store a second hash that is checked every time any part of the file system is used. While there are currently no recovery features implemented, having this data in the file system already should be really valuable. You can convert an old image to the new format using: mkdwarfs -i old.dwarfs -o new.dwarfs --recompress none Statically linked 64-bit Linux binaries available Given the long list of dependencies, building DwarFS might not be an option for you. In that case, you can now download the binary distribution that should work fine on most 64-bit Linux distributions. FUSE drivers are included for both FUSE2 and FUSE3 Lots of smaller fixes & changes See the Change Log for a full list of changes. Package-Manager: Portage-3.0.12, Repoman-3.0.2 Signed-off-by: Denis Reva --- sys-fs/dwarfs/Manifest | 1 + sys-fs/dwarfs/dwarfs-0.3.1.ebuild | 94 +++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 sys-fs/dwarfs/dwarfs-0.3.1.ebuild diff --git a/sys-fs/dwarfs/Manifest b/sys-fs/dwarfs/Manifest index a46c3f8f1a..4a31b8772e 100644 --- a/sys-fs/dwarfs/Manifest +++ b/sys-fs/dwarfs/Manifest @@ -1,3 +1,4 @@ DIST dwarfs-0.2.4.tar.gz 131125 BLAKE2B 06dd11a90d203882a6b2398d6a3e763a269746a57394444e67913bbb66176305e3d6d606a7f35b4c3692d1d761e90d853b268f876004be1e8274b5b16174dcde SHA512 2136f1159eaf80afd6f5a1edda65c7a7f2cb147c7b14a5d19981fbd417e8785c2d7f986df3787587b4b5157bfd299159f4015a017d289bb0c9fba77b337ed3b5 +DIST dwarfs-0.3.1.tar.bz2 8704811 BLAKE2B f7f5a2affae5da78d526891017ac66ed16f73919c7b990b558413c028590e3e3efa2f7e8cc70d97cbad2a0332d91458444898611ea86343a5978bcdf2ed1bf3b SHA512 5776f5da14a5ccbe0e1cf11acec1c9360aa23e2f6751f54a5df200d4625ffc1892658bd4d987ae15fb08ec1f97d7db2a8c42ed80bb6aae062a45e50513e09f51 DIST fbthrift-2020.11.30.00.tar.gz 5274706 BLAKE2B ad13eb7b66f804c7a667746d72298e05726d1f78a49523a10f2712cc4dbea71999590a2c420e8081d32dc24a7d203e11d5c7e5c15f2627594295cd5533096dd9 SHA512 33b4c1a4cfc8783f99d5da8ae113f877e1f23586f5a854833107805fe35834604e677d7abe690cefeb70baed20cb3cc14449cfae35a9af89594974377bbe0329 DIST folly-2020.11.30.00.tar.gz 3261437 BLAKE2B 5070819f1f8bac2030e761a8d2330379e8e5ba242d21330b98dcd598cb18e12046a9ad3fb6462f82dbc47c53cf0905c330e707201bfbbedb81f203ef1b30731e SHA512 e7e06bd8c8e38af345d20a04886b4497c4f0c9877263dbcb5a3f2d17c7a3252a2529086a5a04d07c2d3a457ca3930c43672fc4f74b7bdbc2ec0d07abdf1ed425 diff --git a/sys-fs/dwarfs/dwarfs-0.3.1.ebuild b/sys-fs/dwarfs/dwarfs-0.3.1.ebuild new file mode 100644 index 0000000000..ece7ed8b07 --- /dev/null +++ b/sys-fs/dwarfs/dwarfs-0.3.1.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9} ) + +inherit cmake check-reqs python-single-r1 + +DESCRIPTION="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}.tar.bz2 -> ${P}.tar.bz2" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="python +jemalloc" + +#test IUSE disabled because there is no googletest in portage tree +#-DWITH_TESTS=$(usex test ON OFF) + +PYTHON_REQ_USE="python" + +DEPEND="sys-devel/flex + sys-devel/binutils:*" +RDEPEND="dev-libs/boost[context,threads,python?] + dev-libs/double-conversion + dev-libs/libfmt + dev-libs/libevent + dev-libs/xxhash + jemalloc? ( >=dev-libs/jemalloc-5.2.1 ) + app-arch/zstd + app-arch/lz4 + app-arch/xz-utils + app-arch/snappy + dev-cpp/sparsehash + dev-cpp/gflags + dev-cpp/glog[gflags] + sys-fs/fuse:3 + sys-libs/binutils-libs + sys-libs/zlib + sys-libs/libunwind + !dev-cpp/folly" +BDEPEND="app-text/ronn + dev-util/cmake + sys-apps/sed + sys-devel/bison + virtual/pkgconfig" + +CHECKREQS_DISK_BUILD="768M" + +DOCS=( "README.md" "CHANGES.md" "TODO" ) + +CMAKE_IN_SOURCE_BUILD=true +CMAKE_WARN_UNUSED_CLI=no + +QA_SONAME="${D}/usr/lib64/libdwarfs.so ${D}/usr/lib64/libxxhash.so" + +src_prepare(){ + einfo "setting library path to $(get_libdir)" + sed "s/DESTINATION lib/DESTINATION $(get_libdir)/" -i CMakeLists.txt || die + cmake_src_prepare +} + +src_configure(){ + einfo "setting configuration flags to:" + mycmakeargs=( + -DUSE_JEMALLOC=$(usex jemalloc ON OFF) + -DWITH_PYTHON=$(usex python ON OFF) + ) + if use python; then mycmakeargs+=( -DWITH_PYTHON_VERSION=${EPYTHON#python} ); fi + einfo ${mycmakeargs} + cmake_src_configure +} + +src_install(){ + cmake_src_install + dolib.so libmetadata_thrift.so libthrift_light.so + dolib.so folly/libfolly.so.0.58.0-dev folly/libfolly.so +} + +pkg_postinst(){ + elog "Test shows that dwarfs compiled with Clang is substantially faster than GCC ones" + elog "See https://github.com/mhx/dwarfs/issues/14" + elog "So you may want to compile it independently with Clang by the" + elog "https://wiki.gentoo.org/wiki/Clang" + elog "And with the per-package settings:" + elog "https://wiki.gentoo.org/wiki/Handbook:AMD64/Portage/Advanced#Per-package_environment_variables" + elog "Also 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" +} From 79bf1c25239bb86a5d0ee9624f6e3c3d1ebcdd10 Mon Sep 17 00:00:00 2001 From: Azael Reyes Date: Thu, 7 Jan 2021 15:56:40 -0800 Subject: [PATCH 2/4] dev-libs/octetos-db-abstract: updating to v0.6.0-alpha Signed-off-by: Azael Reyes Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- dev-libs/octetos-db-abstract/Manifest | 1 + .../octetos-db-abstract-0.6.0_alpha.ebuild | 38 +++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 dev-libs/octetos-db-abstract/octetos-db-abstract-0.6.0_alpha.ebuild diff --git a/dev-libs/octetos-db-abstract/Manifest b/dev-libs/octetos-db-abstract/Manifest index 9ad11851e2..036adf24c1 100644 --- a/dev-libs/octetos-db-abstract/Manifest +++ b/dev-libs/octetos-db-abstract/Manifest @@ -1 +1,2 @@ DIST octetos-db-abstract-0.1.2_alpha.tar.gz 30943 BLAKE2B 5bd30dd28cfe5a7d7d90ab46ad234877140ea94ccd51a7f27e8597bcb1390fc3ccb3cc1fd552fc2aa69a68274a25401fd2af815ce9b0a29ca498fe62b6719d18 SHA512 96f178e86058a2ffdb07c689bd5a4dedd69df2639218842a338b0aea3cc8918234049f393144fe2722abd58dd87603aa1a6f59561db48a1643f27cd1ad4d1bad +DIST octetos-db-abstract-0.6.0_alpha.tar.gz 33832 BLAKE2B c59a0cce49ff782a65c307a473c0493f4cf142b3b09994a0cf787ac8fb5821d35272a82d390dade378a76637f5592113fcb80312a07ef4a6feeb976e33d0c0d8 SHA512 af8296a0dd32e8f159fc6382cebe9ee5ac5bdff12bfd0d928058d62260d14f2508362a5b23d7a0e2485536b6626aab02a4a640d639d4e3a542097782d8cca7d4 diff --git a/dev-libs/octetos-db-abstract/octetos-db-abstract-0.6.0_alpha.ebuild b/dev-libs/octetos-db-abstract/octetos-db-abstract-0.6.0_alpha.ebuild new file mode 100644 index 0000000000..0294fadceb --- /dev/null +++ b/dev-libs/octetos-db-abstract/octetos-db-abstract-0.6.0_alpha.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools + +MYPV="${PV/_alpha/-alpha}" +MYPN="${PN}" +MYP="${MYPN}-${MYPV}" + +DESCRIPTION="API to access database, abstract component." +HOMEPAGE="https://github.com/azaeldevel/octetos-db-abstract" +SRC_URI="https://github.com/azaeldevel/${PN}/archive/${MYPV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="" + +DEPEND="dev-libs/octetos-core" +RDEPEND=" + ${DEPEND} + !!dev-libs/octetos-db +" +BDEPEND="" + +S="${WORKDIR}/${MYP}" + +src_prepare() { + default + eautoreconf -fi +} + +src_configure() { + econf +} From 1ed9d86c2e4303fa370696ea079522f7db122f0c Mon Sep 17 00:00:00 2001 From: David Flogeras Date: Thu, 7 Jan 2021 20:57:09 -0400 Subject: [PATCH 3/4] x11-misc/ksnip: Formatting in metadata.xml Signed-off-by: David Flogeras --- x11-misc/ksnip/metadata.xml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/x11-misc/ksnip/metadata.xml b/x11-misc/ksnip/metadata.xml index 77822e25c6..319b261074 100644 --- a/x11-misc/ksnip/metadata.xml +++ b/x11-misc/ksnip/metadata.xml @@ -1,10 +1,11 @@ - - dflogeras2@gmail.com - David Flogeras - - Ksnip is a Qt based cross-platform screenshot tool that provides many annotation features for your screenshots. - + + dflogeras2@gmail.com + David Flogeras + + Ksnip is a Qt based cross-platform screenshot tool + that provides many annotation features for your screenshots. + From 7bd858da4948b9170e3bd6f4c2045ec63dbcd186 Mon Sep 17 00:00:00 2001 From: David Flogeras Date: Thu, 7 Jan 2021 20:58:22 -0400 Subject: [PATCH 4/4] x11-misc/ksnip: Bump to 1.8.0-r1 This also depends on the newly added, in-tree, kimageannotator and kcolorpicker deps. Signed-off-by: David Flogeras --- x11-misc/ksnip/ksnip-1.8.0-r1.ebuild | 43 ++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 x11-misc/ksnip/ksnip-1.8.0-r1.ebuild diff --git a/x11-misc/ksnip/ksnip-1.8.0-r1.ebuild b/x11-misc/ksnip/ksnip-1.8.0-r1.ebuild new file mode 100644 index 0000000000..db803c4b3d --- /dev/null +++ b/x11-misc/ksnip/ksnip-1.8.0-r1.ebuild @@ -0,0 +1,43 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop xdg cmake +# cmake has to be listed after xdg for src_prepare to work + +DESCRIPTION="Ksnip is a Qt based cross-platform screenshot tool" +HOMEPAGE="https://github.com/ksnip/ksnip" +SRC_URI="https://github.com/ksnip/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND=" + dev-qt/qtdbus:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtprintsupport:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5[png] + dev-qt/qtx11extras:5 + dev-qt/qtxml:5 + >=media-libs/kcolorpicker-0.1.4 + >=media-libs/kimageannotator-0.4.0 + x11-libs/libX11 + x11-libs/libxcb" +DEPEND="${RDEPEND} + kde-frameworks/extra-cmake-modules:5 +" +BDEPEND=" + dev-qt/linguist-tools:5 +" + +src_install() { + cmake_src_install + + doicon -s scalable desktop/${PN}.svg + domenu desktop/org.${PN}.${PN}.desktop +}