From 9080d5d924884ffde31536272ab925f784c8d7de Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 11 Mar 2020 19:41:22 +0100 Subject: [PATCH 01/10] README, error msg: http -> https --- README.md | 6 +++--- scripts/install-nix-from-closure.sh | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 48cb1685c..a953c0f71 100644 --- a/README.md +++ b/README.md @@ -9,11 +9,11 @@ appear with Nix. To find out more about the tool, usage and installation instructions, please read the manual, which is available on the Nix website at -. +. ## Contributing -Take a look at the [Hacking Section](http://nixos.org/nix/manual/#chap-hacking) +Take a look at the [Hacking Section](https://nixos.org/nix/manual/#chap-hacking) of the manual. It helps you to get started with building Nix from source. ## License @@ -21,4 +21,4 @@ of the manual. It helps you to get started with building Nix from source. Nix is released under the LGPL v2.1 This product includes software developed by the OpenSSL Project for -use in the [OpenSSL Toolkit](http://www.OpenSSL.org/). +use in the [OpenSSL Toolkit](https://www.OpenSSL.org/). diff --git a/scripts/install-nix-from-closure.sh b/scripts/install-nix-from-closure.sh index 3fea7e056..e00708f6c 100644 --- a/scripts/install-nix-from-closure.sh +++ b/scripts/install-nix-from-closure.sh @@ -87,7 +87,7 @@ if ! [ -e $dest ]; then fi if ! [ -w $dest ]; then - echo "$0: directory $dest exists, but is not writable by you. This could indicate that another user has already performed a single-user installation of Nix on this system. If you wish to enable multi-user support see http://nixos.org/nix/manual/#ssec-multi-user. If you wish to continue with a single-user install for $USER please run 'chown -R $USER $dest' as root." >&2 + echo "$0: directory $dest exists, but is not writable by you. This could indicate that another user has already performed a single-user installation of Nix on this system. If you wish to enable multi-user support see https://nixos.org/nix/manual/#ssec-multi-user. If you wish to continue with a single-user install for $USER please run 'chown -R $USER $dest' as root." >&2 exit 1 fi From 15edd2349e9e343dad761d513ffdcb121688777c Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Wed, 11 Mar 2020 18:39:30 -0500 Subject: [PATCH 02/10] local.mk: fix user-env.cc dep on buildenv.nix.gen.hh, resolve occasional build failure --- src/nix/local.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nix/local.mk b/src/nix/local.mk index a486a37cc..51dad101f 100644 --- a/src/nix/local.mk +++ b/src/nix/local.mk @@ -24,4 +24,4 @@ $(foreach name, \ $(eval $(call install-symlink, nix, $(bindir)/$(name)))) $(eval $(call install-symlink, $(bindir)/nix, $(libexecdir)/nix/build-remote)) -src/nix-env/nix-env.cc: src/nix-env/buildenv.nix.gen.hh +src/nix-env/user-env.cc: src/nix-env/buildenv.nix.gen.hh From 3f55f8a8fb5e885297e288c078adc173316addf2 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 11 Mar 2020 20:04:47 +0100 Subject: [PATCH 03/10] pathInfoCache: Respect disk cache TTLs #3398 --- src/libstore/binary-cache-store.cc | 2 +- src/libstore/local-store.cc | 3 ++- src/libstore/store-api.cc | 24 ++++++++++++++++-------- src/libstore/store-api.hh | 21 ++++++++++++++++++++- 4 files changed, 39 insertions(+), 11 deletions(-) diff --git a/src/libstore/binary-cache-store.cc b/src/libstore/binary-cache-store.cc index 717faec92..3a2d84861 100644 --- a/src/libstore/binary-cache-store.cc +++ b/src/libstore/binary-cache-store.cc @@ -106,7 +106,7 @@ void BinaryCacheStore::writeNarInfo(ref narInfo) { auto state_(state.lock()); - state_->pathInfoCache.upsert(hashPart, std::shared_ptr(narInfo)); + state_->pathInfoCache.upsert(hashPart, PathInfoCacheValue { .value = std::shared_ptr(narInfo) }); } if (diskCache) diff --git a/src/libstore/local-store.cc b/src/libstore/local-store.cc index e59624cd3..c5929a41c 100644 --- a/src/libstore/local-store.cc +++ b/src/libstore/local-store.cc @@ -622,7 +622,8 @@ uint64_t LocalStore::addValidPath(State & state, { auto state_(Store::state.lock()); - state_->pathInfoCache.upsert(storePathToHash(printStorePath(info.path)), std::make_shared(info)); + state_->pathInfoCache.upsert(storePathToHash(printStorePath(info.path)), + PathInfoCacheValue{ .value = std::make_shared(info) }); } return id; diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc index 75fa5d1e6..b043feb0a 100644 --- a/src/libstore/store-api.cc +++ b/src/libstore/store-api.cc @@ -226,6 +226,14 @@ std::string Store::getUri() return ""; } +bool Store::PathInfoCacheValue::isKnownNow() +{ + std::chrono::duration ttl = didExist() + ? std::chrono::seconds(settings.ttlPositiveNarInfoCache) + : std::chrono::seconds(settings.ttlNegativeNarInfoCache); + + return std::chrono::steady_clock::now() < time_point + ttl; +} bool Store::isValidPath(const StorePath & storePath) { @@ -234,9 +242,9 @@ bool Store::isValidPath(const StorePath & storePath) { auto state_(state.lock()); auto res = state_->pathInfoCache.get(hashPart); - if (res) { + if (res && res->isKnownNow()) { stats.narInfoReadAverted++; - return *res != 0; + return res->didExist(); } } @@ -246,7 +254,7 @@ bool Store::isValidPath(const StorePath & storePath) stats.narInfoReadAverted++; auto state_(state.lock()); state_->pathInfoCache.upsert(hashPart, - res.first == NarInfoDiskCache::oInvalid ? 0 : res.second); + res.first == NarInfoDiskCache::oInvalid ? PathInfoCacheValue{} : PathInfoCacheValue { .value = res.second }); return res.first == NarInfoDiskCache::oValid; } } @@ -301,11 +309,11 @@ void Store::queryPathInfo(const StorePath & storePath, { auto res = state.lock()->pathInfoCache.get(hashPart); - if (res) { + if (res && res->isKnownNow()) { stats.narInfoReadAverted++; - if (!*res) + if (!res->didExist()) throw InvalidPath("path '%s' is not valid", printStorePath(storePath)); - return callback(ref(*res)); + return callback(ref(res->value)); } } @@ -316,7 +324,7 @@ void Store::queryPathInfo(const StorePath & storePath, { auto state_(state.lock()); state_->pathInfoCache.upsert(hashPart, - res.first == NarInfoDiskCache::oInvalid ? 0 : res.second); + res.first == NarInfoDiskCache::oInvalid ? PathInfoCacheValue{} : PathInfoCacheValue{ .value = res.second }); if (res.first == NarInfoDiskCache::oInvalid || res.second->path != storePath) throw InvalidPath("path '%s' is not valid", printStorePath(storePath)); @@ -340,7 +348,7 @@ void Store::queryPathInfo(const StorePath & storePath, { auto state_(state.lock()); - state_->pathInfoCache.upsert(hashPart, info); + state_->pathInfoCache.upsert(hashPart, PathInfoCacheValue { .value = info }); } if (!info || info->path != parseStorePath(storePath)) { diff --git a/src/libstore/store-api.hh b/src/libstore/store-api.hh index a000757fb..e0484de13 100644 --- a/src/libstore/store-api.hh +++ b/src/libstore/store-api.hh @@ -16,6 +16,7 @@ #include #include #include +#include namespace nix { @@ -261,10 +262,28 @@ public: protected: + struct PathInfoCacheValue { + + // Time of cache entry creation or update + std::chrono::time_point time_point = std::chrono::steady_clock::now(); + + // Null if missing + std::shared_ptr value; + + // Whether the value is valid as a cache entry. The path may not exist. + bool isKnownNow(); + + // Past tense, because a path can only be assumed to exists when + // isKnownNow() && didExist() + inline bool didExist() { + return value != nullptr; + } + }; + struct State { // FIXME: fix key - LRUCache> pathInfoCache; + LRUCache pathInfoCache; }; Sync state; From b816515f613b7013ba0d5489841568b8f666f224 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Mar 2020 12:23:19 +0100 Subject: [PATCH 04/10] Fix ca-references feature check Fixes #3406. --- src/libstore/local-store.cc | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/libstore/local-store.cc b/src/libstore/local-store.cc index c5929a41c..cd2e86f29 100644 --- a/src/libstore/local-store.cc +++ b/src/libstore/local-store.cc @@ -1004,16 +1004,18 @@ void LocalStore::addToStore(const ValidPathInfo & info, Source & source, deletePath(realPath); + if (info.ca != "" && + !((hasPrefix(info.ca, "text:") && !info.references.count(info.path)) + || info.references.empty())) + settings.requireExperimentalFeature("ca-references"); + /* While restoring the path from the NAR, compute the hash of the NAR. */ std::unique_ptr hashSink; - if (info.ca == "") + if (info.ca == "" || !info.references.count(info.path)) hashSink = std::make_unique(htSHA256); - else { - if (!info.references.empty()) - settings.requireExperimentalFeature("ca-references"); + else hashSink = std::make_unique(htSHA256, storePathToHash(printStorePath(info.path))); - } LambdaSource wrapperSource([&](unsigned char * data, size_t len) -> size_t { size_t n = source.read(data, len); @@ -1268,7 +1270,7 @@ bool LocalStore::verifyStore(bool checkContents, RepairFlag repair) printMsg(lvlTalkative, "checking contents of '%s'", printStorePath(i)); std::unique_ptr hashSink; - if (info->ca == "") + if (info->ca == "" || !info->references.count(info->path)) hashSink = std::make_unique(info->narHash.type); else hashSink = std::make_unique(info->narHash.type, storePathToHash(printStorePath(info->path))); From cc5c81822d298544489ea0861d266c3a5137759a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Mar 2020 14:50:51 +0100 Subject: [PATCH 05/10] mk/README.md: Remove The make-rules repo is not maintained. --- mk/README.md | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 mk/README.md diff --git a/mk/README.md b/mk/README.md deleted file mode 100644 index e4cd742b4..000000000 --- a/mk/README.md +++ /dev/null @@ -1,6 +0,0 @@ -This is a set of helper Makefiles for doing non-recursive builds with -GNU Make. The canonical source can be found at -https://github.com/edolstra/make-rules. You should copy the files -into the `mk` subdirectory of your project. - -TODO: write more documentation. From 9c7e90f414067eb59170bde952d5b8ac03c8f46c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Mar 2020 15:00:08 +0100 Subject: [PATCH 06/10] style.css: Remove This file is licensed under the GPL. Originally, Nix was also GPL-licensed so that was fine. However, we later changed the license to the LGPL but missed the fact that style.css has an incompatible license. Since the Nix manual at nixos.org uses its own styling, we can remove this file. Fixes #3392. --- doc/manual/local.mk | 3 +- doc/manual/style.css | 263 ------------------------------------------- 2 files changed, 1 insertion(+), 265 deletions(-) delete mode 100644 doc/manual/style.css diff --git a/doc/manual/local.mk b/doc/manual/local.mk index 4376c3644..b4e7f35d5 100644 --- a/doc/manual/local.mk +++ b/doc/manual/local.mk @@ -4,7 +4,6 @@ ifeq ($(doc_generate),yes) XSLTPROC = $(xsltproc) --nonet $(xmlflags) \ --param section.autolabel 1 \ --param section.label.includes.component.label 1 \ - --param html.stylesheet \'style.css\' \ --param xref.with.number.and.title 1 \ --param toc.section.depth 3 \ --param admon.style \'\' \ @@ -66,7 +65,7 @@ $(d)/manual.html: $(d)/manual.xml $(MANUAL_SRCS) $(d)/manual.is-valid $(docbookxsl)/profiling/profile.xsl $< | \ $(XSLTPROC) --output $@ $(docbookxsl)/xhtml/docbook.xsl - -$(foreach file, $(d)/manual.html $(d)/style.css, $(eval $(call install-data-in, $(file), $(docdir)/manual))) +$(foreach file, $(d)/manual.html, $(eval $(call install-data-in, $(file), $(docdir)/manual))) $(foreach file, $(wildcard $(d)/figures/*.png), $(eval $(call install-data-in, $(file), $(docdir)/manual/figures))) diff --git a/doc/manual/style.css b/doc/manual/style.css deleted file mode 100644 index 592583ab0..000000000 --- a/doc/manual/style.css +++ /dev/null @@ -1,263 +0,0 @@ -/* Copied from http://bakefile.sourceforge.net/, which appears - licensed under the GNU GPL. */ - - -/*************************************************************************** - Basic headers and text: - ***************************************************************************/ - -body -{ - font-family: "Nimbus Sans L", sans-serif; - background: white; - margin: 2em 1em 2em 1em; -} - -h1, h2, h3, h4 -{ - color: #005aa0; -} - -h1 /* title */ -{ - font-size: 200%; -} - -div.part h1 -{ - font-size: 240%; -} - -h2 /* chapters, appendices, subtitle */ -{ - font-size: 180%; -} - -div.part -{ - margin-top: 4em; -} - -/* Extra space between chapters, appendices. */ -div.chapter > div.titlepage h2, div.appendix > div.titlepage h2 -{ - margin-top: 1.5em; -} - -div.section > div.titlepage h2 /* sections */ -{ - font-size: 150%; - margin-top: 1.5em; -} - -h3 /* subsections */ -{ - font-size: 125%; -} - -div.simplesect h2 -{ - font-size: 110%; -} - -div.appendix h3 -{ - font-size: 150%; - margin-top: 1.5em; -} - -div.refentry\.separator -{ - margin-top: 2.5em; - margin-bottom: 2em; -} - -div.refnamediv h2, div.refsynopsisdiv h2, div.refsection h2 /* refentry parts */ -{ - margin-top: 1.4em; - font-size: 125%; -} - -div.refsection h3 -{ - font-size: 110%; -} - - -/*************************************************************************** - Examples: - ***************************************************************************/ - -div.example -{ - border: 1px solid #b0b0b0; - padding: 6px 6px; - margin-left: 1.5em; - margin-right: 1.5em; - background: #f4f4f8; - border-radius: 0.4em; -} - -div.example p.title -{ - margin-top: 0em; -} - -div.example pre -{ -} - - -/*************************************************************************** - Screen dumps: - ***************************************************************************/ - -pre.screen, pre.programlisting -{ - padding: 6px 6px; - margin-left: 1.5em; - margin-right: 1.5em; - color: #600000; - background: #f4f4f8; - font-family: monospace; -} - -div.example pre.programlisting -{ - border: 0px; - padding: 0 0; - margin: 0 0 0 0; -} - - -/*************************************************************************** - Notes, warnings etc: - ***************************************************************************/ - -.note, .warning -{ - border: 1px solid #b0b0b0; - padding: 3px 3px; - margin-left: 1.5em; - margin-right: 1.5em; - margin-bottom: 1em; - padding: 0.3em 0.3em 0.3em 0.3em; - background: #fffff5; - border-radius: 0.4em; -} - -div.note, div.warning -{ - font-style: italic; -} - -div.note h3, div.warning h3 -{ - color: red; - font-size: 100%; - padding-right: 0.5em; - display: inline; -} - -div.note p, div.warning p -{ - margin-bottom: 0em; -} - -div.note h3 + p, div.warning h3 + p -{ - display: inline; -} - -div.note h3 -{ - color: blue; - font-size: 100%; -} - -div.navfooter * -{ - font-size: 90%; -} - - -/*************************************************************************** - Links colors and highlighting: - ***************************************************************************/ - -a { text-decoration: none; } -a:hover { text-decoration: underline; } -a:link { color: #0048b3; } -a:visited { color: #002a6a; } - - -/*************************************************************************** - Table of contents: - ***************************************************************************/ - -div.toc -{ - font-size: 90%; -} - -div.toc dl -{ - margin-top: 0em; - margin-bottom: 0em; -} - - -/*************************************************************************** - Special elements: - ***************************************************************************/ - -tt, code -{ - color: #400000; -} - -.term -{ - font-weight: bold; - -} - -div.variablelist dd p, div.glosslist dd p -{ - margin-top: 0em; -} - -div.variablelist dd, div.glosslist dd -{ - margin-left: 1.5em; -} - -div.glosslist dt -{ - font-style: italic; -} - -.varname -{ - color: #400000; -} - -span.command strong -{ - font-weight: normal; - color: #400000; -} - -div.calloutlist table -{ -} - -table -{ - border-collapse: collapse; -} - -div.affiliation -{ - font-style: italic; -} From 30962d21beb2133b5d986b8aebfe64408be5e80e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Fri, 13 Mar 2020 11:57:58 +0100 Subject: [PATCH 07/10] Add CI with github actions --- .github/workflows/test.yml | 14 ++++++++++++++ release.nix | 4 ++-- 2 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 000000000..f261cd0bc --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,14 @@ +name: "Test" +on: + pull_request: + push: +jobs: + tests: + strategy: + matrix: + os: [ubuntu-18.04, macos] + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v2 + - uses: cachix/install-nix-action@v8 + - run: nix-build release.nix --arg nix '{ outPath = ./.; revCount = 123; shortRev = "abcdefgh"; }' --arg systems '[ builtins.currentSystem ]' -A build -A binaryTarball -A perlBindings -A installerScript diff --git a/release.nix b/release.nix index 1f592424b..45c2f14ba 100644 --- a/release.nix +++ b/release.nix @@ -348,9 +348,9 @@ let substitute ${./scripts/install.in} $out/install \ ${pkgs.lib.concatMapStrings (system: "--replace '@binaryTarball_${system}@' $(nix --experimental-features nix-command hash-file --base16 --type sha256 ${binaryTarball.${system}}/*.tar.xz) ") - [ "x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux" ] + systems } \ - --replace '@nixVersion@' ${build.x86_64-linux.src.version} + --replace '@nixVersion@' ${build.${builtins.head systems}.src.version} echo "file installer $out/install" >> $out/nix-support/hydra-build-products ''; From 90b805ef251a3e3244b2cddcf815bf36c2f4e2ab Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Mar 2020 15:56:25 +0100 Subject: [PATCH 08/10] Remove build and binaryTarball since they're included in installerScript --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f261cd0bc..87997414d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -11,4 +11,4 @@ jobs: steps: - uses: actions/checkout@v2 - uses: cachix/install-nix-action@v8 - - run: nix-build release.nix --arg nix '{ outPath = ./.; revCount = 123; shortRev = "abcdefgh"; }' --arg systems '[ builtins.currentSystem ]' -A build -A binaryTarball -A perlBindings -A installerScript + - run: nix-build release.nix --arg nix '{ outPath = ./.; revCount = 123; shortRev = "abcdefgh"; }' --arg systems '[ builtins.currentSystem ]' -A installerScript -A perlBindings From 858ad7a4b3eed6a5f950ef7fa06497cd23635e8f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Mar 2020 16:32:43 +0100 Subject: [PATCH 09/10] Remove callout graphics Fixes #3396. --- doc/manual/images/callouts/1.gif | Bin 889 -> 0 bytes doc/manual/images/callouts/10.gif | Bin 929 -> 0 bytes doc/manual/images/callouts/11.gif | Bin 202 -> 0 bytes doc/manual/images/callouts/12.gif | Bin 210 -> 0 bytes doc/manual/images/callouts/13.gif | Bin 209 -> 0 bytes doc/manual/images/callouts/14.gif | Bin 205 -> 0 bytes doc/manual/images/callouts/15.gif | Bin 210 -> 0 bytes doc/manual/images/callouts/2.gif | Bin 907 -> 0 bytes doc/manual/images/callouts/3.gif | Bin 914 -> 0 bytes doc/manual/images/callouts/4.gif | Bin 907 -> 0 bytes doc/manual/images/callouts/5.gif | Bin 916 -> 0 bytes doc/manual/images/callouts/6.gif | Bin 218 -> 0 bytes doc/manual/images/callouts/7.gif | Bin 907 -> 0 bytes doc/manual/images/callouts/8.gif | Bin 918 -> 0 bytes doc/manual/images/callouts/9.gif | Bin 923 -> 0 bytes doc/manual/local.mk | 4 +--- 16 files changed, 1 insertion(+), 3 deletions(-) delete mode 100644 doc/manual/images/callouts/1.gif delete mode 100644 doc/manual/images/callouts/10.gif delete mode 100644 doc/manual/images/callouts/11.gif delete mode 100644 doc/manual/images/callouts/12.gif delete mode 100644 doc/manual/images/callouts/13.gif delete mode 100644 doc/manual/images/callouts/14.gif delete mode 100644 doc/manual/images/callouts/15.gif delete mode 100644 doc/manual/images/callouts/2.gif delete mode 100644 doc/manual/images/callouts/3.gif delete mode 100644 doc/manual/images/callouts/4.gif delete mode 100644 doc/manual/images/callouts/5.gif delete mode 100644 doc/manual/images/callouts/6.gif delete mode 100644 doc/manual/images/callouts/7.gif delete mode 100644 doc/manual/images/callouts/8.gif delete mode 100644 doc/manual/images/callouts/9.gif diff --git a/doc/manual/images/callouts/1.gif b/doc/manual/images/callouts/1.gif deleted file mode 100644 index 9e7a87f75461ce41cc91ee68246c7bfb47d37ca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 889 zcmV-<1BU!ZNk%w1VGIBa0O$Vz000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0RaC1EC2ui01N;O000P90RIW3lmh~U9GnCyi~#@uf)ov7ENlpX zku!=C88uXL?%qX;j2KcZ^)Vs>iU2s3ba;}YN|XphHhhUuqsx_y{>fxi3!_4aC;>=R P_%9>^1UV=v36ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000Pn0R0K%lmi2V9E=1i%mD!d00b!@#8`-+ zR;?7?dYzM!!e6Nn@BUe=1z?Uh0F0D8bXLpS8~`!?g^1x00Ly!00ATo+13^ue?{bFV z2|%UITFwXo$ng(Dj8XuOGO`ANk~5V4ascSX2|}-X)?#!Ns5RIspO!hirf Dy0E(c diff --git a/doc/manual/images/callouts/11.gif b/doc/manual/images/callouts/11.gif deleted file mode 100644 index 67f91a239d66d622f8d254539b6fd580efa42b02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 202 zcmZ?wbhEHb%*^WQ z>bADF{{H^y)2Gj!J9p8dMeEkB+q`-6jvYIW9656K?Ac3~F5SL;`|;z)Z{EE5@ZrP1 zfB*i&fZ|UUMn(pC1|5)1AUhdY-5;oT-OT9fVPH5?qIP(rnuCecF;(8lY%CHJA0|%J x(XwN3776fTXisr6DR7$1b@7l?>`pt$t64n;p&ZEvzI<6|A|t-7MudsM8UU#vRD1vc diff --git a/doc/manual/images/callouts/12.gif b/doc/manual/images/callouts/12.gif deleted file mode 100644 index 54c4b42f1901629a81924c2f0f59338104adeedd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 210 zcmZ?wbhEHb(-#rlzKzo}S5*C(oKSYw6OZn>TOXy?ghOBS+4hIdl8=?Z=NFfBN+4-@kwVQGw!5 z7Dh$}c?KP@O+Y&tSp6TUNBM5@Ncv^za9iq?NB~b`s?Q`L(SI(T+y_1#WZ*J!SfIpc y)1^D>K$0MX%p%4Hwu?TqL@qKHD9DJsXySU9#jCf<|A~QyiNVJ`b^kdT8LR=FrC4|X diff --git a/doc/manual/images/callouts/13.gif b/doc/manual/images/callouts/13.gif deleted file mode 100644 index dd5d7d9b6439affca376bcd60785d528a24ce425..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 209 zcmZ?wbhEHbB&V9x4V*B03xgoIf)x xP}6;KaKZ)#6?t!lhL!-83*8xv4m?aeZ4A@2c0{pEJ&`E!gwv|=H~A1 z?x|C!&Y3f3>C&Z}Hf`Fwcki)d$4;F(b@l4iTeogKe*F0D+qWM-e*E|E-+v6C_>+Z^ zkwKn82V@h-P6k%52kLdAD!mz@3~xRxVRG8g@v!IkBvpn+%|^iofu1ZH;zuVO=~9sr r<5W2yU@F+%-l|kl%h$jrvB98Ei)orw&!RI?aaY=tCf$Ck$Y2cs9-Uok diff --git a/doc/manual/images/callouts/15.gif b/doc/manual/images/callouts/15.gif deleted file mode 100644 index 1c9183d5bb619eb608a5b7543f042ae7fd18684b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 210 zcmZ?wbhEHbi7h7121rhDKRRXS|PKBUy%7g1c%!6qXjM*TZ@!<7MXS&a1%XU+t06ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0RaC1EC2ui01N;O000PR0RIW3lmh~U9GnCyi~#^ZiVzKBECdk3 z+PQbeAOMias9`B<6z_Eez=$EqJq^9piin`0%NY0OG(^zSrIK^CY9cU6@*c{UBiGy; h6C(zOhK&9(6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000PY0R0K1lmh~U9GnCyi~#^ajvNR8#8?Ob zf;Vg4oI#N2j}ZU>bIu`v@NdmWMhq*as95r2jEElrv^r-ECIXlrbBwuXvSCUs9sxM3 o+a%2oj3IhTFJI8abOaK4? diff --git a/doc/manual/images/callouts/4.gif b/doc/manual/images/callouts/4.gif deleted file mode 100644 index 4bcbf7e31a17497e65fa0ccc9756961130be6ac7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 907 zcmV;619bdHNk%w1VGIBa0O$Vz000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000PR0R0JUB_%})C8Y!^R05!33J3slENlos z$-g-bCAOjn;oL=vlo&Q_Rq7qahA}WS)N&5Oy^{bCs0?8;#XUwUV=^4`uV>FvD1lN0 h@RA}Ue>sMFTjNk+(xCuSC=|#k1_T5#jtUG206WA?slNaK diff --git a/doc/manual/images/callouts/5.gif b/doc/manual/images/callouts/5.gif deleted file mode 100644 index 1c62b4f920936c063c93d8551158a80500dfefbe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 916 zcmV;F18e+8Nk%w1VGIBa0O$Vz000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000Pa0R0K%lmi2V9E=1i%z+?9iV!If#8?O* z$G>+Nl>kWLuM~ia{}6l}$w(u}R?Y~C1P}wmM~j4%oa6KnflB}(2z_MquBJ%{T0T-b q_c4Y?mj9H5@J4B;zZ@S4y}MTm!bXY!5Uk{=&>tm+5)%px2mm_@=(0fo diff --git a/doc/manual/images/callouts/6.gif b/doc/manual/images/callouts/6.gif deleted file mode 100644 index 23bc5555d2a467d6c3025d7f334a2b5546bd4fd9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 218 zcmZ?wbhEHbqb0L)3{T$ zGFay|aIp&P&{^Zgxx_WmLz?s!{{N9Xg1xktx)&MH` BUFZM+ diff --git a/doc/manual/images/callouts/7.gif b/doc/manual/images/callouts/7.gif deleted file mode 100644 index e55ce89585a8d5f80cc1a83df537578983a4d8e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 907 zcmV;619bdHNk%w1VGIBa0O$Vz000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000PR0R0K9B_%})C9MQ1lmY=mLkJLZDAWR= z)xV4XtO1DOuNQ!iA2FPx2!IkvkhMI1%n<`504eucencSiqqSNt5uD8NPm0SJI6pGF hhrlHxe@Z^q3i>gHLLn}jDip{m2Lc2sjtUG206SSyt84%O diff --git a/doc/manual/images/callouts/8.gif b/doc/manual/images/callouts/8.gif deleted file mode 100644 index 49375e09f4cc6397837fbb494c6c3cb1bca7091b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 918 zcmV;H18Mw6Nk%w1VGIBa0O$Vz000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000Pc0R0JUB_%}&DWwD|R0041gb)pLC=}AL zls9X=AOMKruT(=N_cWfH(~uHF0760{c(%ZJL2W6v;Y7A diff --git a/doc/manual/images/callouts/9.gif b/doc/manual/images/callouts/9.gif deleted file mode 100644 index da12a4fe2825716c78f2d23c2f87afde98d3dd3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 923 zcmV;M17!S1Nk%w1VGIBa0O$Vz000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LW0Ra90EC2ui01N;O000Ph0R0JUB_%}&DXj!56aoMM1PBdtC{zLf zK`U$LN=5Y7s^J`O2r%5!(vT8G0Hrztu%;0}4h#+VfE3xQVaSFMdc8Y$u9i)PHW47O xMyX+pmO}1@Q1UNFLq`6b0%-N`-I|6e6vnXG5I_uX3jI-v0Rce_r~(5506VSIvSt7P diff --git a/doc/manual/local.mk b/doc/manual/local.mk index b4e7f35d5..ce05c6234 100644 --- a/doc/manual/local.mk +++ b/doc/manual/local.mk @@ -7,7 +7,7 @@ XSLTPROC = $(xsltproc) --nonet $(xmlflags) \ --param xref.with.number.and.title 1 \ --param toc.section.depth 3 \ --param admon.style \'\' \ - --param callout.graphics.extension \'.gif\' \ + --param callout.graphics 0 \ --param contrib.inline.enabled 0 \ --stringparam generate.toc "book toc" \ --param keep.relative.image.uris 0 @@ -69,8 +69,6 @@ $(foreach file, $(d)/manual.html, $(eval $(call install-data-in, $(file), $(docd $(foreach file, $(wildcard $(d)/figures/*.png), $(eval $(call install-data-in, $(file), $(docdir)/manual/figures))) -$(foreach file, $(wildcard $(d)/images/callouts/*.gif), $(eval $(call install-data-in, $(file), $(docdir)/manual/images/callouts))) - $(eval $(call install-symlink, manual.html, $(docdir)/manual/index.html)) From c0a3ff7d47f5a0d0322689d446d71e2372de37d1 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Mar 2020 16:39:35 +0100 Subject: [PATCH 10/10] Fix macOS --- release.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/release.nix b/release.nix index 45c2f14ba..b1cb1e437 100644 --- a/release.nix +++ b/release.nix @@ -340,8 +340,7 @@ let installerScript = pkgs.runCommand "installer-script" - { buildInputs = [ build.x86_64-linux ]; - } + { buildInputs = [ build.${builtins.currentSystem or "x86_64-linux"} ]; } '' mkdir -p $out/nix-support