Skip to content

Commit

Permalink
Use localized FAQ file.
Browse files Browse the repository at this point in the history
  • Loading branch information
theory committed Apr 5, 2011
1 parent 78fff2f commit 61192cf
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 92 deletions.
2 changes: 1 addition & 1 deletion bin/pgxn_site.psgi
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

use 5.12.0;
use utf8;
use lib 'lib';
use blib;
use PGXN::Site::Router;

my $self = shift;
Expand Down
3 changes: 3 additions & 0 deletions lib/PGXN/Site/Locale/en/faq.mmd
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
Frequently Asked Questions
==========================

Releasing on PGXN
-----------------

Expand Down
92 changes: 1 addition & 91 deletions lib/PGXN/Site/Templates.pm
Original file line number Diff line number Diff line change
Expand Up @@ -1159,97 +1159,7 @@ template faq => sub {
id is 'info';
div {
class is 'gradient';
h1 { T 'Frequently Asked Questions' };
h2 { T 'Releasing on PGXN' }
dl {
dt { T q{What's allowed to be released on PGXN?} };
dd {
p { outs_raw 'Open-source PostgreSQL extension release packages. The <a href="http://manager.pgxn.org/howto">How To</a> documents the contents of such packages. Following the <a href="http://www.cpan.org/misc/ZCAN.html">CPAN example</a>, “no commercial software of any kind, not even share/guilt/donateware, will be allowed…any other policy would be open to nitpicking, or maybe even legal challenges.”'};
}
dt { T 'WTF is an "extension"?' };
dd {
p { outs_raw 'An extension is a piece of software that adds functionality to PostgreSQL itself. Examples are data types (<a href="http://www.postgresql.org/docs/current/static/citext.html">citext</a>, <a href="http://www.postgresql.org/docs/current/static/hstore.html">period</a>), utilities (<a href="http://www.postgresql.org/docs/current/static/dblink.html">dblink</a>, <a href="/extension/pgtap">pgTAP</a>), and procedural languages (<a href="http://www.postgresql.org/docs/current/static/plperl.html">PL/Perl, <a href="http://www.joeconway.com/plr/">PL/R</a>), among others. See <a href="http://www.postgresql.org/docs/8.4/static/extend.html">Extending SQL</a> for details. An extension is <em>not</em> a piece of software designed to run on top of PostgreSQL (<a href="http://www.bricolagecms.org/">Bricolage</a>, <a href="http://drupal.org/">Drupal</a>).' };
};
dt { T q{What's not allowed to be released on PGXN?} };
dd {
p { outs_raw 'Non-package files (that is, files that are not tarballs, bzip-balls, or zip archives), closed-source distributions, and distributions with no license.' };
};
dt { T 'Who can release on PGXN?' };
dd { p { 'Any registered user.' } };
dt { T 'Who can register for PGXN?' };
dd {
p { 'Anyone who applies. Such registrations will be approved by volunteers, but we’re usually pretty quick to respond to requests.' };
};
dt { T 'So how do I apply?' };
dd {
p { outs_raw 'Head on over to <a href="http://manager.pgxn.org/">PGXN Manager</a> and hit the “<a href="http://manager.pgxn.org/account/register">Request Account</a>” link. Once you’ve signed up, unless you’re obviously a <a href="http://trolluniversity.com/">troll</a>, your account will be quickly approved.' };
};
dt { T 'Okay, I have an account and want to release an extension. Is there a release approval process?' };
dd {
p { outs_raw 'Short answer: No, because PGXN needs to <a href="http://en.wikipedia.org/wiki/KISS_principle">KISS</a>. Longer answer: No. Again following the <a href="http://www.cpan.org/misc/ZCAN.html">CPAN example</a>, PGXN “will stay an open and free forum, where the authors decide what they upload. Any further selection belongs to different fora.” This is because “<a href="http://use.perl.org/comments.pl?sid=9630&cid=14713">the first goal</a> of PGXN is to make it easy to submit code and redistribute it. Ease of use and quality control are not the central problems [it] tries to solve.” Frankly, moderation of releases is a significant reason that other communities have failed to duplicate the success of CPAN.' }
};
dt { T 'Great, so how do I create an extension distribution and release it?' };
dd {
p { outs_raw 'Have a look at the <a href="http://manager.pgxn.org/howto">How To</a> for all the details.'}
};
dt { T 'How is PGXN different from pgFoundry?' };
dd {
p { outs_raw '<a href="http://www.pgfoundry.org/">pgFoundry</a> is for project hosting and includes SCM, issue tracking, mailing lists, web hosting, and mirrored download support for any project related to PostgreSQL. PGXN is for extensions distribution and mirroring, easy downloading and installation, documentation and metadata, and searching and reporting. The only thing in common with pgFoundry is uploading release packages. They otherwise serve very different purposes (project management vs. distribution and exposure).'};
};
dt { T 'How does PGXN make it easy to distinguish the garbage from the viable extensions?' };
dd {
p { outs_raw 'The first step is the PGXN search engine, accessible via the <a href="/">home page</a>, which will allow you to find extensions relevant to you and to read their documentation. This will “often [be] enough to distinguish the good stuff from the crap,” as Robert Haas <a href="http://archives.postgresql.org/pgsql-www/2010-01/msg00057.php">says</a>. As more extensions are released on PGXN with competing features and functionality, the addition of ratings features and dedicated testing will also make it easier to evaluate competing options.' };
};

};

h2 { 'PGXN Client' };
dl {
dt { T 'Is there a command-line client for installing extensions from PGXN?' };
dd {
p { 'Not yet, but soon. Hopefully in June, assuming that a mini-hackathon at PGCon is fruitful.' };
};
dt { T 'How will the command-line client work?' };
dd {
p { outs_raw 'It will use the JSON-based API available on every PGXN mirror to find, download, build, and install extensions. It will rely on <a href="http://www.postgresql.org/docs/current/static/xfunc-c.html#XFUNC-C-PGXS">PGXS</a> to do the heavy lifting.' };
};
dt { T 'What about Windows?' };
dd {
p { outs_raw 'The PGXN client will always follow the lead of the PostgreSQL core on installing extensions. If support for installing extensions on Windows improves such that a compiler is no longer required, the PGXN client will be modified as appropriate to take advantage of it. This applies not specifically to Windows, but to the ability of the core installer (or any future community-supported installer) to work on <em>any</em> platform.' };
};
dt { T 'What kind of security does PGXN have?' };
dd {
p { 'Each release package has an accompanying SHA1 hash that the PGXN client will verify before installing an extension.' };
};
};

h2 { T 'Contributing to PGXN' }
dl {
dt { T q{Under what license is PGXN's source code distributed?} };
dd {
p { outs_raw '<a href="http://www.postgresql.org/about/licence">The PostgreSQL License</a>. Note that the actual extensions themselves may be under any open source license, according to their authors.' };
};
dt { T 'Can other people contribute to PGXN?' };
dd {
p { 'Definitely! Contributions and help with refining the specification are very welcome. Major code contributions may be funded out of the PGXN fund based on circumstances. Any contributions must be submitted under The PostgreSQL License.' };
};
dt { T 'Who owns and runs PGXN?' };
dd {
p { outs_raw 'Currently, PGXN is hosted on a box owned by <a href="http://www.kineticode.com/">Kineticode</a>, using bandwidth provided by <a href="http://www.commandprompt.com/">Command Prompt</a>. Hopefully the PostgreSQL.org Web Team eventuall run PGXN on community servers. If they choose not to administrate it, PGXN will be run on one or more servers to be contributed to the PostgreSQL Fund at <a href="http://www.spi-inc.org/">SPI, Inc.</a> In any case, the PGXN master index and server will be owned by a PostgreSQL-related nonprofit organization.' };
};
dt { T 'Where is the PGXN source code hosted?' };
dd {
p { outs_raw '<a href="http://github.com/pgxn/">On GitHub</a>. Please feel free to fork and send pull requests!' };
};
dt { T 'What language is PGXN written in?' };
dd {
p { outs_raw 'Mostly Perl. The database used by <a href="http://manager.pgxn.org/">PGXN Manager</a> is written in SQL, PL/pgSQL, and PL/Perl (and even uses <a href="/extension/semver">semver</a> a <a href="http://semver.org/">semantic version</a> data type written in C and distributed right here on PGXN!)' };
};
dt { T 'Is there an API?' };
dd {
p { 'Yes! We’re working on the documentation for it now.' };
};
};
outs_raw $l->from_file('faq.html');
};
};
} $req, {
Expand Down

0 comments on commit 61192cf

Please sign in to comment.