aboutsummaryrefslogtreecommitdiff
/* GNU Guix --- Functional package management for GNU
   Copyright (C) 2016, 2017 Ludovic Courtès <ludo@gnu.org>

   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 <http://www.gnu.org/licenses/>.  */

/* Interface to built-in derivation builders.  */

#pragma once

#include <derivations.hh>
#include <map>
#include <string>

namespace nix {

    inline bool isBuiltin(const Derivation & drv)
    {
	return string(drv.builder, 0, 8) == "builtin:";
    }

    /* Build DRV, which lives at DRVPATH.  */
    typedef void (*derivationBuilder) (const Derivation &drv,
				       const std::string &drvPath,
				       const std::string &output);

    /* Return the built-in builder called BUILDER, or NULL if none was
       found.  */
    derivationBuilder lookupBuiltinBuilder(const std::string &builder);

    /* Return the list of supported built-in builder names.  */
    std::list<std::string> builtinBuilderNames();
}
Leo Famulari 2017-01-30gnu: bitlbee: Update to 3.5.1 [security fixes]....* gnu/packages/messaging.scm (bitlbee): Update to 3.5.1. [source]: Remove patches. (%bitlbee-buddy-nick-change-patch): Remove. (%bitlbee-always-use-nicks-patch): Remove. Marius Bakke 2017-01-28gnu: Add GNU Freetalk....* gnu/packages/messaging.scm (freetalk): New variable. Signed-off-by: Mathieu Lirzin <mthl@gnu.org> Clément Lassieur 2017-01-23gnu: pybitmessage: Don't replace 'sh' reference with 'bash'....* gnu/packages/messaging.scm (pybitmessage)[arguments]: Use (which "sh") instead of (which "bash") in 'fix-makefile' phase. Leo Famulari 2017-01-18gnu: Add mcabber....* gnu/packages/messaging.scm (mcabber): New variable. Co-authored-by: Marius Bakke <mbakke@fastmail.com> ng0 2017-01-18gnu: Add loudmouth....* gnu/packages/messaging.scm (loudmouth): New variable. Signed-off-by: Marius Bakke <mbakke@fastmail.com> ng0 2017-01-08gnu: prosody: Make config and data files visible to 'prosodyctl'....* gnu/packages/messaging.scm (prosody)[arguments]: Add a 'fix-makefile' phase. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur 2017-01-08gnu: prosody: Add OpenSSL and Coreutils to the PATH of programs....* gnu/packages/messaging.scm (prosody)[arguments]: In 'wrap-programs' phase, add 'openssl' and 'coreutils' to 'PATH'. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur