Changeset 1874

Show
Ignore:
Timestamp:
05/06/07 20:15:12 (20 months ago)
Author:
alexander
Message:

Documentation changes from Archaic (slightly edited)

Location:
trunk
Files:
7 modified

Legend:

Unmodified
Added
Removed
  • trunk/Makefile

    r1872 r1874  
    2222-include Makefile.personal 
    2323 
    24 # MP:       mount point 
    25 # timezone: default timezone 
    26 # pagesize: default paper size for groff. 
    27 # ROOT:     name of this directory, as seen from chroot 
     24#============================================================================== 
     25 
     26# Here are the various variables you might want/need to change. You can change 
     27# them here or in Makefile.personal. Variables mentioned in the README will not 
     28# be commented on here. 
     29 
     30export MPBASE ?= /mnt/lfs 
     31 
     32# Free disk space needed for the build. 
     33ROOTFS_MEGS := 1536 
     34 
     35export VERSION ?= x86-6.3-pre2 
     36export CFLAGS ?= -O2 -pipe -s -fno-strict-aliasing -mtune=i686 
     37export CXXFLAGS ?= $(CFLAGS) 
     38export LFS_TARGET ?= i486-pc-linux-gnu 
     39 
     40 
     41# Default timezone 
     42export timezone ?= GMT 
     43# Default paper size for groff. 
     44export pagesize ?= letter 
     45 
    2846# HTTP:     Default http server for the lfs-base packages 
    2947# HTTPBLFS: Default http server for the BLFS packages 
    30  
    31 export MPBASE ?= /mnt/lfs 
    32 export MP ?= $(MPBASE)/image 
    33 export timezone ?= GMT 
    34 export pagesize ?= letter 
    35 export ROOT ?= /lfs-livecd 
    3648export HTTP ?= http://ftp.lfs-matrix.net/pub/lfs/conglomeration 
    3749export HTTPBLFS ?= http://ftp.lfs-matrix.net/pub/blfs/conglomeration 
    3850 
    39 # Directory variables 
    40 #============================================================================== 
    41 export HOSTNAME := lfslivecd 
     51#============================================================================== 
     52# The following variables are not expected to be changed 
     53 
    4254export WD := /tools 
     55export MP := $(MPBASE)/image 
     56export ROOT := /lfs-livecd 
    4357export SRC := /sources 
    4458export LFSSRC := /lfs-sources 
    4559export PKG := packages 
     60 
    4661export MKTREE := $(MP)$(ROOT) 
    4762export CONFIG_SITE := $(ROOT)/scripts/config.site 
    48  
    49 ROOTFS_MEGS := 1536 
    50  
    51 export VERSION := x86-6.3-pre2 
    52 export CFLAGS := -O2 -pipe -s -fno-strict-aliasing -mtune=i686 
    53 export LINKER := ld-linux.so.2 
    54 export LFS_TARGET := i486-pc-linux-gnu 
    5563 
    5664# Environment Variables 
     
    6977# More Environment Variables 
    7078#============================================================================== 
    71 export CXXFLAGS := $(CFLAGS) 
    72  
    7379export chbash-pre-bash := SHELL=$(WD)/bin/bash 
    7480export chbash-post-bash := SHELL=/bin/bash 
     
    9197 
    9298all: test-host lfs-base extend-lfs iso 
    93         @echo "The LiveCD, $(MPBASE)$(ROOT)/lfslivecd-$(VERSION).iso, is ready!" 
    94  
    95 minimal: test-host lfs-base extend-minimal iso 
    9699        @echo "The LiveCD, $(MPBASE)$(ROOT)/lfslivecd-$(VERSION).iso, is ready!" 
    97100 
     
    186189        @install -m644 etc/issue $(MP)/etc/issue 
    187190 
    188 extend-minimal: $(MKTREE) 
    189         @cp $(WD)/bin/which $(MP)/usr/bin 
    190         @cp $(ROOT)/scripts/unpack $(MP)/bin 
    191         @chroot "$(MP)" $(chenv-blfs) 'set +h && cd $(ROOT) && \ 
    192          make blfs-minimal $(chbash-post-bash)' 
    193         @rm -rf $(LFSSRC) $(MP)$(LFSSRC) 
    194         @sed '/sources/d' etc/issue >$(MP)/etc/issue 
    195         @chmod 644 $(MP)/etc/issue 
    196  
    197191lfsuser: 
    198192        @-groupadd lfs 
     
    391385        @sed -i "s/\[version\]/$(VERSION)/" $(MP)/root/README 
    392386        @install -m600 root/.bashrc $(MP)/root/.bashrc 
    393         @install -m755 scripts/{net-setup,greeting,livecd-login,ll} $(MP)/usr/bin/  
    394         @sed 's|_LINKER_|$(LINKER)|' scripts/shutdown-helper > $(MP)/usr/bin/shutdown-helper 
    395         @chmod 755 $(MP)/usr/bin/shutdown-helper 
    396         @cp -ra root $(MP)/etc/skel 
     387        @install -m755 scripts/{net-setup,greeting,ll} $(MP)/usr/bin/  
     388        @install -m755 scripts/{livecd-login,shutdown-helper} $(MP)/usr/bin/ 
     389        @svn export --force root $(MP)/etc/skel 
    397390 
    398391iso: prepiso 
  • trunk/README

    r1816 r1874  
    33~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    44 
    5 I.   Introduction 
    6 II.  Using the Makefiles 
    7   A.    How These Makefiles Work 
    8   B.    Configuring the Environment 
    9   C.    Obtaining the Sources 
    10   D.    Running the Scripts 
    11 III. Editing the Makefiles 
    12 IV.  End Notes 
     5I.   Using the Makefiles 
     6  A.   How These Makefiles Work 
     7  B.   Configuring the Environment 
     8  C.   Obtaining the Sources 
     9  D.   Running the Scripts 
     10II.  Editing the Makefiles 
     11III. End Notes 
    1312 
    1413~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    1514 
    16 I. Introduction 
    17  
    18   There have been many LiveCDs (aka BootCDs) made and used within the LFS 
    19 community. Of particular note were Chris Lingard's and Jeremy Utley's. By some 
    20 random freak of chance, and perhaps a bit of persistence on my part, a CD of 
    21 mine was chosen to be used as the 'Official' LFS CD with the release of 
    22 LFS 6.0. 
    23  
    24   I based much of my work on the ideas and work of Chris and Jeremy, and from 
    25 suggestions and comments from various LFS users, but the originalCD had still 
    26 been largely my work. However, for the idea of an official CD to survive and 
    27 grow within the community, help and ideas need to continue to come from more 
    28 than just one source. 
    29  
    30   My intention with the LFS LiveCD project, then, was to devise a framework, a 
    31 usable setting in which others may contribute and build CDs that live up to the 
    32 official standard. Originally, the idea was just to keep config files and a 
    33 list of required packages in a Subversion repository. What actually happened 
    34 was that a fully automated scripting system was devised specifically for the 
    35 purpose of building the LiveCD iso. This allows both an easily repeatable way 
    36 of building the CD and a means to track its configuration and history. 
    37  
    38   Many thanks to all who have contributed to the production of these Makefiles 
    39 (and the CDs they in turn produce) by either suggestions, ideas, support, or 
    40 submitted edits. 
    41  
    42         - Jeremy Huntwork 
    4315 
    4416~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    4517 
    46 II. Using the Makefiles 
     18I. Using the Makefiles 
    4719 
    4820A. How These Makefiles Work 
     
    5325that are used throughout the build. Inside the packages directory there is 
    5426a sub-directory for each package the LiveCD will build and install. Each of 
    55 those directories contains a Makefile specific for that package, with the 
    56 specific instructions it needs in order to compile. Any patches which that 
    57 package needs (and which are not part of the LFS or BLFS books) are included 
    58 in that directory as well. 
     27those directories contains a Makefile with the specific instructions it needs to 
     28compile that package. Any patches which that package needs (and which are not 
     29part of the LFS or BLFS books) are included in that directory as well. 
    5930 
    6031  Part of the build is run as an unprivileged user, 'lfs', and the rest is 
     
    6839 
    6940  In the correct order, and in the proper environment, each package's Makefile 
    70 is called and run. These download the source files it needs, verifies that 
    71 they are correct via sha1sum, unpacks the tarballs into its own directory, 
    72 runs the build instructions and sends the output into a log-file. 
     41is called and run. These download the source files needed, verify the SHA1 sums, 
     42unpack the tarball(s) into its own directory, run the build instructions, and 
     43send the output into a log-file. 
    7344 
    7445B. Configuring the Environment 
     
    7748as this README before attempting to run the scripts. There are a few variables 
    7849that you may want to customize to meet the needs of your own particular setup 
    79 and for the type of CD you are hoping to produce. Here's a list of the main 
     50and for the type of CD you are hoping to produce. Here is a list of the main 
    8051variables to look for: 
    8152 
     
    8657follow a specific versioning scheme. 
    8758 
    88 * KVERS 
    89   This is the version of the Linux kernel to include on the CD 
    90  
    91 * MP 
     59* MPBASE 
    9260  This is the Mount Point, the directory that you will be using to house the 
    9361build as it runs. These scripts (this entire directory and its sub-directories) 
    94 should be placed inside the MP directory and run from there. Default is 
     62should be placed inside the $MPBASE directory and run from there. Default is 
    9563/mnt/lfs. 
    9664 
    9765* ROOT 
    98   This signifies the root-point of the build scripts. In other words, this 
    99 is the name of the actual directory containing the build scripts. Default is 
    100 /lfs-livecd. If you accept the defaults for both this variable and MP, then 
    101 this directory and all its sub-directories should exist as 'lfs-livecd' within 
    102 the direcotry '/mnt/lfs'. It is important that this variable have a leading 
    103 '/' as it is referenced by the scripts in both the host environment and the 
    104 chroot environment. 
     66  This signifies the root-point of the build scripts. In other words, this is 
     67the name of the directory containing the build scripts. A symlink will be made 
     68from this directory to the root of the host filesystem. The default name of this 
     69directory is lfs-livecd. If you accept the defaults for both this variable and 
     70$MPBASE, then this directory will exist as /mnt/lfs/lfs-livecd. A symlink will 
     71be made to /lfs-livecd on the host system. It is important that this variable 
     72have a leading '/' as it is referenced by the scripts in both the host 
     73environment and the chroot environment. 
    10574 
    106 * PM 
    107   This is the level of parallel building you want make to use for each 
    108 package. Default is -j3, but you may wish to increase or decrease it slightly 
    109 as the case may be. 
    110  
    111 Any of the other variables could be changed, but that isn't recommended. Some 
    112 of them are crucial to the successful building of the CD, especially the ones 
    113 containing environment variables. 
     75  All of the above variables (and others) can be edited directly in the 
     76top-level Makefile (the one in the same directory as this README). However, if 
     77you are tracking SVN, then each 'svn up' will overwrite your custom changes. To 
     78overcome that, you can create a file called 'Makefile.personal' and add the 
     79desired changes there. The original Makefile will source that file. 'svn up' 
     80will not affect 'Makefile.personal'. 
    11481 
    11582C. Obtaining the Sources 
    11683 
    117   The scripts will attempt to download the sources as it needs them. Since it 
    118 is highly unlikely that you will have all the correct sources already 
    119 downloaded to your system, a working internet connection is almost a 
    120 necessity when using these scripts. 
    121  
    122   If you want to gather the source packages you'll need beforehand, you will 
    123 need to create a directory called 'sources' in the $(MP) directory and place 
    124 your packages there. You should either ensure that you download the *exact* 
    125 same package from the same URL the scripts use, or you should verify that 
    126 the SHA1 sum in that package's Makefile matches the tarball you have 
    127 downloaded. 
     84  The scripts will attempt to download the sources and book patches as it needs 
     85them. If you want to gather the sources and book patches beforehand, create a 
     86directory called 'sources' in the $(MPBASE) directory and place the sources and 
     87book patches there. You should ensure that you download the *exact* same sources 
     88and book patches the scripts use and then verify the SHA1 sums. This will 
     89prevent the build from failing unexpectedly on a bad checksum during the build. 
    12890 
    12991D. Running the Scripts 
     
    139101make 
    140102 
    141   The above example makes use of the default variables for $(MP) and $(ROOT). 
     103  The above example makes use of the default variables for $(MPBASE) and 
     104$(ROOT). 
    142105 
    143106~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    144107 
    145 III. Editing the Makefiles 
     108II. Editing the Makefiles 
    146109 
    147110~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    148111 
    149 IV. End Notes 
     112III. End Notes 
  • trunk/doc/README

    r1870 r1874  
    8282The LiveCD attempts to configure X for your video card automatically. The 
    8383process may fail if you have more than one video card, if your video card 
    84 doesn't support 24-bit color depth, or if your monitor is not Plug-n-Play 
    85 compatible (in other words, doesn't tell its characteristics to Xorg via DDC). 
     84does not support 24-bit color depth, or if your monitor is not Plug-n-Play 
     85compatible (in other words, does not tell its characteristics to Xorg via DDC). 
    8686In such cases, you have to edit the /etc/X11/xorg.conf file manually, using 
    8787vim, joe or nano. 
     
    118118                                # report max dot clock = 0 MHz 
    119119        HorizSync       30-92   # because gtf said "hsync: 91.38 kHz" 
    120         VertRefresh     56-86   # because a 85 Hz mode has been requested 
     120        VertRefresh     56-86   # because an 85 Hz mode has been requested 
    121121        # the Modeline may also be pasted here 
    122122EndSection 
     
    155155* /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_rsa_key 
    156156    Create those files as described in the ssh-keygen(1) manual page. If you 
    157     don't do that, random host keys will be generated for you automatically 
    158     during the boot process. This is less secure, because you can't verify 
     157    do not do that, random host keys will be generated for you automatically 
     158    during the boot process. This is less secure, because you cannot verify 
    159159    them. 
    160160 
     
    194194 
    195195While this CD configures the LANG environment variable, console font and 
    196 keymap for you, it's your responsibility to configure other locale-dependent 
     196keymap for you, it is your responsibility to configure other locale-dependent 
    197197parameters manually. You may want to configure character sets for SAMBA in 
    198198/etc/samba/smb.conf, and to explicitly specify the "iocharset" and "codepage" 
     
    220220=========================== 
    221221The LiveCD includes the "brltty" program that allows a blind person to read 
    222 the contents of Linux text console on a Braille display. In order to 
     222the contents of the Linux text console on a Braille display. In order to 
    223223activate it: 
    224224 
    225 * Insert the CD into the drive, reboot the computer. The BIOS will produce 
    226   a beep, indicating successful power-on self-testing. Then it will load 
    227   the boot loader from the CD, and the boot loader will produce a second beep. 
    228 * After the second beep, type: 
     225* Insert the CD into the drive, reboot the computer. Some BIOSes will produce 
     226  a beep indicating successful power-on self-testing. If so, the boot loader 
     227  will produce a second beep indicating the boot prompt is available. 
     228* After that beep (first or second depending on if your computer normally beeps 
     229* upon startup), type: 
    229230 
    230231linux brltty=eu,ttyS0 
     
    236237Note: in some locales, brltty displays incorrect Braille patterns. This is 
    237238related to the fact that Braille tables in brltty are indexed with 
    238 encoding-dependent byte representing the character. Such representation 
     239encoding-dependent bytes representing the character. Such representation 
    239240becomes invalid when another encoding for the same language is used. 
    240 E.g., that's why the "ru" table (designed for KOI8-R encoding) produces 
     241E.g., that is why the "ru" table (designed for KOI8-R encoding) produces 
    241242wrong result in the ru_RU.CP1251 locale. 
    242243 
    243244Known non-working cases: 
    244245    All CP1251-based locales (no CP1251 Braille table in brltty) 
    245     zh_TW (configuration instructions available in Chinese only) 
     246    zh_TW (configuration instructions available in Chinese only). If you use 
     247      this locale, please email livecd@linuxfromscratch.org and help us add 
     248      support for it. 
    246249    All other Chinese, Japanese and Korean locales (no support in brltty) 
    247250 
    248 If brltty displays incorrect Braille patterns displays incorrect Braille 
    249 patterns in your locale, please revert to the en_US locale, thus avoiding 
    250 the use of non-ASCII characters. If you know how to fix this problem 
    251 for your locale, mail this information to livecd@linuxfromscratch.org. 
     251If brltty displays incorrect Braille patterns in your locale, please revert to 
     252the en_US locale, thus avoiding the use of non-ASCII characters. If you know how 
     253to fix this problem for your locale, mail this information to 
     254livecd@linuxfromscratch.org. 
    252255 
    253256RESUMING THE BUILD 
     
    259262 
    260263Instructions from there should work on this CD, however, there is a simpler 
    261 (but highly experimental) method described below. 
     264method (hibernation) described below. 
    262265 
    2632661) Make sure you have (or are planning to create) a swap partition not used 
     
    269272   linux LANG=ru_RU.UTF-8 TZ=Asia/Yekaterinburg resume=/dev/hda2 
    270273 
    271 3) In chapter 2, the book tells you to create (if you didn't do it already), 
    272    format that partition with mkswap, and activate it with swapon. Follow the 
    273    instructions in the book. 
    274  
    275 4) If you use X window system, take the following into account: 
     274   On some systems, hibernation refuses to work if ACPI is enabled. You 
     275   can disable ACPI by adding "acpi=off" to the kernel arguments. 
     276 
     277   Alternatively, once the system is running, you can activate hibernation by 
     278   echoing the major and minor numbers of the partition to /sys/power/resume as 
     279   such: 
     280 
     281   # ls -l /dev/hda2 
     282   brw-rw---- 1 root disk 3, 2 2006-07-10 17:51 /dev/hda2 
     283   # echo 3:2 >/sys/power/resume 
     284 
     2853) At this point, the system is up and running. If you do not already have a 
     286   swap partition, or wish to create a new one, chapter 2 of the LFS book will 
     287   show you how to create, format, and activate one. 
     288 
     2894) If you use the X window system, take the following into account: 
    276290   * Users of old S3 video cards should uncomment the "EnableVbetool" line 
    277291     in the /etc/hibernate/common.conf file. 
     
    285299 
    286300NOTE: you must unmount all USB flash drives and all partitions used by other 
    287 operating systems installed on your computer before hibernating! Don't 
     301operating systems installed on your computer before hibernating! Do not 
    288302attempt to mount partitions used by a hibernated system from other systems 
    289303(even read-only, because there is no true read-only mount on journaled 
     
    297311 
    2983129) The computer will load its state from the swap partition and behave as if 
    299    you didn't power it off at all (except breaking all network connections). 
     313   you did not power it off at all (except breaking all network connections). 
    300314   The build will automatically continue. 
    301315 
    302 The procedure is a bit more complicated if your swap is on a LVM volume 
     316The procedure is a bit more complicated if your swap is on an LVM volume 
    303317or on software RAID. In this case, instead of passing the resume=... argument, 
    304318you should boot the CD as usual and make actions needed for the kernel to see 
    305 the swap device (for LVM, that's "vgchange -ay"). After doing that, note 
     319the swap device (for LVM, that is "vgchange -ay"). After doing that, note 
    306320the major and minor device number for that device (assigning persistent numbers 
    307321is highly recommended), and echo them to /sys/power/resume. E.g., for LVM: 
     
    320334=========================== 
    321335This CD comes with the "jhalfs" tool that allows extracting commands from the 
    322 XML version of LFS or CLFS book into Makefiles and shell scripts. You can find 
    323 the jhalfs installation in the home directory of the "jhalfs" user, and the 
    324 XML LFS book is in /usr/share/LFS-BOOK-SVN-XML. In order to use jhalfs, you 
    325 have to: 
     336XML version of the LFS or CLFS book into Makefiles and shell scripts. You can 
     337find the jhalfs installation in the home directory of the "jhalfs" user, and the 
     338XML LFS book is in /usr/share/LFS-BOOK-SVN-XML. In order to use jhalfs, you have 
     339to: 
    326340 
    327341* create a directory for your future LFS system and mount a partition there 
     
    330344* as user "jhalfs", follow the instructions in the jhalfs README file 
    331345 
    332 Note that this user already has the required sudo access. 
     346Note that this user already has the required root access (via sudo) to complete 
     347the build. 
    333348 
    334349THANKS 
  • trunk/etc/bashrc

    r1277 r1874  
    11alias ls='ls --color=auto' 
     2alias ll='ls -l' 
    23eval $(dircolors -b /etc/dircolors) 
    34 
  • trunk/etc/issue

    r1773 r1874  
    11 
    22This is the Official Linux From Scratch LiveCD 
    3 Created by: 
    4 Jeremy Huntwork, Project Leader 
    5 Alexander Patrakov, Maintainer, i18n 
    6 Justin Knierim, Maintainer 
    7 Thomas Pegg, Maintainer 
     3 
     4Created by: Jeremy Huntwork 
     5Maintained by: Alexander Patrakov 
    86 
    97Version: 
     
    1816livecd@linuxfromscratch.org 
    1917 
    20 Type greeting at any time to view this message again. 
     18Type greeting at any time to view this message again. 
    2119 
  • trunk/packages/glibc/Makefile

    r1833 r1874  
    5151        cd ../$(DIR) ; unpack ../$(FILE2) ; mv glibc-libidn-$(VRS) libidn 
    5252        sed -i \ 
    53         's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/$(LINKER) -o|' \ 
     53        's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.2 -o|' \ 
    5454                ../$(DIR)/scripts/test-installation.pl 
    5555# LiveCD specific locale additions 
  • trunk/scripts/ll

    r349 r1874  
    1 #!/bin/bash  
    2 /bin/ls --color=always --almost-all --format=long --time-style=+"%Y.%m.%d %T" --block-size=1K $@ | grep -e^d 
    3 /bin/ls --color=always --almost-all --format=long --time-style=+"%Y.%m.%d %T" --block-size=1K $@ | grep -e^[-lbc]