~ivilata/gwit-spec

1

Format for fingerprint and remotes

Details
Message ID
<a8cbf535-2b69-40d6-93b2-b91a2fb403a7@zaclys.net>
DKIM signature
permerror
Download raw message
Hi !

I began setting up a Gwit site (french), and I encoutered two 
uncertainties during the setup:


# ID format

GPG gives me this for the site key :

```
sec   rsa3072 2024-02-03 [SC] [expire : 2027-02-02]
       16C8A566BB88303C2513CF6328996D46E0440E85
uid          [  ultime ] Matograine (Clef pour un site gwit) 
<mato@zaclys.net>
ssb   rsa3072 2024-02-03 [E] [expire : 2027-02-02]
```

Fingerprint is 16C8A566BB88303C2513CF6328996D46E0440E85 so I guess the 
gwit ID is 0x16c8a566bb88303c2513cf6328996d46e0440e85. However, I am not 
sure of that since fingerprint given by GPG is uppercase and without 
0x... This question seems dumb, but... Can you confirm ?


# remotes format : SSH allowed ?

In the specs, all examples for remotes are given with protocol http/s. 
But Git is often used through SSH, and some self-hosted repos might be 
only accessible through SSH.

is this remote valid ? :

	remote = git@framagit.org:matograine/gwitsite.git


Thanks for reading. My gwit site is there and one of the first commits 
is a HOWTO setup your gwit site.

=> https://framagit.org/matograine/gwitsite.git

Matograine
Details
Message ID
<ZcFCx2LApeCYbZfV@sax>
In-Reply-To
<a8cbf535-2b69-40d6-93b2-b91a2fb403a7@zaclys.net> (view parent)
DKIM signature
missing
Download raw message
Salut Matograine !

Thank you very much for your interest in gwit.  You're the first one to post
to the gwit-spec list, cool!  I'm curious to know how you became acknowledged
with gwit, if you don't mind saying. 🙂

I had a look at your site, it's a very nice initiative!  You may be interested
in [The Oldest gwit Site][TOgS] (ID 408198c2c363076c6b1eabe797ea3168a78cd65a)
(also <https://oldest.gwit.site/>) as a site example.  Now your site is
probably The Second Oldest gwit Site! 😁

[TOgS]: https://git.sr.ht/~ivilata/oldest-gwit-site

More comments inline…

matograine (2024-02-03 04:56:16 +0100) wrote:

> Hi !
> 
> I began setting up a Gwit site (french), and I encoutered two uncertainties
> during the setup:
> 
> # ID format
> 
> GPG gives me this for the site key :
> 
> ```
> sec   rsa3072 2024-02-03 [SC] [expire : 2027-02-02]
>       16C8A566BB88303C2513CF6328996D46E0440E85
> uid          [  ultime ] Matograine (Clef pour un site gwit)
> <mato@zaclys.net>
> ssb   rsa3072 2024-02-03 [E] [expire : 2027-02-02]
> ```
> 
> Fingerprint is 16C8A566BB88303C2513CF6328996D46E0440E85 so I guess the gwit
> ID is 0x16c8a566bb88303c2513cf6328996d46e0440e85. However, I am not sure of
> that since fingerprint given by GPG is uppercase and without 0x... This
> question seems dumb, but... Can you confirm ?

Not dumb at all!  According to "Basic concepts" in the spec, "the full
fingerprint of the site key is used as its identifier", thus 16C8…0E85 is the
site identifier too.  As a hex string, it's case insensitive, but that may
need clarification in the spec.  In places where the notation `0x…` is used,
the spec mentions if lower case is needed or relevant (e.g. lower needed in
INI sections & file names, but irrelevant in the `<SITE>` part of URIs).

That is, the `0x` prefix and the lower case are needed or not depending on
where you're using the ID, but for the “abstract” ID itself, `0x` and case are
irrelevant. 😉

> # remotes format : SSH allowed ?
> 
> In the specs, all examples for remotes are given with protocol http/s. But
> Git is often used through SSH, and some self-hosted repos might be only
> accessible through SSH.
> 
> is this remote valid ? :
> 
> 	remote = git@framagit.org:matograine/gwitsite.git

The spec doesn't mention since the remote URL should be opaque to gwit, so
whatever protocol (HTTP, SSH, file, Radicle…) should work.  In principle, one
would publish a gwit site to the whole world, so an SSH URL which may require
authentication or extra tokens feels weird, but should be ok (then again, a
plain HTTP URL may also require it in the end).  The spec should probably be
more clear about it.

(Anyway, I see that your `site.ini` also includes a plain HTTPS remote.)

> Thanks for reading. My gwit site is there and one of the first commits is a
> HOWTO setup your gwit site.
> 
> => https://framagit.org/matograine/gwitsite.git
> 
> Matograine

Yes, I gave a look to it and it should be very handy in lack of more extensive
gwit usage documentation… thanks a lot!  Here are some issues that I noted:

- The `self.ini` and `self.key` should be placed under a `_gwit` directory
  (3rd paragraph of "Site requirements" section in spec).

- Commits signed with the site key should belong in the `gwit-0xe0440e85`
  branch (1st paragraph of "Site requirements").  You may want to rename your
  `master` branch, or create a `gwit-0xe0440e85` branch from it and either
  work directly on it, or merge changes from `master` there whenever you want
  to really update your site in gwit.  This is something where some document
  with "good practices" may help understand the different ways of keeping the
  `gwit-0x…` branch.

Again, you may have a look at [TOgS][] as an example, which I try to keep up
to date with changes to spec requirements.

Finally, if you found any part of the spec confusing or misguiding, please say
so!  I haven't changed the spec that much lately, but I strive to make what's
already there as clear as possible.

Merci beaucoup !

-- 
Ivan Vilata i Balaguer -- https://elvil.net/
Reply to thread Export thread (mbox)