;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Ludovic Courtès ;;; Copyright © 2014 Mark H Weaver ;;; ;;; 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 vtk) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix licenses) #:use-module (guix build-system cmake) #:use-module (gnu packages) #:use-module (gnu packages xorg) #:use-module (gnu packages gl)) (define-public vtk (package (name "vtk") (version "6.1.0") (source (origin (method url-fetch) (uri (string-append "http://www.vtk.org/files/release/" (substring version 0 (string-rindex version #\.)) "/VTK-" version ".tar.gz")) (sha256 (base32 "0d7shccdkyj4mbh2riilslgx3gd28in4c7xpm0lxa1ln8w5g2zdx")) (patches (list (search-patch "vtk-mesa-10.patch"))))) (build-system cmake-build-system) (arguments ;; Build without '-g' to save space. '(#:configure-flags '("-DCMAKE_BUILD_TYPE=Release") #:tests? #f)) ;XXX: no "test" target (inputs `(("libXt" ,libxt) ("xproto" ,xproto) ("libX11" ,libx11) ("mesa" ,mesa) ("glu" ,glu))) (home-page "http://www.vtk.org/") (synopsis "Libraries for 3D computer graphics") (description "The Visualization Toolkit (VTK) is a C++ library for 3D computer graphics, image processing and visualization. It supports a wide variety of visualization algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. VTK has an extensive information visualization framework, has a suite of 3D interaction widgets, supports parallel processing, and integrates with various databases on GUI toolkits such as Qt and Tk.") (license bsd-3))) /span>shepherd: Set #o640 permissions for log file of service in container....* gnu/build/shepherd.scm (make-forkexec-constructor/container): Set #o640 permissions for log file. Arun Isaac 2022-05-01Add (guix least-authority)....* guix/least-authority.scm: New file. * Makefile.am (MODULES): Add it. * gnu/build/shepherd.scm (default-mounts): Make public. Ludovic Courtès 2022-04-12shepherd: Add #:supplementary-groups....To support the argument introduced in Shepherd 0.9.0 when defining container-bound services. * gnu/build/shepherd.scm (exec-command*) (make-forkexec-constructor/container): Add '#:supplementary-groups'. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Leo Nikkilä 2022-04-11shepherd: 'fork+exec-command/container' always returns a PID....Fixes a regression introduced in 938448bf40fc77092859352d2243e2d0c236375f whereby 'fork+exec-command/container' would return #t, then used as the running value of the 'guix-daemon' service in the installer. Upon installation completion, stopping the 'guix-daemon' service would fail with wrong-type-arg because that #t would be passed to the 'stop' method in lieu of a PID. * gnu/build/shepherd.scm (fork+exec-command/container): Return a PID rather than #t. Ludovic Courtès 2022-04-11shepherd: 'exec-command*' has a valid default #:directory....Fixes a regression introduced in 938448bf40fc77092859352d2243e2d0c236375f where 'exec-command*' could get #:directory #f, in particular when called by 'fork+exec-command/container'. * gnu/build/shepherd.scm (exec-command*): Add default value for #:directory. Ludovic Courtès 2022-04-07shepherd: Adjust 'fork+exec-command/container' for the Shepherd 0.9....* gnu/build/shepherd.scm (exec-command*): New procedure, with code formerly... (make-forkexec-constructor/container): ... here. Use it. (fork+exec-command/container): Use 'fork+exec-command' only when CONTAINER-SUPPORT? is false or PID is the current process. Ludovic Courtès 2021-08-02build: shepherd: Use autoload to lazily bind Shepherd modules....Instead of imperative module-autoload! directives. * gnu/build/shepherd.scm: Replace module-autoload! directives by autoload arguments for define-module. Maxim Cournoyer 2020-11-05shepherd: Remove dependency on (guix utils)....Since commit 8ce6f4dc2879919c12bc76a2f4b01200af97e019, importing this module in a gexp would pull in (guix config) from the host, thereby leading to non-reproducible derivations. Users in (gnu services ...) do not expect that so simply remove the (guix utils) dependency for now. * gnu/build/shepherd.scm (fork+exec-command/container)[strip-pid]: New procedure. Use it instead of 'strip-keyword-arguments'. Ludovic Courtès