Recent changes to this wiki:
Added a comment: re: also define links to "browse vcs" sites
diff --git a/blog/entry/proposing_rel-vcs/comment_9._comment b/blog/entry/proposing_rel-vcs/comment_9._comment new file mode 100644 index 0000000..eaca5cb --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_9._comment @@ -0,0 +1,7 @@ +[[!_comment format=mdwn + username="http://cihar.com/" + subject="re: also define links to "browse vcs" sites" + date="2009-01-08T06:53:20Z" + content=""" +It would be useful for find this link easier. Not directly by user, but for example by some indexer or by an extension to browser such as Operator for Firefox. Anyway target of most microformats is not an user directly, but through some program. +"""]]
blog update
diff --git a/blog/entry/rip_your_own_adventure.mdwn b/blog/entry/rip_your_own_adventure.mdwn new file mode 100644 index 0000000..fdbbf83 --- /dev/null +++ b/blog/entry/rip_your_own_adventure.mdwn @@ -0,0 +1,9 @@ +I used to read Choose Your Own Adventure books straight through +from page 1 to 100. + +Now, I `wget -m` [websites](http://www.machinebook.org/), +and `less *` ... same deal. + +PS, Thanks for the great feedback on [[rfc/rel-vcs]]. The spec +has been updated, fixing many of your nits, and there's an +implementation in gitweb, [[code/ikiwiki]], and [[code/mr]].
update
diff --git a/index.mdwn b/index.mdwn index 6a67966..cb22372 100644 --- a/index.mdwn +++ b/index.mdwn @@ -7,7 +7,7 @@ Other stuff here includes: * [[svnhome]]: Keeping $HOME in subversion * [pkg-comp](pkg-comp): Comparing package formats -* [[talks]] and [[screencasts]] +* [[talks]], [[screencasts]], and [[rfcs|rfc]] * [[languages]] * [[joeyca]] * [[pics]] diff --git a/rfc.mdwn b/rfc.mdwn new file mode 100644 index 0000000..7b07362 --- /dev/null +++ b/rfc.mdwn @@ -0,0 +1 @@ +[[!inline pages="rfc/* and !*/Discussion" archive=yes]] diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index c2d5885..afe15d3 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -78,7 +78,7 @@ A VCS repository browser such as ViewVC or gitweb can use the `rel=vcs-*` microformat on pages it generates, to specify the location of the repository being browsed. -* [gitweb patch](http://article.gmane.org/gmane.comp.version-control.git/104754) +* [gitweb patch](http://article.gmane.org/gmane.comp.version-control.git/104848) A web site that is itself stored in a VCS repository can include the `rel=vcs-*` microformat on its pages to indicate the location of the
update the example
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 6def48a..c2d5885 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -94,14 +94,14 @@ repository. (`webcheckout` is included in the [[code/mr]] package.) <pre> -joey@gnu:~/tmp>webcheckout http://ikiwiki.info/ -git clone git://git.ikiwiki.info/ -Initialized empty Git repository in /home/joey/tmp/git.ikiwiki.info/.git/ -remote: Counting objects: 52585, done. -remote: Compressing objects: 100% (13803/13803), done. -remote: Total 52585 (delta 39555), reused 50139 (delta 37692) -Receiving objects: 100% (52585/52585), 7.74 MiB | 236 KiB/s, done. -Resolving deltas: 100% (39555/39555), done. +joey@gnu:~/tmp> webcheckout http://ikiwiki.info/ +git clone git://github.com/joeyh/ikiwiki.git +Initialized empty Git repository in /home/joey/tmp/ikiwiki/.git/ +remote: Counting objects: 52654, done. +remote: Compressing objects: 100% (12983/12983), done. +remote: Total 52654 (delta 39279), reused 51926 (delta 38578) +Receiving objects: 100% (52654/52654), 8.86 MiB | 225 KiB/s, done. +Resolving deltas: 100% (39279/39279), done. </pre> ## Related efforts and motivations
ikiwiki repolist plugin supports the microformat
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index e6571f4..6def48a 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -74,7 +74,7 @@ A website for a software package can use the `rel=vcs-*` microformat on its front page, and on any relevant download pages, to indicate the location of its VCS repository. -A VCS repository browser such as ViewVC or gitweb, can use the `rel=vcs-*` +A VCS repository browser such as ViewVC or gitweb can use the `rel=vcs-*` microformat on pages it generates, to specify the location of the repository being browsed. @@ -84,6 +84,8 @@ A web site that is itself stored in a VCS repository can include the `rel=vcs-*` microformat on its pages to indicate the location of the repository. +* [ikiwiki repolist plugin](http://ikiwiki.info/plugins/repolist) + ## Consumers * [webcheckout](http://git.kitenet.net/?p=mr.git;a=blob_plain;f=webcheckout;hb=HEAD) @@ -92,7 +94,7 @@ repository. (`webcheckout` is included in the [[code/mr]] package.) <pre> -joey@gnu:~/tmp>webcheckout http://git.ikiwiki.info/ +joey@gnu:~/tmp>webcheckout http://ikiwiki.info/ git clone git://git.ikiwiki.info/ Initialized empty Git repository in /home/joey/tmp/git.ikiwiki.info/.git/ remote: Counting objects: 52585, done.
oops, this isn't ikiwiki.info :-)
diff --git a/rfc/rel-vcs/discussion.mdwn b/rfc/rel-vcs/discussion.mdwn index fb0ce16..d731a6f 100644 --- a/rfc/rel-vcs/discussion.mdwn +++ b/rfc/rel-vcs/discussion.mdwn @@ -95,7 +95,7 @@ more appropriate.</p> >> >> If you want something that can be not-a-URI, perhaps >> `<meta name="vcs" content="cvs :pserver:blahblah">` would be more ->> appropriate. --[[smcv]] +>> appropriate. --[smcv](http://smcv.pseudorandom.co.uk/) But don't just take my word for it, there is <a href="http://www.ietf.org/rfc/rfc2717.txt">a procedure for registering
:pserver:blah/blah in href looks like a relative path, at least to Firefox
diff --git a/rfc/rel-vcs/discussion.mdwn b/rfc/rel-vcs/discussion.mdwn index 7b6350c..fb0ce16 100644 --- a/rfc/rel-vcs/discussion.mdwn +++ b/rfc/rel-vcs/discussion.mdwn @@ -81,10 +81,24 @@ more appropriate.</p> > they do make up new schemes ;) > > I agree, those URIs for cvs look more appropriate if something has to be -> made up. --[[Joey]] +> made up. --[[Joey]] -p>But don't just take my word for it, there is +>> Your microformat might only "prefer" the href attribute of `<link>` to be +>> a URI, but the semantics of HTML/XHTML require it. I'm not sure that +>> :pserver:... actually matches *any* of the productions in +>> [RFC 3986 URI Generic Syntax](http://www.faqs.org/rfcs/rfc3986.html) +>> (because it happens to start with a colon) but if it's valid at all, +>> then the only interpretation I can see is as a relative URI path +>> (i.e. "filename"), relative to the address of the document. That's +>> how Firefox interprets it, at least; it's the same failure mode as the +>> common `<a href="www.example.com">`. +>> +>> If you want something that can be not-a-URI, perhaps +>> `<meta name="vcs" content="cvs :pserver:blahblah">` would be more +>> appropriate. --[[smcv]] + +But don't just take my word for it, there is <a href="http://www.ietf.org/rfc/rfc2717.txt">a procedure for registering -URI schemes</a>...</p> +URI schemes</a>... -<p>-- <a href="http://smcv.pseudorandom.co.uk/">smcv</a></p> +-- [smcv](http://smcv.pseudorandom.co.uk/)
change to use rel=vcs-*
smcv pointed out that the microformat was abusing the mime type.
Let's not do that, and instead use rel=vcs-* to denote what VCS type is
used.
smcv pointed out that the microformat was abusing the mime type.
Let's not do that, and instead use rel=vcs-* to denote what VCS type is
used.
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 5d7f8d6..e6571f4 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -1,6 +1,6 @@ -[[!meta title="rel=vcs microformat"]] +[[!meta title="rel=vcs-* microformat"]] -The `rel=vcs` microformat allows a page to indicate the location of a +The `rel=vcs-*` microformat allows a page to indicate the location of a Version Control System repository related to that page. Tools can parse the microformat and use it to determine how to check out / @@ -11,25 +11,27 @@ clone from the VCS. ## Examples <head> - <link rel="vcs" type="git" href="git://example.org/foo.git" title="foo git repository" /> - <link rel="vcs" type="svn" href="svn://svn.example.org/bar/trunk" title="bar svn repository" /> + <link rel="vcs-git" href="git://example.org/foo.git" title="foo git repository" /> + <link rel="vcs-svn" href="svn://svn.example.org/bar/trunk" title="bar svn repository" /> </head> - <a rel="vcs" type="git" href="git://example.org/foo.git" title="git repository">git://example.org/foo.git</a> - <a rel="vcs" type="git" href="git://example.org/foo.git">git repository</a> + <a rel="vcs-git" href="git://example.org/foo.git" title="git repository">git://example.org/foo.git</a> + <a rel="vcs-git" href="git://example.org/foo.git">git repository</a> ## Format -The `rel=vcs` microformat can only appear in the html `<link>` element in +The `rel=vcs-*` microformat can only appear in the html `<link>` element in the `<head>` of the page, or in an `<a>` element in its body. -The "type" can be the name of any version control system. Types are -case-insensative. Common values include "git", "svn", and "bzr". +The `rel` attribute specifies what VCS is used. It can contain the name +of any version control system, prefixed with "vcs-". +Common values include "vcs-git", "vcs-svn", and "vcs-bzr". The "href" holds a URI, or other location identifier, in a format supported by the version control system. If a version control system supports both URIs and some other location identifier form, the URI form -is preferred here. +is strongly preferred here. Making up URI forms just for use here is, +however, discouraged. The "title" is optional, but recommended if there are multiple, different repositories linked to on one page. It is a human-readable description of @@ -40,22 +42,22 @@ should be a human-readable description. Since many version control systems use one URI form (such as `git://` or `http://`) for anonymous access, and another form (such as `ssh://` or -`svn+ssh://`) for authenticated access, multiple `<link>` tags can be used -on the same page, to list each available URI. When this is done, the *same* -text should be used for the title parameter of each repository. For -example: +`svn+ssh://`) for authenticated access, multiple `<link>` or `<a>` tags can +be used on the same page, to list each available URI. When this is done, +the *same* text should be used for the title parameter of each repository. +For example: <head> - <link rel="vcs" type="git" href="git://foo.org/foo.git" title="foo git repository" /> - <link rel="vcs" type="git" href="ssh://foo.org/git/foo.git" title="foo git repository" /> + <link rel="vcs-git" href="git://foo.org/foo.git" title="foo git repository" /> + <link rel="vcs-git" href="ssh://foo.org/git/foo.git" title="foo git repository" /> </head> On the other hand, if a page links to multiple differing repositories, it should take care the use *different* titles for each. <head> - <link rel="vcs" type="git" href="git://foo.org/foo.git" title="foo git repository" /> - <link rel="vcs" type="git" href="git://foo.org/foo-contrib.git" title="foo-contrib git repository" /> + <link rel="vcs-git" href="git://foo.org/foo.git" title="foo git repository" /> + <link rel="vcs-git" href="git://foo.org/foo-contrib.git" title="foo-contrib git repository" /> </head> Tools that process the microformats can assume that repositories listed on @@ -68,18 +70,18 @@ assume they are different repositories. ## Producers -A website for a software package can use the `rel=vcs` microformat +A website for a software package can use the `rel=vcs-*` microformat on its front page, and on any relevant download pages, to indicate the location of its VCS repository. -A VCS repository browser such as ViewVC or gitweb, can use the `rel=vcs` +A VCS repository browser such as ViewVC or gitweb, can use the `rel=vcs-*` microformat on pages it generates, to specify the location of the repository being browsed. * [gitweb patch](http://article.gmane.org/gmane.comp.version-control.git/104754) A web site that is itself stored in a VCS repository can include the -`rel=vcs` microformat on its pages to indicate the location of the +`rel=vcs-*` microformat on its pages to indicate the location of the repository. ## Consumers @@ -102,7 +104,7 @@ Resolving deltas: 100% (39555/39555), done. ## Related efforts and motivations -The Debian project added `XS-VCS-*` fields to their source packages, +The Debian project added `VCS-*` fields to their source packages, indicating the repository used to develop each package, and many useful tools sprang up to take advantage of this information, such as `debcheckout`, which can automatically check out the source to a package
Added a comment: re: also define links to "browse vcs" sites
diff --git a/blog/entry/proposing_rel-vcs/comment_8._comment b/blog/entry/proposing_rel-vcs/comment_8._comment new file mode 100644 index 0000000..0850f68 --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_8._comment @@ -0,0 +1,7 @@ +[[!_comment format=mdwn + username="http://joey.kitenet.net/" + subject="re: also define links to "browse vcs" sites" + date="2009-01-07T16:33:32Z" + content=""" +I don't understand what would be the value in making the link to the repo browser have a rel attribute marking it up. Such a link is visible to the user, in the web browser, and should have a description that makes sense in the context (ie, the \"History\" link at the top of this page). +"""]]
Added a comment: type abuse
diff --git a/blog/entry/proposing_rel-vcs/comment_7._comment b/blog/entry/proposing_rel-vcs/comment_7._comment new file mode 100644 index 0000000..bb34d6d --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_7._comment @@ -0,0 +1,9 @@ +[[!_comment format=mdwn + username="http://joey.kitenet.net/" + subject="type abuse" + date="2009-01-07T16:24:15Z" + content=""" +I agree, it's mild abuse to use \"git\" as a mime type. + +The only alternative seems to be something like rel=\"vcs-git\". Perhaps taking the whole vcs-* namespace like this is better? +"""]]
Added a comment: svn trunk
diff --git a/blog/entry/proposing_rel-vcs/comment_6._comment b/blog/entry/proposing_rel-vcs/comment_6._comment new file mode 100644 index 0000000..c1ee5e3 --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_6._comment @@ -0,0 +1,7 @@ +[[!_comment format=mdwn + username="http://joey.kitenet.net/" + subject="svn trunk" + date="2009-01-07T16:10:27Z" + content=""" +Yes, for svn it should point to trunk or some other tag/branch/directory. Unless you really want them to check out the whole repo. I've corrected my svn example. +"""]]
formatting
diff --git a/rfc/rel-vcs/discussion.mdwn b/rfc/rel-vcs/discussion.mdwn index dad9d71..7b6350c 100644 --- a/rfc/rel-vcs/discussion.mdwn +++ b/rfc/rel-vcs/discussion.mdwn @@ -1,4 +1,4 @@ -* All in all, it seems like this would work better as a microformat +All in all, it seems like this would work better as a microformat inline, in the <body> section. Perhaps leave it in the head just for the case where the repository is the one used to generate this page? @@ -16,7 +16,7 @@ repos (through HTML containment). > The only problem with this form is it uses a URI form that the browser > will be unable to follow in a visible link. --[[Joey]] -* In the "Multiple Repositories" section, why leave the rules for +In the "Multiple Repositories" section, why leave the rules for divining which repository is writable up to the client? Seems like a bit of metadata would help ensure consistent treatment by all clients.
response
diff --git a/rfc/rel-vcs/discussion.mdwn b/rfc/rel-vcs/discussion.mdwn index 04a49a6..dad9d71 100644 --- a/rfc/rel-vcs/discussion.mdwn +++ b/rfc/rel-vcs/discussion.mdwn @@ -51,6 +51,14 @@ Kerberos authenticated one, don't make sense in this environment. I don't know what "user" should default to (probably "anoncvs", as it's most widely used).</p> +> The fact that it's been 20 years and nobody has come up with an URI +> form for CVS, makes me inclined not to bother. (That and being happy to +> see it die and never wanting to check out a CVS repo again ;-) +> +> Anyway, I'd like to keep the type simple, one per VCS type, so attempts +> to do this should include whether it's pserver or anoncvs in the URI +> part. --[[Joey]] + <p>Another option were to separate cvsmethod and modulepath with a space instead of a colon, like in the debian/control files, but then, who says that the pathtocvsroot cannot contain any spaces? So I chose the colon, @@ -68,10 +76,15 @@ this I'd say that and <code>cvsext://user:pass@host/pathtocvsroot?modulepath</code> would be more appropriate.</p> -<p>But don't just take my word for it, there is +> Actually, href is _preferred_ to be an URI (in this microformat), but +> luckily most modern VCS systems are sane enough to use URIs (though +> they do make up new schemes ;) +> +> I agree, those URIs for cvs look more appropriate if something has to be +> made up. --[[Joey]] + +p>But don't just take my word for it, there is <a href="http://www.ietf.org/rfc/rfc2717.txt">a procedure for registering URI schemes</a>...</p> -<p>(btw: Joey, any chance this page could be in Markdown?)</p> - <p>-- <a href="http://smcv.pseudorandom.co.uk/">smcv</a></p>
merge
diff --git a/rfc/rel-vcs/discussion.mdwn b/rfc/rel-vcs/discussion.mdwn index 6d0c326..04a49a6 100644 --- a/rfc/rel-vcs/discussion.mdwn +++ b/rfc/rel-vcs/discussion.mdwn @@ -34,3 +34,44 @@ bit of metadata would help ensure consistent treatment by all clients. > Finally, there's always the potential for a VCS to have more complex > auth methods than simply an anonymous and an authenticated repo. So > including it in the spec felt wrong. --[[Joey]] + +--- + +<p>We need an URI format for CVS.</p> +<pre> +<link rel="vcs" type="cvspserver" href=":pserver:user:password@example.org:/home/cvsroot:foomodule" title="foo cvs repository" /> +<link rel="vcs" type="anoncvs" href=":ext:_anoncvs@anoncvs.mirbsd.org:/cvs:mksh" title="mksh source repository" /><!-- note: no password here --> +</pre> +<p>The syntax of the “href” part is: <cvsmethod>:<modulepath> (both are mandatory); +cvsmethod can be</p><ul> +<li>:pserver:[user[:password]@]hostname:pathtocvsroot</li> +<li>[:ext:][user[:password]@]hostname:pathtocvsroot</li> +</ul><p>i.e. any valid “cvs -d” argument. Note that some, like the +Kerberos authenticated one, don't make sense in this environment. +I don't know what "user" should default to (probably "anoncvs", as +it's most widely used).</p> + +<p>Another option were to separate cvsmethod and modulepath with a space +instead of a colon, like in the debian/control files, but then, who says +that the pathtocvsroot cannot contain any spaces? So I chose the colon, +since that'd be hard to use anyway. Note a slash is not possible, since +both pathtocvsroot and modulepath can contain it.</p> + +<p>Opinions?<br /> +--mirabilos</p> + +<p>Even ignoring <a href="http://infomesh.net/2001/09/urischemes">New URI +Schemes Considered 99% Harmful</a>, the above isn't in the syntax of a URI, +and href is defined to be a URI. If you wanted to invent URI schemes for +this I'd say that +<code>cvspserver://user:pass@host/pathtocvsroot?modulepath</code> +and <code>cvsext://user:pass@host/pathtocvsroot?modulepath</code> would be +more appropriate.</p> + +<p>But don't just take my word for it, there is +<a href="http://www.ietf.org/rfc/rfc2717.txt">a procedure for registering +URI schemes</a>...</p> + +<p>(btw: Joey, any chance this page could be in Markdown?)</p> + +<p>-- <a href="http://smcv.pseudorandom.co.uk/">smcv</a></p>
merge discussion.htm
diff --git a/rfc/rel-vcs/discussion.htm b/rfc/rel-vcs/discussion.htm deleted file mode 100644 index cfd85ba..0000000 --- a/rfc/rel-vcs/discussion.htm +++ /dev/null @@ -1,38 +0,0 @@ -<p>We need an URI format for CVS.</p> -<pre> -<link rel="vcs" type="cvspserver" href=":pserver:user:password@example.org:/home/cvsroot:foomodule" title="foo cvs repository" /> -<link rel="vcs" type="anoncvs" href=":ext:_anoncvs@anoncvs.mirbsd.org:/cvs:mksh" title="mksh source repository" /><!-- note: no password here --> -</pre> -<p>The syntax of the “href” part is: <cvsmethod>:<modulepath> (both are mandatory); -cvsmethod can be</p><ul> -<li>:pserver:[user[:password]@]hostname:pathtocvsroot</li> -<li>[:ext:][user[:password]@]hostname:pathtocvsroot</li> -</ul><p>i.e. any valid “cvs -d” argument. Note that some, like the -Kerberos authenticated one, don't make sense in this environment. -I don't know what "user" should default to (probably "anoncvs", as -it's most widely used).</p> - -<p>Another option were to separate cvsmethod and modulepath with a space -instead of a colon, like in the debian/control files, but then, who says -that the pathtocvsroot cannot contain any spaces? So I chose the colon, -since that'd be hard to use anyway. Note a slash is not possible, since -both pathtocvsroot and modulepath can contain it.</p> - -<p>Opinions?<br /> ---mirabilos</p> - -<p>Even ignoring <a href="http://infomesh.net/2001/09/urischemes">New URI -Schemes Considered 99% Harmful</a>, the above isn't in the syntax of a URI, -and href is defined to be a URI. If you wanted to invent URI schemes for -this I'd say that -<code>cvspserver://user:pass@host/pathtocvsroot?modulepath</code> -and <code>cvsext://user:pass@host/pathtocvsroot?modulepath</code> would be -more appropriate.</p> - -<p>But don't just take my word for it, there is -<a href="http://www.ietf.org/rfc/rfc2717.txt">a procedure for registering -URI schemes</a>...</p> - -<p>(btw: Joey, any chance this page could be in Markdown?)</p> - -<p>-- <a href="http://smcv.pseudorandom.co.uk/">smcv</a></p>
svn repo should point to trunk or somewhere like that
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 9d133f2..5d7f8d6 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -12,7 +12,7 @@ clone from the VCS. <head> <link rel="vcs" type="git" href="git://example.org/foo.git" title="foo git repository" /> - <link rel="vcs" type="svn" href="svn://svn.example.org/bar" title="bar svn repository" /> + <link rel="vcs" type="svn" href="svn://svn.example.org/bar/trunk" title="bar svn repository" /> </head> <a rel="vcs" type="git" href="git://example.org/foo.git" title="git repository">git://example.org/foo.git</a>
update
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 1d494e9..9d133f2 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -26,7 +26,7 @@ the `<head>` of the page, or in an `<a>` element in its body. The "type" can be the name of any version control system. Types are case-insensative. Common values include "git", "svn", and "bzr". -The "href" holds an URI, or other location identifier, in a format +The "href" holds a URI, or other location identifier, in a format supported by the version control system. If a version control system supports both URIs and some other location identifier form, the URI form is preferred here. @@ -85,7 +85,7 @@ repository. ## Consumers * [webcheckout](http://git.kitenet.net/?p=mr.git;a=blob_plain;f=webcheckout;hb=HEAD) - is a simple tool that downloads an URL and runs VCS programs + is a simple tool that downloads a URL and runs VCS programs to check out the repositories it references using this microformat. (`webcheckout` is included in the [[code/mr]] package.)
support <a> tags, other minor changes
Based on feedback from Joe Edmonds.
Based on feedback from Joe Edmonds.
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn
index c31b354..1d494e9 100644
--- a/rfc/rel-vcs.mdwn
+++ b/rfc/rel-vcs.mdwn
@@ -15,27 +15,33 @@ clone from the VCS.
<link rel="vcs" type="svn" href="svn://svn.example.org/bar" title="bar svn repository" />
</head>
+ <a rel="vcs" type="git" href="git://example.org/foo.git" title="git repository">git://example.org/foo.git</a>
+ <a rel="vcs" type="git" href="git://example.org/foo.git">git repository</a>
+
## Format
-The `rel=vcs` microformat can only appear in the html `<link>` element, in
-the `<head>` of the page.
+The `rel=vcs` microformat can only appear in the html `<link>` element in
+the `<head>` of the page, or in an `<a>` element in its body.
The "type" can be the name of any version control system. Types are
case-insensative. Common values include "git", "svn", and "bzr".
-The "href" holds an uri, or other location identifier, in a format
-supported by the version control system.
+The "href" holds an URI, or other location identifier, in a format
+supported by the version control system. If a version control system
+supports both URIs and some other location identifier form, the URI form
+is preferred here.
The "title" is optional, but recommended if there are multiple, different
repositories linked to on one page. It is a human-readable description of
-the repository.
+the repository. If the title is omitted from an `<a>` tag, the body of the tag
+should be a human-readable description.
## Multiple repositories
-Since many version control systems use one uri form (such as `git://` or
+Since many version control systems use one URI form (such as `git://` or
`http://`) for anonymous access, and another form (such as `ssh://` or
`svn+ssh://`) for authenticated access, multiple `<link>` tags can be used
-on the same page, to list each available uri. When this is done, the *same*
+on the same page, to list each available URI. When this is done, the *same*
text should be used for the title parameter of each repository. For
example:
@@ -54,7 +60,7 @@ it should take care the use *different* titles for each.
Tools that process the microformats can assume that repositories listed on
the same page, with the same title, each contain the same data. Such tools
-can choose which repository to use based on the type of uri it uses (for
+can choose which repository to use based on the type of URI it uses (for
example by preferring `git://`, then `http://`, and finally `ssh://`).
If there are multiple repositories listed, without titles, tools should
diff --git a/rfc/rel-vcs/discussion.mdwn b/rfc/rel-vcs/discussion.mdwn
new file mode 100644
index 0000000..6d0c326
--- /dev/null
+++ b/rfc/rel-vcs/discussion.mdwn
@@ -0,0 +1,36 @@
+* All in all, it seems like this would work better as a microformat
+inline, in the <body> section. Perhaps leave it in the head just for
+the case where the repository is the one used to generate this page?
+
+Why? (1) According to microformats.org, microformats are intended to be
+human readable. Most of what's in the <head> isn't shown to most
+humans. (2) If a page describes multiple projects with multiple
+repositories, this would allow the descriptions to be linked to the
+repos (through HTML containment).
+
+> I agree, I had forgotten that <a> supported a type attribute, so the
+> same info can be fit in there:
+
+ <a rel="vcs" type="git" href="git://example.org/foo.git" title="git repository">git://example.org/foo.git</a>
+
+> The only problem with this form is it uses a URI form that the browser
+> will be unable to follow in a visible link. --[[Joey]]
+
+* In the "Multiple Repositories" section, why leave the rules for
+divining which repository is writable up to the client? Seems like a
+bit of metadata would help ensure consistent treatment by all clients.
+
+> To support multiple repositories, a client also has to choose between
+> eg, http:// and git://. So it seems that the client is going to need to
+> have some repo-type-specific smarts anyway.
+>
+> It's also possible to have multiple mirrors of a repository, and the
+> client may want to choose between those for the user.
+>
+> Also, the only place I could see to encode anon/auth info is in the
+> type, and overloading it with multiple bits of info ("git:anon"?)
+> seemed a bit complex.
+>
+> Finally, there's always the potential for a VCS to have more complex
+> auth methods than simply an anonymous and an authenticated repo. So
+> including it in the spec felt wrong. --[[Joey]]
Added a comment: abuse of @type
diff --git a/blog/entry/proposing_rel-vcs/comment_5._comment b/blog/entry/proposing_rel-vcs/comment_5._comment new file mode 100644 index 0000000..b568699 --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_5._comment @@ -0,0 +1,17 @@ +[[!_comment format=mdwn + username="http://smcv.pseudorandom.co.uk/" + subject="abuse of @type" + date="2009-01-07T12:15:29Z" + content=""" +Putting things like git and svn in the `type` attribute seems like an abuse of the +`link` element - `type` is defined to be a MIME type, and neither git nor svn is a +MIME type. (The type=\"text/x-wiki\" hack for \"edit this page in a browser\" is +similarly abusive - it looks like a MIME type, but clearly isn't. The MIME type +of a web form is still text/html, even if you're using it to edit a wiki.) + +I can see the problem that it tries to solve, which is that given a http URI, you +have no idea whether it points to a git, svn or bzr repository. Presumably you'd +prefer webcheckout to avoid downloading $uri/info/refs to check for git, doing a +PROPGET to check for svn, downloading _darcs/inventory to check for darcs, and +doing whatever the check for bzr is... +"""]]
Added a comment: Surely pointing to a branch is OK too?
diff --git a/blog/entry/proposing_rel-vcs/comment_4._comment b/blog/entry/proposing_rel-vcs/comment_4._comment new file mode 100644 index 0000000..988c698 --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_4._comment @@ -0,0 +1,15 @@ +[[!_comment format=mdwn + username="http://smcv.pseudorandom.co.uk/" + subject="Surely pointing to a branch is OK too?" + date="2009-01-07T12:06:11Z" + content=""" +For svn, sure, pointing to a tag or some sort of repository root is unhelpful, +but I don't think it's necessarily fair to say \"always point to trunk\" either - +if pointing to a particular branch would be more appropriate for a page, that +would be good too. + +For git you'd just point to the repository anyway - there isn't a standard way +to address a branch. If `git` was +[a real URI scheme](http://www.ietf.org/rfc/rfc2717.txt) then perhaps it'd have +such a mechanism... +"""]]
if you're going to invent URI schemes at least use the generic syntax
diff --git a/rfc/rel-vcs/discussion.htm b/rfc/rel-vcs/discussion.htm index c803712..cfd85ba 100644 --- a/rfc/rel-vcs/discussion.htm +++ b/rfc/rel-vcs/discussion.htm @@ -20,3 +20,19 @@ both pathtocvsroot and modulepath can contain it.</p> <p>Opinions?<br /> --mirabilos</p> + +<p>Even ignoring <a href="http://infomesh.net/2001/09/urischemes">New URI +Schemes Considered 99% Harmful</a>, the above isn't in the syntax of a URI, +and href is defined to be a URI. If you wanted to invent URI schemes for +this I'd say that +<code>cvspserver://user:pass@host/pathtocvsroot?modulepath</code> +and <code>cvsext://user:pass@host/pathtocvsroot?modulepath</code> would be +more appropriate.</p> + +<p>But don't just take my word for it, there is +<a href="http://www.ietf.org/rfc/rfc2717.txt">a procedure for registering +URI schemes</a>...</p> + +<p>(btw: Joey, any chance this page could be in Markdown?)</p> + +<p>-- <a href="http://smcv.pseudorandom.co.uk/">smcv</a></p>
Added a comment
diff --git a/blog/entry/proposing_rel-vcs/comment_3._comment b/blog/entry/proposing_rel-vcs/comment_3._comment new file mode 100644 index 0000000..bda693c --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_3._comment @@ -0,0 +1,8 @@ +[[!_comment format=mdwn + username="http://mirabilos.myopenid.com/" + date="2009-01-07T09:29:13Z" + content=""" +I agree about the links for CVSweb and the likes. +I wrote about the two types of CVS (pserver and anoncvs, or more likely, cvs-over-ssh) in http://kitenet.net/~joey/rfc/rel-vcs/discussion/ +and sincerely hope nobody uses cvs-over-rsh any more (but then, pserver needs to die too…). +"""]]
cvs needs discussion (and no, it's *NOT* dead, I actually wrote svn2cvs.sh last week due to a user request via IRC)
diff --git a/rfc/rel-vcs/discussion.htm b/rfc/rel-vcs/discussion.htm new file mode 100644 index 0000000..c803712 --- /dev/null +++ b/rfc/rel-vcs/discussion.htm @@ -0,0 +1,22 @@ +<p>We need an URI format for CVS.</p> +<pre> +<link rel="vcs" type="cvspserver" href=":pserver:user:password@example.org:/home/cvsroot:foomodule" title="foo cvs repository" /> +<link rel="vcs" type="anoncvs" href=":ext:_anoncvs@anoncvs.mirbsd.org:/cvs:mksh" title="mksh source repository" /><!-- note: no password here --> +</pre> +<p>The syntax of the “href” part is: <cvsmethod>:<modulepath> (both are mandatory); +cvsmethod can be</p><ul> +<li>:pserver:[user[:password]@]hostname:pathtocvsroot</li> +<li>[:ext:][user[:password]@]hostname:pathtocvsroot</li> +</ul><p>i.e. any valid “cvs -d” argument. Note that some, like the +Kerberos authenticated one, don't make sense in this environment. +I don't know what "user" should default to (probably "anoncvs", as +it's most widely used).</p> + +<p>Another option were to separate cvsmethod and modulepath with a space +instead of a colon, like in the debian/control files, but then, who says +that the pathtocvsroot cannot contain any spaces? So I chose the colon, +since that'd be hard to use anyway. Note a slash is not possible, since +both pathtocvsroot and modulepath can contain it.</p> + +<p>Opinions?<br /> +--mirabilos</p>
Added a comment: Should not it point to trunk
diff --git a/blog/entry/proposing_rel-vcs/comment_2._comment b/blog/entry/proposing_rel-vcs/comment_2._comment new file mode 100644 index 0000000..1c81063 --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_2._comment @@ -0,0 +1,7 @@ +[[!_comment format=mdwn + username="http://cihar.com/" + subject="Should not it point to trunk" + date="2009-01-07T09:13:59Z" + content=""" +I think either webcheckout should automagically switch to trunk or the specification should mention that the links should point to trunk. I doubt somebody is really interested in checkout of full SVN repository. +"""]]
Added a comment: also define links to "browse vcs" sites
diff --git a/blog/entry/proposing_rel-vcs/comment_1._comment b/blog/entry/proposing_rel-vcs/comment_1._comment new file mode 100644 index 0000000..bff91ed --- /dev/null +++ b/blog/entry/proposing_rel-vcs/comment_1._comment @@ -0,0 +1,7 @@ +[[!_comment format=mdwn + username="http://thomas.koch.ro/" + subject="also define links to "browse vcs" sites" + date="2009-01-07T07:24:44Z" + content=""" +I also often search a while to discover the web interfaces to the source code repositories of projects. I prefer to browse a little through the code before checking out. So I search first for the web interface and afterwards for the checkout/clone url. +"""]]
typo
diff --git a/code/mr.mdwn b/code/mr.mdwn index ca8d686..b876931 100644 --- a/code/mr.mdwn +++ b/code/mr.mdwn @@ -18,7 +18,7 @@ of things it can do include: mr is available in git at `git://git.kitenet.net/mr`, or [in gitweb](http://git.kitenet.net/?p=mr.git). It's recently been added to -Debian. If you want a tarball, the best place to get one if from +Debian. If you want a tarball, the best place to get one is from <http://packages.debian.org/unstable/source/mr>. Unofficial RPMs are provided by [Douglas E. Warner](http://www.silfreed.net/download/repo/packages/mr/).
format
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 43708ca..c31b354 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -83,14 +83,16 @@ repository. to check out the repositories it references using this microformat. (`webcheckout` is included in the [[code/mr]] package.) - joey@gnu:~/tmp>webcheckout http://git.ikiwiki.info/ - git clone git://git.ikiwiki.info/ - Initialized empty Git repository in /home/joey/tmp/git.ikiwiki.info/.git/ - remote: Counting objects: 52585, done. - remote: Compressing objects: 100% (13803/13803), done. - remote: Total 52585 (delta 39555), reused 50139 (delta 37692) - Receiving objects: 100% (52585/52585), 7.74 MiB | 236 KiB/s, done. - Resolving deltas: 100% (39555/39555), done. +<pre> +joey@gnu:~/tmp>webcheckout http://git.ikiwiki.info/ +git clone git://git.ikiwiki.info/ +Initialized empty Git repository in /home/joey/tmp/git.ikiwiki.info/.git/ +remote: Counting objects: 52585, done. +remote: Compressing objects: 100% (13803/13803), done. +remote: Total 52585 (delta 39555), reused 50139 (delta 37692) +Receiving objects: 100% (52585/52585), 7.74 MiB | 236 KiB/s, done. +Resolving deltas: 100% (39555/39555), done. +</pre> ## Related efforts and motivations
update
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 56e8c87..43708ca 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -60,7 +60,7 @@ example by preferring `git://`, then `http://`, and finally `ssh://`). If there are multiple repositories listed, without titles, tools should assume they are different repositories. -## Users +## Producers A website for a software package can use the `rel=vcs` microformat on its front page, and on any relevant download pages, to indicate the @@ -76,13 +76,22 @@ A web site that is itself stored in a VCS repository can include the `rel=vcs` microformat on its pages to indicate the location of the repository. -## Parsers +## Consumers * [webcheckout](http://git.kitenet.net/?p=mr.git;a=blob_plain;f=webcheckout;hb=HEAD) is a simple tool that downloads an URL and runs VCS programs to check out the repositories it references using this microformat. (`webcheckout` is included in the [[code/mr]] package.) + joey@gnu:~/tmp>webcheckout http://git.ikiwiki.info/ + git clone git://git.ikiwiki.info/ + Initialized empty Git repository in /home/joey/tmp/git.ikiwiki.info/.git/ + remote: Counting objects: 52585, done. + remote: Compressing objects: 100% (13803/13803), done. + remote: Total 52585 (delta 39555), reused 50139 (delta 37692) + Receiving objects: 100% (52585/52585), 7.74 MiB | 236 KiB/s, done. + Resolving deltas: 100% (39555/39555), done. + ## Related efforts and motivations The Debian project added `XS-VCS-*` fields to their source packages,
gitweb patch
diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn index 811de1d..56e8c87 100644 --- a/rfc/rel-vcs.mdwn +++ b/rfc/rel-vcs.mdwn @@ -67,9 +67,11 @@ on its front page, and on any relevant download pages, to indicate the location of its VCS repository. A VCS repository browser such as ViewVC or gitweb, can use the `rel=vcs` -microformat on every page it generates, to specify the location of the +microformat on pages it generates, to specify the location of the repository being browsed. +* [gitweb patch](http://article.gmane.org/gmane.comp.version-control.git/104754) + A web site that is itself stored in a VCS repository can include the `rel=vcs` microformat on its pages to indicate the location of the repository.
publication
diff --git a/blog/entry/proposing_rel-vcs.mdwn b/blog/entry/proposing_rel-vcs.mdwn new file mode 100644 index 0000000..97e0a2d --- /dev/null +++ b/blog/entry/proposing_rel-vcs.mdwn @@ -0,0 +1,43 @@ +I'm working on designing a microformat that can be used to +indicate the location of VCS (git, svn, etc) repositories +related to a web page. + +I'd appreciate some web standards-savvy eyes on my +[[rel-vcs_microformat_rfc|rfc/rel-vcs]]. + +If it looks good, next steps will be making things like +gitweb, viewvc, ikiwiki, etc, support it. I've already written a +preliminary `webcheckout` tool that will download an url, parse +the microformat, and run the appropriate VCS program(s). + +(Followed by, with any luck, github, ohloh, etc using the +microformat in both the pages they publish, and perhaps, +in their data importers.) + +Why? Well, + +1. A similar approach worked great for Debian source packages + with the `XS-VCS-*` fields. +2. Pasting git urls from download pages of software + projects gets old. +3. I'm tired of having to do serious digging to find + where to clone the source to websites like Keith + Packard's blog, or cariographics.org, or St + Hugh of Lincoln Primary School. Sites that I + [know](http://ikiwiki.info/ikiwikiusers/) live + in a git repo, *somewhere*. +4. With the downturn, hosting sites are going down left and + right, and users who trusted their data to these sites + are losing it. Examples include + [AOL Hometown and Ficlets](http://ascii.textfiles.com/archives/1617), + [Google lively](http://www.webcitation.org/5dbsMl4oi), + [Journalspace](http://itknowledgeexchange.techtarget.com/sql-server/journalspacecom-says-the-site-was-trashed-by-the-it-guy/), + podango, etc etc. Even livejournal's future is + [looking shakey](http://community.livejournal.com/ljuser_buyout/). + [Various people](http://www.archiveteam.org/) are + trying to archive some of this data before it vanishes for good. + I'm more interested in establishing best practices that + make it easy and attractive to let all the data on + your website be cloned/forked/preserved. Things that people + bitten by these closures just might demand in the future. + This will be one small step in that direction. diff --git a/rfc/rel-vcs.mdwn b/rfc/rel-vcs.mdwn new file mode 100644 index 0000000..811de1d --- /dev/null +++ b/rfc/rel-vcs.mdwn @@ -0,0 +1,93 @@ +[[!meta title="rel=vcs microformat"]] + +The `rel=vcs` microformat allows a page to indicate the location of a +Version Control System repository related to that page. + +Tools can parse the microformat and use it to determine how to check out / +clone from the VCS. + +[[!toc ]] + +## Examples + + <head> + <link rel="vcs" type="git" href="git://example.org/foo.git" title="foo git repository" /> + <link rel="vcs" type="svn" href="svn://svn.example.org/bar" title="bar svn repository" /> + </head> + +## Format + +The `rel=vcs` microformat can only appear in the html `<link>` element, in +the `<head>` of the page. + +The "type" can be the name of any version control system. Types are +case-insensative. Common values include "git", "svn", and "bzr". + +The "href" holds an uri, or other location identifier, in a format +supported by the version control system. + +The "title" is optional, but recommended if there are multiple, different +repositories linked to on one page. It is a human-readable description of +the repository. + +## Multiple repositories + +Since many version control systems use one uri form (such as `git://` or +`http://`) for anonymous access, and another form (such as `ssh://` or +`svn+ssh://`) for authenticated access, multiple `<link>` tags can be used +on the same page, to list each available uri. When this is done, the *same* +text should be used for the title parameter of each repository. For +example: + + <head> + <link rel="vcs" type="git" href="git://foo.org/foo.git" title="foo git repository" /> + <link rel="vcs" type="git" href="ssh://foo.org/git/foo.git" title="foo git repository" /> + </head> + +On the other hand, if a page links to multiple differing repositories, +it should take care the use *different* titles for each. + + <head> + <link rel="vcs" type="git" href="git://foo.org/foo.git" title="foo git repository" /> + <link rel="vcs" type="git" href="git://foo.org/foo-contrib.git" title="foo-contrib git repository" /> + </head> + +Tools that process the microformats can assume that repositories listed on +the same page, with the same title, each contain the same data. Such tools +can choose which repository to use based on the type of uri it uses (for +example by preferring `git://`, then `http://`, and finally `ssh://`). + +If there are multiple repositories listed, without titles, tools should +assume they are different repositories. + +## Users + +A website for a software package can use the `rel=vcs` microformat +on its front page, and on any relevant download pages, to indicate the +location of its VCS repository. + +A VCS repository browser such as ViewVC or gitweb, can use the `rel=vcs` +microformat on every page it generates, to specify the location of the +repository being browsed. + +A web site that is itself stored in a VCS repository can include the +`rel=vcs` microformat on its pages to indicate the location of the +repository. + +## Parsers + +* [webcheckout](http://git.kitenet.net/?p=mr.git;a=blob_plain;f=webcheckout;hb=HEAD) + is a simple tool that downloads an URL and runs VCS programs + to check out the repositories it references using this microformat. + (`webcheckout` is included in the [[code/mr]] package.) + +## Related efforts and motivations + +The Debian project added `XS-VCS-*` fields to their source packages, +indicating the repository used to develop each package, and many useful +tools sprang up to take advantage of this information, such as +`debcheckout`, which can automatically check out the source to a package +from its VCS. + +Joey discusses some of his other motivations in his +[[introductory_blog_post|blog/entry/proposing_rel-vcs]].
Added a comment: Layout
diff --git a/blog/entry/new_year/comment_1._comment b/blog/entry/new_year/comment_1._comment new file mode 100644 index 0000000..513f1c2 --- /dev/null +++ b/blog/entry/new_year/comment_1._comment @@ -0,0 +1,7 @@ +[[!_comment format=mdwn + username="http://painoarvokas.livejournal.com/" + subject="Layout" + date="2009-01-05T20:56:59Z" + content=""" +I've seen professional-quality books out of Lulu (Atlanta Nights – no, I still haven't had the courage to actually read it). I expect the trouble is with the content provider, not the printing technology. +"""]]
blog update
diff --git a/blog/entry/new_year.mdwn b/blog/entry/new_year.mdwn new file mode 100644 index 0000000..1e09422 --- /dev/null +++ b/blog/entry/new_year.mdwn @@ -0,0 +1,50 @@ +I'm trying to work on having days that are somehow individually memorable +this year. So far.. + +## 0 (leap day) + +Finally tackled the chapter on monads. I'd read various explanations a year +ago, but was swimming in syntax I didn't understand. After percolating for +a year, and learning to read the syntax better, monads turned out to make +very simple sense. + +(I can't say the same about [Johnny Monad](http://jfc.wikia.com/wiki/John_Monad).) + +I had been meaning to write sometime about a method I used in +[[code/ikiwiki]] to let expressions in a mini-language, that normally are +evaluated to [match a set of pages](http://ikiwiki.info/ikiwiki/pagespec), +instead be evaluated to explain *why* they succeed or fail. It's a cute +technique, though hard to explain. Now I'm pretty sure it's just a monad. +So I don't have to explain it! + +## 1 + +Visiting Abram's falls this time of year, the canyon is in constant wintry +shadow. The falls are not frozen, but have icicles twice my height, and +there are rank upon rank of icicles all down the walls, an ice cathederal. + +It's a bright sunny day, but on the whole hike, I only get into the +sunlight once, briefly, at the top of the giant steps. Then back into the +shade. Back at my car, I'm suprised that it's only 3 pm, feels like it +should be 5. + +Made a pecan pie with daddy's pecans and eggs. + +## 2 + +A grey day with snow and worse. The paper's rss feed repeats +"dozens^Whundreds of wrecks" over and over, as if to make up for there +being no 60 point type. + +I'm reading Ted Nelson's book Geeks Bearing Gifts. The [chapter +summaries](http://geeks-bearing-gifts.com/gbgContents.html) seem better +than the actual book. And the on-demand printing makes me think I'm reading +a poorly laid out web page, rather than something typeset. But I love that +he goes all the way back to the invention of the alphabet and of +hierarchical categorization and suggests all the basis for modern computers +is arbitrary and/or wrong. + +Eating ginger duck downtown I look up and a pizza delivery guy has slid out +of control right in front of me and crashed. + +[[!tag lay monad]]
fix globlist
diff --git a/code/wmbattery.mdwn b/code/wmbattery.mdwn index 4a78732..d589207 100644 --- a/code/wmbattery.mdwn +++ b/code/wmbattery.mdwn @@ -32,4 +32,4 @@ to my blog a while ago. ## News -[[!inline pages="code/wmbattery/news/* !*/Discussion" show="3"]] +[[!inline pages="code/wmbattery/news/* and !*/Discussion" show="3"]]
add news item for etckeeper 0.25
diff --git a/code/etckeeper/news/version_0.20.mdwn b/code/etckeeper/news/version_0.20.mdwn deleted file mode 100644 index 8ca46bd..0000000 --- a/code/etckeeper/news/version_0.20.mdwn +++ /dev/null @@ -1,7 +0,0 @@ -etckeeper 0.20 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * [ Jelmer Vernooij ] - * Use new Bazaar API. - * Pass --quiet to bzr add to avoid new files from being printed twice. - * Don't consider warnings from bzr plugins when checking if tree was - modified."""]] \ No newline at end of file diff --git a/code/etckeeper/news/version_0.25.mdwn b/code/etckeeper/news/version_0.25.mdwn new file mode 100644 index 0000000..044c9ef --- /dev/null +++ b/code/etckeeper/news/version_0.25.mdwn @@ -0,0 +1,3 @@ +etckeeper 0.25 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * Fix filter\_unknown calls. Closes: [509888](http://bugs.debian.org/509888)"""]] \ No newline at end of file diff --git a/hacker_tombstone.otl b/hacker_tombstone.otl index 3e4b875..6349b12 100644 --- a/hacker_tombstone.otl +++ b/hacker_tombstone.otl @@ -76,10 +76,14 @@ case studies http://www.infodrom.org/Debian/cmr.html Debian developer worked on arm port + buildd.debian.org + "I dedicate this centralized database and web interface in memory of Chris Rutter. He was killed in a tragic car accident on March 1, 2001. Chris originally developed this web interface for Aleph One, ARM Linux consultants. -- rmurray" Fabrizio Polacco died after long illness March 28th, 2001 Debian developer + man-db changelog + "New maintainer. Fabrizio, may the road rise up to meet you." Martin Butterweck died of leukemia July 21st, 2002 @@ -144,6 +148,7 @@ case studies Thiemo Seufer died in a car accident December 26th, 2008 + http://lwn.net/Articles/313092/ Debian developer d-i mips porter d-i build system developer
add news item for etckeeper 0.24
diff --git a/code/etckeeper/news/version_0.19.mdwn b/code/etckeeper/news/version_0.19.mdwn deleted file mode 100644 index b6888a7..0000000 --- a/code/etckeeper/news/version_0.19.mdwn +++ /dev/null @@ -1,3 +0,0 @@ -etckeeper 0.19 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * Patch from Miklos Vajna to fix one more git- command that crept in."""]] \ No newline at end of file diff --git a/code/etckeeper/news/version_0.24.mdwn b/code/etckeeper/news/version_0.24.mdwn new file mode 100644 index 0000000..496cdaa --- /dev/null +++ b/code/etckeeper/news/version_0.24.mdwn @@ -0,0 +1,4 @@ +etckeeper 0.24 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * Make .etckeeper test that files actually exist + before acting on them. Closes: #[509888](http://bugs.debian.org/509888)"""]] \ No newline at end of file
Added a comment
diff --git a/blog/entry/the_OpenID_logo_and_free_software/comment_4._comment b/blog/entry/the_OpenID_logo_and_free_software/comment_4._comment new file mode 100644 index 0000000..e5f8b53 --- /dev/null +++ b/blog/entry/the_OpenID_logo_and_free_software/comment_4._comment @@ -0,0 +1,6 @@ +[[!_comment format=mdwn + username="http://joey.kitenet.net/" + date="2008-12-29T20:17:38Z" + content=""" +I doubt that site has a way to select \"no license has been given for this logo\". +"""]]
Added a comment: OpenID logo @ openclipart.org
diff --git a/blog/entry/the_OpenID_logo_and_free_software/comment_3._comment b/blog/entry/the_OpenID_logo_and_free_software/comment_3._comment new file mode 100644 index 0000000..ec2be3a --- /dev/null +++ b/blog/entry/the_OpenID_logo_and_free_software/comment_3._comment @@ -0,0 +1,8 @@ +[[!_comment format=mdwn + username="http://germangutierrez.myopenid.com/" + subject="OpenID logo @ openclipart.org" + date="2008-12-29T15:52:20Z" + content=""" +On this site, the logo seems to be under public domain +http://openclipart.org/media/files/techtonik/8590 +"""]]
Added a comment
diff --git a/blog/entry/the_OpenID_logo_and_free_software/comment_2._comment b/blog/entry/the_OpenID_logo_and_free_software/comment_2._comment new file mode 100644 index 0000000..c96e2ab --- /dev/null +++ b/blog/entry/the_OpenID_logo_and_free_software/comment_2._comment @@ -0,0 +1,6 @@ +[[!_comment format=mdwn + username="http://joey.kitenet.net/" + date="2008-12-29T03:11:20Z" + content=""" +I agree, that would be perfactly acceptable for I guess 99% of the free software projects out there's needs. +"""]]
Added a comment: Logos and logos
diff --git a/blog/entry/the_OpenID_logo_and_free_software/comment_1._comment b/blog/entry/the_OpenID_logo_and_free_software/comment_1._comment new file mode 100644 index 0000000..330e995 --- /dev/null +++ b/blog/entry/the_OpenID_logo_and_free_software/comment_1._comment @@ -0,0 +1,14 @@ +[[!_comment format=mdwn + username="http://commonsware.com/" + subject="Logos and logos" + date="2008-12-29T01:16:17Z" + content=""" +It might also be possible for the OpenID Foundation to retain control over a \"master\" logo, yet create their own derivative that is licensed under a suitably-free license, designed for use in login fields and whatnot. + +After all, some of their rules are already pre-violated: + +*There's no (TM) in the little logo + +*The little logo might not be clickable in all situations (e.g., inside a login field) + +"""]]
formatting
diff --git a/code/openidlogo.mdwn b/code/openidlogo.mdwn index 957c85c..1137712 100644 --- a/code/openidlogo.mdwn +++ b/code/openidlogo.mdwn @@ -23,8 +23,7 @@ rel="dc:type">Alternative OpenID Logo</span> is dual licensed under your choice * <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> <img alt="Creative Commons License" style="border-width:0" src="http://creativecommons.org/images/public/somerights20.png" /></a> - <br a/> - A <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> + <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> Creative Commons Attribution 3.0 United States License</a>. * The following simple permissive license:
formatting
diff --git a/code/openidlogo.mdwn b/code/openidlogo.mdwn index 6b6008a..957c85c 100644 --- a/code/openidlogo.mdwn +++ b/code/openidlogo.mdwn @@ -16,15 +16,15 @@ icon for login form: [[!img openidlogin-bg.gif]] This logo is copyright 2008 Joey Hess <joey@kitenet.net>. -It is dual licensed under your choice of: +<span xmlns:dc="http://purl.org/dc/elements/1.1/" +href="http://purl.org/dc/dcmitype/StillImage" property="dc:title" +rel="dc:type">Alternative OpenID Logo</span> is dual licensed under your choice of: * <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> <img alt="Creative Commons License" style="border-width:0" src="http://creativecommons.org/images/public/somerights20.png" /></a> - <br a/><span xmlns:dc="http://purl.org/dc/elements/1.1/" - href="http://purl.org/dc/dcmitype/StillImage" property="dc:title" - rel="dc:type">Alternative OpenID Logo</span> - is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> + <br a/> + A <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> Creative Commons Attribution 3.0 United States License</a>. * The following simple permissive license:
make the dual licensing official and explicit
diff --git a/code/openidlogo.mdwn b/code/openidlogo.mdwn index 5d01222..6b6008a 100644 --- a/code/openidlogo.mdwn +++ b/code/openidlogo.mdwn @@ -13,16 +13,23 @@ or the [GNU Free Software Definition](http://www.gnu.org/philosophy/free-sw.html icon for login form: [[!img openidlogin-bg.gif]] ---- + +This logo is copyright 2008 Joey Hess <joey@kitenet.net>. -<a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> -<img alt="Creative Commons License" style="border-width:0" -src="http://creativecommons.org/images/public/somerights20.png" /></a> -<br a/><span xmlns:dc="http://purl.org/dc/elements/1.1/" -href="http://purl.org/dc/dcmitype/StillImage" property="dc:title" -rel="dc:type">Alternative OpenID Logo</span> -is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> -Creative Commons Attribution 3.0 United States License</a>. -It is copyright 2008 Joey Hess <joey@kitenet.net>. +It is dual licensed under your choice of: + +* <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> + <img alt="Creative Commons License" style="border-width:0" + src="http://creativecommons.org/images/public/somerights20.png" /></a> + <br a/><span xmlns:dc="http://purl.org/dc/elements/1.1/" + href="http://purl.org/dc/dcmitype/StillImage" property="dc:title" + rel="dc:type">Alternative OpenID Logo</span> + is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/3.0/us/"> + Creative Commons Attribution 3.0 United States License</a>. + +* The following simple permissive license: + > Redistribution and use in source and compiled forms, with or without + > modification, are permitted under any circumstances. No warranty. Note: OpenID is a [trademark](http://wiki.openid2009.org/OpenID_Trademark_Policy#1._Abstract_Usage_Guidelines)
blog update
diff --git a/blog/entry/the_OpenID_logo_and_free_software.mdwn b/blog/entry/the_OpenID_logo_and_free_software.mdwn index aeda37f..59259ec 100644 --- a/blog/entry/the_OpenID_logo_and_free_software.mdwn +++ b/blog/entry/the_OpenID_logo_and_free_software.mdwn @@ -1,6 +1,6 @@ Suppose you have a free software package that includes an OpenID login form. Such forms are supposed to include a little OpenID logo -<img src="http://openid.net/wp-content/uploads/2007/10/openid_small_logo_white.gif"]]. +<img src="http://openid.net/wp-content/uploads/2007/10/openid_small_logo_white.gif">. But as hard as you look, you can't find a license for the OpenID logo. Though there seem to be [indications](http://wiki.openid2009.org/OpenID_Trademark_Policy#2.3_Using_the_OpenID_Logo)
blog update
diff --git a/blog/entry/the_OpenID_logo_and_free_software.mdwn b/blog/entry/the_OpenID_logo_and_free_software.mdwn new file mode 100644 index 0000000..aeda37f --- /dev/null +++ b/blog/entry/the_OpenID_logo_and_free_software.mdwn @@ -0,0 +1,28 @@ +Suppose you have a free software package that includes an OpenID login +form. Such forms are supposed to include a little OpenID logo +<img src="http://openid.net/wp-content/uploads/2007/10/openid_small_logo_white.gif"]]. +But as hard as you look, you can't find a license for the OpenID logo. +Though there seem to be +[indications](http://wiki.openid2009.org/OpenID_Trademark_Policy#2.3_Using_the_OpenID_Logo) +that it might get one in 2009, it seems like it will not be free enough to +be included in a free software package. + +Due to this problem, all the [[code/ikiwiki]] sites out there have not used +the OpenID logo, or indeed any logo, in their login form for the 2+ years +that ikiwiki has proudly supported OpenID. That was so suboptimal that I +spent some donations to commision an +[[unofficial_OpenID_logo|code/openidlogo]] +[[code/openidlogo/openidlogin-bg.gif]]. It's freely licensed for use in +whatever. + +Putting the little OpenID logo in the login form is a nice touch, it helps +spread awareness about OpenID and users learn to look for it. The fact that +free software packages can't include it weakens that. Having an alternative +logo that evokes the "real" logo and the concept of a login is better than +no logo at all. But it is also needlessly confusing. + +I encourage the new OpenID board to reconsider plans for logo licensing, +and bear in mind that many free software packages can have native OpenID +support, and should be able to include a copy of the logo, without worrying +about it conflicting with their license, or not being free enough to be +included in a free software distribution.
blog update
diff --git a/blog/entry/Southern_borscht.mdwn b/blog/entry/Southern_borscht.mdwn new file mode 100644 index 0000000..9d9f6b2 --- /dev/null +++ b/blog/entry/Southern_borscht.mdwn @@ -0,0 +1,48 @@ +I was asked for my borscht recipe. This is loosely derived from +[a recipe](http://allrecipes.com/Recipe/Borscht-I/Detail.aspx) that is +really weird -- it says to throw away the beets! Both that recipe and mine +are probably very unauthentic. But good. + +6 cups water +3 medium size beets +2 medium size potatoes, quartered +1/2 cup chopped carrots +1 stalk celery, chopped -- optional +1/2 a bell pepper, chopped (red or green) -- optional +1/3 cup butter +1/2 to 1 cup chopped onion +1/2 cup tomatoes (fresh are best, canned or tomato paste + water is ok) +1/4 cup milk +2 cups finely chopped cabbage +1 tablespoon vinegar +1 teaspoon dried dill weed +sour cream + +Put water in a large pot on high heat. Add beets, potatoes, carrots, celery, +and bell pepper. Cover and boil until potatoes are tender. + +Meanwhile, melt butter in a skillet. Saute onion in butter until tender, +about 5 minutes. Stir in tomatoes, reduce heat to medium low, cover, and +simmer for 15 minutes. + +Remove half of sauce from skillet into a medium size bowl. Add cabbage to +remainder of sauce in skillet and cook coverted on medium low heat, stirring +occasionally for ten minutes, or until tender. + +Reduce heat on pot to a simmer. Remove beets from pot and set aside to +cool. + +Remove quartered potatoes and add to bowl with sauce. Mash potatoes, adding +milk, until creamy. Stir mashed potato mixture into soup in pot. + +Grate beets, removing skin if desired, or grating it in. Combine grated +beets and cabbage into pot. Add vinegar to taste (optional but recommended +with sweet beets). Add salt and pepper to taste. Stir in a teaspoon of +dill. + +Cover and cook for at least another 5 minutes on low heat, then let it cook +in its residual heat for as long as desired. + +Serve hot, garnished with sour cream and dill. + +[[!tag lay recipe]]
ths
diff --git a/hacker_tombstone.otl b/hacker_tombstone.otl index d948506..3e4b875 100644 --- a/hacker_tombstone.otl +++ b/hacker_tombstone.otl @@ -35,6 +35,7 @@ case studies whois still in Joel's name paid thru 2008 last change jun 2006 + as of 2008, is paid thru 2017, by a relative was taken offline by beginning of 2007 irc client espy was online on irc for several years after he died @@ -110,6 +111,7 @@ case studies www.dandelion.com server down since 2004 according to wayback dns admined by someone @puffin, probably a friend + 2008: domain sold to company www.consonance.org was hosted by leonard now seems to have different hosting @@ -139,6 +141,16 @@ case studies mourning IRC channels set up to mourn him. Memorial page: http://lilo.freenode.net/ + Thiemo Seufer + died in a car accident + December 26th, 2008 + Debian developer + d-i mips porter + d-i build system developer + maintained genisovh + mips binutils and kernel hacker + qemu mips emulation + server issues keep server up or take it down? how long should it stay up?