!avYyleMexqjFHoqrME:nixos.org

Nix Documentation

430 Members
Discussion about documentation improvements around the Nix ecosystem89 Servers

Load older messages


SenderMessageTime
16 Mar 2024
@infinisil:matrix.orginfinisil This works: nix-build nixos --arg configuration '{}' -A config.system.build.manual.manualHTML.inputDerivation 05:06:38
@ryantm:matrix.orgryantmAdded nrd input closure to the gist too05:09:57
@infinisil:matrix.orginfinisil ryantm: Oh and nix-build pkgs/top-level/release.nix -A manual is for the Nixpkgs manual 05:12:08
@ryantm:matrix.orgryantmThat one would be a more fair comparison since I render the entire nixpkgs manual (also with a search index)05:13:21
@ryantm:matrix.orgryantm
[ryantm@replit1:~/p/nixpkgs]$ /run/current-system/sw/bin/time nix-build --check pkgs/top-level/release.nix -A manual
trace: warning: lib.zipWithNames is a deprecated alias of lib.zipAttrsWithNames.
checking outputs of '/nix/store/3jsvqqgpj2qfbkj2y82w4ac4nnf2g5px-nixpkgs-manual.drv'...
Running phase: unpackPhase
unpacking source archive /nix/store/sn18ydylvr7jsxbhj2yndh9y2s3z55mv-doc
source root is doc
Running phase: patchPhase
Running phase: updateAutotoolsGnuConfigScriptsPhase
Running phase: configurePhase
no configure script, doing nothing
Running phase: buildPhase
substituteStream(): WARNING: '--replace' is deprecated, use --replace-{fail,warn,quiet}. (file './manual.md.in')
Running phase: installPhase
Running phase: fixupPhase
shrinking RPATHs of ELF executables and libraries in /nix/store/m94bxwbilm1hh0dzk53qs7zvdr1vwsps-nixpkgs-manual
checking for references to /build/ in /nix/store/m94bxwbilm1hh0dzk53qs7zvdr1vwsps-nixpkgs-manual...
patching script interpreter paths in /nix/store/m94bxwbilm1hh0dzk53qs7zvdr1vwsps-nixpkgs-manual
/nix/store/m94bxwbilm1hh0dzk53qs7zvdr1vwsps-nixpkgs-manual
0.60user 0.18system 0:02.19elapsed 36%CPU (0avgtext+0avgdata 174568maxresident)k
0inputs+0outputs (0major+39903minor)pagefaults 0swaps
05:14:26
@ryantm:matrix.orgryantmVery similar times!05:15:03
@ryantm:matrix.orgryantmGood on you making it that fast with Python :)05:16:48
@ryantm:matrix.orgryantmLooks like it builds an epub and a single page manual. mmdoc is building a multipage, singlepage, man, epub, and search index, but yeah, maybe pretty close overall speed wise.05:18:04
@infinisil:matrix.orginfinisilYeah and closure sizes are also comparable (70MB vs 200MB)05:22:36
@ryantm:matrix.orgryantm

Oh wait, I don't think that time is apples to apples:

[ryantm@replit1:~/p/nixpkgs]$ /run/current-system/sw/bin/time nix-build --check pkgs/top-level/release.nix -A manual.inputDerivation
trace: warning: lib.zipWithNames is a deprecated alias of lib.zipAttrsWithNames.
this derivation will be built:
  /nix/store/j622rlm0k013mmspbzgkqgd4zl12vvvd-nixpkgs-manual.drv
error: some outputs of '/nix/store/j622rlm0k013mmspbzgkqgd4zl12vvvd-nixpkgs-manual.drv' are not valid, so checking is not possible
Command exited with non-zero status 1
0.59user 0.18system 0:01.53elapsed 50%CPU (0avgtext+0avgdata 174980maxresident)k
0inputs+0outputs (0major+39908minor)pagefaults 0swaps

[ryantm@replit1:~/p/nixpkgs]$ nix path-info --recursive --closure-size --human-readable ./result
/nix/store/m94bxwbilm1hh0dzk53qs7zvdr1vwsps-nixpkgs-manual     2.0M
05:22:56
@ryantm:matrix.orgryantmThe manual is already built as the inputDerivation to that derivation.05:23:37
@ryantm:matrix.orgryantmNix is so hard to benchmark with the all the caching and indirection.05:24:40
@infinisil:matrix.orginfinisil ryantm: Not sure what you mean, I'm pretty sure nix-build --check pkgs/top-level/release.nix -A manual is the actual build, it's not just a dependency 05:25:23
@infinisil:matrix.orginfinisilAnd the command you pasted failed05:25:33
@ryantm:matrix.orgryantmAh yeah, oops. Okay.05:25:53
@infinisil:matrix.orginfinisil (gotta build without --check first.. yeah not a great interface) 05:25:58
@ryantm:matrix.orgryantmRedacted or Malformed Event05:26:59
@ryantm:matrix.orgryantmUpdated the gist again. Looks like the nixpkgs closure is bigger, but the nixpkgs closure matters less.05:28:28
@infinisil:matrix.orginfinisilCould you post the results in the github issue? I'm overall not very convinced that this is worth it though 😅05:29:31
@infinisil:matrix.orginfinisil * Could you post the results in the github issue (ideally a nice markdown table with the numbers)? I'm overall not very convinced that this is worth it though 😅05:29:46
@ryantm:matrix.orgryantmYeah there's a lot of hate for C.05:30:00
@ryantm:matrix.orgryantmand your thing is already working mostly, though not multipage.05:30:23
@ryantm:matrix.orgryantmSeems reasonable not to switch.05:30:26
@infinisil:matrix.orginfinisilI feel kind of bad, you worked on this for so long 😅05:31:07
@ryantm:matrix.orgryantmI'll take down my multipage manual when we publish official ones.05:31:08
@ryantm:matrix.orgryantmNo big deal, I still love the project independent of Nix accepting it.05:31:34
@ryantm:matrix.orgryantmI use it for all my projects and blogs and stuff.05:31:44
@ryantm:matrix.orgryantmI love the easy interface with no config I came up with.05:31:59
@jade_:matrix.org@jade_:matrix.org
In reply to @ryantm:matrix.org
and your thing is already working mostly, though not multipage.
I've been told the code is literally there for it, though. so we seem to need to do some wiring. 
07:41:14
@pennae:matrix.eno.spacepennae joined the room.09:23:50

Show newer messages


Back to Room ListRoom Version: 6