aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-01-02 22:28:36 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-01-02 22:28:36 +0000
commit246b72ee9bc9515e9f79c317ed56bb7095157034 (patch)
tree49ec5afbb2bcbea1d5b90da1f8b69e11159207e3
parenta2575129fc52087019a784c484e770e70aa41987 (diff)
downloadpaludis-246b72ee9bc9515e9f79c317ed56bb7095157034.tar.gz
paludis-246b72ee9bc9515e9f79c317ed56bb7095157034.tar.xz
More docs
-rw-r--r--doc/Makefile.am14
-rw-r--r--doc/doc_portage_differences.doxygen90
-rw-r--r--doc/index.html.skel22
-rw-r--r--doc/portagedifferences.html.skel143
4 files changed, 167 insertions, 102 deletions
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 8d37adf..90b2a48 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -22,16 +22,17 @@ htmlfiles = \
faq.html \
migration.html \
cachefiles.html \
- configuration.html
+ configuration.html \
+ portagedifferences.html
EXTRA_DIST = doxygen.conf.in header.html footer.html paludis.css \
$(docfiles) $(tagfiles) htaccess \
news.html.skel index.html.skel changelog.html.skel licence.html.skel authors.html.skel \
faq.html.skel htmlheader.html htmlfooter.html migration.html.skel cachefiles.html.skel \
- configuration.html.skel
+ configuration.html.skel portagedifferences.html.skel
CLEANFILES = *~ news.html index.html changelog.html licence.html authors.html faq.html \
- migration.html cachefiles.html configuration.html \
+ migration.html cachefiles.html configuration.html portagedifferences.html \
cleannews cleanchangelog cleanauthors cleanfaqtoc
MAINTAINERCLEANFILES = Makefile.in $(tagfiles)
@@ -148,6 +149,13 @@ migration.html : migration.html.skel htmlheader.html htmlfooter.html
-e '/@FOOTER@/d' \
< $(srcdir)/migration.html.skel > migration.html
+portagedifferences.html : portagedifferences.html.skel htmlheader.html htmlfooter.html
+ sed -e '/@HEADER@/r htmlheader.html' \
+ -e '/@HEADER@/d' \
+ -e '/@FOOTER@/r htmlfooter.html' \
+ -e '/@FOOTER@/d' \
+ < $(srcdir)/portagedifferences.html.skel > portagedifferences.html
+
cachefiles.html : cachefiles.html.skel htmlheader.html htmlfooter.html
sed -e '/@HEADER@/r htmlheader.html' \
-e '/@HEADER@/d' \
diff --git a/doc/doc_portage_differences.doxygen b/doc/doc_portage_differences.doxygen
deleted file mode 100644
index 23d4b24..0000000
--- a/doc/doc_portage_differences.doxygen
+++ /dev/null
@@ -1,90 +0,0 @@
-/* vim: set ft=cpp tw=80 sw=4 et spell spelllang=en : */
-
-/**
-\page PortageDifferences How Paludis and Portage Differ
-
-This is not a complete list. It's not even vaguely near complete. Rather, it's
-a collection of lists of things of interest that are intentionally different
-between Paludis and its predecessor, Portage.
-
-\section PortageDifferencesEndUser For the End User
-
-Paludis isn't aimed at end users. Having said that, the following features
-would be relevant if it were:
-
-- A whole different configuration system, making it far easier to maintain
- multiple systems, some in chroots, with entirely separate configuration
- files.
-
-- Performance. Paludis is fast.
-
-- Low dependency bloat. No Python, no big external crypto libraries.
-
-- Security integration.
-
-- Multiple repository support, replacing Portage's highly limited overlays.
-
-- Simple per-(category, package, version, anything else) environment variable
- setting (e.g. CFLAGS).
-
-- Licence filtering.
-
-- Hook scripts, for running code after a certain action occurs.
-
-- Wrappers for econf, emake, wget etc to allow user defined command bindings
- (nice, ionice, taskset etc).
-
-- User definable package sets.
-
-- Repositories can deliver news items, warning the user of important changes
- before they take place.
-
-- Ability to sync from Subversion, Git.
-
-- Ability to uninstall packages with dependencies.
-
-\section PortageDifferencesEbuildDeveloper For the Ebuild Developer
-
-As well as the end user advantages, ebuild authors will benefit from:
-
-- :slot dependencies
-
-- ::repository dependencies
-
-- [use] dependencies
-
-- Circular dependency detection
-
-- Per package use masking, and from this per package use combination
- restrictions.
-
-- Profile-level use forcing, globally and per-package, and from this the
- ability to specify a default in cases where one of n USE flags must be
- enabled.
-
-- Default deep dependency resolution.
-
-- Support for -scm, -try versions.
-
-- Multiple inheritance for profiles.
-
-- Ability to install hook scripts.
-
-- Repository definable package sets.
-
-- Ability to deliver news items to the end user.
-
-\section PortageDifferencesProgrammer For the Programmer
-
-- Proper library / interface separation.
-
-- Reasonable internals documentation, via Doxygen.
-
-- Consistent interfaces for different repository types.
-
-- Modularity where it matters.
-
-- Test suites, to detect the impact of changes.
-
-*/
-
diff --git a/doc/index.html.skel b/doc/index.html.skel
index 37371cc..55b1ee0 100644
--- a/doc/index.html.skel
+++ b/doc/index.html.skel
@@ -16,18 +16,23 @@
<h2>For prospective users:</h2>
- <h2>For new and current users:</h2>
-
<ul>
- <li>The <a href="news.html">release notes</a> document major
- changes between releases. More detailed information is available
- in the <a href="changelog.html">changelog</a>.</li>
+ <li>An overview of <a href="portagedifferences.html">the differences between
+ Paludis and its predecessor, Portage</a>.</li>
+
+ <li>A <a href="migration.html">guide to migrating to
+ Paludis</a>.</li>
+ </ul>
+ <h2>For current users:</h2>
+
+ <ul>
<li>An <a href="faq.html">FAQ</a> is available. You should familiarise
yourself with this list before asking questions.</li>
- <li>There is a <a href="migration.html">guide to migrating to
- Paludis</a>.</li>
+ <li>The <a href="news.html">release notes</a> document major
+ changes between releases. More detailed information is available
+ in the <a href="changelog.html">changelog</a>.</li>
<li>There is <a href="configuration.html">documentation on the
configuration files</a> and <a href="cachefiles.html">the
@@ -35,8 +40,7 @@
<li><strong>Support</strong> is available via <code>#paludis</code> on
<code>irc.freenode.net</code> or the <a
- href="lists.html">mailing lists</a>. Support is not
- available via Gentoo's bugzilla or forums.</li>
+ href="lists.html">mailing lists</a>.</li>
</ul>
<h2>For developers:</h2>
diff --git a/doc/portagedifferences.html.skel b/doc/portagedifferences.html.skel
new file mode 100644
index 0000000..50ac8f5
--- /dev/null
+++ b/doc/portagedifferences.html.skel
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html lang="en" xml:lang="en">
+ <head>
+ <title>Paludis, the Other Package Mangler</title>
+ <link rel="stylesheet" href="paludis.css" type="text/css" />
+ </head>
+ <body>
+@HEADER@
+
+ <h1>Paludis, the Other Package Mangler</h1>
+
+ <h2>How Paludis and Portage Differ</h2>
+
+ <p>This is not a complete list. It's not even vaguely near complete. Rather, it's
+ a collection of lists of things of interest that are intentionally different
+ between Paludis and its predecessor, Portage.</p>
+
+ <h3>For the End User</h3>
+
+ <ul>
+
+ <li>A whole different <a
+ href="configurationfiles.html">configuration system</a>, making it far easier to maintain
+ multiple systems, some in chroots, with entirely separate configuration
+ files.</li>
+
+ <li>Performance. Paludis is <a
+ href="http://ciaranm.org/show_post.pl?post_id=61">fast</a>.</li>
+
+ <li>Low dependency bloat. No Python, no big external crypto libraries.</li>
+
+ <li>Security integration (<code>paludis --pretend --install
+ security</code>).</li>
+
+ <li>Multiple repository support, replacing Portage's highly limited
+ overlays.</li>
+
+ <li>Support for repositories of different types (e.g. CRAN).</li>
+
+ <li>Simple per-(category, package, version, anything else) environment variable
+ setting (e.g. CFLAGS).</li>
+
+ <li>Licence filtering.</li>
+
+ <li>Hook scripts, for running code after a certain action occurs.</li>
+
+ <li>Wrappers for econf, emake, wget etc to allow user defined command bindings
+ (nice, ionice, taskset etc).</li>
+
+ <li>User definable package sets.</li>
+
+ <li>Repositories can deliver news items, warning the user of important changes
+ before they take place.</li>
+
+ <li>Ability to sync from Subversion, Git, CVS etc.</li>
+
+ <li>Ability to <a href="faq.html#removeunneeded">uninstall packages with dependencies</a>, and safely remove
+ unused packages.</li>
+
+ <li>Ability to see a report of insecure, unused etc packages affecting the
+ system, either manually or automatically after a sync (<code>paludis
+ --report</code>).</li>
+
+ <li>Ability to <a href="faq.html#tree">see why a package is
+ really being pulled in</a>, replacing Portage's
+ misleading and incomplete tree support.</li>
+
+ <li>Much more fine grained control over dropping dependencies.</li>
+
+ <li>Ability to automatically reinstall scm (cvs, svn etc) packages after a
+ given interval (<code>paludis --dl-reinstall-scm weekly</code>).</li>
+
+ <li>Ability to <a href="faq.html#skipfirst">resume failed
+ compiles</a> with far more control than is offered
+ by Portage's limited <code>--resume</code> and
+ <code>--skipfirst</code>.</li>
+
+ <li>Ability to display additional information, such as USE flag
+ descriptions, when installing a package.</li>
+ </ul>
+
+ <h3>For the Ebuild Developer</h3>
+
+ <p>As well as the end user advantages, ebuild authors will benefit from:</p>
+
+ <ul>
+ <li><code>:slot</code> dependencies</li>
+
+ <li><code>::repository</code> dependencies</li>
+
+ <li><code>[use]</code> dependencies</li>
+
+ <li>Full and correct circular dependency detection</li>
+
+ <li>Per package use masking, and from this per package use combination
+ restrictions.</li>
+
+ <li>Profile-level use forcing, globally and per-package, and from this the
+ ability to specify a default in cases where one of n USE flags must be
+ enabled.</li>
+
+ <li>Default deep dependency resolution.</li>
+
+ <li>Support for -scm, -try versions.</li>
+
+ <li>Multiple inheritance for profiles.</li>
+
+ <li>Ability to install hook scripts.</li>
+
+ <li>Repository definable package sets.</li>
+
+ <li>Ability to deliver news items to the end user.</li>
+
+ <li>Ranged dep atom support.</li>
+
+ <li>Extensive and easily extendable QA checks.</li>
+
+ <li>Much more meaningful error messages, with proper context.</li>
+ </ul>
+
+ <h3>For the Programmer</h3>
+
+ <ul>
+ <li>Proper library / interface separation.</li>
+
+ <li>Reasonable internals documentation, via Doxygen.</li>
+
+ <li>Consistent interfaces for different repository types.</li>
+
+ <li>Modularity where it matters.</li>
+
+ <li>Test suites, to detect the impact of changes.</li>
+
+ <li>Type safe interfaces, for detecting errors at compile time.</li>
+
+ <li>A choice of programming language for external tools.</li>
+ </ul>
+
+@FOOTER@
+ </body>
+</html>
+