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.
Is it possible to install a fully functioning LFS desktop environment, .....
Lets start with: LFS does not provide a desktop environment. In the LFS documentation the following is mentioned:
Quote:
A by-the-book LFS system is fairly minimal, but is designed to provide a strong base on which you can add any packages you want.
"A (fairly) minimal system" is exactly what you end up with after an LFS build. Hardly any configuration is done yet, only basic security, no network utilities/programs, no ftp/ssh/mail/db servers and no X (let alone a desktop or window manager). And python is also not provided.....
BLFS, which is build using the tools provided by the LFS system, does provide all the above and once you know how things are done, you can build whatever is available as source code (a package manager is not provided out-of-the-box in either LFS or BLFS).
Quote:
Originally Posted by vmsda
....... based solely on Python and not on Bash, without massive implications?
Am I correct in assuming you are talking about automating the LFS, and possibly the BLFS installation process using a programming language (python in this case)??
If that is the case: I don't see anything wrong with using python to build LFS (BLFS is another story), as long as it can reproduce the steps that are in the book (and all the extras needed for automation). This will also mean that the shell (bash) is still used, whether you automate or not.
For the sake of simplicity I personally would not use a (scripting) language that is not already provided by LFS. When you boot LFS after finishing the build, python, for example, isn't yet part of the system. Perl, awk, sed, bash etc are. If you also want to automate (parts of) BLFS using python, you would first need to install it.
Thank you for your comprehensive approach, druuna, but
Quote:
Originally Posted by druuna
Hi,
... Am I correct in assuming you are talking about automating the LFS, and possibly the BLFS installation process using a programming language (python in this case)?? ...
I am sorry to have given the wrong impression, but no, that is not my idea at all. This was probably because I was thinking of LFS as a project and not as the technical first step in the building up of a "personal" Linux system.
After quite a few years as a desktop user of Linux (my only system) I know how much Bash code lies "under the covers" (the startup procedures, the profiles, and so on). Now, for someone starting in the programming world, Python is a sort of dream come true; Bash is a daily nightmare revisited. So, if one has the chance - afforded by the LFS project - to build one's system from source material, the next desirable step would be to control that same system via Python programs or routines or whatever one wishes to call them. Python, as a tool, has the potential to help hook people into the Linux world; Bash will probably drive them away.
I hope I have clarified matters a little better this time. Thank you in advance for your comments/suggestions.
After quite a few years as a desktop user of Linux (my only system) I know how much Bash code lies "under the covers" (the startup procedures, the profiles, and so on).
A shell, bash in this case, is compulsory. You might be able to use csh, ksh or dash instead of bash, but you do need a shell.
Quote:
Now, for someone starting in the programming world, Python is a sort of dream come true; Bash is a daily nightmare revisited.
That is an opinion, not a fact
My nightmare would be having to use python for everything..... Give me perl, awk, sed, etc and bash to tie it all together. Even if I look at it from a programmers point of view I would not use python (personal choice combined with a lack of python knowledge).
Quote:
So, if one has the chance - afforded by the LFS project - to build one's system from source material, the next desirable step would be to control that same system via Python programs or routines or whatever one wishes to call them. Python, as a tool, has the potential to help hook people into the Linux world; Bash will probably drive them away.
What it comes down to is this: Python is a programming language and not a shell, bash is a shell that can also be used to program (the is a shell being the important part). So to answer your initial question: Nope you cannot exchange bash (or any other shell) for python.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.