> I looked at the Xiden documentation and source code a bit,
> and I couldn't find any actual package definitions, or how to make
> any package definitions.  Where are the 'coreutils' and some text editors
> like 'nano' or 'emacs' or 'vi' packaged for example? [...] Guix and Xiden 
> could copy code and package definitions from each other
> (after making some adaptations for Guile vs Racket and different interfaces),
> though I wouldn't know how realistic that is in advancce.

I put these bits of your email together because I think they are related.

The system-level examples you are looking don't exist because Xiden is not 
fully bootstrapped. What I can do in the short-term is write a launcher that 
follows LFS, then verifies any artifacts used for the purpose. I wasn't 
satisfied with publishing that approach since it involves implicit trust in 
system level dependencies, but you can lean on the zero-trust default config 
and use ACLs on the small attack surface to mitigate risks there.

Until a Guile/Racket bridge is formed as Phillip described, or until GNU Mes is 
adapted to target Racket, I do not feel comfortable distributing system-level 
binaries using Xiden. It's easy for a user to write a launcher to use them, 
though. That's why I put so much focus on writing launchers that define a 
contract between your chosen data sources and your subjective expression of 
dependencies. Package definitions are subservient to this approach, because as 
an abstraction, they sit between the subsystem that fetches and verifies data, 
and the subsystem that understands what a user means when they ask to install a 
dependency. The latter is the launcher's job, and I often use one to generate 
package definitions, find integrity information, trust certs, etc.

The end of the guide directs you to example launchers, which set rules for how 
package definitions work in the context of those launchers. The early examples 
are just toy demos, but later ones handle things like a particular self-hosting 
approach, and managing multiple versions of Racket installations.

> Hyperlinks in the manual aren't working:

Let me know which ones in a Github issue? The Racket community shares a Racket 
installation for online docs, and I occasionally run into problems with the 
generated links. Sometimes its CI related, sometimes its because I didn't type 
a Scribble form exactly right. The docs are all present at least. Entry point 
links follow for convenience.

https://docs.racket-lang.org/xiden-guide/index.html
https://docs.racket-lang.org/xiden-white-paper/index.html
https://docs.racket-lang.org/xiden-reference/index.html

> Is this GPL-version-3-only or GPL-version-3-or-later?

Currently 3. I didn't add "or later" (yet) because I don't understand the 
social and legal consequences of doing so, even when new license versions are 
compatible. Happy to learn more here.

Reply via email to