1 | How to edit the LFS-BOOK
|
---|
2 | ------------------------
|
---|
3 |
|
---|
4 | This document explains the necessary steps to be taken in order to make
|
---|
5 | changes to the LFS-BOOK. Not every single aspect is detailed, just the
|
---|
6 | more tricky ones.
|
---|
7 |
|
---|
8 | * No matter what, always make the following changes whenever you do
|
---|
9 | something:
|
---|
10 |
|
---|
11 | Whenever you make a change, no matter how small, update the book's version
|
---|
12 | number:
|
---|
13 |
|
---|
14 | 1) Open the intel.xml file.
|
---|
15 |
|
---|
16 | 2) Find <!ENTITY version "yyyymmdd"> and make sure it contains the date on
|
---|
17 | which you are making the change. If today is June 11th, 2001, change it
|
---|
18 | to <!ENTITY version "20010611".
|
---|
19 |
|
---|
20 | 3) Find <ENTITY releasedate "Month, day, year"> and make sure it contains
|
---|
21 | the same date as the 'version' entity. If today is June 11th, 2001, change
|
---|
22 | it to: <!ENTITY releasedate "June 11th, 2001">
|
---|
23 |
|
---|
24 |
|
---|
25 | * Updating a package's version
|
---|
26 |
|
---|
27 | Follow these steps in order to change a package (for example when you tested
|
---|
28 | a newer version and want to include it in the book). Let's assume you're
|
---|
29 | upgrading to bash-2.05.
|
---|
30 |
|
---|
31 | 1) Download bash-2.05 to the linuxfromscratch.org server in the
|
---|
32 | /home/ftp/conglomeration directory. If the file isn't compressed with bzip2,
|
---|
33 | but with gzip for example, ungzip it, then bzip2 it.
|
---|
34 |
|
---|
35 | 2) Enter the /home/ftp/cvs directory.
|
---|
36 |
|
---|
37 | 3) Remove the symlink that points to the previous version of the
|
---|
38 | package.
|
---|
39 |
|
---|
40 | 4) You can remove the real file from the /home/ftp/conglomeration
|
---|
41 | directory only is you are absolutely sure that there are no other books
|
---|
42 | currently online that use that package version. If you don't remember
|
---|
43 | which book versions are online right now, check the LFS website.
|
---|
44 |
|
---|
45 | 5) Make a new symlink by running the following command:
|
---|
46 | ln -s ../conglomeration/bash-2.05.tar.bz2
|
---|
47 |
|
---|
48 | 6) Obtain the file size of the new package (run ls -l
|
---|
49 | /home/ftp/conglomeration/packagename). Divide this number by 1024 and
|
---|
50 | remember the result.
|
---|
51 |
|
---|
52 | 7) Enter the /home/ftp directory and create a new lfs-packages tarball.
|
---|
53 | If today is June 11th, 2001 1:09 PM, run the following:
|
---|
54 | tar cvfh lfs-packages-intel-cvs-20010611-1309.tar cvs
|
---|
55 | mv lfs-packages-intel-cvs-20010611-1309.tar cvs
|
---|
56 |
|
---|
57 | The reason for adding the hour and minute is that one may end up
|
---|
58 | creating more than one tarball a day and it's easier this way to find
|
---|
59 | out which packages file was being used in case there are a lot of
|
---|
60 | updates.
|
---|
61 |
|
---|
62 | 8) Obtain the file size of the newly created tarball by running ls -l,
|
---|
63 | divide the number by 1024 and remeber the result.
|
---|
64 |
|
---|
65 | 9) Open the intel.xml file.
|
---|
66 |
|
---|
67 | 10) At the bottom of the file find the ENTITY that belongs to the package.
|
---|
68 | You'll find it as <!ENTITY package-version "version">. Change the
|
---|
69 | bash-version entity as follows: <!ENTITY bash-version "2.05">
|
---|
70 |
|
---|
71 | 11) Edit the <!ENTITY all-version> entity and update the file name to
|
---|
72 | match the name of the tarball you just created.
|
---|
73 |
|
---|
74 | 12) Edit the <!ENTITY all-version> entity and update the file name to
|
---|
75 | match the name of the new tarball you just created.
|
---|
76 |
|
---|
77 | 13) Open the chapter3/bash.xml file.
|
---|
78 |
|
---|
79 | 14) Enter the new size that you calculated in step 6.
|
---|
80 |
|
---|
81 | 15) Open the chapter3/all.xml file.
|
---|
82 |
|
---|
83 | 16) Update the file size to match the value you calculated in step 8.
|
---|
84 |
|
---|
85 | 17) Open the chapter3/packages.xml file, scroll to the bottom of the
|
---|
86 | file and enter the same size as you entered in the previous step. Also
|
---|
87 | divide this number by 1024 and enter the result as the MB value between
|
---|
88 | brackets.
|
---|
89 |
|
---|
90 | Please don't use the "du -h" command to obtain the file size. The result
|
---|
91 | of du is not acurate enough (it doesn't report the actual file size, but
|
---|
92 | the size of clusters the file is using).
|
---|
93 |
|
---|
94 | If you are updating more than one package at the same time, don't
|
---|
95 | re-create the tarball every time. Just update all the symlinks and
|
---|
96 | create a new tarball once that includes all your updated packages.
|
---|
97 |
|
---|
98 |
|
---|
99 | * Adding a new package update to Bugzilla
|
---|
100 |
|
---|
101 | 1) Login to bugzilla
|
---|
102 |
|
---|
103 | 2) Open bug #30
|
---|
104 |
|
---|
105 | 3) Check if the package is listed from a previous update
|
---|
106 |
|
---|
107 | 4) If so, reopen it and change the version number to match the new one
|
---|
108 |
|
---|
109 | 5) If not, add a new bug and fill it out as usual
|
---|
110 |
|
---|
111 | 6) When added, go back to the new bug and under "Bug xx depends on"
|
---|
112 | enter "30" so that this new bug is added to the parent bug #30
|
---|
113 |
|
---|
114 | 7) Click on "Commit" to commit this change
|
---|
115 |
|
---|
116 |
|
---|