summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-12-12 15:32:35 +0100
committerLudovic Courtès <ludo@gnu.org>2012-12-12 15:32:35 +0100
commita9128eac414e56882a12571e4856873a19ff6ec3 (patch)
treee12bc338d77c78fff998953dd0d7f1cf27f22e18
parent4d152bf1d9ff894119e913e6506632348107cf65 (diff)
downloadguix-a9128eac414e56882a12571e4856873a19ff6ec3.tar.gz
daemon: Use `openssl' from $PATH.
* daemon.am (-DOPENSSL_PATH): Default to "openssl".
* TODO: Mention removal of OpenSSL dependency.
-rw-r--r--TODO9
-rw-r--r--daemon.am2
2 files changed, 10 insertions, 1 deletions
diff --git a/TODO b/TODO
index 1579504ea5..5510ee8c76 100644
--- a/TODO
+++ b/TODO
@@ -14,6 +14,15 @@ and GC-related tasks.  The daemon mainly uses ‘libstore’ from Nix.
 Integrating it in Guix itself will make Guix self-contained, thereby
 simplifying our users’ lives.
 
+** Remove dependency on OpenSSL
+
+The ‘openssl’ command-line tool is used in libstore to sign store paths
+to be exported, and to check such signatures.  The signing keys are
+usually in /etc/nix/signing-key.{pub,sec}.  They are a PKCS#8-encoded
+X.509 SubjectPublicKeyInfo.  These can be decoded with the [[http://lists.gnu.org/archive/html/help-gnutls/2012-12/msg00012.html][C API of
+GnuTLS]], but not yet with its Guile bindings.  There’s also
+‘gnutls_privkey_sign_data’ to sign, and related functions.
+
 * infrastructure
 
 ** have a Hydra instance build Guix packages
diff --git a/daemon.am b/daemon.am
index b2c0e649eb..aa75c6ed29 100644
--- a/daemon.am
+++ b/daemon.am
@@ -114,7 +114,7 @@ libstore_a_CPPFLAGS =				\
   -DNIX_CONF_DIR=\"$(sysconfdir)/nix\"		\
   -DNIX_LIBEXEC_DIR=\"$(libexecdir)\"		\
   -DNIX_BIN_DIR=\"$(bindir)\"			\
-  -DOPENSSL_PATH="\"FIXME--no OpenSSL support\""
+  -DOPENSSL_PATH="\"openssl\""
 
 libstore_a_CFLAGS =				\
   $(SQLITE3_CFLAGS) $(LIBGCRYPT_CFLAGS)