!avYyleMexqjFHoqrME:nixos.org

Nix Documentation

403 Members
Discussion about documentation improvements around the Nix ecosystem82 Servers

Load older messages


SenderMessageTime
17 Mar 2024
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host *

infinisil: Roughly tracking the following relations:

  1. Code <-> Documentation
  2. Documenation <-> Documentation
  3. Documentation -> external references. e.g. references from nixpkgs to nix manual

For each of those we should have some kind of solution.

fricklerhandwerk Brought TagRef to me, which i really like because of its simplicity. (Can solve 2. / maybe 3.)

For 1. we have the RFC145 but may need additional extensions for something like: https://github.com/NixOS/nixpkgs/blob/b286b8df1c0ecff4baa44a7224282aeccc6695c2/pkgs/build-support/trivial-builders/default.nix#L29
You want to automatically link from the documentation to the exact source code position (file/line/column) if there is such a reference. And we are doing this for, e.g., lib already.

Then for 3. I imagine that every of our manuals could export sitemaps (https://www.sitemaps.org/de/protocol.html) Which could be used in conjunction with TagRef. (Imagine every manual exports its available URL as well as the internal "tags", that could also be referenced from elsewhere in the nix ecosystem)

But regarding this topic i was mainly refering to references of 1. because moving doc-comments out of the source without replacement leaves the code-side of those references untracked. (We don't relly properly track them yet) But its a nice property we kind of "destroyed" here. (At least for automated tooling we cannot create backlinks here anymore)

20:17:15
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host *

infinisil: Roughly tracking the following relations:

  1. Code <-> Documentation
  2. Documenation <-> Documentation
  3. Documentation -> external references. e.g. references from nixpkgs to nix manual

For each of those we should have some kind of solution.

fricklerhandwerk Brought TagRef to me, which i really like because of its simplicity. (Can solve 2. / maybe 3.)

For 1. we have the RFC145 but may need additional extensions for something like: https://github.com/NixOS/nixpkgs/blob/b286b8df1c0ecff4baa44a7224282aeccc6695c2/pkgs/build-support/trivial-builders/default.nix#L29
You want to automatically link from the documentation to the exact source code position (file/line/column) if there is such a reference. And we are doing this for, e.g., lib already.

Then for 3. I imagine that every of our manuals could export sitemaps (https://www.sitemaps.org/de/protocol.html) Which could be used in conjunction with TagRef. (Imagine every manual exports its available URLs as well as the internal "tags", that could also be referenced from elsewhere in the nix ecosystem)

But regarding this topic i was mainly refering to references of 1. because moving doc-comments out of the source without replacement leaves the code-side of those references untracked. (We don't relly properly track them yet) But its a nice property we kind of "destroyed" here. (At least for automated tooling we cannot create backlinks here anymore)

20:17:29
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host *

infinisil: Roughly tracking the following relations:

  1. Code <-> Documentation
  2. Documenation <-> Documentation
  3. Documentation -> external references. e.g. references from nixpkgs to nix manual

For each of those we should have some kind of solution.

fricklerhandwerk Brought TagRef to me, which i really like because of its simplicity. (Can solve 2. / maybe 3.)

For 1. we have the RFC145 but may need additional extensions for something like: https://github.com/NixOS/nixpkgs/blob/b286b8df1c0ecff4baa44a7224282aeccc6695c2/pkgs/build-support/trivial-builders/default.nix#L29
You want to automatically link from the documentation to the exact source code position (file/line/column) if there is such a reference. And we are doing this for, e.g., lib already.

Then for 3. I imagine that every of our manuals could export sitemaps (https://www.sitemaps.org/de/protocol.html) Which could be used in conjunction with TagRef. (Imagine every manual exports its available URLs as well as the available "tags", that could be referenced from elsewhere in the nix ecosystem)

But regarding this topic i was mainly refering to references of 1. because moving doc-comments out of the source without replacement leaves the code-side of those references untracked. (We don't relly properly track them yet) But its a nice property we kind of "destroyed" here. (At least for automated tooling we cannot create backlinks here anymore)

20:17:52
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host *

infinisil: Roughly tracking the following relations:

  1. Code <-> Documentation
  2. Documenation <-> Documentation
  3. Documentation -> external references. e.g. references from nixpkgs to nix manual

For each of those we should have some kind of solution.

fricklerhandwerk Brought TagRef (concept) to me, which i really like because of its simplicity. (Can solve 2. / maybe 3.)

For 1. we have the RFC145 but may need additional extensions for something like: https://github.com/NixOS/nixpkgs/blob/b286b8df1c0ecff4baa44a7224282aeccc6695c2/pkgs/build-support/trivial-builders/default.nix#L29
You want to automatically link from the documentation to the exact source code position (file/line/column) if there is such a reference. And we are doing this for, e.g., lib already.

Then for 3. I imagine that every of our manuals could export sitemaps (https://www.sitemaps.org/de/protocol.html) Which could be used in conjunction with TagRef. (Imagine every manual exports its available URLs as well as the available "tags", that could be referenced from elsewhere in the nix ecosystem)

But regarding this topic i was mainly refering to references of 1. because moving doc-comments out of the source without replacement leaves the code-side of those references untracked. (We don't relly properly track them yet) But its a nice property we kind of "destroyed" here. (At least for automated tooling we cannot create backlinks here anymore)

20:20:16
@qyriad:matrix.org@qyriad:matrix.org left the room.20:43:02
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.hostPerhaps there is a simpler explanation of the matter. But so far I haven't managed to formulate it so that it's easier to understand. Feel free to help me 😃21:03:58
@fricklerhandwerk:matrix.orgfricklerhandwerk Johannes Kirschbauer @hsjobeki: the problem this tries to solve doesn't seem to have an English term. German: Medienbruch, French: Rupture de média - loosely translated "media discontinuity". Which is that you have information in different substrates that belongs together but there is some annoying technical barrier in between. 21:40:14
@fricklerhandwerk:matrix.orgfricklerhandwerkSource comments are just character sequences, but you're trying to point to a web document, which in turn is compiled from characters somewhere else, etc.21:41:14
@qyriad:katesiria.orgQyriad @Johannes Kirschbauer @hsjobeki like how haskell's docs do it? all the types and whatnot in the source view in https://hackage.haskell.org/package/base-4.19.1.0/docs/src/Control.Arrow.html#Arrow are clickable and whatnot 21:43:18
18 Mar 2024
@darkwater4213:matrix.orgdarkwater4213 joined the room.00:39:43
@jade_:matrix.org@jade_:matrix.org
In reply to @qyriad:katesiria.org
@Johannes Kirschbauer @hsjobeki like how haskell's docs do it? all the types and whatnot in the source view in https://hackage.haskell.org/package/base-4.19.1.0/docs/src/Control.Arrow.html#Arrow are clickable and whatnot
it's done by evil shit but we could instrument a Nix evaluator. also fyi as someone who worked on that it works even better locally on nixpkgs haskell because cross library references work in the source view :))
03:57:15
@jade_:matrix.org@jade_:matrix.org (actually i wonder if nixd already contains the necessary technology) 04:01:47
@rina/:matrix.orgkait
In reply to @johannes.kirschbauer:scs.ems.host
If you could give a concrete example i can tell you if its a wiring issue or would need to be maintained seperately anyways in the long term. I remembered that the writers because some of them are dynamically created by partial application
I am thinking of the functions in this file: https://github.com/NixOS/nixpkgs/blob/8f0d434c23d2ae84d0bf32622358361ade96d077/pkgs/build-support/writers/scripts.nix#L402
07:15:42
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.hostI think they do. I also started a minimal project that does only the reference tracking https://github.com/hsjobeki/flutsch by value introspection07:30:53
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host * I think nixd does. I also started a minimal project that does only the reference tracking https://github.com/hsjobeki/flutsch by value introspection 07:31:59
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host jade_: 07:32:09
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.hostIts very POC and need more love and time until its usable07:32:56
@jade_:matrix.org@jade_:matrix.org oh nice 07:33:03
@jade_:matrix.org@jade_:matrix.org still thinking it might be a bit challenging to e.g. take a huge trace of nix evaluation that annotates value type info and sources at every position. but it would be so good   07:35:14
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.hostIts basically how noogle works. (Not via traces, but value introspection)07:38:19
@jade_:matrix.org@jade_:matrix.org but having info inside of functions would sure be useful 07:42:24
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host
In reply to @rina/:matrix.org
I am thinking of the functions in this file: https://github.com/NixOS/nixpkgs/blob/8f0d434c23d2ae84d0bf32622358361ade96d077/pkgs/build-support/writers/scripts.nix#L402

If you'd document them in the same ways as: https://github.com/nixos/nixpkgs/blob/master/lib/lists.nix#L42

We can add them to the index.

08:43:04
@johannes.kirschbauer:scs.ems.host@johannes.kirschbauer:scs.ems.host
In reply to @rina/:matrix.org
I am thinking of the functions in this file: https://github.com/NixOS/nixpkgs/blob/8f0d434c23d2ae84d0bf32622358361ade96d077/pkgs/build-support/writers/scripts.nix#L402
*

If you'd document them in the same ways as: https://github.com/nixos/nixpkgs/blob/master/lib/lists.nix#L42

We can add them to the index. (Wiring should be trivial, i can help with that)

08:43:57
@fricklerhandwerk:matrix.orgfricklerhandwerk Hey docs people and Dominic Mills, how is the application to Google Season of Docs going? It we don’t get anything exciting, we can just apply for writing 2-3 key tutorials. It’s boring but we have precedence that it can work, and we can cheaply measure success by looking at the Google Search dashboard and view statistics 20:43:06
@fricklerhandwerk:matrix.orgfricklerhandwerk * Hey docs people and Dominic Mills, how is the application to Google Season of Docs going? If we don’t get anything exciting, we can just apply for writing 2-3 key tutorials. It’s boring but we have precedence that it can work, and we can cheaply measure success by looking at the Google Search dashboard and view statistics 20:43:21
@dmills27:matrix.orgDominic Mills I've been working it. I got some interesting ideas from danielsidhion and Shahar "Dawn" Or (mightyiam). I'll publish it publicly tomorrow or Wednesday on my Github. 20:45:24
19 Mar 2024
@mjolnir:nixos.orgNixOS Moderation Botchanged room power levels.00:30:57
@danielsidhion:nixos.devdanielsidhionGiven there hasn't been a meeting on a Monday for essentially 2 months now, are you folks ok if I make a PR to say we only meet once a week on the nix.dev readme? Will also need to change the meeting invite on the calendar (I don't have access to it)07:18:20
@fricklerhandwerk:matrix.orgfricklerhandwerk
In reply to @danielsidhion:nixos.dev
Given there hasn't been a meeting on a Monday for essentially 2 months now, are you folks ok if I make a PR to say we only meet once a week on the nix.dev readme? Will also need to change the meeting invite on the calendar (I don't have access to it)
I’ll be back the week after next
08:10:51
@rina/:matrix.orgkait
In reply to @johannes.kirschbauer:scs.ems.host
If you'd document them in the same ways as: https://github.com/nixos/nixpkgs/blob/master/lib/lists.nix#L42 We can add them to the index. (Wiring should be trivial, i can help with that)
thanks! I am fairly busy at the moment but I hope to get to this in the next week or so. (if this should be done sooner, no need to wait for me)
12:26:00

Show newer messages


Back to Room ListRoom Version: 6