# GNU Guix --- Functional package management for GNU # Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020 Ludovic Courtès # Copyright © 2016 Mathieu Lirzin # Copyright © 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 . # # Integration of the `guix-daemon' code taken from upstream Nix. # BUILT_SOURCES += %D%/libstore/schema.sql.hh CLEANFILES += %D%/libstore/schema.sql.hh noinst_LIBRARIES = libformat.a libutil.a libstore.a # Use '-std=c++11' for 'std::shared_ptr', 'auto', lambdas, and more. AM_CXXFLAGS = -Wall -std=c++11 libformat_a_SOURCES = \ %D%/boost/format/free_funcs.cc \ %D%/boost/format/parsing.cc \ %D%/boost/format/format_implementation.cc libformat_headers = \ %D%/boost/throw_exception.hpp \ %D%/boost/format.hpp \ %D%/boost/assert.hpp \ %D%/boost/format/macros_default.hpp \ %D%/boost/format/format_fwd.hpp \ %D%/boost/format/format_class.hpp \ %D%/boost/format/exceptions.hpp \ %D%/boost/format/group.hpp \ %D%/boost/format/feed_args.hpp \ %D%/boost/format/internals_fwd.hpp \ %D%/boost/format/internals.hpp libformat_a_CPPFLAGS = \ -I$(top_srcdir)/nix libutil_a_SOURCES = \ %D%/libutil/archive.cc \ %D%/libutil/affinity.cc \ %D%/libutil/serialise.cc \ %D%/libutil/util.cc \ %D%/libutil/hash.cc libutil_headers = \ %D%/libutil/affinity.hh \ %D%/libutil/hash.hh \ %D%/libutil/serialise.hh \ %D%/libutil/util.hh \ %D%/libutil/archive.hh \ %D%/libutil/types.hh libutil_a_CPPFLAGS = \ -I$(top_builddir)/nix \ -I$(top_srcdir)/%D%/libutil \ $(libformat_a_CPPFLAGS) libstore_a_SOURCES = \ %D%/libstore/gc.cc \ %D%/libstore/globals.cc \ %D%/libstore/misc.cc \ %D%/libstore/references.cc \ %D%/libstore/store-api.cc \ %D%/libstore/optimise-store.cc \ %D%/libstore/local-store.cc \ %D%/libstore/build.cc \ %D%/libstore/pathlocks.cc \ %D%/libstore/derivations.cc \ %D%/libstore/builtins.cc \ %D%/libstore/sqlite.cc libstore_headers = \ %D%/libstore/references.hh \ %D%/libstore/pathlocks.hh \ %D%/libstore/globals.hh \ %D%/libstore/worker-protocol.hh \ %D%/libstore/derivations.hh \ %D%/libstore/misc.hh \ %D%/libstore/local-store.hh \ %D%/libstore/sqlite.hh \ %D%/libstore/builtins.hh \ %D%/libstore/store-api.hh libstore_a_CPPFLAGS = \ $(libutil_a_CPPFLAGS) \ -I$(top_srcdir)/%D%/libstore \ -I$(top_builddir)/%D%/libstore \ -DNIX_STORE_DIR=\"$(storedir)\" \ -DNIX_STATE_DIR=\"$(localstatedir)/guix\" \ -DNIX_LOG_DIR=\"$(localstatedir)/log/guix\" \ -DGUIX_CONFIGURATION_DIRECTORY=\"$(sysconfdir)/guix\" \ -DNIX_BIN_DIR=\"$(bindir)\" \ -DDEFAULT_CHROOT_DIRS="\"\"" libstore_a_CXXFLAGS = $(AM_CXXFLAGS) \ $(SQLITE3_CFLAGS) $(LIBGCRYPT_CFLAGS) bin_PROGRAMS = guix-daemon guix_daemon_SOURCES = \ %D%/nix-daemon/nix-da2021-02-09etc: 'guix-publish.service' depends on 'guix-daemon.service'....Reported by Dimitri Delabroye <dimitri.delabroye@inria.fr>. * etc/guix-publish.service.in (Requires, PartOf, After): New fields. Ludovic Courtès 2019-06-05etc: Fix GUIX_LOCPATH quoting in 'guix-publish.service' file....This is a followup to 579d17b70dac067f8194ede46513400b91ac136a. * etc/guix-publish.service.in (Environment): Move GUIX_LOCPATH inside the quotes. Jack Hill 2019-05-13Set 'LC_ALL=en_US.utf8' in systemd '.service' files....Fixes <https://bugs.gnu.org/35671>. * etc/guix-daemon.service.in (Environment): Quote the 'GUIX_LOCPATH' value; add 'LC_ALL'. * etc/guix-publish.service.in (Environment): Likewise. Ludovic Courtès 2018-11-23build: Binary tarball now populates the "current-guix" profile....* Makefile.am (guix-binary.%.tar.xz): Pass '--profile-name=current-guix'. Remove glibc and glibc-utf8-locales. * doc/guix.texi (Binary Installation): Update accordingly. * etc/guix-install.sh * etc/guix-install.sh (sys_create_store, sys_enable_guix_daemon) (sys_authorize_build_farms): Likewise. * etc/guix-publish.conf.in, etc/guix-publish.service.in, etc/guix-daemon.conf.in, etc/guix-daemon.service.in: Update file names accordingly. Ludovic Courtès 2017-03-06build: Don't embed absolute paths in .service and .conf service files....Otherwise, users will be stuck running an old copy of guix and the guix-daemon if they copy the service files instead of symlinking them. * etc/guix-daemon.conf.in, etc/guix-daemon.service.in, etc/guix-publish.conf.in, etc/guix-publish.service.in: Expand @localstatedir@ instead of @bindir@. * nix/local.mk (etc/guix-%.service, etc/guix-%.conf): Use @localstatedir@ instead of @bindir@. Leo Famulari 2016-11-24Add system start-up files for "guix publish"....* .gitignore: add etc/guix-publish.conf and /etc/guix-publish.service. *