aboutsummaryrefslogtreecommitdiff
path: root/doc/faq/general.html.part
blob: 6a5fa38fcb180c1f254f694ee3a02f1ec715a6a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<!-- vim: set tw=120 ft=html sw=4 sts=4 et : -->

<h1>FAQ: General Questions</h1>

<ul>
    <li><a href="general.html#ihaveaquestion">I have an Unanswered Question</a></li>
    <li><a href="general.html#why">Why not fix Portage?</a></li>
    <li><a href="general.html#cplusplus">Why C++?</a></li>
    <li><a href="general.html#butcplusplusis">But C++ is ...</a></li>
    <li><a href="general.html#contribute">Contributing</a></li>
    <li><a href="general.html#compilers">Known compiler issues</a></li>
    <li><a href="general.html#verb">What term should I use to mean "to install a package using Paludis"?</a></li>
</ul>

<h2 id="ihaveaquestion">I have an Unanswered Question</h2>

<p>If you've checked the documentation, and your question really isn't answered,
you should ask it in one of these places:</p>

<ul>
    <li>The <code>#paludis</code> channel on <code>irc.freenode.net</code></li>
    <li>The <a href="../overview/contact.html">paludis-user mailing list</a></li>
    <li>The <a href="http://paludis.exherbo.org/trac/">bug tracker</a> will probably
    also be useful</li>
</ul>

<p>You are encouraged to submit an entry for this document once your question
has been answered.</p>

<h2 id="why">Why not fix Portage?</h2>

<p>The Portage codebase is too broken to be fixed. It is a huge mess of
spaghetti procedural code with no underlying design. It relies upon weird
quirks in its own behaviour all over the place, so any change is liable to
cause huge breakage in seemingly unrelated areas. It is almost entirely
undocumented, and the internal names are perverse and often do not reflect what
the code now does.</p>

<h2 id="cplusplus">Why C++?</h2>

<p>Because we don't have the time or the manpower to write it in C.</p>

<h2 id="butcplusplusis">But C++ is ...</h2>

<p>No it isn't. Whoever told you that was either trolling or ignorant.</p>

<h2 id="contribute">Contributing</h2>

<p>Contributions to Paludis are welcome:</p>

<ul>
    <li>Patches can be submitted via <a
        href="http://paludis.exherbo.org/trac/">trac</a>. It's best to
    discuss ideas before spending too much time on the code, because we don't
    have any qualms about rejecting things we think are a bad idea.</li>

    <li>We could probably use some more documentation. Again, ask first.</li>

    <li>Translations aren't currently possible. We don't have anything against
    internationalisation in principle, but as we're not gettextised it'll be a
    fair bit of effort.</li>
</ul>

<h2 id="compilers">Known compiler issues</h2>

<p>The primary supported compiler for building Paludis is GCC, version 4.4 or later. Older versions of GCC will not
work, since we make use of various C++0x features.</p>

<p>At the time of writing, ICC does not appear to provide sufficient C++0x support, and LLVM's clang rejects the
<code>type_traits</code> header supplied by <code>libstdc++</code>.</p>

<h2 id="verb">What term should I use to mean "to install a package using Paludis"?</h2>

<p>"Install".</p>