;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Marek Benc ;;; Copyright © 2017 Leo Famulari ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages wv) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:prefix license:)) (define-public wv (package (name "wv") (version "1.2.9") (source (origin (method url-fetch) (uri (string-append "https://abiword.org/downloads/wv/" version "/wv-" version ".tar.gz")) (sha256 (base32 "17f16lkdv1c3amaz2hagiicih59ynpp4786k1m2qa1sw68xhswsc")))) (build-system gnu-build-system) (inputs (list glib libgsf libjpeg-turbo libpng zlib)) (native-inputs (list `(,glib "bin") pkg-config)) (synopsis "Microsoft Word conversion library and utilities") (description "wv converts files written by Word 2000, 97, 95, and 6 (known internally as Word 9, 8, 7, and 6) to HTML or LaTeX. Word 2 documents can still be converted to plain text but will lack formatting. Other programs can use wv as a library to convert Word documents to other formats. AbiWord uses it as its Word importer, and KWord uses concepts and code from wv in theirs.") (home-page "https://wvware.sourceforge.net/") (license license:gpl2+))) d182299caec760a41a8f3a'>gc.cc
AgeCommit message (Expand)Author
2021-11-16daemon: Do not deduplicate files smaller than 8 KiB....Files smaller than 8 KiB typically represent ~70% of the entries in /gnu/store/.links but only contribute to ~4% of the space savings afforded by deduplication. Not considering these files for deduplication speeds up file insertion in the store and, more importantly, leaves 'removeUnusedLinks' with fewer entries to traverse, thereby speeding it up proportionally. Partly fixes <https://issues.guix.gnu.org/24937>. * config-daemon.ac: Remove symlink hard link check and CAN_LINK_SYMLINK definition. * guix/store/deduplication.scm (%deduplication-minimum-size): New variable. (deduplicate)[loop]: Do not recurse when FILE's size is below %DEDUPLICATION-MINIMUM-SIZE. (dump-port): New procedure. (dump-file/deduplicate)[hash]: Turn into... [dump-and-compute-hash]: ... this thunk. Call 'deduplicate' only when SIZE is greater than %DEDUPLICATION-MINIMUM-SIZE; otherwise call 'dump-port'. * nix/libstore/gc.cc (LocalStore::removeUnusedLinks): Drop files where st.st_size < deduplicationMinSize. * nix/libstore/local-store.hh (deduplicationMinSize): New declaration. * nix/libstore/optimise-store.cc (deduplicationMinSize): New variable. (LocalStore::optimisePath_): Return when PATH is a symlink or smaller than 'deduplicationMinSize'. * tests/derivations.scm ("identical files are deduplicated"): Produce files bigger than %DEDUPLICATION-MINIMUM-SIZE. * tests/nar.scm ("restore-file-set with directories (signed, valid)"): Likewise. * tests/store-deduplication.scm ("deduplicate, below %deduplication-minimum-size"): New test. ("deduplicate", "deduplicate, ENOSPC"): Produce files bigger than %DEDUPLICATION-MINIMUM-SIZE. * tests/store.scm ("substitute, deduplication"): Likewise. Ludovic Courtès