<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/nix/nix-daemon/guix-daemon.cc, branch master</title>
<subtitle>Personal branch of https://git.savannah.gnu.org/cgit/guix.git/ for implementing 'guix deploy'.
</subtitle>
<id>https://git.jakob.space/guix.git/atom?h=master</id>
<link rel='self' href='https://git.jakob.space/guix.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/'/>
<updated>2019-02-04T15:20:01Z</updated>
<entry>
<title>daemon: Add "/guix" to default 'nixLibexecDir'.</title>
<updated>2019-02-04T15:20:01Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-02-04T15:14:09Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=959eaa1eb834fd47ceab3c5bbbe4967e808d530b'/>
<id>urn:sha1:959eaa1eb834fd47ceab3c5bbbe4967e808d530b</id>
<content type='text'>
This makes it easier to run the uninstalled daemon.

* nix/local.mk (libstore_a_CPPFLAGS): Append "/guix" to
NIX_LIBEXEC_DIR.
* build-aux/pre-inst-env.in (NIX_LIBEXEC_DIR): Adjust comment.
* nix/libstore/builtins.cc (builtinDownload): Remove SUBDIR and its
use.
* nix/libstore/local-store.cc (runAuthenticationProgram): Ditto.
* nix/libstore/gc.cc (addAdditionalRoots): Remove "/guix" prefix.
* nix/nix-daemon/guix-daemon.cc (main): Ditto.
</content>
</entry>
<entry>
<title>daemon: Remove the 'NIX_SUBSTITUTERS' environment variable.</title>
<updated>2019-02-04T15:20:01Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-02-04T13:17:46Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=4d4a38f620520acc787ff5db2be3736923e14235'/>
<id>urn:sha1:4d4a38f620520acc787ff5db2be3736923e14235</id>
<content type='text'>
* nix/libstore/globals.cc (Settings:update): Remove changes to
'substituters'.
* nix/nix-daemon/guix-daemon.cc (main): Set 'settings.substituters'
directly instead of changing the 'NIX_SUBSTITUTERS' environment variable.
* build-aux/pre-inst-env.in: Remove reference to 'NIX_SUBSTITUTERS'.
</content>
</entry>
<entry>
<title>daemon: Install 'authenticate' script under LIBEXECDIR/guix.</title>
<updated>2018-11-14T20:34:08Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-11-14T17:11:58Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=0fe1fba4af41f267c4bb2c006fb37f42422ab703'/>
<id>urn:sha1:0fe1fba4af41f267c4bb2c006fb37f42422ab703</id>
<content type='text'>
That way it is handled in the same way as other helper scripts.

* nix/scripts/guix-authenticate.in: Rename to...
* nix/scripts/authenticate.in: ... this.
* config-daemon.ac: Adjust accordingly.
* nix/local.mk (libstore_a_CPPFLAGS): Remove -DOPENSSL_PATH.
(nodist_libexec_SCRIPTS): Remove.
(nodist_pkglibexec_SCRIPTS): New variable.
* nix/nix-daemon/guix-daemon.cc (main): Remove 'setenv' call for
"PATH".
* nix/libstore/local-store.cc (runAuthenticationProgram): New function.
(LocalStore::exportPath, LocalStore::importPath): Use it instead of
'runProgram' and OPENSSL_PATH.
</content>
</entry>
<entry>
<title>daemon: Make libbz2 an optional dependency.</title>
<updated>2018-01-07T22:47:22Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-01-05T16:48:23Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=f997137d0e2eba27bb1e2b282ee19ea474c41e12'/>
<id>urn:sha1:f997137d0e2eba27bb1e2b282ee19ea474c41e12</id>
<content type='text'>
* config-daemon.ac: Don't bail out when libbz2 is missing.  Define
'HAVE_LIBBZ2' Automake conditional.
* nix/libstore/build.cc: Wrap relevant bits in '#if HAVE_BZLIB_H'.
* nix/libstore/globals.cc (Settings::Settings): 'logCompression'
defaults to COMPRESSION_GZIP when HAVE_BZLIB_H is false.
* nix/libstore/globals.hh (CompressionType): Make 'COMPRESSION_BZIP2'
conditional on HAVE_BZLIB_H.
* nix/local.mk (guix_register_LDADD, guix_daemon_LDADD): Add -lbz2 only
when HAVE_LIBBZ2.
* nix/nix-daemon/guix-daemon.cc (parse_opt): Ignore "bzip2" when not
HAVE_BZLIB_H.
</content>
</entry>
<entry>
<title>daemon: Add gzip log compression.</title>
<updated>2018-01-07T22:47:22Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-01-05T16:15:41Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=29a686688674dc875775305312513405fa396a06'/>
<id>urn:sha1:29a686688674dc875775305312513405fa396a06</id>
<content type='text'>
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_LOG_COMPRESSION): New macro.
(options): Mark "disable-log-compression" as hidden and add
"log-compression".
(parse_opt): Handle GUIX_OPT_LOG_COMPRESSION.
* nix/libstore/build.cc (DerivationGoal): Add 'gzLogFile'.
(openLogFile): Initialize it when 'logCompression' is COMPRESSION_GZIP.
(closeLogFile, handleChildOutput): Honor 'gzLogFile'.
* nix/libstore/globals.hh (Settings)[compressLog]: Remove.
[logCompression]: New field.
(CompressionType): New enum.
* nix/libstore/globals.cc (Settings::Settings): Initialize it.
(update): Remove '_get' call for 'compressLog'.
* nix/local.mk (guix_daemon_LDADD, guix_register_LDADD): Add -lz.
* guix/store.scm (log-file): Handle '.gz' log files.
* tests/guix-daemon.sh: Add test with '--log-compression=gzip'.
* doc/guix.texi (Invoking guix-daemon): Adjust accordingly.
* config-daemon.ac: Check for libz and zlib.h.
</content>
</entry>
<entry>
<title>daemon: '--listen' can be passed several times, can specify TCP endpoints.</title>
<updated>2017-06-22T08:59:07Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludovic.courtes@inria.fr</email>
</author>
<published>2017-06-19T15:39:24Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=1071f781d97509347144754b3248581cf7c6c1d5'/>
<id>urn:sha1:1071f781d97509347144754b3248581cf7c6c1d5</id>
<content type='text'>
* nix/nix-daemon/guix-daemon.cc (DEFAULT_GUIX_PORT): New macro.
(listen_options): New variable.
(parse_opt): Push back '--listen' options to LISTEN_OPTIONS.
(open_unix_domain_socket, open_inet_socket)
(listening_sockets): New functions.
(main): Use it.  Pass SOCKETS to 'run'.
* nix/nix-daemon/nix-daemon.cc (matchUser): Remove.
(SD_LISTEN_FDS_START): Remove.
(acceptConnection): New function.
(daemonLoop): Rewrite to take a vector of file descriptors, to select(2)
on them, and to call 'acceptConnection'.
(run): Change to take a vector of file descriptors.
* tests/guix-daemon.sh: Add test.
</content>
</entry>
<entry>
<title>daemon: Add '--timeout' and '--max-silent-time'.</title>
<updated>2017-06-03T22:35:55Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-06-03T21:55:31Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=2ca9f51ec8125c0124362300853365a1a6c76ee5'/>
<id>urn:sha1:2ca9f51ec8125c0124362300853365a1a6c76ee5</id>
<content type='text'>
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_TIMEOUT)
(GUIX_OPT_MAX_SILENT_TIME): New macros.
* nix/nix-daemon/guix-daemon.cc (options): Add '--timeout' and
'--max-silent-time'.
(parse_opt): Honor them.
* tests/guix-daemon.sh: Add test.
* doc/guix.texi (Invoking guix-daemon): Document the options.
(Common Build Options): Properly describe default
timeout/max-silent-time value.  Add cross-ref to "Invoking
guix-daemon".
</content>
</entry>
<entry>
<title>daemon: Client settings no longer override daemon settings.</title>
<updated>2017-01-15T14:43:22Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-01-15T14:13:07Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=deac976d3d26c7b85b9c90efb424b0aa94f1027c'/>
<id>urn:sha1:deac976d3d26c7b85b9c90efb424b0aa94f1027c</id>
<content type='text'>
Fixes &lt;http://bugs.gnu.org/20217&gt;.

* nix/libstore/worker-protocol.hh (PROTOCOL_VERSION): Bump to 0x161.
* nix/nix-daemon/nix-daemon.cc (performOp): "build-max-jobs",
"build-max-silent-time", and "build-cores" are no longer read upfront;
instead, read them from the key/value list at the end.
* nix/nix-daemon/guix-daemon.cc (main): Explicitly set
'settings.maxBuildJobs'.
* guix/store.scm (%protocol-version): Bump to #x161.
(set-build-options): #:max-build-jobs, #:max-silent-time, and
 #:build-cores now default to #f.  Adjust handshake to new protocol.
* tests/store.scm ("build-cores"): New test.
* tests/guix-daemon.sh: Add test for default "build-cores" value.
</content>
</entry>
<entry>
<title>build: Default to "https://mirror.hydra.gnu.org/" for substitutes.</title>
<updated>2016-03-16T10:27:37Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2016-03-16T09:35:24Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=df061d079b50111280aa7209b3b3c4cf21fde218'/>
<id>urn:sha1:df061d079b50111280aa7209b3b3c4cf21fde218</id>
<content type='text'>
* config-daemon.ac: Check for (gnutls) and define 'GUIX_SUBSTITUTE_URLS'.
* nix/nix-daemon/guix-daemon.cc (main): Use GUIX_SUBSTITUTE_URLS.
* guix/store.scm (%default-substitute-urls): Use 'https' when (gnutls)
is available.
* doc/guix.texi (Binary Installation): Mention mirrors
(Invoking guix-daemon): Mention mirror.hydra.gnu.org.
(Substitutes): Mention mirrors.
(Invoking guix archive): Show https URLs.
</content>
</entry>
<entry>
<title>daemon: Add '--rounds'.</title>
<updated>2015-12-13T18:20:01Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-12-13T18:08:20Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=ecf84b7c482e4ab0d001b0121b76f1ae11a5482b'/>
<id>urn:sha1:ecf84b7c482e4ab0d001b0121b76f1ae11a5482b</id>
<content type='text'>
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_BUILD_ROUNDS): New macro.
(options): Add --rounds.
(parse_opt): Honor it.
* doc/guix.texi (Invoking guix-daemon): Document it.
</content>
</entry>
</feed>
