7 ms·
Welcome to Linux From Scratch
- arafalov 14y agoLooks interesting if niche. Somebody should take all the documentation and create gamification experience around it. With levels and all. Maybe even as a submission to the currently running Gamification Coursera class.... I can just imagine: Level one: you managed to download all sources. All the way to "You are the master, you can now serve your own ??? (ruby on rails app?) from your own server". Then build a community with badges and pledges and things around it. Have a side quest or two for the adventurous players.
- thmzlt 14y agoDoes anyone older than 14 really care about that?
- nitrogen 14y agoNever underestimate the effect a few tweaks to the ancient parts of your brain can have. As one anecdote, I was quite surprised how much of a difference was made in my motivation by coloring my passing/failing test cases green/red using ANSI escape sequences.
- Howitzer 14y agoIt sets goals very clearly outside of 'I need a working system'.
- 4abhishekpathak 14y agoits not really that trivial.
- arafalov 14y agoZynga made vast majority of its money from the people significantly older than 14. And they swear by gamification.
- deleted 14y ago[deleted]
- helper-method 14y agoWhen I look for inspiration for new projects or new ideas, I often look out for posts like yours. Things that people would love to have, which don't exist yet and solve a real problem. This is a really great idea... maybe when I have some time to spare somewhere in the near future, I will try to implement something like that :-).
- roymabookie 14y agoHow long would it take a noob to do this? hours? days? years?
- tompko 14y agoThe instructions are very clear and easy to follow, depending on your specs it takes a few days to compile everything. Certainly a week would be enough time.
- maximveksler 14y agoWhen I was just starting with Linux I did it in a week. Most time was spend on waiting for compilations. Second time hug was exploring and learning about stuff that was mentioned. If you just want to follow the instructions, it's a no brainier in terms that you can do it from start to finish with minimal prior knowledge.
- nitrogen 14y agoIt'd probably take about a week for a noob to get a reasonable desktop up and running with LFS or Gentoo, but that week will be some of the most valuable education about software build processes and operating system design one can find.
- stinos 14y agoI beg to differ. I don't recall how long it took me exactly, but the only thing I learnt about build processes was, both on LFS and Gentoo: if it fails to compile, lookup on google what to do and apply that. If all else fails, edit the code and hope it does not cause a waterfall effct.And I even cared about learning. If you just follow the manual you'll have learned nothing at all.
- nitrogen 14y agoThat is exactly the kind of experience that forces one to understand the interactions of complex systems and learn how to debug them.
- 14y ago
- qznc 14y agoI learned a lot by building a working desktop system this way. However, I quickly switched to something else, once it came to updating parts. If my memory is right, I switched to Gentoo afterwards, because it also had this compile-from-source philosophy.
- saurabh 14y agoI had installed LFS years ago and it was fun. Later I tried Gentoo and then Arch Linux(which I currently use). It was a good learning experience.
- octotoad 14y agoHate to post a comment just to be negative, but, I seriously can't believe this has appeared on the front page of a site like HN. "Welcome to"?. LFS is so old that I would assume any self proclaimed geek/hacker would've already been aware of it. It has existed for over ten years.
- nitrogen 14y agoAt the rate people are being born, coming of age, going to school, etc., there's always someone who's new to something (https://xkcd.com/1053/ https://xkcd.com/1053/).
- iaskwhy 14y agoIt's just the title of the page, it's not saying it's new, just welcoming you to it.
- TeMPOraL 14y ago> It has existed for over ten years. So? I haven't heard of it before, and I doubt if many of my friends have either. Programming landscape is very big now and everyone has a finite amount of time for exploring it. I could use your argument to whine about how so many self proclaimed geeks/hackers don't know about Lisp and keep reinventing wheels all the time.
- deleted 14y ago[deleted]
- valisystem 14y agoThe "Welcome to" is still left without explanation.
- natep 14y agoIt's the title of the site
- qznc 14y agoYou're one of today's lucky 10,000. :) http://xkcd.com/1053/ http://xkcd.com/1053/
- subhro 14y agoLFS definitely provides an excellent learning opportunity to the beginner. However, I think, considering the clarity of the available documentation, there is little to "think". Having said that, I have always considered LFS to be a kind of personal linux. For running on servers, I think Gentoo would be the closest to LFS and having well matured tools and package management.
- w0utert 14y agoGentoo is indeed a very nice option in between a bog-standard distro like Ubuntu and LFS. It's easy to customize and tinker with, but still usable on a day-to-day basis. If you want something in between Gentoo and LFS, you could consider OpenEmbedded, which is a distro builder primarily intended for specialized embedded/low-power hardware, but can easily be repurposed and extended to also build your own x86 desktop distro's, using one of the more generic profiles as a template. It would take a lot of tinkering and learning (but that's the point, right?), but once you have it working it's relatively easy to extend and maintain.
- alexchamberlain 14y agoArch Linux deserves a mention here. http://www.archlinux.org/ http://www.archlinux.org/
- kaolinite 14y agoAm I right in saying that Arch still doesn't have package signing by default? I know they've been working on adding it. Until it has that it can't really be used imo.
- alexchamberlain 14y agoYeah, that work has been completed.
- ocharles 14y agoIt has package signing. A quick Google search would have answered your question - http://linux.slashdot.org/story/12/01/17/1446248/package-signing-comes-to-pacman-and-arch-linux http://linux.slashdot.org/story/12/01/17/1446248/package-sig.... Voila!
- markmm 14y agoI've built a few LFSs and Gentoo countless times, it was a great learning experience and I learned a lot of command line mad skillz that way. However I wouldn't run a server using it.
- darkstalker 14y agoWhy not a Gentoo server? It has one of the best package managers (portage) and with a decent knowledge of linux you can fix pretty much anything. I always waste time on distros like CentOS because of binary incompatiblity or library versions that are too old for what I need to run. Gentoo is the only distro that I never had the need to override the package manager.
- agumonkey 14y agoDoes anyone feels LFS leans a bit outside its own point ? I felt like I was learning more about gcc/make/autoconf more than the OS itself. The relationship between packages, how the OS interacts with hardware was still obscure. After a successful first reboot I tried to build elinks and while it ran, it was broken in many strange ways (tty rendering, dns lookups failing sometime). It's a inspiring project, but IMHO it could be split into two goals, toolchain/compilation and operating system assembly.
- njharman 14y agoLinux is at least half about learning how to compile from source. Look at number of people who don't know how, think it's "hard", etc. If you don't know how to compile, solve dependencies/minor issues, etc. You don't know Linux.
- agumonkey 14y agoI started writing that I guess I don't know Linux and missed the information LFS conveys. But I can't shake the feeling that I learned more about independent toolchain than about the OS, and I'm lost trying to understand why a CLI http browser refuse to access some domains for no apparent reason. I'll read BLFS to see if some part of the knowledge I'm looking is there.
- chimeracoder 14y agoWhat do you mean by 'independent toolchain'? And what part of the OS were you looking to learn about? Remember that LFS, despite the name, is not about learning Linux-the-kernel, it's about learning 'Linux-the-operating-system' (which is more precisely referred to as GNU - using 'Linux' to refer to the OS is technically incorrect, though very widespread). Most of the time this is just a point of either pedantry or politics, but if you want to build your OS from scratch, you really need the entire toolchain[1] if you want to build a 'usable' system. [1] You can sub parts of other toolchains, so I guess the more correct answer is that you need an entire toolchain, with the GNU tools being the de-facto default toolchain.
- oneandoneis2 14y agoI liked LFS, it was the first distro I ever installed that didn't annoy me with "What? What's all this crap been installed for?!" But the lack of a package manager prompted me to move on to Gentoo. I keep meaning to give it another go, never seem to have the time..
- krollew 14y agoWell. It's very nice project. Thanks that, I've learnt quite much about building essentional environment. However it's tough as hell. I know pretty much about Linux and Operating Systems, low level programming, but it was just impossible to me to succeed some time ago. I admire anybody who can build it properly. :P To people who want to give a try I'd say - sure, do it. It's worth it, but don't expect it's going to work. :)
- why-el 14y agoAnyone with a kindle version of this?
- rejuvyesh 14y agoYou can use calibre [http://calibre-ebook.com/download http://calibre-ebook.com/download] to make one.
- albertzeyer 14y agoTo those who haven't heard about LFS before: You really should also check out Gentoo which is basically the same thing but more elegant and easier. :)
- fusiongyro 14y agoRight, but the point of LFS is to learn how Linux works, not how Gentoo happens to have set things up.
- albertzeyer 14y agoWhat do you learn in LFS that you don't learn in Gentoo? I have started with Gentoo several years ago (and never tried LFS) but I really learned a lot how Linux works. In Gentoo, you can basically do everything. You are just supported in that by a really nice package manager. But you are starting from scratch. You are bootstrapping the system, setting up compiler flags, setting up build flags and decide about every single package you want to have on your system.
- fusiongyro 14y agoRight, and then Portage makes everything and puts it into place. And then you use Gentoo's init scripts. And then you use Gentoo's package manager. And so forth. What you learn is exactly what it is that the distribution does, which parts of the system are decided by it, which things are convention and which things are configuration. Gentoo's great, I ran it for several years, but I'm still glad I did LFS one semester and could really see what's going on under the hood.
- albertzeyer 14y agoBut nothing is really decided on Gentoo. You can easily use another init-system for example (all the common ones are in Portage). You can also use a different package manager. I recall that there was a famous replacement for emerge; forgot its name right now. Otherwise, I don't see much difference between ./configure make install and emerge x Except that in the first case, you have to deal with some exceptions where it doesn't work that way. But not sure if that knowledge is really valuable.
- olliesaunders 14y agoI’m being cynical but my experience of building from source even with automated tools is one where things going wrong and being very difficult to resolve: there’s a cyclic dependency here; this things compiles but won’t link; this thing just segfaults; you need a new version of X to build Y but Z, which is a part of X, needs an old version of Y; I know you wanted to run the latest version of X but author of Y didn’t update it to work with that new version of X so you can’t but that was the whole point of doing this thing in the first place; etc. Nowadays I avoid building anything from source if there is a binary I can download and everytime I have to build from source I cringe in apprehension as to whether it will work or not. Too often, if something fails, I just give up. OK, I’m not really this aiming this criticism at the LFS project. I’m really just griping about shitty this aspect of software development in general. People should be working on solutions to these problems. Or maybe this is a problem with me. I’d be interested other’s opinions.
- eckyptang 14y agoIt's easier than building something without dependencies from scratch with Visual C++ :-) I built an LFS system when it came out years ago and it was a good learning exercise. That's the cool thing here. I wouldn't consider using the system from day to day though. I agree with your sentiment though. A recent attempt to get sstp-client and NetworkManager-sstp working on CentOS 6.3 resulted in a long stompy walk when I couldn't get it to build without breaking the distribution due to dependency hell. I just chucked Ubuntu on the box in the end and used the vendor provided deb packages. Was much easier :-)
- oelmekki 14y agoI've build a few LFS systems, knowing for sure I won't use it as a primary system. Nevermind : it's great for educational purpose, and I'm surely more confident in my sysadmin skills since I've did it.
- elebertus 14y agoI think it ha a lot to do with almost all of the software being open source. Instead of having management and organized teams we have.. binary based distributions, package management, and other tools like configuration management. In that context we're really just solving a management problem with engineering! Machines are pretty great at following procedure and ensuring consistency after all.
- cientifico 14y agoI do it a few years ago (when compiling all of this take 1 day per step). I totally recomend it. It give you the background needed to understand an operate system, unix, kernel, modules/drivers, stdlib, et cetera... You should do it.
- esolyt 14y agohttp://news.ycombinator.com/item?id=3171448 http://news.ycombinator.com/item?id=3171448 http://news.ycombinator.com/item?id=1159909 http://news.ycombinator.com/item?id=1159909 http://news.ycombinator.com/item?id=3677350 http://news.ycombinator.com/item?id=3677350 http://news.ycombinator.com/item?id=1779665 http://news.ycombinator.com/item?id=1779665 http://news.ycombinator.com/item?id=2336657 http://news.ycombinator.com/item?id=2336657
- debacle 14y agoDue to the highly temporal nature of HN, I don't think reposts should be punished, especially if the repost window is a year. I'm not sure if that's what you're trying to do, or if you're just trying to link to the old threads. If the latter, please carry on.
- sophacles 14y agoThe newest of those is past the commenting period. That means any discussion on this can't take place there, so you are either advocating that no one else, particularly new people, has anything valid to say, or your are advocating that we should cater specifically to you. Since neither of these make a lick of sense, what value do you think you are adding?
- DanBC 14y agoThat's an unusually hostile response to a list of links. Perhaps the value is "If you're interested in LFS you may be interested in the previous discussion. Here it is for you, in nice clickable form".
- needles1986 14y agoI can't speak for esolyt, but he added value for ME as an avid Linux user who's never compiled from source and is eager to get his hands dirty. After I'm done writing this comment I'm going to visit those threads and comb the comments of those threads for information. No need to be hostile about a link list.
- pavedwalden 14y ago
- cygwin98 14y agoWow, reminds me of the old days 'building the world' in FreeBSD. It took a few days on an old 386 box.
- giis 14y agoI really liked Linux From Scratch-Couple of years back It helped to build my own distro -Initially It was around 100MB then I tried to trimmed it down to less than 4MB :P . It was fun.anybody wants to try with their vm check this out http://giis.co.in/minili.iso http://giis.co.in/minili.iso I guess it should work
- kiallmacinnes 14y agoI installed LFS many many years ago, and learned huge amounts from it. Anyone who does sysadmin work, and doesn't already know this stuff, should take the time to run through it. It might just save your snazzy new start-up some embarrassing downtime ;)