;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Marek Benc ;;; Copyright © 2017 Efraim Flashner ;;; ;;; 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 ots) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages glib) #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) #:use-module (gnu packages xml) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:prefix license:)) (define-public ots (package (name "ots") (version "0.5.0") (source (origin (method url-fetch) ;; libots seems to have left sourceforge and taken their release ;; tarballs with them (uri (list (string-append "mirror://debian/pool/main/o/ots/ots_" version ".orig.tar.gz") (string-append "mirror://sourceforge/libots/libots/" name "-" version "/" name "-" version ".tar.gz"))) (sha256 (base32 "0dz1ccd7ymzk4swz1aly4im0k3pascnshmgg1whd2rk14li8v47a")) (patches (search-patches "ots-no-include-missing-file.patch")))) (build-system gnu-build-system) (arguments ;; With '-jN', the rule to build the 'ots' command can be triggered ;; before libots-1.la has been built. '(#:parallel-build? #f #:phases (modify-phases %standard-phases (add-after 'configure 'set-shared-lib-extension (lambda _ ;; For some reason, the 'libtool' script (from Libtool ;; 1.5.2, Debian variant) sets 'shrext_cmds' instead of ;; 'shrext' for the shared library file name extension. ;; This leads to the creation of 'libots-1' instead of ;; 'libots-1.so'. Fix that. (substitute* "libtool" (("shrext_cmds") "shrext")) #t))))) (inputs (list glib popt libxml2 zlib)) (native-inputs `(("glib:bin" ,glib "bin") ("pkg-config" ,pkg-config))) (synopsis "Tool for summarizing texts") (description "The Open Text Summarizer is a library and command-line tool for summarizing texts. The program reads a text and decides which sentences are important and which are not. OTS will create a short summary or will highlight the main ideas in the text. The program can either print the summarized text as plain text or HTML. If in HTML, the important sentences are highlighted. The program is multi lingual and works with UTF-8 encoding.") (home-page "http://libots.sourceforge.net/") (license license:gpl2+))) x module name. (custom-number-serializer): Do not print to standard output. (maybe-number?, serialize-maybe-number): New procedures defined via the define-maybe macro. (config-with-maybe-number): New configuration. (serialize-number): New procedure. ("maybe value serialization"): New test. (maybe-string?): New procedure defined via the define-maybe/no-serialization macro. (config-with-maybe-string/no-serialization): New configuration. ("maybe value without serialization no procedure bound"): New test. Maxim Cournoyer 2021-05-08services: configuration: Add tests....* tests/services/configuration.scm: New file. * Makefile.am (SCM_TESTS): Register it. Maxim Cournoyer 2021-02-12services: Add transmission-daemon service....* gnu/services/file-sharing.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * po/packages/POTFILES.in: Add it. * tests/services/file-sharing.scm: New file. * Makefile.am (SCM_TESTS): Add it. * doc/guix.texi (File-Sharing Services): New section. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Simon South 2020-08-02services: Add zram-device-service....* gnu/services/linux.scm (<zram-device-configuration>): New record. (zram-device-service-type): New variable. * doc/guix.texi (Linux Services): Document it. * tests/services/linux.scm (zram-swap-device-test): New tests. Efraim Flashner 2020-01-31gnu: Add earlyoom-service-type....* gnu/services/linux.scm: New file. * tests/services/linux.scm: Add test. * Makefile.am (SCM_TESTS): Register test. * doc/guix.texi (Linux Services): Add a new section and document the new service and its configuration. Maxim Cournoyer