LFS minimal install (small book plus zillion questions)
Linux From ScratchThis Forum is for the discussion of LFS.
LFS is a project that provides you with the steps necessary to build your own custom Linux system.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
LFS minimal install (small book plus zillion questions)
First let me state my goal: To create a more basic LFS install. The book states that ch. 6 creates an environment more for user convenience than a minimal install would. I want that minimal install.
To further explain, I want a system without networking, database stuff, and a bunch of utilities that won't get used to begin with. I've already gone through the LFS book and installed it numerous times, and have even written my own installation scripts. I also did some research on FHS and have conceptualized it on a basic level, at least.
But I have to wonder: is all that software really necessary? Berkeley DB? M4? (etc.) I know there is some I will list and you'll wanna shout "YES!!", but I'm going for a BASIC install and can add stuff I know I'll want later. I'm doing this as part of the learning process for myself, and see what is truly a MINIMAL working system, and what is truly necessary.
Now on to the software in question (in order by the LFS book):
1. In chapter 5, do I really need TCL, Expect, and DejaGNU if I am not going to run any tests? (I've been through all the tests a few times and it all works)
2. Man - can install later
3. Binutils - I think I figured it is necessary
4. GCC - is it necessary after a package manager (ex. dpkg) is installed, if I am not going to recompile the kernel?
5. Berkeley DB
6. Sed - is it needed after it is used in the LFS book?
7. E2fsprogs - can install later
8. Iana-etc
9. M4
10. Bison
11. Ncurses - I know this is needed for "make menuconfig" when compiling the kernel, but is it used any other time?
12. procps - can install later
13. libtool
14. perl
15. readline - figured LFS uses it during Bash install's configure script, and I know what it does, but is it necessary?
16. zlib - does tar, gzip and bzip2 call this library?
17. autoconf - see 18
18. automake - does Make NEED this?
19. diffutils - I'm guessing Patch uses it, other than just comparing files
20. file
21. findutils - can install later
22. flex
23. gawk
24. gettext
25. grep - can install later
26. groff
27. kbd
28. less
29. mktemp - is this used for making temp files?
30. module-init-tools - can install later, maybe
31. patch - can install later
32. psmisc - can install later
33. shadow - can install later
34. sysklogd
35. texinfo
36. udev - used during boot or mounting of drives (hard, cd, usb)?
(entries without any text after them mean I have no clue about them, and/or they just don't sound necessary)
Any insight to this is greatly appreciated.
Thanks,
Darrell
I'm not particular on size, but I just want to leave out unnecessary fluff. Basically I want to start as close to ground zero as I can, and work my way up. I tried Debian's net install, but even without choosing any extra software, it appears to have a bunch of extra stuff.
I'm just trying to determine what is fluff and what is -absolutely- necessary for a system to be able to install more software. I know different people will have different definitions of 'necessary' and 'fluff'. To me, anything that isnt needed to have a shell, basic commands (coreutils and util-linux), and the ability to compile and install software, is fluff.
Here are the packages I am installing during this trial run of LFS:
Linux headers, glibc, binutils, gcc, sed, coreutils, ncurses, readline, bash, bzip2, grub, gzip, make, module-init-tools, sysvinit, tar, udev, util-linux, vim, kernel
The init scripts that reside in /etc/rc.d/init.d do use some of the programs you are not installing:
- cleanfs, console, functions and udev all use grep (I have more, but those won't be installed in a basic install).
- functions and modules both use sed.
Just 2 I checked. You might want to check all the other progs you want to leave out against these scripts.
That should give you a reasonable system to then install other stuff to. However i may have missed something.
There is no networking stuff. Or the ability to compile more packages, but then you can do that on another machine.
glibc can be built in two ways. 1, full build, used for when you need to compile other software. And 2, small, when needed just for making the system run.
Where can I find a list of these dependencies? I've spent 2 days searching, and the only thing I've come across is LSB. However it does not say X is used for A & B, Y is needed for the system to boot, etc. etc. That's what I really need.
Thank you.
Holy dependency craziness!
Looking over things, I'm wondering if I can safely install the kernel while in the chroot environment WITH the /tools (as in section 6.4). Or do I have to do it in the one without the /tools? In other words, do I need to log out and back in to the chroot env. in section 6.59 to do the stripping and install the kernel?
And one last question: Once I install a package manager (dpkg) will I still need GCC and Make?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.