mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-07-06 04:19:41 +01:00
This commit was manufactured by cvs2svn to create tag 'v5_1_1'.
git-svn-id: http://svn.linuxfromscratch.org/LFS/tags/v5_1_1/BOOK@3757 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
673b0d84ba
commit
2ec64b3132
23
INSTALL
23
INSTALL
@ -9,7 +9,7 @@ document. Instead, you need to read the LFS Editor's Manual. See the LFS
|
||||
website at http://www.linuxfromscratch.org for more information.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
If all you want to do is convert XML to HTML perform the following:
|
||||
If all you want to do is convert XML to HTML install the following:
|
||||
|
||||
* libxml2
|
||||
- http://www.linuxfromscratch.org/blfs/view/cvs/general/libxml2.html
|
||||
@ -18,15 +18,26 @@ If all you want to do is convert XML to HTML perform the following:
|
||||
- http://www.linuxfromscratch.org/blfs/view/cvs/general/libxslt.html
|
||||
|
||||
* DocBook DTD
|
||||
- http://www.linuxfromscratch.org/blfs/view/cvs/pst/DocBook.html
|
||||
- http://www.linuxfromscratch.org/blfs/view/cvs/pst/xml.html
|
||||
|
||||
* DocBook XSL Stylesheets
|
||||
- http://www.linuxfromscratch.org/blfs/view/cvs/pst/docbook-xsl.html
|
||||
|
||||
* HTML Tidy - http://tidy.sourceforge.net/src/tidy_src.tgz
|
||||
|
||||
/bin/sh build/gnuauto/setup.sh &&
|
||||
./configure --prefix=/usr &&
|
||||
make &&
|
||||
su -c "make install"
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
If you want to be able to convert the book into PDF as well, then you will need
|
||||
the FOP package. This takes an XSL-FO file (created with libxslt which you
|
||||
already installed) and converts it to PDF:
|
||||
already installed) and converts it to PDF. Additionally you will need
|
||||
the Java Advanced Imaging (JAI) library from
|
||||
http://java.sun.com/products/java-media/jai/downloads/download-1_1_2.html
|
||||
(you'll need either the JDK .bin or JRE .bin file dependent on your
|
||||
particular Java setup).
|
||||
|
||||
- http://www.apache.org/dist/xml/fop/fop-0.20.5-bin.tar.gz
|
||||
|
||||
@ -36,4 +47,10 @@ already installed) and converts it to PDF:
|
||||
tar -xzvf /usr/src/fop-0.20.5-bin.tar.gz &&
|
||||
mv fop-0.20.5 fop
|
||||
|
||||
Install JAI by running:
|
||||
|
||||
chmod u+x /path/to/jai-1_1_2-lib-linux-i586-jdk.bin &&
|
||||
cd $JAVA_HOME &&
|
||||
/path/to/jai-1_1_2-lib-linux-i586-jdk.bin
|
||||
|
||||
Now set JAVA_HOME, FOP_HOME and PATH to values appropriate to your system.
|
||||
|
42
Makefile
42
Makefile
@ -1,29 +1,47 @@
|
||||
BASEDIR=~/lfs-book/
|
||||
BASEDIR=~/lfs-book
|
||||
CHUNK_QUIET=0
|
||||
PDF_OUTPUT=LFS-BOOK.pdf
|
||||
PRINT_OUTPUT=LFS-BOOK-PRINTABLE.pdf
|
||||
NOCHUNKS_OUTPUT=LFS-BOOK.html
|
||||
|
||||
lfs:
|
||||
xsltproc --xinclude --nonet -stringparam base.dir $(BASEDIR) \
|
||||
stylesheets/lfs-chunked.xsl index.xml
|
||||
xsltproc --xinclude --nonet -stringparam chunk.quietly $(CHUNK_QUIET) \
|
||||
-stringparam base.dir $(BASEDIR)/ stylesheets/lfs-chunked.xsl \
|
||||
index.xml
|
||||
|
||||
if [ ! -e $(BASEDIR)stylesheets ]; then \
|
||||
mkdir -p $(BASEDIR)stylesheets; \
|
||||
if [ ! -e $(BASEDIR)/stylesheets ]; then \
|
||||
mkdir -p $(BASEDIR)/stylesheets; \
|
||||
fi;
|
||||
cp stylesheets/lfs.css $(BASEDIR)stylesheets
|
||||
cp stylesheets/lfs.css $(BASEDIR)/stylesheets
|
||||
|
||||
if [ ! -e $(BASEDIR)images ]; then \
|
||||
mkdir -p $(BASEDIR)images; \
|
||||
if [ ! -e $(BASEDIR)/images ]; then \
|
||||
mkdir -p $(BASEDIR)/images; \
|
||||
fi;
|
||||
cp /usr/share/xml/docbook/xsl-stylesheets-1.65.1/images/*.png \
|
||||
$(BASEDIR)images
|
||||
cd $(BASEDIR); sed -i -e "s@../stylesheets@stylesheets@" \
|
||||
$(BASEDIR)/images
|
||||
cd $(BASEDIR)/; sed -i -e "s@../stylesheets@stylesheets@" \
|
||||
index.html part1.html part2.html part3.html longindex.html
|
||||
cd $(BASEDIR); sed -i -e "s@../images@images@g" \
|
||||
cd $(BASEDIR)/; sed -i -e "s@../images@images@g" \
|
||||
index.html part1.html part2.html part3.html longindex.html
|
||||
|
||||
sh goTidy $(BASEDIR)/
|
||||
|
||||
pdf:
|
||||
xsltproc --xinclude --nonet --output lfs.fo stylesheets/lfs-pdf.xsl \
|
||||
index.xml
|
||||
sed -i -e "s/inherit/all/" lfs.fo
|
||||
fop.sh lfs.fo lfs.pdf
|
||||
fop.sh lfs.fo $(PDF_OUTPUT)
|
||||
|
||||
print:
|
||||
xsltproc --xinclude --nonet --output lfs-print.fo \
|
||||
stylesheets/lfs-print.xsl index.xml
|
||||
sed -i -e "s/inherit/all/" lfs-print.fo
|
||||
fop.sh lfs-print.fo $(PRINT_OUTPUT)
|
||||
|
||||
nochunks:
|
||||
xsltproc --xinclude --nonet --output $(NOCHUNKS_OUTPUT) \
|
||||
stylesheets/lfs-nochunks.xsl index.xml
|
||||
tidy -config tidy.conf $(NOCHUNKS_OUTPUT) || true
|
||||
|
||||
validate:
|
||||
xmllint --noout --nonet --xinclude --postvalid index.xml
|
||||
|
2
README
2
README
@ -10,7 +10,7 @@ various other formats.
|
||||
XML to XHTML:
|
||||
-------------
|
||||
|
||||
BASEDIR=/path/to/output/location make
|
||||
make BASEDIR=/path/to/output/location
|
||||
|
||||
|
||||
XML to PDF:
|
||||
|
@ -23,11 +23,12 @@ consult the FAQ (Frequently Asked Questions) at
|
||||
<title>IRC</title>
|
||||
|
||||
<para>Several members of the LFS community offer assistance on our community
|
||||
IRC (Internet Relay Chat) server. Before you utilize this mode of support, we
|
||||
IRC (Internet Relay Chat) network. Before you utilize this mode of support, we
|
||||
ask that you've at least checked the LFS FAQ (see above) and the mailing list
|
||||
archives (see below) for the answer to your question. You can find the IRC
|
||||
server at <emphasis>irc.linuxfromscratch.org</emphasis> port 6667. The
|
||||
support channel is named #LFS-support.</para>
|
||||
network at <emphasis>irc.linuxfromscratch.org</emphasis> or
|
||||
<emphasis>irc.linux-phreak.net</emphasis> port 6667. The support channel is
|
||||
named #LFS-support.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -27,10 +27,11 @@ first a summary, then a detailed log.</para>
|
||||
<listitem><para>file-4.09</para></listitem>
|
||||
<listitem><para>gcc-3.3.3</para></listitem>
|
||||
<listitem><para>gettext-0.14.1</para></listitem>
|
||||
<listitem><para>glibc-2.3.3-lfs-5.1</para></listitem>
|
||||
<listitem><para>grub-0.94</para></listitem>
|
||||
<listitem><para>kbd-1.12</para></listitem>
|
||||
<listitem><para>less-382</para></listitem>
|
||||
<listitem><para>lfs-bootscripts-2.0.4</para></listitem>
|
||||
<listitem><para>lfs-bootscripts-2.0.5</para></listitem>
|
||||
<listitem><para>libtool-2.5.6</para></listitem>
|
||||
<listitem><para>linux-2.4.26</para></listitem>
|
||||
<listitem><para>man-pages-1.66</para></listitem>
|
||||
@ -73,6 +74,46 @@ first a summary, then a detailed log.</para>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>June 2, 2004 [matt]: Prologue - acknowledgments, Added Thomas
|
||||
Reitelbach as the German translator</para></listitem>
|
||||
<listitem><para>May 30, 2004 [matt]: Chapter 6 - vim, corrected the optional
|
||||
command for invoking the testsuite</para></listitem>
|
||||
<listitem><para>May 23, 2004 [matt]: Chapter 6 - kbd, removed the hardcoded path
|
||||
to the kernel source directory</para></listitem>
|
||||
<listitem><para>May 19, 2004 [matt]: Chapter 6 - mktemp, added instruction to
|
||||
install tempfile wrapper</para></listitem>
|
||||
<listitem><para>May 18, 2004 [manuel]: Chapter 3 - Updated the list of mirrors
|
||||
for Glibc package. Fixed several textual bugs.</para></listitem>
|
||||
|
||||
<listitem><para>May 17th, 2004 [winkie]: Chapter 5 - Pass
|
||||
<quote>AUTOCONF=no</quote> to the Glibc build. This prevents autoconf from
|
||||
causing us problems.</para></listitem>
|
||||
|
||||
<listitem><para>May 16th, 2004 [jeremy]: Chapter 9 - Added a brief paragraph
|
||||
to the rebooting system page to discuss packages which might be useful to
|
||||
add prior to rebooting to the new system</para></listitem>
|
||||
|
||||
<listitem><para>May 15th, 2004 [matt]: Chapter 6 - Added a clearer warning that
|
||||
make_devices needs to be customised</para></listitem>
|
||||
|
||||
<listitem><para>May 14th, 2004 [matt]: Chapter 3 - Added glibc's md5sum</para>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>May 14th, 2004 [matt]: Chapters 5 & 6 - Upgraded to
|
||||
glibc-2.3.3-lfs-5.1</para></listitem>
|
||||
|
||||
<listitem><para>May 11th, 2004 [jeremy]: Prologue - Updated the list of
|
||||
active staff in the project.</para></listitem>
|
||||
|
||||
<listitem><para>May 9th, 2004 [winkie]: Chapter 6 - Removed unused and broken
|
||||
entries from <filename>nsswitch.conf</filename>.</para></listitem>
|
||||
|
||||
<listitem><para>May 7th, 2004 [matt]: Merged Manuel's lfs-xsl-0.9 patches</para>
|
||||
</listitem>
|
||||
<listitem><para>May 7th, 2004 [matt]: Fixed README error regarding invocation of
|
||||
`make`</para></listitem>
|
||||
<listitem><para>May 3rd, 2004: LFS 5.1-pre2 released</para></listitem>
|
||||
|
||||
<listitem><para>May 2nd, 2004 [matt]: Quoted chroot commands in chapter 6 (bug
|
||||
#818).</para></listitem>
|
||||
<listitem><para>May 2nd, 2004 [matt]: Removed description of the now
|
||||
|
@ -116,7 +116,7 @@ Make (&make-version;) - 899 KB:
|
||||
<ulink url="&freshmeat;gnumake/"/>
|
||||
|
||||
Make_devices (&makedev-version;) - 20 KB:
|
||||
<ulink url="&lfs-root;~alex/make_devices-1.2.bz2"/>
|
||||
<ulink url="&http-down;"/>
|
||||
|
||||
Man (&man-version;) - 196 KB:
|
||||
<ulink url="&freshmeat;man/"/>
|
||||
@ -191,26 +191,29 @@ that may have older versions available is <ulink
|
||||
url="ftp://gaosu.rave.org/pub/linux/lfs/"/>.</para></note>
|
||||
|
||||
<note><para>2) As of this writing, the Glibc maintainers have decided in their
|
||||
wisdom not to make available new release tarballs for download. The only way to
|
||||
obtain the current Glibc release from pristine upstream sources is to pull it
|
||||
from the Glibc CVS (Concurrent Versioning System) repository. The following commands will download the current
|
||||
release and make a tarball from it:</para>
|
||||
wisdom not to make available new release tarballs for download. As
|
||||
such, the LFS toolchain team have provided a tarball of glibc sources
|
||||
pulled from Glibc CVS (Concurrent Versioning System) and generated a
|
||||
tarball from them, including patches where necessary.</para>
|
||||
|
||||
<screen><userinput>cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc \
|
||||
export -d glibc-2.3.3-20031202 -D "2003-12-02 UTC" libc
|
||||
tar jcvf glibc-2.3.3-20031202.tar.bz2 glibc-2.3.3-20031202</userinput></screen>
|
||||
<para>We have made this tarball available courtesy of the generous LFS mirror
|
||||
sites:</para>
|
||||
|
||||
<para>Alternatively, we've made our own tarball available which you can
|
||||
download courtesy of the generous LFS mirror sites.</para>
|
||||
|
||||
<literallayout><ulink url="ftp://gaosu.rave.org/pub/linux/lfs/packages/conglomeration/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://lfs.mirror.intermedia.com.sg/packages/glibc/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="ftp://lfs.mirror.intermedia.com.sg/pub/lfs/glibc/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://dl.lfs.fredan.org/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://packages.lfs-es.org/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://mirror.averse.net/lfs-packages/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="ftp://mirror.averse.net/pub/lfs-packages/&glibc-version;.tar.bz2"/>
|
||||
<ulink url="ftp://ftp.lfs-matrix.de/lfs/packages/conglomeration/&glibc-version;.tar.bz2"/></literallayout>
|
||||
<literallayout><ulink
|
||||
url="ftp://gaosu.rave.org/pub/linux/lfs/packages/conglomeration/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink
|
||||
url="ftp://lfs.mirror.intermedia.com.sg/pub/lfs/lfs-packages/conglomeration/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://packages.lfs-es.org/glibc/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://mirror.averse.net/lfs-packages/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink
|
||||
url="ftp://mirror.averse.net/pub/lfs-packages/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink
|
||||
url="ftp://ftp.lfs-matrix.de/lfs-packages/conglomeration/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink url="ftp://ftp.sg.linuxfromscratch.org/pub/lfs-packages/glibc-&glibc-version;.tar.bz2"/>
|
||||
<ulink url="http://ftp.sg.linuxfromscratch.org/glibc-&glibc-version;.tar.bz2"/></literallayout>
|
||||
<para>If you wish to verify the integrity of the tarball, its MD5 digest
|
||||
is <computeroutput>cd11fabdf5162ad68329e7b28b308278</computeroutput>, which can
|
||||
be verified using <command>md5sum</command>.</para>
|
||||
</note>
|
||||
|
||||
</sect1>
|
||||
|
@ -31,7 +31,7 @@ Fortunately, most build times are much shorter than the one of Binutils.</para>
|
||||
<para>Note that if the system compiler on your host is GCC-2 based, the SBUs
|
||||
listed may end up being somewhat understated. This is because the SBU is based
|
||||
on the very first package, compiled with the old GCC, while the rest of the
|
||||
system is compiled with the newer GCC-3.3.2 which is known to be
|
||||
system is compiled with the newer GCC-&gcc-version; which is known to be
|
||||
approximately 30% slower.</para>
|
||||
|
||||
<para>Also note that SBUs don't work well for SMP-based machines. But if you're
|
||||
|
@ -7,13 +7,13 @@
|
||||
<title>Creating the $LFS/tools directory</title>
|
||||
<?dbhtml filename="creatingtoolsdir.html"?>
|
||||
|
||||
<para>All programs compiled in this chapter will be installed under <filename
|
||||
<para>All programs compiled in <xref linkend="chapter-temporary-tools"/> will be installed under <filename
|
||||
class="directory">$LFS/tools</filename> to keep them separate from the
|
||||
programs compiled in the next chapter. The programs compiled here are only
|
||||
programs compiled in <xref linkend="chapter-building-system"/>. The programs compiled here are only
|
||||
temporary tools and won't be a part of the final LFS system and by keeping them
|
||||
in a separate directory, we can later easily throw them away. This also
|
||||
helps prevent them from ending up in your host's production directories
|
||||
(easy to do in Chapter 5), which could be a very bad thing.</para>
|
||||
(easy to do in <xref linkend="chapter-temporary-tools"/>, which could be a very bad thing.</para>
|
||||
|
||||
<para>Later on you might wish to search through the binaries of your system to
|
||||
see what files they make use of or link against. To make this searching easier
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/binutils.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 1.0 SBU
|
||||
&diskspace; 194 MB</screen>
|
||||
&diskspace; 170 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/binutils.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
<secondary>tools, pass 2</secondary></indexterm>
|
||||
|
||||
<screen>&buildtime; 1.5 SBU
|
||||
&diskspace; 108 MB</screen>
|
||||
&diskspace; 35.6 MB</screen>
|
||||
|
||||
|
||||
<sect2>
|
||||
|
@ -28,7 +28,7 @@
|
||||
|
||||
<para>This package has an issue when compiled against versions of glibc
|
||||
later than 2.3.2. Some of the Coreutils utilities (such as
|
||||
(<command>head</command>, <command>tail</command> and <command>sort</command>)
|
||||
<command>head</command>, <command>tail</command> and <command>sort</command>)
|
||||
will reject their traditional syntax, a syntax that has been in use for
|
||||
approximately 30 years. This old syntax is so pervasive that compatibility
|
||||
should be preserved until the many places where it is used can be
|
||||
|
@ -12,7 +12,7 @@
|
||||
<para>The DejaGnu package contains a framework for testing other programs.</para>
|
||||
|
||||
<screen>&buildtime; 0.1 SBU
|
||||
&diskspace; 8.6 MB</screen>
|
||||
&diskspace; 6.1 MB</screen>
|
||||
|
||||
<para>For its installation Dejagnu depends on: Bash, Binutils, Coreutils, Diffutils,
|
||||
GCC, Glibc, Grep, Make, Sed.</para>
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/findutils.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.2 SBU
|
||||
&diskspace; 7.6 MB</screen>
|
||||
&diskspace; 7.5 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/findutils.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gawk.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.2 SBU
|
||||
&diskspace; 17 MB</screen>
|
||||
&diskspace; 16.9 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gawk.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gcc.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 4.4 SBU
|
||||
&diskspace; 300 MB</screen>
|
||||
&diskspace; 411.7 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gcc.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
<secondary>tools, pass 2</secondary></indexterm>
|
||||
|
||||
<screen>&buildtime; 11.0 SBU
|
||||
&diskspace; 274 MB</screen>
|
||||
&diskspace; 332.7 MB</screen>
|
||||
|
||||
|
||||
<sect2>
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gettext.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.5 SBU
|
||||
&diskspace; 55 MB</screen>
|
||||
&diskspace; 67.6 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gettext.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/glibc.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 11.8 SBU
|
||||
&diskspace; 800 MB</screen>
|
||||
&diskspace; 734.2 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/glibc.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
@ -39,7 +39,7 @@ cd ../glibc-build</userinput></screen>
|
||||
|
||||
<para>Next, prepare Glibc for compilation:</para>
|
||||
|
||||
<screen><userinput>../glibc-&glibc-version;-20031202/configure --prefix=/tools \
|
||||
<screen><userinput>../glibc-&glibc-version;/configure --prefix=/tools \
|
||||
--disable-profile --enable-add-ons=linuxthreads \
|
||||
--with-binutils=/tools/bin --with-headers=/tools/include \
|
||||
--without-gd --without-cvs</userinput></screen>
|
||||
@ -86,7 +86,7 @@ running the test suite.</para>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput>make</userinput></screen>
|
||||
<screen><userinput>make AUTOCONF=no</userinput></screen>
|
||||
|
||||
<para>Compilation is now complete. As mentioned earlier, we don't recommend
|
||||
running the test suites for the temporary system here in this chapter. If you
|
||||
@ -179,6 +179,7 @@ localedef -i en_HK -f ISO-8859-1 en_HK
|
||||
localedef -i en_PH -f ISO-8859-1 en_PH
|
||||
localedef -i en_US -f ISO-8859-1 en_US
|
||||
localedef -i es_MX -f ISO-8859-1 es_MX
|
||||
localedef -i fa_IR -f UTF-8 fa_IR
|
||||
localedef -i fr_FR -f ISO-8859-1 fr_FR
|
||||
localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
|
||||
localedef -i it_IT -f ISO-8859-1 it_IT
|
||||
|
@ -12,7 +12,7 @@
|
||||
<secondary>tools, headers</secondary></indexterm>
|
||||
|
||||
<screen>&buildtime; 0.1 SBU
|
||||
&diskspace; 186 MB</screen>
|
||||
&diskspace; 192.5 MB</screen>
|
||||
|
||||
|
||||
<sect2>
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/ncurses.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.7 SBU
|
||||
&diskspace; 26 MB</screen>
|
||||
&diskspace; 27.8 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/ncurses.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/sed.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.2 SBU
|
||||
&diskspace; 5.2 MB</screen>
|
||||
&diskspace; 5.9 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/sed.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/tar.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.2 SBU
|
||||
&diskspace; 10 MB</screen>
|
||||
&diskspace; 10.3 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/tar.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
<para>The Tcl package contains the Tool Command Language.</para>
|
||||
|
||||
<screen>&buildtime; 0.9 SBU
|
||||
&diskspace; 23 MB</screen>
|
||||
&diskspace; 22.7 MB</screen>
|
||||
|
||||
<para>Tcl installation depends on: Bash, Binutils, Coreutils, Diffutils,
|
||||
GCC, Glibc, Grep, Make, Sed.</para>
|
||||
|
@ -14,7 +14,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/texinfo.xml" xpointer="xpointer(/sect1/para[1])"/>
|
||||
|
||||
<screen>&buildtime; 0.2 SBU
|
||||
&diskspace; 16 MB</screen>
|
||||
&diskspace; 16.3 MB</screen>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/texinfo.xml" xpointer="xpointer(/sect1/para[2])"/>
|
||||
|
||||
|
@ -65,7 +65,7 @@ test from failing, then issue: <userinput>make check</userinput>.</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
|
||||
<para>Also install also the shared libraries:</para>
|
||||
<para>Also install the shared libraries:</para>
|
||||
|
||||
<screen><userinput>make install-libs</userinput></screen>
|
||||
|
||||
|
@ -42,7 +42,7 @@ cd ../glibc-build</userinput></screen>
|
||||
|
||||
<para>Now prepare Glibc for compilation:</para>
|
||||
|
||||
<screen><userinput>../glibc-&glibc-version;-20031202/configure --prefix=/usr \
|
||||
<screen><userinput>../glibc-&glibc-version;/configure --prefix=/usr \
|
||||
--disable-profile --enable-add-ons=linuxthreads \
|
||||
--libexecdir=/usr/lib --with-headers=/usr/include \
|
||||
--without-cvs</userinput></screen>
|
||||
@ -121,11 +121,11 @@ localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen>
|
||||
|
||||
<para>Finally, build the linuxthreads man pages:</para>
|
||||
|
||||
<screen><userinput>make -C ../glibc-&glibc-version;-20031202/linuxthreads/man</userinput></screen>
|
||||
<screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man</userinput></screen>
|
||||
|
||||
<para>And install these pages:</para>
|
||||
|
||||
<screen><userinput>make -C ../glibc-&glibc-version;-20031202/linuxthreads/man install</userinput></screen>
|
||||
<screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -149,17 +149,13 @@ passwd: files
|
||||
group: files
|
||||
shadow: files
|
||||
|
||||
publickey: files
|
||||
|
||||
hosts: files dns
|
||||
networks: files
|
||||
|
||||
protocols: db files
|
||||
services: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
|
||||
netgroup: db files
|
||||
protocols: files
|
||||
services: files
|
||||
ethers: files
|
||||
rpc: files
|
||||
|
||||
# End /etc/nsswitch.conf
|
||||
<userinput>EOF</userinput></screen>
|
||||
|
@ -60,8 +60,8 @@ with a series of short descriptions of these.</para>
|
||||
|
||||
<para>If you wish to keep track of which package installs what files, you may
|
||||
want to use a package manager. For a general overview of package managers have
|
||||
a look at <ulink url="&blfs-root;view/cvs/introduction/pkgmgt.html"/>. And for
|
||||
a package management method specifically geared towards LFS see
|
||||
a look at <ulink url="&blfs-root;view/cvs/introduction/important.html"/>. And
|
||||
for a package management method specifically geared towards LFS see
|
||||
<ulink url="&hints-root;more_control_and_pkg_man.txt"/>.</para>
|
||||
|
||||
</sect1>
|
||||
|
@ -73,7 +73,7 @@ source (you will have to repeat this command whenever you unpack a new
|
||||
kernel):</para>
|
||||
|
||||
<screen><userinput>loadkeys -m /usr/share/kbd/keymaps/defkeymap.map.gz > \
|
||||
/usr/src/linux-2.4.25/drivers/char/defkeymap.c</userinput></screen>
|
||||
<replaceable>[unpacked sources dir]</replaceable>/linux-&linux-version;/drivers/char/defkeymap.c</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -67,6 +67,10 @@ commented out. You should open <filename>make_devices</filename> in an editor
|
||||
and customize it to your needs. This takes some time, but is very simple. When
|
||||
you are satisfied, run the script to create the device files:</para>
|
||||
|
||||
<warning><para>Failure to properly edit the <command>make_devices</command> to
|
||||
match your systems's setup (eg. number of partitions) can lead to boot errors.
|
||||
</para></warning>
|
||||
|
||||
<screen><userinput>cd /dev
|
||||
./make_devices</userinput></screen>
|
||||
|
||||
|
@ -47,7 +47,8 @@ library.</para></listitem>
|
||||
|
||||
<para>Now install it:</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
<screen><userinput>make install</userinput>
|
||||
<userinput>make install-tempfile</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -45,7 +45,7 @@ echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h</userinput><
|
||||
<screen><userinput>make</userinput></screen>
|
||||
|
||||
<para>To test the results, you can issue:
|
||||
<userinput>make check</userinput>. However, this test suite outputs a lot of
|
||||
<userinput>make test</userinput>. However, this test suite outputs a lot of
|
||||
seemingly garbage characters to the screen, and this can wreak havoc with the
|
||||
settings of the current terminal. Therefore the running of the test suite here
|
||||
is strictly optional.</para>
|
||||
|
@ -72,7 +72,7 @@ the <quote>File systems</quote> menu and is normally enabled by default.</para>
|
||||
<filename>/etc/modules.conf</filename> file. Information pertaining
|
||||
to modules and to kernel configuration in general may be found in the
|
||||
kernel documentation, which is found in the
|
||||
<filename>linux-2.4.25/Documentation</filename> directory. The
|
||||
<filename>linux-&linux-version;/Documentation</filename> directory. The
|
||||
modules.conf man page and the kernel HOWTO at
|
||||
<ulink url="http://www.tldp.org/HOWTO/Kernel-HOWTO.html"/> may also be of
|
||||
interest to you.</para>
|
||||
@ -130,7 +130,7 @@ person would have write access to the kernel source.</para>
|
||||
|
||||
<para>If you are going to keep the kernel source tree around, you may want to
|
||||
run <userinput>chown -R 0:0</userinput> on the
|
||||
<filename>linux-2.4.25</filename> directory to ensure all files are
|
||||
<filename>linux-&linux-version;</filename> directory to ensure all files are
|
||||
owned by user <emphasis>root</emphasis>.</para>
|
||||
|
||||
</sect2>
|
||||
|
@ -8,7 +8,22 @@
|
||||
<?dbhtml filename="reboot.html"?>
|
||||
|
||||
<para>Now that all of the software has been installed, it is time to reboot
|
||||
your computer. First exit from the chroot environment:</para>
|
||||
your computer. However, you should be aware of a few things. The system you
|
||||
have created in this book is quite minimal, and most likely will not have
|
||||
the functionality you would need to be able to continue forward. By installing
|
||||
a few extra packages from the BLFS book while still in our current chroot
|
||||
environment, you can leave yourself in a much better position to continue on
|
||||
once you reboot into your new LFS installation. Installing a text mode web
|
||||
browser, such as Lynx, you can easily view the BLFS book in one virtual
|
||||
terminal, while building packages in another. The GPM package will also allow
|
||||
you to perform copy/paste actions in your virtual terminals. Lastly, if you
|
||||
are in a situation where static IP configuration does not meet your networking
|
||||
requirements, installing packages such as dhcpcd or ppp at this point might
|
||||
also be useful.</para>
|
||||
|
||||
|
||||
<para>Now that we have said that, lets move on to booting our shiny new LFS
|
||||
installation for the first time! First exit from the chroot environment:</para>
|
||||
|
||||
<screen><userinput>logout</userinput></screen>
|
||||
|
||||
|
12
general.ent
12
general.ent
@ -1,14 +1,14 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!ENTITY version "CVS-2004-05-02">
|
||||
<!ENTITY releasedate "May 2, 2004">
|
||||
<!ENTITY milestone "5.1">
|
||||
<!ENTITY version "&milestone;">
|
||||
<!ENTITY releasedate "June 5th, 2004">
|
||||
<!ENTITY milestone "5.1.1">
|
||||
|
||||
<!ENTITY lfs-root "http://www.linuxfromscratch.org/">
|
||||
<!ENTITY blfs-root "&lfs-root;blfs/">
|
||||
<!ENTITY faq-root "&lfs-root;faq/">
|
||||
<!ENTITY hints-root "&lfs-root;hints/downloads/files/">
|
||||
<!ENTITY hints-index "&lfs-root;hints/list.html">
|
||||
<!ENTITY patches-root "&lfs-root;patches/lfs/cvs/">
|
||||
<!ENTITY patches-root "&lfs-root;patches/lfs/&version;/">
|
||||
<!ENTITY wiki-root "http://wiki.linuxfromscratch.org/">
|
||||
<!ENTITY http-down "http://downloads.linuxfromscratch.org/">
|
||||
<!ENTITY freshmeat "http://freshmeat.net/projects/">
|
||||
@ -21,7 +21,7 @@
|
||||
<!ENTITY bash-version "2.05b">
|
||||
<!ENTITY binutils-version "2.14">
|
||||
<!ENTITY bison-version "1.875">
|
||||
<!ENTITY bootscripts-version "2.0.4">
|
||||
<!ENTITY bootscripts-version "2.0.5">
|
||||
<!ENTITY bzip2-version "1.0.2">
|
||||
<!ENTITY coreutils-version "5.2.1">
|
||||
<!ENTITY dejagnu-version "1.4.4">
|
||||
@ -36,7 +36,7 @@
|
||||
<!ENTITY gcc-2953-version "2.95.3">
|
||||
<!ENTITY gcc-version "3.3.3">
|
||||
<!ENTITY gettext-version "0.14.1">
|
||||
<!ENTITY glibc-version "2.3.3">
|
||||
<!ENTITY glibc-version "2.3.3-lfs-5.1">
|
||||
<!ENTITY grep-version "2.5.1">
|
||||
<!ENTITY groff-version "1.19">
|
||||
<!ENTITY grub-version "0.94">
|
||||
|
17
goTidy
Normal file
17
goTidy
Normal file
@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
#######################################################################
|
||||
#
|
||||
# File: goTidy
|
||||
#
|
||||
# Description: Tidy is best used inside a loop, but Makefiles don't do
|
||||
# bash loops well. This file alleviates that problem.
|
||||
#
|
||||
# Author: James Robertson
|
||||
#
|
||||
########################################################################
|
||||
|
||||
for file in `find "$1" -name "*.html"`; do
|
||||
tidy -config tidy.conf $file
|
||||
done
|
||||
|
||||
exit 0
|
@ -20,13 +20,17 @@ Beekmans</ulink> <gerard@linuxfromscratch.org> -- Linux-From-Scratch
|
||||
initiator, LFS Project organizer.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:matthew@linuxfromscratch.org">Matthew
|
||||
Burgess</ulink> <matthew@linuxfromscratch.org> -- LFS General Package
|
||||
maintainer, LFS Book editor.</para></listitem>
|
||||
Burgess</ulink> <matthew@linuxfromscratch.org> -- LFS Project Co-Leader,
|
||||
LFS General Package maintainer, LFS Book editor.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:meerkats@bellsouth.net">Craig
|
||||
Colton</ulink> <meerkats@bellsouth.net> -- LFS, ALFS, BLFS and Hints
|
||||
Project logo creator.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:nathan@linuxfromscratch.org">Nathan
|
||||
Coulson</ulink> <nathan@linuxfromscratch.org> -- LFS-Bootscripts
|
||||
maintainer.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:jeroen@linuxfromscratch.org">Jeroen
|
||||
Coumans</ulink> <jeroen@linuxfromscratch.org> -- Website developer, FAQ
|
||||
maintainer.</para></listitem>
|
||||
@ -35,6 +39,10 @@ maintainer.</para></listitem>
|
||||
Dubbs</ulink> <bdubbs@linuxfromscratch.org> -- LFS Quality Assurance Team
|
||||
leader, BLFS Book editor.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:manuel@linuxfromscratch.org">Manuel
|
||||
Canales Esparcia</ulink> <manuel@linuxfromscratch.org> -- LFS Book
|
||||
Editor (XML).</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:alex@linuxfromscratch.org">Alex
|
||||
Groenewoud</ulink> <alex@linuxfromscratch.org> -- LFS Book
|
||||
editor.</para></listitem>
|
||||
@ -59,6 +67,10 @@ creator and maintainer.</para></listitem>
|
||||
Maltby</ulink> <bill@linuxfromscratch.org> -- LFS Project
|
||||
organizer.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:alexander@linuxfromscratch.org">Alexander
|
||||
Patrakov</ulink> <alexander@linuxfromscratch.org> -- LFS Book
|
||||
Editor (internationalization/localization).</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:scot@linuxfromscratch.org">Scot Mc
|
||||
Pherson</ulink> <scot@linuxfromscratch.org> -- LFS NNTP gateway
|
||||
maintainer.</para></listitem>
|
||||
@ -73,7 +85,7 @@ Wiki developer, LFS Book editor.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:greg@linuxfromscratch.org">Greg
|
||||
Schafer</ulink> <greg@linuxfromscratch.org> -- Toolchain maintainer,
|
||||
LFS Book editor, co-creator of PLFS.</para></listitem>
|
||||
Former LFS Book editor, co-creator of PLFS.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:tushar@linuxfromscratch.org">Tushar
|
||||
Teredesai</ulink> <tushar@linuxfromscratch.org> -- BLFS Book editor,
|
||||
@ -81,7 +93,11 @@ Hints and Patches Projects maintainer.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:jeremy@linuxfromscratch.org">Jeremy
|
||||
Utley</ulink> <jeremy@linuxfromscratch.org> -- LFS Book editor, Bugzilla
|
||||
maintainer.</para></listitem>
|
||||
maintainer, LFS-Bootscripts Maintainer, LFS Server co-admin.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:winkie@linuxfromscratch.org">Zack
|
||||
Winkles</ulink> <winkie@linuxfromscratch.org> -- LFS Book editor
|
||||
(Emerging Technologies), LFS-Bootscripts co-maintainer.</para></listitem>
|
||||
|
||||
<listitem><para>Countless other people on the various LFS and BLFS
|
||||
mailing lists who are making this book happen by giving their suggestions,
|
||||
@ -109,6 +125,10 @@ project.</para></listitem>
|
||||
Lizardo</ulink> <lizardo@linuxfromscratch.org> -- Portuguese LFS
|
||||
translation project.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:tr@erdfunkstelle.de">Thomas Reitelbach
|
||||
</ulink> <tr@erdfunkstelle.de> -- German LFS translation project.</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
@ -116,102 +136,160 @@ translation project.</para></listitem>
|
||||
<sect2>
|
||||
<title>Mirror Maintainers</title>
|
||||
|
||||
<sect3>
|
||||
<title>North American Mirrors</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem><para><ulink url="mailto:jason@dstc.edu.au">Jason Andrade</ulink>
|
||||
<jason@dstc.edu.au> -- au.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:lost@l-w.net">William Astle</ulink>
|
||||
<lost@l-w.net> -- ca.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:baque@cict.fr">Baque</ulink>
|
||||
<baque@cict.fr> -- lfs.cict.fr mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:stevie@stevie20.de">Stephan Brendel</ulink>
|
||||
<stevie@stevie20.de> -- lfs.netservice-neuss.de
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:ian@ichilton.co.uk">Ian Chilton</ulink>
|
||||
<ian@ichilton.co.uk> -- us.linuxfromscratch.org, linuxfromscratch.co.uk
|
||||
mirrors.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:fredan-lfs@fredan.org">Fredrik
|
||||
Danerklint</ulink> <fredan-lfs@fredan.org> -- se.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:pgpkeys@aeternamtech.com">David D.W.
|
||||
Downey</ulink> <pgpkeys@aeternamtech.com> -- lfs.learnbyexample.com
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:ebf@aedsolucoes.com.br">Eduardo B.
|
||||
Fonseca</ulink> <ebf@aedsolucoes.com.br> -- br.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:hrx@hrxnet.de">Hagen Herrschaft</ulink>
|
||||
<hrx@hrxnet.de> -- de.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:tim@idge.net">Tim Jackson</ulink>
|
||||
<tim@idge.net> -- linuxfromscratch.idge.net mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:barna@siker.hu">Barna Koczka</ulink>
|
||||
<barna@siker.hu> -- hu.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:lfs-mirror@linuxfromscratch.rave.org">Roel
|
||||
Neefs</ulink> -- linuxfromscratch.rave.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:sime@dot-sime.com">Simon Nicoll</ulink>
|
||||
<sime@dot-sime.com> -- uk.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:ervin@activalink.net">Ervin S.
|
||||
Odisho</ulink> <ervin@activalink.net> -- lfs.activalink.net
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:guido@primerelay.net">Guido Passet</ulink>
|
||||
<guido@primerelay.net> -- nl.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
<listitem><para><ulink url="mailto:scott@osuosl.org">Scott Kveton</ulink>
|
||||
<scott@osuosl.org> -- lfs.oregonstate.edu mirror</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:miha@xuy.biz">Mikhail Pastukhov</ulink>
|
||||
<miha@xuy.biz> -- lfs.130th.net mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:crash4o4@gameover.com">Frank Mancuso</ulink>
|
||||
<crash4o4@gameover.com> -- lfs.crash404.com mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:lost@l-w.net">William Astle</ulink>
|
||||
<lost@l-w.net> -- ca.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:jpolen@rackspace.com">Jeremy Polen</ulink>
|
||||
<jpolen@rackspace.com> -- us2.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="http://www.mirror.ac.uk">UK Mirror Service</ulink>
|
||||
-- linuxfromscratch.mirror.co.uk mirror.</para></listitem>
|
||||
<listitem><para><ulink url="mailto:tim@idge.net">Tim Jackson</ulink>
|
||||
<tim@idge.net> -- linuxfromscratch.idge.net mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:thomas@sofagang.dk">Thomas Skyt</ulink>
|
||||
<thomas@sofagang.dk> -- dk.linuxfromscratch.org mirror.</para></listitem>
|
||||
<listitem><para><ulink url="mailto:jeremy@linux-phreak.net">Jeremy Utley
|
||||
</ulink> <jeremy@linux-phreak.net> -- lfs.linux-phreak.net mirror.
|
||||
</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>South American Mirrors</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem><para><ulink url="mailto:manuel@linuxfromscratch.org">Manuel Canales
|
||||
Esparcia</ulink> <manuel@linuxfromscratch.org> -- lfsmirror.lfs-es.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:sysop@mesi.com.ar">Andres Meggiotto</ulink>
|
||||
<sysop@mesi.com.ar> -- lfs.mesi.com.ar mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:ebf@aedsolucoes.com.br">Eduardo B.
|
||||
Fonseca</ulink> <ebf@aedsolucoes.com.br> -- br.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>European Mirrors</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem><para><ulink url="mailto:barna@siker.hu">Barna Koczka</ulink>
|
||||
<barna@siker.hu> -- hu.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="http://www.mirror.ac.uk">UK Mirror Service</ulink>
|
||||
-- linuxfromscratch.mirror.ac.uk mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:Martin.Voss@ada.de">Martin Voss</ulink>
|
||||
<Martin.Voss@ada.de> -- lfs.linux-matrix.net mirror.</para></listitem>
|
||||
|
||||
<listitem><para>Unknown -- mirror.vtx.ch mirror</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:guido@primerelay.net">Guido Passet</ulink>
|
||||
<guido@primerelay.net> -- nl.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:baafie@planet.nl">Bastiaan Jacques</ulink>
|
||||
<baafie@planet.nl> -- lfs.pagefault.net mirror</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:lfs-mirror@linuxfromscratch.rave.org">Roel
|
||||
Neefs</ulink> <lfs-mirror@linuxfromscratch.rave.org> -- linuxfromscratch.rave.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:justin@jrknierim.de">Justin Knierim</ulink>
|
||||
<justin@jrknierim.de> -- www.lfs-matrix.de mirror</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:stevie@stevie20.de">Stephan Brendel</ulink>
|
||||
<stevie@stevie20.de> -- lfs.netservice-neuss.de
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para>Unknown -- linuxfromscratch.je-zi.de
|
||||
mirror</para></listitem>
|
||||
|
||||
<listitem><para>Unknown -- linuxfromscratch.tuxcenter.net
|
||||
mirror</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:hrx@hrxnet.de">Hagen Herrschaft</ulink>
|
||||
<hrx@hrxnet.de> -- de.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:Antonin.Sprinzl@tuwien.ac.at">Antonin
|
||||
Sprinzl</ulink> <Antonin.Sprinzl@tuwien.ac.at> -- at.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:dag@stenstad.net">Dag Stenstad</ulink>
|
||||
<dag@stenstad.net> for providing no.linuxfromscratch.org and
|
||||
<ulink url="mailto:ian@ichilton.co.uk">Ian Chilton</ulink> for running
|
||||
it.</para></listitem>
|
||||
<listitem><para><ulink url="mailto:fredan-lfs@fredan.org">Fredrik
|
||||
Danerklint</ulink> <fredan-lfs@fredan.org> -- se.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:archive@doc.cs.univ-paris8.fr">Parisian
|
||||
sysadmins</ulink> <archive@doc.cs.univ-paris8.fr> --
|
||||
www2.fr.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:highos@linuxfromscratch.org">Jesse
|
||||
Tie-Ten-Quee</ulink> <highos@linuxfromscratch.org> for providing and
|
||||
running the linuxfromscratch.org server.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:velin@zadnik.org">Alexander Velin</ulink>
|
||||
<velin@zadnik.org> -- bg.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:Martin.Voss@ada.de">Martin Voss</ulink>
|
||||
<Martin.Voss@ada.de> -- lfs.linux-matrix.net mirror.</para></listitem>
|
||||
<listitem><para><ulink url="mailto:dirk@securewebservices.co.uk">Dirk
|
||||
Webster</ulink> <dirk@securewebservices.co.uk> --
|
||||
lfs.securewebservices.co.uk mirror</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:thomas@sofagang.dk">Thomas Skyt</ulink>
|
||||
<thomas@sofagang.dk> -- dk.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:sime@dot-sime.com">Simon Nicoll</ulink>
|
||||
<sime@dot-sime.com> -- uk.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Asian Mirrors</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem><para><ulink url="mailto:pyng@spam.averse.net">Pui Yong</ulink>
|
||||
<pyng@spam.averse.net> -- sg.linuxfromscratch.org
|
||||
mirror.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:stuart@althalus.me.uk">Stuart Harris</ulink>
|
||||
<stuart@althalus.me.uk> -- lfs.mirror.intermedia.com.sg
|
||||
mirror</para></listitem>
|
||||
|
||||
<listitem><para>Unknown -- lfs.mirror.if.itb.ac.id mirror</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Australian Mirrors</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem><para><ulink url="mailto:jason@dstc.edu.au">Jason Andrade</ulink>
|
||||
<jason@dstc.edu.au> -- au.linuxfromscratch.org mirror.</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
@ -296,7 +374,8 @@ LFS banner by Garrett LeSage.</para></listitem>
|
||||
look at <ulink url="http://www.oswd.org/"/>.</para></listitem>
|
||||
|
||||
<listitem><para><ulink url="mailto:highos@linuxfromscratch.org">Jesse
|
||||
Tie-Ten-Quee</ulink> <highos@linuxfromscratch.org> for answering
|
||||
Tie-Ten-Quee</ulink> <highos@linuxfromscratch.org> for temporarily
|
||||
hosting the linuxfromscratch.org server, answering
|
||||
countless questions on IRC and having a great deal of patience.</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<title>Structure</title>
|
||||
<?dbhtml filename="organization.html"?>
|
||||
|
||||
<para>This book is divided into the following four parts:</para>
|
||||
<para>This book is divided into the following parts:</para>
|
||||
|
||||
<sect2>
|
||||
<title>Part I - Introduction</title>
|
||||
|
@ -1,92 +1,33 @@
|
||||
<?xml version='1.0'?>
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org>
|
||||
Based on the original lfs-chunked.xsl created by Matthew Burgess -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- We use XHTML -->
|
||||
<!-- We use XHTML -->
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.65.1/xhtml/chunk.xsl"/>
|
||||
<xsl:param name="chunker.output.encoding" select="'ISO-8859-1'"/>
|
||||
|
||||
<!-- Including our others customized templates -->
|
||||
<xsl:include href="xhtml/lfs-admon.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-index.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-legalnotice.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-mixed.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-navigational.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-titles.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-toc.xsl"/>
|
||||
|
||||
<!-- The CSS Stylesheet -->
|
||||
<!-- The CSS Stylesheet -->
|
||||
<xsl:param name="html.stylesheet" select="'../stylesheets/lfs.css'"/>
|
||||
|
||||
<!-- Include our customised templates -->
|
||||
<xsl:include href="xhtml/lfs-toc.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-index.xsl"/>
|
||||
|
||||
<!-- Use graphics in admonitions -->
|
||||
<xsl:param name="admon.graphics" select="1"/>
|
||||
<xsl:param name="admon.graphics.path">../images/</xsl:param>
|
||||
<xsl:param name="admon.graphics.extension" select="'.png'"/>
|
||||
|
||||
<!-- Legal Notice stuff -->
|
||||
<xsl:param name="generate.legalnotice.link" select="1"/>
|
||||
<xsl:template match="legalnotice" mode="titlepage.mode">
|
||||
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$generate.legalnotice.link != 0">
|
||||
<xsl:variable name="filename">
|
||||
<xsl:call-template name="make-relative-filename">
|
||||
<xsl:with-param name="base.dir" select="''"/>
|
||||
<xsl:with-param name="base.name" select="concat($base.dir, 'prologue/legalnotice.html')"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="title">
|
||||
<xsl:apply-templates select="." mode="title.markup"/>
|
||||
</xsl:variable>
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="'prologue/legalnotice.html'"/>
|
||||
</xsl:attribute>
|
||||
<xsl:copy-of select="$title"/>
|
||||
</xsl:element>
|
||||
<xsl:call-template name="write.chunk">
|
||||
<xsl:with-param name="filename" select="$filename"/>
|
||||
<xsl:with-param name="quiet" select="$chunk.quietly"/>
|
||||
<xsl:with-param name="content">
|
||||
<html>
|
||||
<head>
|
||||
<xsl:call-template name="system.head.content"/>
|
||||
<xsl:call-template name="head.content"/>
|
||||
<xsl:call-template name="user.head.content"/>
|
||||
</head>
|
||||
<body>
|
||||
<xsl:call-template name="body.attributes"/>
|
||||
<div class="{local-name(.)}">
|
||||
<xsl:apply-templates mode="titlepage.mode"/>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<div class="{local-name(.)}">
|
||||
<xsl:apply-templates mode="titlepage.mode"/>
|
||||
</div>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<!--TOC stuff-->
|
||||
<xsl:param name="generate.toc">
|
||||
appendix toc
|
||||
book toc,title,figure,table,example,equation
|
||||
chapter nop
|
||||
part toc
|
||||
preface nop
|
||||
qandadiv nop
|
||||
qandaset nop
|
||||
reference nop
|
||||
sect1 nop
|
||||
sect2 nop
|
||||
sect3 nop
|
||||
sect4 nop
|
||||
sect5 nop
|
||||
section nop
|
||||
set nop
|
||||
</xsl:param>
|
||||
<xsl:param name="toc.section.depth">1</xsl:param>
|
||||
<xsl:param name="toc.max.depth">3</xsl:param>
|
||||
<!-- Dropping some unwanted style attributes -->
|
||||
<xsl:param name="ulink.target" select="''"></xsl:param>
|
||||
<xsl:param name="css.decoration" select="0"></xsl:param>
|
||||
|
||||
<!-- No XML declaration -->
|
||||
<xsl:param name="chunker.output.omit-xml-declaration" select="'yes'"/>
|
||||
|
||||
</xsl:stylesheet>
|
||||
|
32
stylesheets/lfs-nochunks.xsl
Normal file
32
stylesheets/lfs-nochunks.xsl
Normal file
@ -0,0 +1,32 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org>
|
||||
Based on the original lfs-chunked.xsl created by Matthew Burgess -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- We use XHTML -->
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.65.1/xhtml/docbook.xsl"/>
|
||||
|
||||
<!-- Fix encoding issues with default UTF-8 output of the xhtml stylesheet -->
|
||||
<xsl:output method="html" encoding="ISO-8859-1" indent="no" />
|
||||
|
||||
<!-- Including our others customized templates -->
|
||||
<xsl:include href="xhtml/lfs-admon.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-index.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-mixed.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-navigational.xsl"/>
|
||||
<!-- The following breaks hyperlinks in the TOC -->
|
||||
<!-- <xsl:include href="xhtml/lfs-titles.xsl"/> -->
|
||||
<xsl:include href="xhtml/lfs-toc.xsl"/>
|
||||
|
||||
<!-- The CSS Stylesheet -->
|
||||
<xsl:param name="html.stylesheet" select="'lfs.css'"/>
|
||||
|
||||
<!-- Dropping some unwanted style attributes -->
|
||||
<xsl:param name="ulink.target" select="''"></xsl:param>
|
||||
<xsl:param name="css.decoration" select="0"></xsl:param>
|
||||
|
||||
</xsl:stylesheet>
|
@ -1,127 +1,58 @@
|
||||
<?xml version='1.0'?>
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org>
|
||||
Based on the original lfs-pdf.xsl created by Matthew Burgess -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- We use FO and FOP as the processor -->
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.65.1/fo/docbook.xsl"/>
|
||||
<xsl:param name="fop.extensions" select="1"/>
|
||||
<xsl:param name="draft.mode" select="'no'"/>
|
||||
|
||||
<!-- Including our others customized templates -->
|
||||
<xsl:include href="pdf/lfs-index.xsl"/>
|
||||
<xsl:include href="pdf/lfs-pagesetup.xsl"/>
|
||||
|
||||
<!-- Probably want to make the paper size configurable -->
|
||||
<xsl:param name="paper.type" select="'A4'"/>
|
||||
|
||||
<!-- Include our customised templates -->
|
||||
<xsl:include href="pdf/lfs-index.xsl"/>
|
||||
|
||||
<!-- Font size -->
|
||||
<xsl:param name="body.font.master">8</xsl:param>
|
||||
<xsl:param name="body.font.size">10pt</xsl:param>
|
||||
|
||||
<!-- Margins -->
|
||||
<xsl:param name="page.margin.inner">1in</xsl:param>
|
||||
<xsl:param name="page.margin.outer">0.5in</xsl:param>
|
||||
<xsl:param name="title.margin.left">-1pc</xsl:param>
|
||||
|
||||
<!-- TOC stuff -->
|
||||
<xsl:param name="generate.toc">
|
||||
book toc
|
||||
part nop
|
||||
</xsl:param>
|
||||
<xsl:param name="toc.section.depth">1</xsl:param>
|
||||
<xsl:param name="generate.section.toc.level" select="-1"></xsl:param>
|
||||
<xsl:param name="toc.indent.width" select="18"></xsl:param>
|
||||
|
||||
<!-- Force section1's onto a new page -->
|
||||
<xsl:attribute-set name="section.level1.properties">
|
||||
<xsl:attribute name="break-after">page</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
|
||||
<!-- Columns in appendix -->
|
||||
<xsl:param name="column.count.back" select="2"/>
|
||||
|
||||
<!-- Don't hyphenate -->
|
||||
<xsl:param name="hyphenate">false</xsl:param>
|
||||
<xsl:param name="alignment">left</xsl:param>
|
||||
|
||||
<!-- Font size -->
|
||||
<xsl:param name="body.font.master">8</xsl:param>
|
||||
<xsl:param name="body.font.size">10pt</xsl:param>
|
||||
|
||||
<!-- Graphics in admonitions -->
|
||||
<xsl:param name="admon.graphics" select="1"/>
|
||||
<xsl:param name="admon.graphics.path"
|
||||
select="'/usr/share/xml/docbook/xsl-stylesheets-1.65.1/images/'"/>
|
||||
|
||||
<!-- Shade screen -->
|
||||
<xsl:param name="shade.verbatim" select="1"/>
|
||||
|
||||
<!-- TOC generation -->
|
||||
<xsl:param name="generate.toc">
|
||||
book toc
|
||||
part nop
|
||||
</xsl:param>
|
||||
<xsl:param name="toc.section.depth">1</xsl:param>
|
||||
<xsl:param name="generate.section.toc.level" select="-1"/>
|
||||
<xsl:param name="toc.indent.width" select="18"/>
|
||||
|
||||
<!-- Page number in Xref-->
|
||||
<xsl:param name="insert.xref.page.number">yes</xsl:param>
|
||||
<xsl:template match="xref" name="xref">
|
||||
<xsl:variable name="targets" select="key('id',@linkend)"/>
|
||||
<xsl:variable name="target" select="$targets[1]"/>
|
||||
<xsl:variable name="refelem" select="local-name($target)"/>
|
||||
<xsl:call-template name="check.id.unique">
|
||||
<xsl:with-param name="linkend" select="@linkend"/>
|
||||
</xsl:call-template>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$refelem=''">
|
||||
<xsl:message>
|
||||
<xsl:text>XRef to nonexistent id: </xsl:text>
|
||||
<xsl:value-of select="@linkend"/>
|
||||
</xsl:message>
|
||||
<xsl:text>???</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="@endterm">
|
||||
<fo:basic-link internal-destination="{@linkend}"
|
||||
xsl:use-attribute-sets="xref.properties">
|
||||
<xsl:variable name="etargets" select="key('id',@endterm)"/>
|
||||
<xsl:variable name="etarget" select="$etargets[1]"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="count($etarget) = 0">
|
||||
<xsl:message>
|
||||
<xsl:value-of select="count($etargets)"/>
|
||||
<xsl:text>Endterm points to nonexistent ID: </xsl:text>
|
||||
<xsl:value-of select="@endterm"/>
|
||||
</xsl:message>
|
||||
<xsl:text>???</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="$etarget" mode="endterm"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</fo:basic-link>
|
||||
</xsl:when>
|
||||
<xsl:when test="$target/@xreflabel">
|
||||
<fo:basic-link internal-destination="{@linkend}"
|
||||
xsl:use-attribute-sets="xref.properties">
|
||||
<xsl:call-template name="xref.xreflabel">
|
||||
<xsl:with-param name="target" select="$target"/>
|
||||
</xsl:call-template>
|
||||
</fo:basic-link>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<fo:basic-link internal-destination="{@linkend}"
|
||||
xsl:use-attribute-sets="xref.properties">
|
||||
<xsl:apply-templates select="$target" mode="xref-to">
|
||||
<xsl:with-param name="referrer" select="."/>
|
||||
<xsl:with-param name="xrefstyle">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@role and not(@xrefstyle) and $use.role.as.xrefstyle != 0">
|
||||
<xsl:value-of select="@role"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="@xrefstyle"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:with-param>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:if test="not(starts-with(normalize-space(@xrefstyle), 'select:') != ''
|
||||
and (contains(@xrefstyle, 'page')
|
||||
or contains(@xrefstyle, 'Page')))
|
||||
and ( $insert.xref.page.number = 'yes'
|
||||
or $insert.xref.page.number = '1')
|
||||
or local-name($target) = 'para'">
|
||||
<fo:basic-link internal-destination="{@linkend}"
|
||||
xsl:use-attribute-sets="xref.properties">
|
||||
<xsl:text>, p. </xsl:text>
|
||||
<xsl:apply-templates select="$target" mode="page.citation">
|
||||
<xsl:with-param name="id" select="@linkend"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</xsl:if>
|
||||
<xsl:template match="*" mode="page.citation">
|
||||
<xsl:param name="id" select="'???'"/>
|
||||
<fo:inline keep-together.within-line="always">
|
||||
<xsl:text>[p.</xsl:text>
|
||||
<fo:page-number-citation ref-id="{$id}"/>
|
||||
<xsl:text>]</xsl:text>
|
||||
</fo:inline>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Prevent duplicate e-mails in the Acknowledgments pages-->
|
||||
|
57
stylesheets/lfs-print.xsl
Normal file
57
stylesheets/lfs-print.xsl
Normal file
@ -0,0 +1,57 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org>
|
||||
Based on the original lfs-pdf.xsl created by Matthew Burgess -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
||||
version="1.0">
|
||||
|
||||
<!-- We use FO and FOP as the processor -->
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.65.1/fo/docbook.xsl"/>
|
||||
<xsl:param name="fop.extensions" select="1"/>
|
||||
<xsl:param name="draft.mode" select="'no'"/>
|
||||
|
||||
<!-- Including our others customized templates -->
|
||||
<xsl:include href="print/lfs-index.xsl"/>
|
||||
<xsl:include href="print/lfs-pagesetup.xsl"/>
|
||||
|
||||
<!-- Probably want to make the paper size configurable -->
|
||||
<xsl:param name="paper.type" select="'A4'"/>
|
||||
|
||||
<!-- Printing Style -->
|
||||
<xsl:param name="double.sided" select="1"/>
|
||||
<xsl:param name="hyphenate">true</xsl:param>
|
||||
<xsl:param name="alignment">justify</xsl:param>
|
||||
|
||||
<!-- Hyphenate links -->
|
||||
<xsl:param name="ulink.hyphenate" select="' '"></xsl:param>
|
||||
|
||||
<!-- Font size -->
|
||||
<xsl:param name="body.font.master">8</xsl:param>
|
||||
<xsl:param name="body.font.size">10pt</xsl:param>
|
||||
|
||||
<!-- TOC stuff -->
|
||||
<xsl:param name="generate.toc">
|
||||
book toc
|
||||
part nop
|
||||
</xsl:param>
|
||||
<xsl:param name="toc.section.depth">1</xsl:param>
|
||||
<xsl:param name="generate.section.toc.level" select="-1"></xsl:param>
|
||||
<xsl:param name="toc.indent.width" select="18"></xsl:param>
|
||||
|
||||
<!-- Page number in Xref-->
|
||||
<xsl:param name="insert.xref.page.number">yes</xsl:param>
|
||||
<xsl:template match="*" mode="page.citation">
|
||||
<xsl:param name="id" select="'???'"/>
|
||||
<fo:inline keep-together.within-line="always">
|
||||
<xsl:text>[p</xsl:text>
|
||||
<fo:page-number-citation ref-id="{$id}"/>
|
||||
<xsl:text>]</xsl:text>
|
||||
</fo:inline>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Prevent duplicate e-mails in the Acknowledgments pages-->
|
||||
<xsl:param name="ulink.show" select="0"/>
|
||||
|
||||
</xsl:stylesheet>
|
78
stylesheets/lfs-tex.xsl
Normal file
78
stylesheets/lfs-tex.xsl
Normal file
@ -0,0 +1,78 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Created by Larry Lawrence <larry@linuxfromscratch.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
version='1.0'>
|
||||
|
||||
<xsl:import href="http://db2latex.sourceforge.net/xsl/docbook.xsl"/>
|
||||
<xsl:output method="text" encoding="ISO-8859-1" indent="yes"/>
|
||||
<xsl:variable name="latex.override">
|
||||
|
||||
\documentclass[12pt]{book}
|
||||
|
||||
\usepackage{lfs}
|
||||
\usepackage{fancyhdr}
|
||||
\usepackage{fancyvrb}
|
||||
\usepackage{makeidx}
|
||||
\usepackage{hyperref}
|
||||
\usepackage{fancybox}
|
||||
|
||||
\oddsidemargin -0.5in
|
||||
\evensidemargin -0.625in
|
||||
\textwidth 7in
|
||||
\textheight 8.5in
|
||||
|
||||
%\ifx\pdfoutput\undefined
|
||||
%\else
|
||||
%\pdfpagewidth=7in
|
||||
%\pdfpageheight=8.5in
|
||||
%\fi
|
||||
|
||||
\pagestyle{fancy}
|
||||
\newenvironment{admonition}[2] {
|
||||
\vspace{8mm}
|
||||
\hspace{0mm}\newline
|
||||
\noindent
|
||||
}
|
||||
|
||||
|
||||
\fancyhf{}
|
||||
\fancyhead[LE,RO]{\bfseries\thepage}
|
||||
\fancyhead[LO]{\bfseries\rightmark}
|
||||
\fancyhead[RE]{\bfseries\leftmark}
|
||||
\renewcommand{\headrulewidth}{0.5pt}
|
||||
\renewcommand{\footrulewidth}{0pt}
|
||||
\addtolength{\headheight}{3pt}
|
||||
\fancypagestyle{plain}{%
|
||||
\fancyhead{}
|
||||
\renewcommand{\headrulewidth}{0pt}
|
||||
}
|
||||
|
||||
|
||||
\hyphenation{change-log cpp-flags ctrlaltdel ma-cros chil-ton}
|
||||
|
||||
<!-- adds \frontmatter to document -->
|
||||
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="toc.section.depth">1</xsl:variable>
|
||||
|
||||
<xsl:variable name="latex.book.begindocument">
|
||||
<xsl:text>\begin{document} </xsl:text>
|
||||
<xsl:text>\frontmatter </xsl:text>
|
||||
</xsl:variable>
|
||||
|
||||
<!-- This put each section on a new page in the preface section -->
|
||||
|
||||
<xsl:template match="preface/sect1">
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:text>\newpage </xsl:text>
|
||||
<xsl:text>\section*{</xsl:text><xsl:copy-of
|
||||
select="normalize-space(title)"/><xsl:text>} </xsl:text>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
|
||||
</xsl:stylesheet>
|
@ -1,24 +1,17 @@
|
||||
body {
|
||||
font-weight: normal;
|
||||
font-size: normal;
|
||||
font-size: medium;
|
||||
font-family: verdana, tahoma, helvetica, arial, sans-serif;
|
||||
text-align: left;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
div.navheader table {
|
||||
font-size: smaller;
|
||||
.toc ul, .index ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
div.navfooter table {
|
||||
font-size: smaller;
|
||||
}
|
||||
|
||||
div.navheader img {
|
||||
border: medium none;
|
||||
}
|
||||
|
||||
div.navfooter img {
|
||||
border: medium none;
|
||||
li.preface {
|
||||
margin-left: 2.5em;
|
||||
}
|
||||
|
||||
div.book div.titlepage h1.title {
|
||||
@ -68,40 +61,19 @@ pre.synopsis {
|
||||
background-color: #dddddd;
|
||||
}
|
||||
|
||||
div.warning {
|
||||
border: 1px solid;
|
||||
div.admonition {
|
||||
border: medium solid;
|
||||
width: 90%;
|
||||
margin: .5em auto;
|
||||
}
|
||||
|
||||
div.note {
|
||||
border: 1px solid;
|
||||
div.admonhead h3 {
|
||||
display: inline;
|
||||
margin-left: 1.5em;
|
||||
}
|
||||
|
||||
div.important {
|
||||
border: 1px solid;
|
||||
}
|
||||
|
||||
div.caution {
|
||||
border: 1px solid;
|
||||
}
|
||||
|
||||
div.warning h3.title {
|
||||
text-align: center
|
||||
}
|
||||
|
||||
div.warning p {
|
||||
padding-left: 0.2in
|
||||
}
|
||||
|
||||
div.note {
|
||||
padding-left: 0.2in
|
||||
}
|
||||
|
||||
div.important {
|
||||
padding-left: 0.2in
|
||||
}
|
||||
|
||||
div.caution {
|
||||
padding-left: 0.2in
|
||||
div.admonbody {
|
||||
margin: .5em;
|
||||
}
|
||||
|
||||
.command {
|
||||
@ -118,7 +90,3 @@ div.caution {
|
||||
width: 12.5em;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.toc ul, .index ul, .navheader ul, .navfooter ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
24
stylesheets/patcheslist.xsl
Normal file
24
stylesheets/patcheslist.xsl
Normal file
@ -0,0 +1,24 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9pre1 - Manuel Canales Esparcia <macana@lfs-es.org>
|
||||
Based on the original patcheslist.xsl posted by Matthew Burgess -->
|
||||
|
||||
<!-- This also work again BLFS -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
version="1.0">
|
||||
|
||||
<xsl:output method="text"/>
|
||||
|
||||
<xsl:template match="//text()">
|
||||
<xsl:text/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="//ulink">
|
||||
<xsl:if test="contains(@url, '.patch')">
|
||||
<xsl:value-of select="@url"/>
|
||||
<xsl:text>
</xsl:text>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
196
stylesheets/pdf/lfs-index.xsl
Normal file
196
stylesheets/pdf/lfs-index.xsl
Normal file
@ -0,0 +1,196 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
<!DOCTYPE xsl:stylesheet [
|
||||
<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'">
|
||||
<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'">
|
||||
<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'>
|
||||
<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas)]))'>
|
||||
<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node())'>
|
||||
<!ENTITY sep '" "'>
|
||||
]>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
||||
version="1.0">
|
||||
|
||||
<!--Only one column to fit the table layout-->
|
||||
<xsl:param name="column.count.index" select="1"/>
|
||||
|
||||
<!--Title-->
|
||||
<xsl:template match="index" mode="title.markup">
|
||||
<xsl:text>Index of packages and important installed files</xsl:text>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Divisions-->
|
||||
<xsl:template match="indexterm" mode="index-div">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key"
|
||||
select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/>
|
||||
<xsl:variable name="divtitle" select="translate($key, &lowercase;, &uppercase;)"/>
|
||||
<xsl:if test="key('letter', $key)[&scope;]
|
||||
[count(.|key('primary', &primary;)[&scope;][1]) = 1]">
|
||||
<fo:block>
|
||||
<xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)">
|
||||
<xsl:call-template name="indexdiv.title">
|
||||
<xsl:with-param name="titlecontent">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$divtitle = 'A'">
|
||||
<xsl:text>Packages</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'B'">
|
||||
<xsl:text>Programs</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'C'">
|
||||
<xsl:text>Libraries</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'D'">
|
||||
<xsl:text>Scripts</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'E'">
|
||||
<xsl:text>Others</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$divtitle"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
<fo:table table-layout="fixed" width="100%">
|
||||
<fo:table-column column-number="1" column-width="11em"/>
|
||||
<fo:table-column column-number="2" column-width="19em"/>
|
||||
<fo:table-column column-number="3"/>
|
||||
<fo:table-body>
|
||||
<xsl:apply-templates select="key('letter', $key)[&scope;]
|
||||
[count(.|key('primary', &primary;)[&scope;][1])=1]"
|
||||
mode="index-primary">
|
||||
<xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/>
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:table-body>
|
||||
</fo:table>
|
||||
</fo:block>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Dropping the separator from here -->
|
||||
<xsl:template match="indexterm" mode="reference">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:call-template name="reference">
|
||||
<xsl:with-param name="zones" select="normalize-space(@zone)"/>
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Changing the output tags and re-addind the separator-->
|
||||
<xsl:template match="indexterm" mode="index-primary">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key" select="&primary;"/>
|
||||
<xsl:variable name="refs" select="key('primary', $key)[&scope;]"/>
|
||||
<fo:table-row>
|
||||
<fo:table-cell>
|
||||
<fo:block>
|
||||
<xsl:value-of select="primary"/>
|
||||
<xsl:text>: </xsl:text>
|
||||
</fo:block>
|
||||
</fo:table-cell>
|
||||
<xsl:for-each select="$refs[not(see) and not(seealso)
|
||||
and not(secondary)]">
|
||||
<xsl:apply-templates select="." mode="reference">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:apply-templates>
|
||||
</xsl:for-each>
|
||||
</fo:table-row>
|
||||
<xsl:if test="$refs/secondary">
|
||||
<xsl:apply-templates select="$refs[secondary and count(.|key('secondary',
|
||||
concat($key, &sep;, &secondary;))[&scope;][1]) = 1]" mode="index-secondary">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
<xsl:sort select="translate(&secondary;, &lowercase;, &uppercase;)"/>
|
||||
</xsl:apply-templates>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="indexterm" mode="index-secondary">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;)"/>
|
||||
<xsl:variable name="refs" select="key('secondary', $key)[&scope;]"/>
|
||||
<fo:table-row>
|
||||
<fo:table-cell>
|
||||
<fo:block start-indent="1pc">
|
||||
<xsl:value-of select="secondary"/>
|
||||
<xsl:text>: </xsl:text>
|
||||
</fo:block>
|
||||
</fo:table-cell>
|
||||
<xsl:for-each select="$refs[not(see) and not(seealso) and not(tertiary)]">
|
||||
<xsl:apply-templates select="." mode="reference">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:apply-templates>
|
||||
</xsl:for-each>
|
||||
</fo:table-row>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Targets titles and bookmarks-->
|
||||
<xsl:template name="reference">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:param name="zones"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($zones, ' ')">
|
||||
<xsl:variable name="zone" select="substring-before($zones, ' ')"/>
|
||||
<xsl:variable name="zone2" select="substring-after($zones, ' ')"/>
|
||||
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
|
||||
<xsl:variable name="target2" select="key('id', $zone2)[&scope;]"/>
|
||||
<xsl:variable name="id">
|
||||
<xsl:call-template name="object.id">
|
||||
<xsl:with-param name="object" select="$target[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="id2">
|
||||
<xsl:call-template name="object.id">
|
||||
<xsl:with-param name="object" select="$target2[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<fo:table-cell>
|
||||
<fo:block>
|
||||
<fo:basic-link internal-destination="{$id}">
|
||||
<xsl:value-of select="$target/title"/>
|
||||
<xsl:apply-templates select="$target" mode="page.citation">
|
||||
<xsl:with-param name="id" select="$id"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</fo:block>
|
||||
</fo:table-cell>
|
||||
<fo:table-cell>
|
||||
<fo:block>
|
||||
<fo:basic-link internal-destination="{$id2}">
|
||||
<xsl:text>description</xsl:text>
|
||||
<xsl:apply-templates select="$target2" mode="page.citation">
|
||||
<xsl:with-param name="id" select="$id2"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</fo:block>
|
||||
</fo:table-cell>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:variable name="zone" select="$zones"/>
|
||||
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
|
||||
<xsl:variable name="id">
|
||||
<xsl:call-template name="object.id">
|
||||
<xsl:with-param name="object" select="$target[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<fo:table-cell>
|
||||
<fo:block>
|
||||
<fo:basic-link internal-destination="{$id}">
|
||||
<xsl:value-of select="$target/title"/>
|
||||
<xsl:apply-templates select="$target" mode="page.citation">
|
||||
<xsl:with-param name="id" select="$id"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</fo:block>
|
||||
</fo:table-cell>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
115
stylesheets/pdf/lfs-pagesetup.xsl
Normal file
115
stylesheets/pdf/lfs-pagesetup.xsl
Normal file
@ -0,0 +1,115 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
||||
version="1.0">
|
||||
|
||||
<!-- Force section1's onto a new page -->
|
||||
<xsl:attribute-set name="section.level1.properties">
|
||||
<xsl:attribute name="break-after">
|
||||
<xsl:choose>
|
||||
<xsl:when test="not(position()=last())">
|
||||
<xsl:text>page</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>auto</xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
|
||||
<!-- Header -->
|
||||
<xsl:attribute-set name="header.content.properties">
|
||||
<xsl:attribute name="font-family">
|
||||
<xsl:value-of select="$body.fontset"/>
|
||||
</xsl:attribute>
|
||||
<xsl:attribute name="text-align">right</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
|
||||
<xsl:template name="header.content">
|
||||
<xsl:value-of select="/book/bookinfo/title"/>
|
||||
<xsl:text> - </xsl:text>
|
||||
<xsl:value-of select="/book/bookinfo/subtitle"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="header.table">
|
||||
<xsl:param name="gentext-key" select="''"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$gentext-key = 'book'"/>
|
||||
<xsl:otherwise>
|
||||
<xsl:call-template name="header.content"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Centered titles for book and part -->
|
||||
<xsl:template name="book.titlepage">
|
||||
<fo:block space-before="2in">
|
||||
<fo:block>
|
||||
<xsl:call-template name="book.titlepage.before.recto"/>
|
||||
<xsl:call-template name="book.titlepage.recto"/>
|
||||
</fo:block>
|
||||
<fo:block>
|
||||
<xsl:call-template name="book.titlepage.before.verso"/>
|
||||
<xsl:call-template name="book.titlepage.verso"/>
|
||||
</fo:block>
|
||||
<xsl:call-template name="book.titlepage.separator"/>
|
||||
</fo:block>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="part.titlepage">
|
||||
<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
|
||||
<fo:block space-before="2.5in">
|
||||
<xsl:call-template name="part.titlepage.before.recto"/>
|
||||
<xsl:call-template name="part.titlepage.recto"/>
|
||||
</fo:block>
|
||||
<fo:block>
|
||||
<xsl:call-template name="part.titlepage.before.verso"/>
|
||||
<xsl:call-template name="part.titlepage.verso"/>
|
||||
</fo:block>
|
||||
<xsl:call-template name="part.titlepage.separator"/>
|
||||
</fo:block>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Margins -->
|
||||
<xsl:param name="page.margin.inner">0.75in</xsl:param>
|
||||
<xsl:param name="page.margin.outer">0.75in</xsl:param>
|
||||
<xsl:param name="title.margin.left">-1pc</xsl:param>
|
||||
<xsl:attribute-set name="normal.para.spacing">
|
||||
<xsl:attribute name="space-before.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">1em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
<xsl:attribute-set name="list.block.spacing">
|
||||
<xsl:attribute name="space-before.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">1em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.maximum">1em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
<xsl:attribute-set name="list.item.spacing">
|
||||
<xsl:attribute name="space-before.optimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.minimum">0.4em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">0.8em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
<xsl:attribute-set name="verbatim.properties">
|
||||
<xsl:attribute name="space-before.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">1em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.maximum">1em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
|
||||
<!-- Others-->
|
||||
<xsl:param name="header.rule" select="0"></xsl:param>
|
||||
<xsl:param name="footer.rule" select="0"></xsl:param>
|
||||
<xsl:param name="marker.section.level" select="-1"></xsl:param>
|
||||
|
||||
<!-- Dropping a blank page -->
|
||||
<xsl:template name="book.titlepage.separator"/>
|
||||
|
||||
</xsl:stylesheet>
|
127
stylesheets/print/lfs-index.xsl
Normal file
127
stylesheets/print/lfs-index.xsl
Normal file
@ -0,0 +1,127 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
<!DOCTYPE xsl:stylesheet [
|
||||
<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'">
|
||||
<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'">
|
||||
<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'>
|
||||
<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node())'>
|
||||
]>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
||||
version="1.0">
|
||||
|
||||
<!--Title-->
|
||||
<xsl:template match="index" mode="title.markup">
|
||||
<xsl:param name="allow-anchors" select="0"/>
|
||||
<xsl:text>Index of packages and important installed files</xsl:text>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Divisions-->
|
||||
<xsl:template match="indexterm" mode="index-div">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key"
|
||||
select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/>
|
||||
<xsl:variable name="divtitle" select="translate($key, &lowercase;, &uppercase;)"/>
|
||||
<xsl:if test="key('letter', $key)[&scope;]
|
||||
[count(.|key('primary', &primary;)[&scope;][1]) = 1]">
|
||||
<fo:block>
|
||||
<xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)">
|
||||
<xsl:call-template name="indexdiv.title">
|
||||
<xsl:with-param name="titlecontent">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$divtitle = 'A'">
|
||||
<xsl:text>Packages</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'B'">
|
||||
<xsl:text>Programs</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'C'">
|
||||
<xsl:text>Libraries</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'D'">
|
||||
<xsl:text>Scripts</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'E'">
|
||||
<xsl:text>Others</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$divtitle"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
<fo:block>
|
||||
<xsl:apply-templates select="key('letter', $key)[&scope;]
|
||||
[count(.|key('primary', &primary;)[&scope;][1])=1]"
|
||||
mode="index-primary">
|
||||
<xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/>
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:block>
|
||||
</fo:block>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<!-- The separator -->
|
||||
<xsl:template match="indexterm" mode="reference">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:text>: </xsl:text>
|
||||
<xsl:call-template name="reference">
|
||||
<xsl:with-param name="zones" select="normalize-space(@zone)"/>
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
|
||||
<!--Bookmarks-->
|
||||
<xsl:template name="reference">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:param name="zones"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($zones, ' ')">
|
||||
<xsl:variable name="zone" select="substring-before($zones, ' ')"/>
|
||||
<xsl:variable name="zone2" select="substring-after($zones, ' ')"/>
|
||||
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
|
||||
<xsl:variable name="target2" select="key('id', $zone2)[&scope;]"/>
|
||||
<xsl:variable name="id">
|
||||
<xsl:call-template name="object.id">
|
||||
<xsl:with-param name="object" select="$target[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="id2">
|
||||
<xsl:call-template name="object.id">
|
||||
<xsl:with-param name="object" select="$target2[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<fo:basic-link internal-destination="{$id}">
|
||||
<xsl:apply-templates select="$target" mode="page.citation">
|
||||
<xsl:with-param name="id" select="$id"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
<xsl:text> , </xsl:text>
|
||||
<fo:basic-link internal-destination="{$id2}">
|
||||
<xsl:apply-templates select="$target2" mode="page.citation">
|
||||
<xsl:with-param name="id" select="$id2"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:variable name="zone" select="$zones"/>
|
||||
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
|
||||
<xsl:variable name="id">
|
||||
<xsl:call-template name="object.id">
|
||||
<xsl:with-param name="object" select="$target[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<fo:basic-link internal-destination="{$id}">
|
||||
<xsl:apply-templates select="$target" mode="page.citation">
|
||||
<xsl:with-param name="id" select="$id"/>
|
||||
</xsl:apply-templates>
|
||||
</fo:basic-link>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
120
stylesheets/print/lfs-pagesetup.xsl
Normal file
120
stylesheets/print/lfs-pagesetup.xsl
Normal file
@ -0,0 +1,120 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
||||
version="1.0">
|
||||
|
||||
<!-- Force section1's onto a new page -->
|
||||
<xsl:attribute-set name="section.level1.properties">
|
||||
<xsl:attribute name="break-after">
|
||||
<xsl:choose>
|
||||
<xsl:when test="not(position()=last())">
|
||||
<xsl:text>page</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:text>auto</xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
|
||||
<!-- Header -->
|
||||
<xsl:template name="header.content">
|
||||
<xsl:param name="sequence" select="''"/>
|
||||
<fo:block>
|
||||
<xsl:attribute name="text-align">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$sequence = 'first' or $sequence = 'odd'">right</xsl:when>
|
||||
<xsl:otherwise>left</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
<xsl:value-of select="/book/bookinfo/title"/>
|
||||
<xsl:text> - </xsl:text>
|
||||
<xsl:value-of select="/book/bookinfo/subtitle"/>
|
||||
</fo:block>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="header.table">
|
||||
<xsl:param name="sequence" select="''"/>
|
||||
<xsl:param name="gentext-key" select="''"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$gentext-key = 'book' or $sequence = 'blank'"/>
|
||||
<xsl:otherwise>
|
||||
<xsl:call-template name="header.content">
|
||||
<xsl:with-param name="sequence" select="$sequence"/>
|
||||
</xsl:call-template>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Centered titles for book and part -->
|
||||
<xsl:template name="book.titlepage">
|
||||
<fo:block space-before="2in">
|
||||
<fo:block>
|
||||
<xsl:call-template name="book.titlepage.before.recto"/>
|
||||
<xsl:call-template name="book.titlepage.recto"/>
|
||||
</fo:block>
|
||||
<fo:block>
|
||||
<xsl:call-template name="book.titlepage.before.verso"/>
|
||||
<xsl:call-template name="book.titlepage.verso"/>
|
||||
</fo:block>
|
||||
<xsl:call-template name="book.titlepage.separator"/>
|
||||
</fo:block>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="part.titlepage">
|
||||
<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
|
||||
<fo:block space-before="2.5in">
|
||||
<xsl:call-template name="part.titlepage.before.recto"/>
|
||||
<xsl:call-template name="part.titlepage.recto"/>
|
||||
</fo:block>
|
||||
<fo:block>
|
||||
<xsl:call-template name="part.titlepage.before.verso"/>
|
||||
<xsl:call-template name="part.titlepage.verso"/>
|
||||
</fo:block>
|
||||
<xsl:call-template name="part.titlepage.separator"/>
|
||||
</fo:block>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Margins -->
|
||||
<xsl:param name="page.margin.inner">1in</xsl:param>
|
||||
<xsl:param name="page.margin.outer">0.5in</xsl:param>
|
||||
<xsl:param name="title.margin.left">-1pc</xsl:param>
|
||||
<xsl:attribute-set name="normal.para.spacing">
|
||||
<xsl:attribute name="space-before.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">1em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
<xsl:attribute-set name="list.block.spacing">
|
||||
<xsl:attribute name="space-before.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">1em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.maximum">1em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
<xsl:attribute-set name="list.item.spacing">
|
||||
<xsl:attribute name="space-before.optimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.minimum">0.4em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">0.8em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
<xsl:attribute-set name="verbatim.properties">
|
||||
<xsl:attribute name="space-before.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-before.maximum">1em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.minimum">0.6em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.optimum">0.8em</xsl:attribute>
|
||||
<xsl:attribute name="space-after.maximum">1em</xsl:attribute>
|
||||
</xsl:attribute-set>
|
||||
|
||||
<!-- Others-->
|
||||
<xsl:param name="header.rule" select="0"></xsl:param>
|
||||
<xsl:param name="footer.rule" select="0"></xsl:param>
|
||||
<xsl:param name="marker.section.level" select="-1"></xsl:param>
|
||||
|
||||
<!-- Dropping a blank page -->
|
||||
<xsl:template name="book.titlepage.separator"/>
|
||||
|
||||
</xsl:stylesheet>
|
47
stylesheets/xhtml/lfs-admon.xsl
Normal file
47
stylesheets/xhtml/lfs-admon.xsl
Normal file
@ -0,0 +1,47 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- Use graphics in admonitions -->
|
||||
<xsl:param name="admon.graphics" select="1"/>
|
||||
<xsl:param name="admon.graphics.path">../images/</xsl:param>
|
||||
<xsl:param name="admon.graphics.extension" select="'.png'"/>
|
||||
|
||||
<!-- Changing the output tagging -->
|
||||
<xsl:template name="graphical.admonition">
|
||||
<xsl:variable name="admon.type">
|
||||
<xsl:choose>
|
||||
<xsl:when test="local-name(.)='note'">Note</xsl:when>
|
||||
<xsl:when test="local-name(.)='warning'">Warning</xsl:when>
|
||||
<xsl:when test="local-name(.)='caution'">Caution</xsl:when>
|
||||
<xsl:when test="local-name(.)='tip'">Tip</xsl:when>
|
||||
<xsl:when test="local-name(.)='important'">Important</xsl:when>
|
||||
<xsl:otherwise>Note</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<div class="admonition">
|
||||
<div class ="admonhead">
|
||||
<img alt="[{$admon.type}]">
|
||||
<xsl:attribute name="src">
|
||||
<xsl:call-template name="admon.graphic"/>
|
||||
</xsl:attribute>
|
||||
</img>
|
||||
<h3 class="{name(.)}">
|
||||
<xsl:value-of select="$admon.type"/>
|
||||
<xsl:if test="title">
|
||||
<xsl:text>: </xsl:text>
|
||||
<xsl:value-of select="title"/>
|
||||
</xsl:if>
|
||||
</h3>
|
||||
</div>
|
||||
<div class="admonbody">
|
||||
<xsl:apply-templates/>
|
||||
</div>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
188
stylesheets/xhtml/lfs-index.xsl
Normal file
188
stylesheets/xhtml/lfs-index.xsl
Normal file
@ -0,0 +1,188 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
<!DOCTYPE xsl:stylesheet [
|
||||
<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'">
|
||||
<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'">
|
||||
<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'>
|
||||
<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node())'>
|
||||
]>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!--Filename-->
|
||||
<xsl:template match="index" mode="recursive-chunk-filename">
|
||||
<xsl:text>longindex.html</xsl:text>
|
||||
</xsl:template>
|
||||
|
||||
<!--Title-->
|
||||
<xsl:param name="index-title">Index of packages and important installed files</xsl:param>
|
||||
|
||||
<xsl:template match="index" mode="title.markup">
|
||||
<xsl:value-of select="$index-title"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="index.titlepage">
|
||||
<div class="titlepage">
|
||||
<h1 class="index">
|
||||
<xsl:value-of select="$index-title"/>
|
||||
</h1>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<!--Divisions-->
|
||||
<xsl:template match="indexterm" mode="index-div">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key" select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/>
|
||||
<xsl:variable name="divtitle" select="translate($key, &lowercase;, &uppercase;)"/>
|
||||
<!-- Make sure that we don't generate a div if there are no terms in scope -->
|
||||
<xsl:if test="key('letter', $key)[&scope;] [count(.|key('primary', &primary;)[&scope;][1]) = 1]">
|
||||
<div class="indexdiv">
|
||||
<xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)">
|
||||
<h2>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$divtitle = 'A'">
|
||||
<xsl:text>Packages</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'B'">
|
||||
<xsl:text>Programs</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'C'">
|
||||
<xsl:text>Libraries</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'D'">
|
||||
<xsl:text>Scripts</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:when test="$divtitle = 'E'">
|
||||
<xsl:text>Others</xsl:text>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$divtitle"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</h2>
|
||||
</xsl:if>
|
||||
<ul>
|
||||
<xsl:apply-templates select="key('letter', $key)[&scope;]
|
||||
[count(.|key('primary', &primary;)[&scope;][1])=1]" mode="index-primary">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
<xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/>
|
||||
</xsl:apply-templates>
|
||||
</ul>
|
||||
</div>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Dropping the separator from here-->
|
||||
<xsl:template match="indexterm" mode="reference">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:call-template name="reference">
|
||||
<xsl:with-param name="zones" select="normalize-space(@zone)"/>
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Changing the output tags and re-addind the separator-->
|
||||
<xsl:template match="indexterm" mode="index-primary">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key" select="&primary;"/>
|
||||
<xsl:variable name="refs" select="key('primary', $key)[&scope;]"/>
|
||||
<li>
|
||||
<strong class="item">
|
||||
<xsl:value-of select="primary"/>
|
||||
<xsl:text>: </xsl:text>
|
||||
</strong>
|
||||
<xsl:for-each select="$refs[generate-id() = generate-id(key('primary-section',
|
||||
concat($key, " ", generate-id((ancestor-or-self::book |ancestor-or-self::part
|
||||
|ancestor-or-self::chapter |ancestor-or-self::appendix |ancestor-or-self::preface
|
||||
|ancestor-or-self::sect1 |ancestor-or-self::sect2 |ancestor-or-self::sect3
|
||||
|ancestor-or-self::sect4 |ancestor-or-self::sect5 |ancestor-or-self::index)[last()])))[&scope;][1])]">
|
||||
<xsl:apply-templates select="." mode="reference">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:apply-templates>
|
||||
</xsl:for-each>
|
||||
<xsl:if test="$refs/secondary">
|
||||
<ul>
|
||||
<xsl:apply-templates select="$refs[secondary and count(.|key('secondary',
|
||||
concat($key, " ", normalize-space(concat(secondary/@sortas,
|
||||
secondary[not(@sortas)]))))[&scope;][1]) = 1]" mode="index-secondary">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
<xsl:sort select="translate(normalize-space(concat(secondary/@sortas,
|
||||
secondary[not(@sortas)])), &lowercase;, &uppercase;)"/>
|
||||
</xsl:apply-templates>
|
||||
</ul>
|
||||
</xsl:if>
|
||||
</li>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="indexterm" mode="index-secondary">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:variable name="key" select="concat(&primary;, " ",
|
||||
normalize-space(concat(secondary/@sortas, secondary[not(@sortas)])))"/>
|
||||
<xsl:variable name="refs" select="key('secondary', $key)[&scope;]"/>
|
||||
<li>
|
||||
<strong class="secitem">
|
||||
<xsl:value-of select="secondary"/>
|
||||
<xsl:text>: </xsl:text>
|
||||
</strong>
|
||||
<xsl:for-each select="$refs[generate-id() = generate-id(key('secondary-section',
|
||||
concat($key, " ", generate-id((ancestor-or-self::book |ancestor-or-self::part
|
||||
|ancestor-or-self::chapter |ancestor-or-self::appendix |ancestor-or-self::preface
|
||||
|ancestor-or-self::sect1 |ancestor-or-self::sect2 |ancestor-or-self::sect3
|
||||
|ancestor-or-self::sect4 |ancestor-or-self::sect5 |ancestor-or-self::index)[last()])))[&scope;][1])]">
|
||||
<xsl:apply-templates select="." mode="reference">
|
||||
<xsl:with-param name="scope" select="$scope"/>
|
||||
</xsl:apply-templates>
|
||||
</xsl:for-each>
|
||||
</li>
|
||||
</xsl:template>
|
||||
|
||||
<!--Links (This template also fix a bug in the original code)-->
|
||||
<xsl:template name="reference">
|
||||
<xsl:param name="scope" select="."/>
|
||||
<xsl:param name="zones"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($zones, ' ')">
|
||||
<xsl:variable name="zone" select="substring-before($zones, ' ')"/>
|
||||
<xsl:variable name="zone2" select="substring-after($zones, ' ')"/>
|
||||
<xsl:variable name="target" select="key('sections', $zone)[&scope;]"/>
|
||||
<xsl:variable name="target2" select="key('sections', $zone2)[&scope;]"/>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target.uri">
|
||||
<xsl:with-param name="object" select="$target[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates select="$target[1]" mode="index-title-content"/>
|
||||
</a>
|
||||
<xsl:text> -- </xsl:text>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target.uri">
|
||||
<xsl:with-param name="object" select="$target2[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:text>description</xsl:text>
|
||||
</a>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:variable name="zone" select="$zones"/>
|
||||
<xsl:variable name="target" select="key('sections', $zone)[&scope;]"/>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target.uri">
|
||||
<xsl:with-param name="object" select="$target[1]"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates select="$target[1]" mode="index-title-content"/>
|
||||
</a>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Dropping unneeded anchors -->
|
||||
<xsl:template match="indexterm"/>
|
||||
|
||||
</xsl:stylesheet>
|
76
stylesheets/xhtml/lfs-legalnotice.xsl
Normal file
76
stylesheets/xhtml/lfs-legalnotice.xsl
Normal file
@ -0,0 +1,76 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- Generating the page -->
|
||||
<xsl:template match="legalnotice" mode="titlepage.mode">
|
||||
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
|
||||
<xsl:variable name="filename" select="concat($base.dir, 'prologue/legalnotice.html')"/>
|
||||
<xsl:variable name="title">
|
||||
<xsl:apply-templates select="." mode="title.markup"/>
|
||||
</xsl:variable>
|
||||
<xsl:call-template name="write.chunk">
|
||||
<xsl:with-param name="filename" select="$filename"/>
|
||||
<xsl:with-param name="quiet" select="$chunk.quietly"/>
|
||||
<xsl:with-param name="content">
|
||||
<html>
|
||||
<head>
|
||||
<xsl:call-template name="system.head.content"/>
|
||||
<xsl:call-template name="head.content"/>
|
||||
<xsl:call-template name="user.head.content"/>
|
||||
</head>
|
||||
<body>
|
||||
<xsl:call-template name="body.attributes"/>
|
||||
<div class="{local-name(.)}">
|
||||
<xsl:apply-templates mode="titlepage.mode"/>
|
||||
</div>
|
||||
<hr/>
|
||||
<div class="navfooter">
|
||||
<ul class="footerlinks">
|
||||
<li>
|
||||
<a accesskey="h">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:text>../index.html</xsl:text>
|
||||
</xsl:attribute>
|
||||
<xsl:text>Home</xsl:text>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Making the link-->
|
||||
<xsl:template match="copyright" mode="titlepage.mode">
|
||||
<p class="{name(.)}">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="'prologue/legalnotice.html'"/>
|
||||
</xsl:attribute>
|
||||
<xsl:call-template name="gentext">
|
||||
<xsl:with-param name="key" select="'Copyright'"/>
|
||||
</xsl:call-template>
|
||||
</a>
|
||||
<xsl:call-template name="gentext.space"/>
|
||||
<xsl:call-template name="dingbat">
|
||||
<xsl:with-param name="dingbat">copyright</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
<xsl:call-template name="gentext.space"/>
|
||||
<xsl:call-template name="copyright.years">
|
||||
<xsl:with-param name="years" select="year"/>
|
||||
<xsl:with-param name="print.ranges" select="$make.year.ranges"/>
|
||||
<xsl:with-param name="single.year.ranges" select="$make.single.year.ranges"/>
|
||||
</xsl:call-template>
|
||||
<xsl:call-template name="gentext.space"/>
|
||||
<xsl:apply-templates select="holder" mode="titlepage.mode"/>
|
||||
</p>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
39
stylesheets/xhtml/lfs-mixed.xsl
Normal file
39
stylesheets/xhtml/lfs-mixed.xsl
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<xsl:template match="screen">
|
||||
<xsl:choose>
|
||||
<!-- Temporally hack -->
|
||||
<xsl:when test="child::* = userinput">
|
||||
<pre class="{name(.)}">
|
||||
<kbd class="command">
|
||||
<xsl:value-of select="."/>
|
||||
</kbd>
|
||||
</pre>
|
||||
</xsl:when>
|
||||
<!-- This should be fixed in the XML code -->
|
||||
<!--
|
||||
<xsl:when test="contains(text() , 'SBU')">
|
||||
<p class="sbu">
|
||||
<tt>
|
||||
<xsl:value-of select="substring-before(text() , 'R')"/>
|
||||
<br/>
|
||||
<xsl:value-of select="substring-after(text() , 'U')"/>
|
||||
</tt>
|
||||
</p>
|
||||
</xsl:when>
|
||||
-->
|
||||
<xsl:otherwise>
|
||||
<pre class="{name(.)}">
|
||||
<xsl:apply-templates/>
|
||||
</pre>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
98
stylesheets/xhtml/lfs-navigational.xsl
Normal file
98
stylesheets/xhtml/lfs-navigational.xsl
Normal file
@ -0,0 +1,98 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- Dropping the HEAD links -->
|
||||
<xsl:template name="html.head">
|
||||
<head>
|
||||
<xsl:call-template name="system.head.content"/>
|
||||
<xsl:call-template name="head.content"/>
|
||||
<xsl:call-template name="user.head.content"/>
|
||||
</head>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Header Navigation-->
|
||||
<xsl:template name="header.navigation">
|
||||
<xsl:param name="prev" select="/foo"/>
|
||||
<xsl:param name="next" select="/foo"/>
|
||||
<xsl:param name="nav.context"/>
|
||||
<xsl:variable name="home" select="/*[1]"/>
|
||||
<xsl:variable name="up" select="parent::*"/>
|
||||
<xsl:variable name="row" select="count($prev) > 0 or (count($up) > 0
|
||||
and generate-id($up) != generate-id($home)) or count($next) > 0"/>
|
||||
<xsl:if test="$row and $home != .">
|
||||
<div class="navheader">
|
||||
<xsl:if test="$home != .">
|
||||
<table width="100%" summary="Navigation header">
|
||||
<tr>
|
||||
<th colspan="3" align="center">
|
||||
<h4>
|
||||
<xsl:apply-templates select="$home" mode="object.title.markup"/>
|
||||
<xsl:text> - </xsl:text>
|
||||
<xsl:apply-templates select="$home" mode="object.subtitle.markup"/>
|
||||
</h4>
|
||||
</th>
|
||||
</tr>
|
||||
<xsl:if test="$up != $home">
|
||||
<tr>
|
||||
<th colspan="3" align="center">
|
||||
<h3>
|
||||
<xsl:apply-templates select="$up" mode="object.title.markup"/>
|
||||
</h3>
|
||||
</th>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<tr>
|
||||
<td width="33%" align="left">
|
||||
<a accesskey="p">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target">
|
||||
<xsl:with-param name="object" select="$prev"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:call-template name="navig.content">
|
||||
<xsl:with-param name="direction" select="'prev'"/>
|
||||
</xsl:call-template>
|
||||
</a>
|
||||
<xsl:text> </xsl:text>
|
||||
</td>
|
||||
<td width="34%" align="center">
|
||||
<a accesskey="h">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target">
|
||||
<xsl:with-param name="object" select="$home"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:call-template name="navig.content">
|
||||
<xsl:with-param name="direction" select="'home'"/>
|
||||
</xsl:call-template>
|
||||
</a>
|
||||
</td>
|
||||
<td width="33%" align="right">
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:if test="count($next)>0">
|
||||
<a accesskey="n">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target">
|
||||
<xsl:with-param name="object" select="$next"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:call-template name="navig.content">
|
||||
<xsl:with-param name="direction" select="'next'"/>
|
||||
</xsl:call-template>
|
||||
</a>
|
||||
</xsl:if>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
80
stylesheets/xhtml/lfs-titles.xsl
Normal file
80
stylesheets/xhtml/lfs-titles.xsl
Normal file
@ -0,0 +1,80 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9- Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<xsl:template name="part.titlepage">
|
||||
<div class="titlepage">
|
||||
<h1 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h1>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="chapter.titlepage">
|
||||
<div class="titlepage">
|
||||
<h1 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h1>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="preface.titlepage">
|
||||
<div class="titlepage">
|
||||
<h1 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h1>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="sect1.titlepage">
|
||||
<xsl:choose>
|
||||
<!-- I should find a better test -->
|
||||
<xsl:when test="position() = 4">
|
||||
<div class="titlepage">
|
||||
<xsl:if test="@id">
|
||||
<a id="{@id}" name="{@id}"/>
|
||||
</xsl:if>
|
||||
<h2 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h2>
|
||||
</div>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<div class="titlepage">
|
||||
<h1 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h1>
|
||||
</div>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="sect2.titlepage">
|
||||
<xsl:choose>
|
||||
<xsl:when test="string-length(title) = 0"/>
|
||||
<xsl:otherwise>
|
||||
<div class="titlepage">
|
||||
<xsl:if test="@id">
|
||||
<a id="{@id}" name="{@id}"/>
|
||||
</xsl:if>
|
||||
<h3 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h3>
|
||||
</div>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="dedication.titlepage">
|
||||
<div class="titlepage">
|
||||
<h2 class="{name(.)}">
|
||||
<xsl:value-of select="title"/>
|
||||
</h2>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
144
stylesheets/xhtml/lfs-toc.xsl
Normal file
144
stylesheets/xhtml/lfs-toc.xsl
Normal file
@ -0,0 +1,144 @@
|
||||
<?xml version='1.0' encoding='ISO-8859-1'?>
|
||||
|
||||
<!-- Version 0.9 - Manuel Canales Esparcia <macana@lfs-es.org> -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
version="1.0">
|
||||
|
||||
<!-- General settings -->
|
||||
<xsl:param name="generate.toc">
|
||||
appendix toc
|
||||
book toc,title,figure,table,example,equation
|
||||
chapter nop
|
||||
part toc
|
||||
preface nop
|
||||
qandadiv nop
|
||||
qandaset nop
|
||||
reference nop
|
||||
sect1 nop
|
||||
sect2 nop
|
||||
sect3 nop
|
||||
sect4 nop
|
||||
sect5 nop
|
||||
section nop
|
||||
set nop
|
||||
</xsl:param>
|
||||
|
||||
<xsl:param name="toc.section.depth">1</xsl:param>
|
||||
|
||||
<xsl:param name="toc.max.depth">3</xsl:param>
|
||||
|
||||
<!-- Making the TOC -->
|
||||
<xsl:template name="make.toc">
|
||||
<xsl:param name="toc-context" select="."/>
|
||||
<xsl:param name="nodes" select="/NOT-AN-ELEMENT"/>
|
||||
<xsl:if test="$nodes">
|
||||
<div class="toc">
|
||||
<h3>
|
||||
<xsl:call-template name="gentext">
|
||||
<xsl:with-param name="key">TableofContents</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</h3>
|
||||
<ul>
|
||||
<xsl:apply-templates select="$nodes" mode="toc">
|
||||
<xsl:with-param name="toc-context" select="$toc-context"/>
|
||||
</xsl:apply-templates>
|
||||
</ul>
|
||||
</div>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Making the subtocs -->
|
||||
<xsl:template name="subtoc">
|
||||
<xsl:param name="toc-context" select="."/>
|
||||
<xsl:param name="nodes" select="NOT-AN-ELEMENT"/>
|
||||
<xsl:variable name="subtoc">
|
||||
<ul>
|
||||
<xsl:apply-templates mode="toc" select="$nodes">
|
||||
<xsl:with-param name="toc-context" select="$toc-context"/>
|
||||
</xsl:apply-templates>
|
||||
</ul>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="depth">
|
||||
<xsl:choose>
|
||||
<xsl:when test="local-name(.) = 'sect1'">1</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="depth.from.context"
|
||||
select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
|
||||
<li class="{name(.)}">
|
||||
<xsl:call-template name="toc.line">
|
||||
<xsl:with-param name="toc-context" select="$toc-context"/>
|
||||
</xsl:call-template>
|
||||
<xsl:if test="$toc.section.depth > $depth and count($nodes)>0
|
||||
and $toc.max.depth > $depth.from.context">
|
||||
<xsl:copy-of select="$subtoc"/>
|
||||
</xsl:if>
|
||||
</li>
|
||||
</xsl:template>
|
||||
|
||||
<!--Adding the h* tags and dropping redundats links-->
|
||||
<xsl:template name="toc.line">
|
||||
<xsl:param name="toc-context" select="."/>
|
||||
<xsl:param name="depth" select="1"/>
|
||||
<xsl:param name="depth.from.context" select="8"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="local-name(.) = 'sect1'">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target">
|
||||
<xsl:with-param name="context" select="$toc-context"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
||||
</a>
|
||||
</xsl:when>
|
||||
<xsl:when test="local-name(.) = 'chapter' or local-name(.) = 'preface'">
|
||||
<h4>
|
||||
<xsl:variable name="label">
|
||||
<xsl:apply-templates select="." mode="label.markup"/>
|
||||
</xsl:variable>
|
||||
<xsl:copy-of select="$label"/>
|
||||
<xsl:if test="$label != ''">
|
||||
<xsl:value-of select="$autotoc.label.separator"/>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
||||
</h4>
|
||||
</xsl:when>
|
||||
<xsl:when test="local-name(.) = 'part'">
|
||||
<h3>
|
||||
<xsl:variable name="label">
|
||||
<xsl:apply-templates select="." mode="label.markup"/>
|
||||
</xsl:variable>
|
||||
<xsl:copy-of select="$label"/>
|
||||
<xsl:if test="$label != ''">
|
||||
<xsl:value-of select="$autotoc.label.separator"/>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
||||
</h3>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<h3>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:call-template name="href.target">
|
||||
<xsl:with-param name="context" select="$toc-context"/>
|
||||
</xsl:call-template>
|
||||
</xsl:attribute>
|
||||
<xsl:variable name="label">
|
||||
<xsl:apply-templates select="." mode="label.markup"/>
|
||||
</xsl:variable>
|
||||
<xsl:copy-of select="$label"/>
|
||||
<xsl:if test="$label != ''">
|
||||
<xsl:value-of select="$autotoc.label.separator"/>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates select="." mode="titleabbrev.markup"/>
|
||||
</a>
|
||||
</h3>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
17
tidy.conf
Normal file
17
tidy.conf
Normal file
@ -0,0 +1,17 @@
|
||||
indent-spaces: 2
|
||||
wrap: 78
|
||||
tab-size: 8
|
||||
input-encoding: latin1
|
||||
output-encoding: latin1
|
||||
newline: CRLF
|
||||
write-back: yes
|
||||
markup: yes
|
||||
indent: yes
|
||||
hide-endtags: no
|
||||
uppercase-tags: no
|
||||
logical-emphasis: no
|
||||
drop-font-tags: no
|
||||
tidy-mark: no
|
||||
numeric-entities: no
|
||||
show-warnings: no
|
||||
quiet: yes
|
Loading…
Reference in New Issue
Block a user