;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Ludovic Courtès ;;; Copyright © 2015, 2016, 2017, 2020, 2021, 2022 Efraim Flashner ;;; Copyright © 2019–2022 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 freeipmi) #:use-module (guix packages) #:use-module (guix licenses) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages gnupg)) (define-public freeipmi (package (name "freeipmi") (version "1.6.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/freeipmi/freeipmi-" version ".tar.gz")) (sha256 (base32 "15x861i8r1gk44924d2pszlb8mapgkr18m3991vla4601y8xdyv5")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-static" ,@(if (%current-target-system) ;; We cannot check for these devices ;; when cross compiling. `("ac_cv_file__dev_random=yes" "ac_cv_file__dev_urandom=yes") '())))) (inputs (list libgcrypt)) (home-page "https://www.gnu.org/software/freeipmi/") (synopsis "Platform management, including sensor and power monitoring") (description "GNU FreeIPMI is a collection of in-band and out-of-band IPMI software in accordance with the IPMI v1.5/2.0 specification. These programs provide a set of interfaces for platform management. Common functionality includes sensor monitoring, system event monitoring, power control and serial-over-LAN.") (license gpl3+))) >AgeCommit message (Expand)Author 2022-11-18services: shepherd: Define 'shepherd-configuration-action' helper....* gnu/services/shepherd.scm (shepherd-configuration-action): New * doc/guix.texi (Shepherd Services): Document it. Ludovic Courtès 2022-09-29services: shepherd: Leave the finalization thread in peace....This gets rid of that (in)famous at boot time: error in finalization thread: Success This was caused by the file-descriptor closing loop, which would clause the finalization pipe, leading the finalization thread to (erroneously) error out. Thanks to Josselin Poiret for locating the problem! * gnu/services/shepherd.scm (shepherd-boot-gexp): In 'loop', replace 'close-fdes' with a pair of 'fcntl' calls to add FD_CLOEXEC. Ludovic Courtès 2022-09-13services: shepherd: Install O_CLOEXEC variant of 'call-with-input-file' & co....Fixes a bug introduced with the Shepherd 0.9.2 upgrade in commit 1ba0e38267c9ff8bb476285091be6e297bbf136e whereby files opened by, say, the 'start' method of 'urandom-seed', could leak into the execution environment of some other service--e.g., 'term-tty4'. * gnu/services/shepherd.scm (shepherd-configuration-file)[config]: Override 'call-with-input-file' and 'call-with-output-file'. Ludovic Courtès 2022-09-11services: shepherd: Open /dev/null as O_CLOEXEC....Failing to do that, that file descriptor could be inherited by child processes as of Shepherd 0.9.2. * gnu/services/shepherd.scm (shepherd-configuration-file): Open /dev/null as O_CLOEXEC. Ludovic Courtès