lint: Do not report already-patched vulnerabilities.
* guix/scripts/lint.scm (patch-file-name): New procedure.
(check-vulnerabilities): Use it to filter out patched vulnerabilities.
* tests/lint.scm ("cve: one patched vulnerability"): New test.
doc: Mention 'specification->package'.
Suggested by Florian Paul Schmidt <mista.tapas@gmx.net>.
* doc/guix.texi (Using the Configuration System): Mention
'specification->package'.
substitute: Warn upon store prefix mismatches.
Suggested by Hynek Urban <hynek.urban@gmail.com>.
* guix/scripts/substitute.scm (fetch-narinfos): Move body to...
[do-fetch]: ... here. New procedure.
Emit a warning when CACHE-INFO's prefix does not match.
services: tor: Store private data under /var/lib/tor.
* gnu/services/networking.scm (tor-configuration->torrc): Add
'DataDirectory' clause. Change 'HiddenServiceDir' to
/var/lib/tor/hidden-services/NAME.
(tor-hidden-service-activation): Create /var/lib/tor.
(tor-hidden-service): Adjust docstring.
* doc/guix.texi (Networking Services): Adjust accordingly.
services: tor: Write to syslog.
* gnu/services/networking.scm (tor-configuration->torrc): Add "Log
notice syslog".
(tor-dmd-service): Add 'syslogd' to 'requirement'.
services: Add 'tor-hidden-service'.
* gnu/services/networking.scm (<tor-configuration>, <hidden-service>):
New record types.
(tor-configuration->torrc): New procedure.
(tor-dmd-service): Use it.
(tor-hidden-service-activation): New procedure.
(tor-service-type)[extensions]: Extend ACTIVATION-SERVICE-TYPE.
[compose, extend]: New fields.
(tor-service): Use 'tor-configuration'.
(tor-hidden-service-type): New variable.
(tor-hidden-service): New procedure.
services: lsh: Correctly handle #:interfaces option.
* gnu/services/ssh.scm (lsh-dmd-service)[lsh-command]: Pass a series of
--interface flags instead of the nonexistent --interfaces option.
gnu: tor: Update to 0.2.7.5.
* gnu/packages/tor.scm (tor): Update to 0.2.7.5.
gnu: eigen: Really run tests in verbose mode.
Suggested by Gaël Guennebaud <gael.guennebaud@inria.fr>.
* gnu/packages/algebra.scm (eigen)[arguments]: Remove #:test-target.
Rename 'build-tests' phase to 'check', and have it run 'ctest -V'.
gnu: gp2c: Update to 0.0.9pl4.
* gnu/packages/algebra.scm (gp2c): Update to 0.0.9pl4.
Add 'guix-daemon.conf' job for Upstart.
* etc/guix-daemon.conf.in: New file.
* daemon.am (CLEANFILES): Add etc/guix-daemon.conf.
(upstartjobdir, nodist_upstartjob_DATA): New variables.
(EXTRA_DIST): Add etc/guix-daemon.conf.in.
* doc/guix.texi (Binary Installation, Build Environment Setup): Mention
'guix-daemon.conf'.
Signed-off-by: Mario Daniel Ruiz Saavedra <desiderantes@rocketmail.com>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
lint: Add "cve" checker.
Fixes <http://bugs.gnu.org/21289>.
* guix/scripts/lint.scm (package-name->cpe-name, package-vulnerabilities)
(check-vulnerabilities): New procedures.
* guix/scripts/lint.scm (%checkers): Add "cve" checker.
* tests/lint.scm ("cve", "cve: one vulnerability"): New tests.
* doc/guix.texi (Invoking guix lint): Mention it.
Add (guix cve).
* guix/cve.scm, tests/cve-sample.xml, tests/cve.scm: New files.
* Makefile.am (MODULES): Add guix/cve.scm.
(SCM_TESTS): Add tests/cve.scm.
(EXTRA_DIST): Add tests/cve-sample.scm.
http-client: 'http-fetch' and 'http-fetch/cached' support HTTPS.
* guix/http-client.scm (http-fetch): Use 'open-connection-for-uri', to
support HTTPS.
import: hackage: Assume current 'ghc' package version.
* guix/scripts/import/hackage.scm (%default-options): Do it.
(ghc-default-version): New variable.
import: hackage: Add new tests.
* tests/hackage.scm (eval-test-with-cabal): Add optional argument.
(test-cabal-3): New variable and test.
(test-read-cabal-1): Exercise more parsing variants.
import: hackage: Handle CRLF end of line style.
* guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Use
'canonical-newline-port'.
utils: Add 'canonical-newline-port'.
* guix/utils.scm (canonical-newline-port): New procedure.
* tests/utils.scm ("canonical-newline-port"): New test.
import: hackage: Make parsing of tests and fields more flexible.
* guix/import/cabal.scm (is-test): Allow spaces between keyword and
parentheses.
(is-id): Add argument 'port'. Allow spaces between keyword and column.
(lex-word): Adjust call to 'is-id'.
import: hackage: Make it resilient to missing final newline.
* guix/import/cabal.scm (peek-next-line-indent): Check for missing final
newline.