Ludovic Courtès
554f26ece3
archive: Add '--generate-key'.
...
* guix/pk-crypto.scm (error-source, error-string): New procedures.
* guix/pki.scm (%private-key-file): New variable.
* guix/scripts/archive.scm (show-help): Document '--generate-key'.
(%options): Add "generate-key".
(generate-key-pair): New procedure.
(guix-archive): Call 'generate-key' when OPTS contains a
'generate-key' pair.
* doc/guix.texi (Setting Up the Daemon): Suggest generating a key pair.
(Invoking guix archive): Document '--generate-key'.
2013-12-30 22:57:37 +01:00
Ludovic Courtès
dedb5d947e
pk-crypto: Fix 'canonical-sexp->sexp' for atoms.
...
* guix/pk-crypto.scm (canonical-sexp->sexp): Add hack to extract an
atom's buffer.
* tests/pk-crypto.scm ("sexp->canonical-sexp->sexp"): Add sample.
2013-12-30 22:29:12 +01:00
Ludovic Courtès
36341854df
pk-crypto: Work around Libgcrypt bug < https://bugs.g10code.com/gnupg/issue1594 >.
...
* guix/pk-crypto.scm (canonical-sexp-fold): Call 'nth-data' before
'nth' to work around <https://bugs.g10code.com/gnupg/issue1594 >.
* tests/pk-crypto.scm ("https://bugs.g10code.com/gnupg/issue1594 "): New
test.
2013-12-30 22:19:19 +01:00
Ludovic Courtès
c909dab269
authenticate: Consistently use 'leave' for fatal error reporting.
...
* guix/scripts/authenticate.scm (guix-authenticate): Replace all uses of
'format' + 'exit' with 'leave'.
2013-12-30 18:23:44 +01:00
Ludovic Courtès
6fc04984d2
Thank Kete.
2013-12-30 16:57:05 +01:00
John Darrington
200726ed09
gnu: mesa: Move out of xorg.scm and into gl.scm
...
* gnu/packages/xorg.scm (mesa): Move to...
* gnu/packages/gl.scm (mesa): ... here. New variable.
* gnu/packages/gnome.scm, gnu/packages/gnuzilla.scm,
gnu/packages/qemu.scm, gnu/packages/qt.scm: Adjust accordingly.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-30 16:53:30 +01:00
Ludovic Courtès
4d1a2b50a6
doc: Invoke 'useradd' with '--system'.
...
Reported by Kete <kete@ninthfloor.org>.
Fixes <http://bugs.gnu.org/16289 >.
* doc/guix.texi (Setting Up the Daemon): Add '--system' to the 'useradd'
command line. Suggested by Kete <kete@ninthfloor.org>.
2013-12-30 16:47:32 +01:00
Ludovic Courtès
4b155fea74
gnu: automake: Upgrade to 1.14.1.
...
* gnu/packages/autotools.scm (automake): Upgrade to 1.14.1.
2013-12-29 22:44:23 +01:00
Ludovic Courtès
57ed6ab792
gnu: gdbm: Upgrade to 1.11.
...
* gnu/packages/gdbm.scm (gdbm): Upgrade to 1.11.
2013-12-29 22:22:09 +01:00
Ludovic Courtès
bb0a70e1f1
build: Improve documentation of Nix-related options.
...
* configure.ac: Add documentation for --with-nix and --with-nixpkgs.
2013-12-29 19:53:05 +01:00
John Darrington
490c6528ed
gnu: games: New module
...
* gnu/packages/games.scm (gnubik): New variable
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-29 19:50:23 +01:00
John Darrington
ed19903d56
gnu: gnome: Add new package gtkglext
...
* gnu/packages/gnome.scm (gtkglext): New variable.
* gnu/packages/patches/gtkglext-disable-disable-deprecated.patch,
gnu/packages/patches/gtkglext-remove-pangox-dependency.patch: New
files.
* gnu-system.am (dist_patch_DATA): Add them.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-29 18:53:25 +01:00
Ludovic Courtès
96e5085c81
authenticate: Disallow imports signed with unauthorized keys.
...
* guix/scripts/authenticate.scm (signature-sexp): Remove.
(guix-authenticate): Upon '-verify', check whether the signature's
public key passes 'authorized-key?'.
2013-12-29 15:57:24 +01:00
Ludovic Courtès
8b420f74e4
Add (guix pki).
...
* guix/pki.scm, tests/pki.scm: New files.
* Makefile.am (MODULES): Add 'guix/pki.scm'.
(SCM_TESTS): Add 'tests/pki.scm'.
2013-12-29 15:57:24 +01:00
Ludovic Courtès
3f40cfdece
config: Export '%config-directory'.
...
* configure.ac: Define and substitute 'guix_sysconfdir'.
* guix/config.scm.in (%config-directory): New variable.
2013-12-29 15:57:24 +01:00
Ludovic Courtès
04d4c8a439
Move 'with-atomic-file-output' to (guix utils).
...
* guix/scripts/substitute-binary.scm (with-atomic-file-output): Move to...
* guix/utils.scm (with-atomic-file-output): ... here.
2013-12-29 15:57:24 +01:00
Ludovic Courtès
9501d7745e
pk-crypto: Add canonical-sexp to sexp conversion procedures.
...
* guix/pk-crypto.scm (canonical-sexp-fold, canonical-sexp->sexp,
sexp->canonical-sexp): New procedures.
* tests/pk-crypto.scm ("canonical-sexp->sexp",
"sexp->canonical-sexp->sexp"): New tests.
2013-12-29 15:57:24 +01:00
Ludovic Courtès
363ae1da82
pk-crypto: Add 'canonical-sexp-length' and related procedures.
...
* guix/pk-crypto.scm (canonical-sexp-length, canonical-sexp-null?,
canonical-sexp-list?): New procedures.
* tests/pk-crypto.scm ("canonical-sexp-length", "canonical-sexp-list?"):
New tests.
2013-12-29 15:57:24 +01:00
Ludovic Courtès
a2cbbb743d
pk-crypto: 'canonical-sexp-nth-data' returns a symbol for "tokens".
...
* guix/pk-crypto.scm (token-string?): New procedure.
(canonical-sexp-nth-data): Return a symbol when the element is a
"token", and a bytevector otherwise.
(latin1-string->bytevector): Remove.
(hash-data->bytevector): Adjust accordingly.
* tests/pk-crypto.scm ("canonical-sexp-nth"): Adjust accordingly. Add
octet string example.
2013-12-29 15:57:23 +01:00
Ludovic Courtès
6df1fb8991
authenticate: Store the public key as part of the signature.
...
* guix/scripts/authenticate.scm (signature-sexp): New procedure.
(guix-authenticate): Use it to produce the signature. Adjust
verification code accordingly.
* tests/store.scm ("import corrupt path"): Adjust test accordingly.
2013-12-29 15:57:23 +01:00
Ludovic Courtès
b0a33ac157
pk-crypto: Rename 'gcry-sexp' to 'canonical-sexp'.
...
* guix/pk-crypto.scm: Rename procedures, variables, etc. from
'gcry-sexp' to 'canonical-sexp'. Add comment with references.
* guix/scripts/authenticate.scm, tests/pk-crypto.scm: Adjust
accordingly.
2013-12-29 15:57:23 +01:00
Andreas Enge
557813760d
gnu: python: Update to 3.3.3.
...
* gnu/packages/python.scm (python): Update to 3.3.3.
2013-12-28 15:41:01 +01:00
Andreas Enge
ee2b510929
gnu: python-2: Update to 2.7.6.
...
* gnu/packages/python.scm (python-2): Update to 2.7.6.
2013-12-28 15:24:08 +01:00
Andreas Enge
81bb10ad17
gnu: parallel: Update to 20131122.
...
* gnu/packages/parallel.scm (parallel): Update to 20131122.
2013-12-28 14:59:15 +01:00
Andreas Enge
f6727409c2
gnu: xorriso: Update to 1.3.4.
...
* gnu/packages/cdrom.scm (xorriso): Update to 1.3.4.
2013-12-28 14:53:07 +01:00
Andreas Enge
d0c2cf7d54
gnu: libcdio: Update to 0.92.
...
* gnu/packages/cdrom.scm (libcdio): Update to 0.92.
2013-12-28 14:42:04 +01:00
Andreas Enge
579b249683
gnu: libextractor: Update to 1.3.
...
* gnu/packages/gnunet.scm (libextractor): Update to 1.3.
2013-12-28 09:01:15 +01:00
Andreas Enge
d3f1333693
gnu: vim: Update to 7.4.
...
* gnu/packages/vim.scm (vim): Update to 7.4.
2013-12-22 23:23:11 +01:00
Ludovic Courtès
d6b5e4bbbd
Update 'TODO'.
2013-12-22 01:11:12 +01:00
Ludovic Courtès
760c60d684
Add 'guix archive'.
...
* guix/scripts/archive.scm, tests/guix-archive.sh: New files.
* Makefile.am (MODULES): Add 'archive.scm'.
(SH_TESTS): Add 'guix-archive.sh'.
* doc/guix.texi (Invoking guix archive): New section.
* guix/scripts/build.scm: Export 'derivation-from-expression'.
* guix/scripts/package.scm: Export 'specification->package+output'.
2013-12-22 01:08:21 +01:00
Ludovic Courtès
7edccf4d62
build: Install 'guix-authenticate'.
...
* daemon.am (nodist_libexec_SCRIPTS): New variable.
2013-12-22 00:02:39 +01:00
Ludovic Courtès
81fa80b245
guix build: Improve procedural decomposition.
...
* guix/scripts/build.scm (%store): Remove.
(derivation-from-expression): Add 'store' parameter. Adjust caller
accordingly.
(register-root): New procedure, formerly within 'guix-build'.
(options->derivations): New procedure, formerly inline within
'guix-build'.
(guix-build): Adjust accordingly.
2013-12-21 22:53:58 +01:00
Ludovic Courtès
3f26bfc18a
Factorize package search between 'guix package' and 'guix build'.
...
* guix/scripts/package.scm (newest-available-packages): Remove.
(find-best-packages-by-name): Move to...
* gnu/packages.scm (find-best-packages-by-name): ... here.
(find-newest-available-packages): Memoize.
* guix/scripts/build.scm (specification->package): New procedure,
formerly called 'find-package' within 'guix-build'.
(guix-build): Adjust accordingly.
2013-12-21 22:36:32 +01:00
Ludovic Courtès
0820098d1c
authenticate: Add test.
...
* tests/guix-authenticate.sh: New file.
* Makefile.am (SH_TESTS): Add it.
2013-12-21 21:47:17 +01:00
Ludovic Courtès
0a66781eee
build: Adjust pk-crypto tests to Libgcrypt 1.5.3.
...
Reported by Andreas Enge <andreas@enge.fr>.
* tests/pk-crypto.scm ("string->gcry-sexp->string"): Remove "#C0FFEE#"
from SEXPS.
("gcry-sexp-nth"): Start at index 1.
2013-12-21 00:10:09 +01:00
Ludovic Courtès
526382ff92
daemon: Implement signed archive import/export.
...
* guix/scripts/authenticate.scm, nix/scripts/guix-authenticate.in,
tests/signing-key.pub, tests/signing-key.sec: New files.
* po/POTFILES.in: Add 'guix/scripts/authenticate.scm'.
* guix/store.scm (dump-port): New procedure.
(process-stderr): Add 'user-port' optional parameter. Handle
the %STDERR-WRITE and %STDERR-READ cases as expected.
(import-paths, export-path, export-paths): New procedures.
* tests/store.scm ("export/import several paths", "import corrupt
path"): New tests.
* Makefile.am (MODULES): Add 'guix/scripts/authenticate.scm'.
(EXTRA_DIST): Add 'tests/signing-key.{pub,sec}'.
* daemon.am (libstore_a_CPPFLAGS)[-DNIX_CONF_DIR]: Change 'NIX_CONF_DIR'
to .../guix. Change 'OPENSSL_PATH' to 'guix-authenticate'.
* config-daemon.ac: Instantiate 'nix/scripts/guix-authenticate'.
* nix/nix-daemon/guix-daemon.cc (main): Augment $PATH to include
'settings.nixLibexecDir'.
* test-env.in: Export 'NIX_CONF_DIR' and 'NIX_LIBEXEC_DIR'. Populate
$NIX_CONF_DIR.
2013-12-20 17:17:42 +01:00
Ludovic Courtès
ce507041f7
pk-crypto: Add a few sexp utility procedures.
...
* guix/pk-crypto.scm (gcry-sexp-car, gcry-sexp-cdr, gcry-sexp-nth,
gcry-sexp-nth-data, dereference-size_t, latin1-string->bytevector,
hash-data->bytevector): New procedures.
* tests/pk-crypto.scm ("gcry-sexp-car + cdr", "gcry-sexp-nth",
"gcry-sexp-nth-data", "bytevector->hash-data->bytevector"): New tests.
2013-12-20 15:22:15 +01:00
Ludovic Courtès
971cb56dd0
Update 'TODO'.
2013-12-20 00:37:41 +01:00
Ludovic Courtès
3476ded934
Add (guix pk-crypto).
...
* guix/pk-crypto.scm, tests/pk-crypto.scm: New files.
* Makefile.am (MODULES, SCM_TESTS): Add them.
2013-12-20 00:36:26 +01:00
Ludovic Courtès
b1aa25be00
sync-with-upstream: Work around limitation of dash.
...
Reported by Andreas Enge <andreas@enge.fr>.
* nix/sync-with-upstream: Expand use of {cc,hh}, to placate dash.
2013-12-19 00:42:35 +01:00
Ludovic Courtès
0c5028faea
daemon: Fix 'HashSink::currentHash()'.
...
Before that, calls to 'HashSink::currentHash()' would eventually lead to
a segfault because the underlying gcrypt handle has been closed. (Note
that this method is only used via 'importPaths' and 'exportPath', though.)
* nix/libutil/gcrypt-hash.hh (struct guix_hash_context): Add a
constructor and a copy constructor; move out of 'extern "C"'.
* nix/libutil/gcrypt-hash.cc (guix_hash_final): Clear 'md_handle' upon
exit.
* nix/sync-with-upstream (top_srcdir): Change hash.{cc,hh} to read
'struct Ctx' instead of 'union Ctx'.
2013-12-19 00:02:49 +01:00
Ludovic Courtès
37dd969c2e
daemon: Add libgcrypt call to state that the initialization is over.
...
* nix/nix-daemon/guix-daemon.cc (main): Add 'gcry_control' call.
2013-12-19 00:02:49 +01:00
Andreas Enge
7eb71d7a3d
gnu: xf86-video-vmware: Add input xorg-server.
...
* gnu/packages/xorg.scm (xf86-video-vmware): Add input xorg-server.
2013-12-18 19:58:40 +01:00
Andreas Enge
217a67c020
gnu: iso-codes: Update to 3.49.
...
* gnu/packages/iso-codes.scm (iso-codes): Update to 3.49.
2013-12-18 15:49:57 +01:00
Andreas Enge
e148203588
gnu: shishi: Use libgcrypt-1.5.
...
* gnu/packages/shishi.scm (shishi): Use input libgcrypt-1.5 instead of 1.6.
2013-12-18 14:24:34 +01:00
Andreas Enge
a53421fdda
gnu: libgcrypt: Make old version 1.5.3 public.
...
* gnu/packages/gnupg.scm (libgcrypt-1.5): New variable.
* gnu/packages/ssh.scm (libssh): Use libgcrypt-1.5 instead of defining it
ad-hoc.
2013-12-18 14:11:01 +01:00
Ludovic Courtès
d44da8b092
gnu: libssh: Upgrade to 0.5.5.
...
* gnu/packages/ssh.scm (libssh): Upgrade to 0.5.5.
2013-12-17 22:02:07 +01:00
Ludovic Courtès
678110b949
gnu: libssh: Build against an older libgcrypt.
...
* gnu/packages/ssh.scm (libssh): Use libgcrypt 1.5.3 as an input.
2013-12-17 22:01:42 +01:00
Andreas Enge
f22e0e264e
gnu: ffmpeg: Modify runpath of binaries to include output library path.
...
* gnu/packages/video.scm (ffmpeg): Patch binaries to add output library path
to runpath.
2013-12-17 21:19:41 +01:00
Ludovic Courtès
f733c4c838
gnu: tor: Upgrade to 0.2.4.19.
...
* gnu/packages/tor.scm (tor): Upgrade to 0.2.4.19.
2013-12-16 23:57:24 +01:00