Review of Sorcerer GNU Linux
ladislavb writes: "Sorcerer GNU Linux is not just another Linux distribution. It did not follow the tried and tested path of modifying a major Linux distribution and releasing it under a new name. Instead, the Sorcerer development team embarked on a completely unconventional way of putting together a unique distribution with features not found anywhere else. Once installed, it will be 100% optimised for your hardware, it will include the very latest Linux applications and it will provide an incredibly convenient way of keeping all software, even essential system libraries, up-to-date. The full review of Sorcerer GNU Linux, as written by DistroWatch.com."
You are judging slashdot by all the wrong criteria. You seem to be under the misapprehension that Slashdot is a news site staffed by journalists and find it lacking. Well, slashdot is not about reporting the news, it is a discussion forum and that's all. The editor's role is not to be an investigative reporter and develop stories but simply to provide grist for the mill by notifying the participants of the ongoing discussion of what other sites (presumably with real journalists) are reporting. The value in slashdot is not in the quality, uniqueness, or depth of it's content but that you (and I) get to throw in our two cents. And that we get to see and engage others who are throwing in their own thoughts.
As for your comments on the apparent lack of a work ethic on the part of the editors. All I can say is I hope your right - and God bless them. If slackers like that can not only make a living but actually strike it rich then there is hope for me. Though to be fair I do see your point. To the very small degree that Slashdot IS a journalistic endevour - pretty much limited to finding out what other sites are reporting - I agree with you that they should make at least some minimal effort to check facts (or maybe limit their sources to sites that do so) and professionally edit their own tiny editorial blurb.
Jon Katz is not the BEST writer on slashdot he is the ONLY writer on slashdot. I'm not sure why other people can't stand John Katz but I don't think it is because he is too challenging for them. Since he is a writer and slashdot is not about the writing he is not adding much of value. For my part I don't bother with him because he is an opinion writer who's opinions are sophmoric and who's writing is rambling and longwinded. That would all be forgivable if it he wasn't apparently under the misguided notion that his observations are insightful and important Deep Thoughts(TM) of wide ranging importance when they are actually rather vague, insular and shallow. I suppose like the stories from other sites he adds grist to the mill of discussion. I think of him as the staff flamebaiter instructed to blather on with his insipid insights to provoke outraged responses and inject meaningless contentions in to the discussion.
did you notice the whole thread got modded off-topic? i gree when moderators do that, but this seems to be a case of "divine intervention" by taco and his friends
8 50 660
let's see how fast my karma score wil decrease after posting this
am i paranoid? look at this journal entry, it seems these things are happening more lately... slashdot karma police, very worrying...
http://slashdot.org/comments.pl?sid=26315&cid=2
Don't all Linux distros claim to be "not just another Linux distro?"
Given the name of the distribution:
;-)
They're going to wish they had a +25 magic staff of bandwidth in the next little while.
if you find the idea of a linux-dstro optimized for your machine appealing, you should check out Gentoo Linux.
I recompiled Qt from source on my four-year-old machine the other day, and it took six hours. I'm not recompiling every bit of software on my machine... it would take weeks. I doubt I could even fit all the source code on my HDD. But then it's a seriously retro setup so I'm probably making a fuss about nothing.
Where I think this would come into its own is on a site, like a university or large company, where there are (a) hundreds of identical machines with exactly the same specification (down to the position of the sticker on the case), and (b) people who know what they're doing (ha ha) in charge. You could amortize the time taken to create the optimised system over the savings once you've installed it on every PC.
I wonder if they support using a compile farm to perform the rebuild? That would be sweet.
These sigs are more interesting tha
So there is a GNU/Linux distribution with the equivalent of FreeBSD's cvsup and make world process. Yah. Whoohoo.
So now we can have packages optimised for out platform at the cost of building everything from source. Sounds like a heavy cost to me. Wouldn't it be more efficient to provide a couple of different binary packages for each package a'la mandrake (i586 and i486) ? Compile once and let everyone install them as opposed to everyone compiling ?
The correct name of the distribution should be "Sourceror GNU Linux"
Anyone with a mirror?
Would you like a Linux distribution which is 100% optimised for your hardware? Would you like one which includes the very latest software packages as they are released by their respective maintainers? How would you feel if we told you about a Linux distribution where the entire download-compile-install process of any software (including the Linux Kernel, glibc, GCC, KDE) is done by one simple command? Intrigued? Then read on. Welcome to the magic world of Sorcerer GNU Linux!
1. Introduction Once you install a few Linux distributions, you will soon get to understand the basic process, which is rather similar in most mainstream distributions. Partition your hard drive, select the packages to install, listen to the CD spinning in your drive and when it calms down, you might do some hardware and network configuration to conclude the process. Less then an hour after inserting the installation CD you will have a fully working Linux system on your computer.
But things can be done completely differently. The beauty of Linux is that there are plenty of ways to achieve the same goal. As long as we are free to exercise our creative abilities and implement the resulting ideas, we can create amazing things.
Just think about this for minute - since the vast majority of Linux software comes with source code, why is it necessary to download binary files that somebody compiled on a particular hardware platform and included all sorts of options to run it on thousands of different hardware configurations? Would it not be more logical to compile everything on your own machine, ensuring that the code is optimised for exactly your hardware?
Enter the magic world of Sorcerer GNU Linux, a Linux distribution with a difference.
2. Basic Information Sorcerer GNU Linux (SGL) is a new Linux distribution. Its first release was produced in July 2001 and subsequent updates were very frequent at roughly twice a month. The project's web site is unlikely to win any design awards, but the essential information with FAQs and mailing lists to get anybody started is present.
The basic philosophy of Sorcerer GNU Linux is amazingly simple - after installing it, you will end up with the most optimised system for your particular hardware configuration and, at the same time, you will be running the absolute latest software available.
How does Sorcerer achieve this? First, you download the compressed ISO image, unzip it, burn it to a bootable CD and boot from it. After answering a few questions, you will watch the installation of a basic Linux system on your hard drive. Nothing really differs much from any other distribution until you get to the kernel compilation stage. And this is when things become interesting...
But we will leave a more detailed description of the installation process for the appropriate chapter. Here, just a basic overview: After your kernel is compiled, you will reboot into a brand new system. You are invited to configure your networking, knowing that soon there will be plenty of interesting code running down your cable or telephone line from various parts of the world. The great fun of selecting, downloading and compiling your packages can begin.
So what is the downside of such a distribution? If it is so great, why isn't everybody using it? The main reason is the fact that it takes a bit of knowledge and a lot of time to get Sorcerer GNU Linux up and running on your computer. Installing most other distribution will last less than an hour before you get a full-featured Linux desktop with several window managers, servers and more applications than you can shake a stick at. With Sorcerer, well, you'd better reserve a rainy weekend for it if you'd like to achieve the same. Some people might find this too time consuming, but those of us who like to tinker and optimise every bit and every byte of our hardware and those of us who like to run the latest software as it is produced, will find that Sorcerer is a dream come true.
3. Installation Let's get going with the installation process. There are several steps to accomplish this:
1. Download the compressed ISO image. 2. Install a basic (binary) Linux system from the downloaded CD image. 3. Compile the kernel. 4. Configure networking. 5. Recompile all the applications from the original CD image. 6. Get, compile and install all applications you need.
We will look at each of these steps separately.
3.1 Downloading Sorcerer The Sorcerer GNU Linux can be downloaded from the project's web site and its mirrors (see the side bar for links). The size of the compressed ISO image is about 80 MB and this swells to about 250 MB after unzipping the archive. You can use any standard CD writing tool to create a bootable installation CD.
Keep in mind that this ISO image gets updated frequently, so your downloaded image will quickly become out of date. This is where a unique feature to update the downloaded ISO image comes handy. This was primarily designed for those on a slow connection - instead of downloading the entire new ISO image, you can opt to download a small patch with the *.xdelta extension. To upgrade the original ISO image to the latest version, simply type:
xdelta patch sorcerer-$OLDDATE-to-$NEWDATE.xdelta sorcerer-$OLDDATE.iso sorcerer $NEWDATE.iso
This command will produce a new ISO image. Now you can verify the md5sum of the new ISO and if it matches the one found on the Sorcerer's download page, the image is ready to be burnt!
Naturally, there is no need to get the latest ISOs if you have Sorcerer GNU Linux up and running, but this feature might come handy in cases when you wish to burn the very latest image without actually downloading it. This way you can always keep the latest ISO image on the hard disk in case you decide to do a new installation or in case you would like to pass the latest image to a friend.
3.2 Installing a Basic System This step is, in most parts, similar to installing any other Linux distribution. The installer offers partitioning tools, such as fdisk, cfdisk and parted to create partitions. You can then proceed with selecting your root partition and its file system (ext2, ext3, ReiserFS and XFS are offered) and a swap partition. You will be advised to create a large swap partition, the basic rule is that your amount of RAM plus the size of swap partition should be at least 1 GB. Do not ignore this advice! Although the installer will complete the installation even if the above condition is not met, you will run into trouble later when trying to compile large programs and get frequent "out of memory" errors.
This memory requirement might seem strange at first, but the logic behind it is that Sorcerer makes use of "tmpfs", a virtual RAM drive which can also use swap space, to accelerate compilation and minimise file system fragmentation. Because of the "tmpfs" file system, Sorcerer expedites compilation by making the most efficient use of RAM. This makes sense as you are about to do a lot of compiling and the compilation speed gains are definitely noticeable.
As soon as the partitioning is done, you can start with the installation. Note that at this stage you are still installing binary files found on the installation CD to create a basic working system. These packages will be recompiled at a later stage.
3.3 Compiling Linux Kernel The next step is where similarities with mainstream distributions end. Yes, you are going to compile the kernel. This is of course where you can spend quite a lot of time tweaking and optimising, but at the very least, you should make sure that you select all the necessary modules for your hardware. Check the modules for your network, sound and video devices as well as any other hardware you need. Of course, you can always recompile the kernel later if something is missing.
After the compiling is done, you will be prompted to configure networking.
3.4 Configuring Networking First of all, you need to load the module for your network card (provided that you have compiled it into the kernel). This is best done by creating an alias in your /etc/modules.conf file: 'alias eth0 network-card-module', then loading the module with 'modprobe eth0'. At this point you should have a working network card. If you had compiled the network driver into the kernel, the above step is unnecessary.
Sorcerer used to provide both DHCP a PPP support to connect to the outside world. Being on ADSL connection, I looked for a PPPoE support which my service provider required. I failed to find any way to connect with the tools provided so I had to install Roaring Penguin's RP-PPPoE package, sources of which I had on another partition. When I mentioned this to Kyle Sallee, the author of the distribution, he promptly produced a brand new Sorcerer release with the PPPoE support built into the installation script! "If you need anything slightly more exotic, just provide me with the details to set it up", replied Kyle.
Ah, the wonders of personalised technical support only available in niche distributions!
3.5 Recompiling Installed Applications You only need to execute two commands in this stage, but the execution is likely to kill an entire evening. The two commands are: 'sorcery update' and 'sorcery rebuild'. The first command simply fetches the latest application database from the Sorcerer web site. This is to ensure that you do not compile older packages if newer are available.
The second command recompiles the existing software on your system. This process is interactive by default and you are prompted to look at the compilation log after each package. It is possible to disable the prompt in the sorcery menu so that you can run this process during your sleeping time. And when you wake up, you will have a 100% optimised system and it is not even necessary to reboot!
3.6 Getting, Compiling and Installing Applications The final step towards a fully working Linux box is downloading, compiling and installing all the software (or spells, in Sorcerer's terminology) you need. The beauty of this seemingly troublesome and scary process (especially if you have tried to do this on other distributions) is that all this is done by a simple command, which is 'cast package-name'. If you prefer a menu-driven way, you can simply type 'sorcery' and you will be presented with a categorised list of applications to choose from.
The list of applications (or spells) is taken from a database called 'grimoire', which is a sorcerer's book of spells containing nearly 700 spells at the time of writing. This database is updated daily ensuring that all new software releases find their ways into the grimoire within a short period of the official release. Trying to impress your friends? Sorcerer GNU Linux will certainly make them green with envy...
So how are all the dependencies resolved, you might ask. Isn't this part the most troublesome of all? The dependencies are taken care of for your convenience and peace of mind. Once you cast a spell (i.e. execute a package installation command), you will be prompted to include all the necessary dependencies into your spell. Additionally, you will be prompted to include or exclude optional dependencies, another feature not found in any other Linux distribution. The most amazing thing about this feature is that the entire download-compile-install infrastructure was written in nothing more sophisticated than Bash.
As soon as the basic stuff is installed, you are free to indulge in the vast packages resources provided by the distribution. You can continue with compiling XFree86 which is a rather lengthy step, taking nearly 40 minutes on the Pentium 4 machine. Casting XFree86 prompts you to run the configuration menu, which is an essential step if you would like to include specific drivers for your graphics card. Afterwards you can proceed with casting a window manager of your choice (the very latest versions of KDE, Gnome, WindowMaker, IceWM, Sawfish, Enlightenment, AfterStep, Blackbox and others are included) plus its associated libraries. Install any other software you need and a few hours of largely incomprehensible messages on your monitor (unless you prefer to turn this output off) will produce a pretty complete system by any standard. The Sorcerer's spells have been cast!
4. Post-installation Now you have a complete Linux system ready to be put to productive use as would be the case with any other Linux distribution. But apart from having the most up-to-date and most optimised system within a considerable radius of your location, there are still some interesting and unique tricks up Sorcerer's sleeves, not seen anywhere else. Let us examine some of the more interesting ones:
1. Software updates 2. Sorcery options 3. Rescue and maintenance
4.1 Software Updates The beauty of this distribution is that it is incredibly effortless to keep up-to-date with the ever evolving Linux application world. With a simple command of 'sorcery update', you can do a system-wide update of your entire installation. Creating a crontab entry for this command to run every night will result in a completely seamless update of your applications. Wouldn't it be nice to wake up one morning to find out that you have a brand new KDE desktop without as much as moving your finger? With Sorcerer GNU Linux, this is indeed a reality.
There are two ways to update software on your system - a menu-driven sorcery and a command-line sorcery.
Beginners might find the menu-driven way easier at first and it is certainly worth a look. The utility is invoked by typing 'sorcery' on the command line. The first option on the list is 'Spell', which, when clicked, reveals a further submenu. From this menu, you can select to install new applications from a categorised list of nearly 700 spells, you can recompile all applications on your system, you can select applications that should not be updated during the next system-wide update and you can remove applications from your system. The menus are very logical and self-explanatory and help is provided in the form of (sometimes humorous) one-line hints at the bottom of the screen.
Updating your system from the command line is equally easy once you master a few simple commands. Installing a new package is done with the 'cast package-name' command; just remember that the term 'install', used by most other Linux distributions is not accurate as 'casting' actually involves downloading, compiling and installing the package. Ever tried to compile KDE on another Linux distribution and gave up because of the hard work involved? With Sorcerer, all you have to do is to type 'cast kde' and off you go, no more studying of installation instructions, interpreting cryptic error messages and searching newsgroups! It really is as easy as that!
The next command you will use frequently is 'gaze'. It offers an amazing array of useful options, which you can view by simply typing 'gaze'. Would you like to see a list of all packages installed on your system? Type 'gaze installed'. Do you want to see the list of available packages? Type 'gaze grimoire'. Fancy to find out the package's description, web site, maintainer or md5sum? How about searching the package list, viewing compile logs or listing the source files for a package? All this and a lot more can be done with the 'gaze' command, which is worth investigating in detail.
4.2 Sorcery Options The Options menu in 'sorcery' offers a range of useful features. We will only mention some of the more interesting ones, but do take your time to find what else is offered.
The PROMPT DELAY option allows you to set the delay time, in seconds, for prompts while compiling and installing multiple packages - if no input is given within the specified time, a default action is taken.
The APPRENTICE option allows you to execute a command even if the associated package is not installed on your system. Sorcery will simply download, compile and install the necessary package before executing it. The list of executables and associated packages is stored in the /var/lib/sorcery/apprentice directory.
The AUTOFIX option, if enabled, is very useful in cases when important system libraries get updated. This would normally break most packages that depend on these libraries, but the AUTOFIX options checks and rebuilds all packages that would otherwise be broken. This option is enabled by default. It is worth noting that any packages that need to be rebuilt as a result of updated system libraries will not be downloaded again, but rather compiled from sources already present on your hard drive.
Imagine for a moment that a new version of glibc gets released. To update it, you can simply 'cast glibc', which will build a new glibc, remove the old glibc libraries and recompile every package dependent on glibc. During this process, there is a brief moment when there is no glibc in /lib or /usr/lib, but despite of that no application already running on your system will be affected! The Sorcerer's magic at its best!
Other options worth mentioning are MAIL_REPORTS, which will e-mail installation reports to the specified e-mail address, VOYEUR, which turns on or off compiler's verbose output and REAP, which, if enabled, causes that upon removing a package, all associated files are also deleted.
Finally, two more useful options to speed things up. To eliminate bandwidth bottlenecks, the software packages do not get downloaded from a central location, but rather from a maintainer's home site, FTP server or mirror. The 'Software Mirrors' option allows you to select a nearby mirror for the Linux Kernel, GNU packages, KDE, XFree86 and Gnome. The last option on the menu is 'Optimize Architecture', which gives you a chance to optimise all source code compiles for one of the available processor architectures - i586, i686, K6 or Athlon.
It should be noted that the list of features is not static, but keeps growing based on user feedback.
4.3 Rescue, Maintenance and Administration It is worth mentioning that your Sorcerer CD can serve as a rescue image as well. If you happen to get into trouble, you can boot from the CD, log in and carry out any necessary maintenance tasks. While this is not a unique feature, it is always nice to see that there is a simple way to log into your Linux system!
The Sorcerer web site provides a categorised list of FAQs in the documentation section and you are encouraged to join the mailing lists where you will receive a warm welcome from the members.
System debugging is handled with the help of extensive log files No other Linux distribution provides this feature, which greatly simplifies bug fixing and bug reporting procedures. The fact that Sorcerer GNU Linux is so highly up-to-date and remarkably bug-free can be partly attributed to the use of these log files Have you encountered a problem during software compilation or installation? Instead of describing it verbally, submit the log file and the bug will be fixed in no time!
The next question that comes to mind is what if you want to install a package not yet available in the grimoire, the Sorcerer's software database? Apart from compiling the package using the standard method of configure && make && make install, you are more than welcome to create your own spells. This way, not only will the new package become part of the sorcery, simplifying the install/uninstall management, you can also share your spell with the rest of the Sorcerer user community. Creating spells is not too difficult and extensive instructions are provided.
Finally, a recently introduced sorcery feature, called 'cabal' provides administration and command execution tools for simultaneous use on multiple Linux systems. It uses nothing more fancy than ssh2 keys, ssh, and scp, a set of simple tools to make a system administrator's life a little easier.
5. Pros and Cons Advantages
1. Sorcerer is 100% optimised. Not many people will argue this benefit. By virtue of compiling every piece of code on your own system, you are making sure that you get as much out of your hardware as you can. Of all the Linux distributions currently tracked by DistroWatch, only three are source-based (the other two being Linux From Scratch and Gentoo Linux). No binary distribution can beat a source-based distribution compiled on its home turf!
2. Sorcerer is the most up-to-date distribution. This benefit might be void in cases where there is no need to run the latest and greatest software, such as in case of some specialist servers. Still, security issues do appear from time to time and having the benefit of an easy path to upgrading the affected application can save many hassles. Because this distribution is so highly up-to-date, all security and bug fixes are applied routinely.
3. Sorcerer offers excellent support, both direct and via mailing lists. In line with most smaller and niche distributions, the author will often personally reply to your concerns and listen to users' suggestions. The PPPoE feature I asked about was placed in the next Sorcerer release literally within a few hours after I e-mailed the author!
4. Sorcerer is continuously being enhanced. While already pretty complete and feature-rich, there are still many new features planned for inclusion in future releases. Of course, many other Linux distributions can claim this, but given the completely unconventional way of doing things at Sorcerer, we can only look forward to more unique features not found anywhere else.
5. Sorcerer is fun to use. Admittedly, this is a highly subjective quality, but I can honestly say that I have never had more fun with any other Linux distro. Period.
Disadvantages
1. Sorcerer takes time to get installed. Installing a Linux distribution is a lot less troublesome than it used to be and most mainstream ones will get you up and running in less than an hour. Sorcerer, on the other hand will require many hours of compiling before producing a full-featured system. However, the benefits of compiling all software are unquestionable.
2. Sorcerer lacks decent documentation. As is often the case with many new projects, the documentation has not been given the highest priority. The current structure of hard-to-navigate FAQs and installation/usage notes resemble a schoolboy's scribbles rather than a carefully designed operating manual. The author seems well aware of this deficiency and welcomes any contributed documentation such as FAQs, man pages or installation instructions.
3. Sorcerer is not for beginners. You don't need to be a Linux megaguru to install and run Sorcerer, but you should be reasonable proficient in basic system administration. There are many choices to be made during installations and configurations of your system, some of which may be vital. You also need a thorough knowledge of your hardware and the kernel modules required by each hardware component. If you are not sure, you can simply accept the defaults, but it helps if you know a little about the Linux Kernel, XFree86, Perl and other configuration options.
6. Summary Of all Linux distributions available today, Sorcerer GNU Linux is positively the most unconventional. Instead of following the tried and tested method of many binary distributions, the development team has not only created a unique product, it has at the same time solved many of the perceived problems, traditionally associated with the Linux operating system. The amazingly simple and fluent method of installing and upgrading software and system libraries makes one wonder why no other distribution has invented anything even remotely similar.
While some may argue that Sorcerer's is a more time consuming method of keeping up with the Linux application development, it is still much less time consuming than resolving library dependencies, interpreting error messages and spending time on newsgroups searching for answers. Because of the sophisticated download-compile-install infrastructure of sorcery (while written in nothing more sophisticated than Bash), keeping your Linux box up-to-date is a painless process. Best of all, every single package is fully optimised for your hardware as it is compiled.
Despite the development team's claim, Sorcerer GNU Linux is, in my opinion, a revolutionary Linux distribution. Do yourself a favour and download the 80 MB file, then find a weekend to explore it. I can virtually guarantee that at the end of the weekend you will be asking yourself questions like: "Why has nobody else thought of this!? Is it possible that installing and upgrading Linux software can be as simple as that?" You will have to pinch yourself to believe that you are not dreaming.
I do not normally indulge in predicting the future. But if only 6 months of development resulted in the product of this sophistication and quality, then I honestly believe that Sorcerer GNU Linux is going to become a major Linux player in the near future.
2. reply to my girlfreind's daily comedy emails with replies that actually sound like I was at said site.
Seriously what more besides apt-get do people need for updates? I mean I was so disenchanted with mandrakeupdater that when I got back into the swing of linux after a dry spell I almost gave up. Now with debian at least I can update things without fear of the kernel segfaulting on the next boot.
An Education is the Font of All Liberty
yeah, the story was posted about 10 minutes ago, and it took 2 minutes for me to get the review page to come up. can't find a mirror anywhere...
Just a question: is this distribution's approach similar to the BSDs? I think if not the same, it is very similar to the ports system, a very useful and clever approach in a lot of respects.
On the other hand, I don't think that many people would be that keen to recompile KDE/Gnome from scratch every time! Specially in legacy (i.e., more than 3 months old) hardware. However, for a (say) dedicated web server or something like that, it might have its uses...
Does this mean Aunt Tillie gets to build her own kernel?
Damn, That was fast! Leave it to the GNU community!!!!
Here is a mirror of the review of sorcerer as the distrowatch site appears to have had the obvious done to it already :/
The problem with slashdot is that most of its users were bullied and stuffed into lockers as kids!
All about me
This is one cool distribution as long as you have a really fast machine and a large hard drive. It is kind of like Linux From Scratch (http://www.linuxfromscratch.org/) on steroids.
I think this is an interesting idea but has a few flaws.
First they ask that your swap image be at least 1gb in size. I don't know about everyone else, but my linux partition is just 2gb so that's half of my disk already. I know, I know, these days everyone has 30, 40, and 60gb drives so it's not a big deal. Maybe it's just time for me to get more iron.
Anyways, the big feature this distro seems to be claiming is the automatic (and seamless updates). You can run this "sorcery update" command in a cron job at night and have a brand spanking new system the next morning. While this sounds like the cats meow, what if I don't want the latest and greatest? I personally don't to live on the bleeding edge and don't always want the lastest. Also, who decides what's the latest? The latest beta? Is it running the 2.4.17 kernel or something even newer? What version of KDE does it have?
It's also a huge distribution and requires a dedicated weekend to get up and running. The name implies that it's something that a beginner could sit down and startup with, but this is not the case. If you're looking for a simple install, stick with Mandrake/RedHat or something. If you have a few gigs to chew up and a weekend to burn, maybe give it a try.
liB
I wondered also, but i noticed that the AC just before me had posted a link to a story about Gentoo on newsforge.
[paranoid mode]
But the AC post was modded down as well. Something smells funny here, and it isn't my underwear...
[/paranoid mode]
I just posted this last night...
std::disclaimer<std::legalese> sig=new std::disclaimer; sig->dump(); delete sig;
a makeworld takes a half hour on my computer. My Dual AthlonMP 1800+. Sorry, I just like talking about how fucking fast it its. Hee hee.
Far more efficient would be to compile the code once for every possible configuration store it on a central server, and let the users download according to preference.
I am sure it is all nice and optimised when you compile everything from source.
There is just one disadvantage; while you are compiling that latest version of XFree86, gnome or kde the computer does not feel really optimised.
Compiling everything is just too much hassle, and takes too much time and computing power.
For a server there are not that many packages installed, so it can be usefull. But on my desktop I have about 2Gb software installed. Keeping that up to date.......nah.
Just let me update everything from binary, be it apt-get or urpmi.
Btw, I have a friend who was horrified when I showed him apt-get. Do you update from binaries? Do you call that security?
He liked to install security-updates from source.
When asking sometime later how he kept his FreeBSD boxes up to date he said he did not do that. He felt safe behind a firewall.
Hmm, I guess it is just too much hassle.
Well, don't worry about that. We can get you back before you leave. (Dr. Who)
Weeks? C'mon, maybe on a 486. I did a FreeBSD buildworld on a SMP PIII700 (100Mhz FSB) just yesterday and it only took an hour, if that. I seldom re-do the applications and non-system libraries (stuff from ports) unless I really need to or am upgrading them specifically, but I bet even that stuff would only add another 30-40 minutes tops.
I've been wondering when someone would do a linux distro that compiled itself during instalation, or at least a kernel.
Wouldn't it be more efficient to provide a couple of different binary packages for each package a'la mandrake (i586 and i486) ?
That would cost more for the CDs and for download bandwidth, especially when you take into account Alpha, Sparc, MIPS, and all the other PC-class-or-higher architectures that Linux runs on. See also my Everything 2 article about making Linux distributions smaller.
Will I retire or break 10K?
We post a story on how great this is, and what do we do?!! WE /. THEIR SERVER!! How can anyone develop with CVS down?!
They probably DO have a +25 magic staff of bandwidth if they went to all the trouble of downloading the ISO. :)
What's with the sorcery and cast commands. And calling "packages" "spells" Sorry, but it's just too cheesy for me, even if it was the best system out there. If it's gonna take a whole weekend, might as well do all the optimizations yourself... if you need the automatic updates, CVS and cron work pretty well.
No Kidding! :-)
I linked to the page a few minutes ago and it takes ages to connect. I'd hate to have a 56K connection while trying to see this site!
If I was on a 56K modem and a slow machine I'm not so sure that this would be worth while. But slow machines are getting rare now.
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
Same for Sorceror. They are very similar distributions.
This...
You will be advised to create a large swap partition, the basic rule is that your amount of RAM plus the size of swap partition should be at least 1 GB. Do not ignore this advice! Although the installer will complete the installation even if the above condition is not met, you will run into trouble later when trying to compile large programs and get frequent "out of memory" errors. This memory requirement might seem strange at first, but the logic behind it is that Sorcerer makes use of "tmpfs", a virtual RAM drive which can also use swap space, to accelerate compilation and minimise file system fragmentation. Because of the "tmpfs" file system, Sorcerer expedites compilation by making the most efficient use of RAM. This makes sense as you are about to do a lot of compiling and the compilation speed gains are definitely noticeable.
Reminded me of a quote from an old fortune file: Virtual Memory ? Wow! Now we can have really large RAM disks...
The user would then pick what software they want installed on their system, as per any other distro.
The server site can then take the source, recompile it for that configuration, and generate a set of ISO images containing the optimized setup for that machine.
One advantage of this approach is that if you're installing on multiple identical machines, you would only go through the process once. Once it's done, you'd have a set of "instant" install CDs. No menus, no further tweaking, just a direct blast onto the hard drive(s).
A second advantage is that a server site can have a compiler farm, making the build process MUCH quicker than would be possible for an individual.
A third advantage is that if someone sends in a configuration which matches one that's already been done, the compiler farm only needs to rebuild updated packages. The rest has already been done. The CDs can then be built out of freshly-compiled binaries and pre-compiled ones.
A fourth advantage is start-up time. Because you're downloading a very basic bootstrap, rather than a mini-distro, the time to download, install and run is going to be much much less.
The last advantage is when it comes to updating your system. Again, with all the compiling being done on a remote compiler farm, the time it would take to do a basic update would be minimal, compared to Sorcerer, and far more optimal, compared to Up2Date or Red-Carpet.
The key to something like this would be the detection of hardware and (on networks) servers. Kudzu is good, but it's limited. sensors-detect is OK, but it's specific. I don't know what Anaconda uses to detect the graphics stuff, but again that is good, but specific. Any router can detect other routers working with the same protocol. There's plenty of stuff that none of the above detect, but would need to, for a truly optimized build & auto-configure. (Is the network multicast-aware? Will the network support ECN? What is/are the IP addresses of routers on the network? Where is a DNS server? Is the sound device better supported under ALSA or OSS? Do memory constraints indicate optimizing for speed or size? etc.)
An optimized build is more than just tweaking the configure options. It's also choosing the right compiler (where multiple options exist). It's setting up the configuration files for those things that can be discovered. It's about asking for the information that's needed, rather than the information that can be found out.
My idea would be that the servers would have a database, containing source and binaries, identified by a 1-way hash of the relevent hardware information. This avoids any privacy issues, as there's nothing private stored. Each access would amount to a search for all records where the hashes of the relevent hardware match. For updates, the user's machine could then select/deselect stuff it already had. The rest would be put into ISO form, and be available for download.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
The downside to that is optimizations. What if you want to compile with stackguard? You can do that with sorceror.
What if you want to make 2.95.3 your default compiler, and say screw you to RHAT's 2.96? You can do that with Sorceror.
What if you want to TRY to compile a kernel for the architecture "doesntexistyet". In sorceror, you can.
Optimizations, choice. These are what sorceror is about.
A decent amount of software you can get for linux nowadays comes with a ton of compile options. When I get a binary package from debian or redhat I have no say over which of those options were turned on. Maybe I don't want postfix to be able to support ldap and mysql and postgresql lookups? Well, tough, I don't have any choice in the matter and so I have to download and install those libraries to satisfy postfix's dependencies.
Sometimes (most often in the case of SSL) you'll see multiple versions of the same package to satisfy problems like this. This is a hack to solve the problem. Sure I can install lynx-ssl instead of lynx but what if I want lynx to use slang instead of ncurses?
This is more about control than optimization. While I'm not sure this level of control is necessary for everyone, control is one of the selling points of Open Source Software and something that most people like to have.
I'm too late! I was going to make a Linux distribution that was "unique", "clever", "had all the toys" and had it's very own PENGUIN MASCOT!
Damnit all to hell. Why can't I seem to get these idea's off my head fast enough. I think I'm going to have to get myself a thousand monkeys...
I have no signature
This is just another linux distro, like all the others. It runs the linux kernel, GNU, xfree86, add all the other fun apps that all distros use. What it has over everyone else is, everything installed on there is gonna be brand spanking new.
Who is this for?
NOT EVERYONE!
There has been so many threads about people saying this is not good for them. Well, you know what, then it isn't. This distro is for the people that want to have everything up to date. It won't be the Best distro in the world since the combination of all the different apps you are installing has not been testing, but it leaves you with something that is setup the way YOU want it setup, not the way some developer over at (insert distro name here) decided to do it.
Look for the good in the distro, don't just go hounding it.
Its not what it is, its something else.
I like how your website is running IIS for BYOLinux :)
For Geeks With Too Much Time On Their Hands
(not that this is a bad thing)
Paraphrase of the FAQ:
"This distro is new and different. It will take a lot of tinkering to get it running. Be prepared to blow a rainy weekend before you even see a decent window manager. You'll have to learn to cast spells. But when you finally succeed, rest assured that you'll have the very latest software, all compiled on your machine. Cool, huh?"
Seriously -- reading through the FAQ, I got the impression that it was BRAGGING about the complex, time-intensive, processor-intensive, memory intensive nature of the installation and maintenance procedures.
Diff'rent Strokes for Diff'rent Folks, I guess.
The cure for cancer is coming: Reovirus
Yes but mine is better than yours. ;)
But seriously, as bandwidth and processor speeds increase, will there be a reason to do it any other way? (at least on a single, personal system)
-... ---
" it will include the very latest Linux applications "
If you don't put rose tinted specs on that translates to
1) It's bloated
2) It'll be obsolete tomorrow.
However, it will almost certainly be someone's cup of tea. Hell, I tried 5 distributions before I found the right one for my tastes. It can only be a good thing if a thousand people install it, work out what they like, what they don't like, and the _give feedback_.
THL.
(Debian, of course)
Keeping
On the one hand, the review trumpets a "100% optimised" system. On the other hand, it says you can have this with the ease of a single command to download, compile, and install your applications. Omitted is the fact that to truly be "100% optimised" you must make important choices about your configuration. If you only accept all default options, you'll not be 100% optimised unless your hardware matches their defaults.
[graveyhead again] ah nevermind... I get it... you mean the BYOLinux site... that is pretty funny, but it's not my site.
Another Week, another fork.
I've had lots of problems compiling different 2.4.x kernals -- despite carefully selecting hardware options, my machine locks up on booting. Consequently, I use the stock kernel from the distro.
So I'm wondering if having all the latest versions is smart -- does anyone know if they have "stable" and "bleeding edge" source trees? If I have that option I'll probably go for it.
...had an Exidy.
The more I use GNU software, the less I like it.
I despise info. give me man.
I don't want no emacs, give me vi or give me death.
The fact that they feel the need to put GNU in the name of the distribution tells me tha they are too ideologically pure to do the best thing for the users.
The same goes for Debian.
I have discovered a truly marvelous sig, unfortunately the sig limit is too small to contain i
Seriously what more besides apt-get do people need for updates? I mean I was so disenchanted with mandrakeupdater that when I got back into the swing of linux after a dry spell I almost gave up. Now with debian at least I can update things without fear of the kernel segfaulting on the next boot.
... building new machines (even slightly different ones than the model) is just too easy to give up ... even for this.
I am an avid Debian user, and have moved an entire enterprise over to Debian because apt-get makes a system administrators life so much easier and it halved my work load as a result. For binary distributions apt-get is unmatched, and apt-get source, while not perfect, is a very nice way to get sources and compile them.
However, there are better approaches. FreeBSDs "ports" system comes to mind, where a skeletal directory tree structure and a simple make command are all that are required to automate the download, compilation, and installation procedure for a plethora of third party applications.
No library conflicts. Any necessary patches applied on the fly, optomized and compiled for your system. It was, until this distribution came along, the only installation method I'd ever heard of, much less seen, that beat even apt-get hands down.
If this distribution lives up to its billing, it will be only the second, placing Debian's apt-get, Sorcerer, and FreeBSDs "ports" in a class all their own. Even as an avid Debian user I will be spending much of this weekend playing with Sorcerer.
The real question is, will there be a good replicator or, better yet, automated installation utility so I can build 50 machines on 50 similar but not identical machines, without having to sit in front of each one? Replicator is the one thing that will keep me using Debian at work
The Future of Human Evolution: Autonomy
mentioned in the article, but you knew that ;-)
Everyone here seems to point out that the time it takes to compile the complete system is the problem. I mean, isn't this the price to pay for optimized software? Isn't this what [plenty of] people want?
Sure, it's gonna' take a while to compile X, KDE and the like. But this is the other half of the operating system, many people will be using this exclusively, right? Wouldn't you want that to be optimized? It's the GUI, in my experience, the most demanding part of the system.
But, I'm just a user. The whole thing sounds damn cool. I don't mind taking a day to compile *all* the software, just don't make me sit there in front of the machine the whole time hitting 'Y' and enter.
The thing that intimidates me [still, yes] is the fact that I have to configure the kernel. I have never really got this to work for me. I think [complaint coming] there should be an choice for "Auto-configure" or "Configure Now".
I'll understand if this isn't possible, but that seems to be the only thing in my way. I'm still going to download this and try it. The kernel config gets me though. I always seem to leave something out.
Question: Are we using the same config utility that comes with the kernel tarballs? And does the configuration menus come up blank or does it 'best-guess' and let you add and remove the things you need?
Get your Unix fortune now!
You know, one of the main reasons I like the *BSD operating systems so much is the port / package systems that make this sort of updating so simple.
I've tried Debian, but I don't know if it was the weird hardware (Using the m68k build) or just my newbieness (more likely) that made me dislike it so much.
This Sorceror distro, on the other hand, sounds like all the ease of maintenance of the FreeBSD "make buildworld" setup with the greater driver base of Linux. Win / win. I might just have to check this out.
--saint
Seriously... I have Rh 5.2 (old, first of my use). Then I got SuSE 6.x Yeah. It's got a nice config manager (yast), but I wasn't sure what it was doing. Mandrake was nice, but crashed too much. Then I tried the newest Slackware, not knowing the particulars in Linux. Let's just say I learned QUICK. There's a basic setup tool, but everything's trial by fire. I can tweak my fairly minimal install with any tweak cause I know how its alll set up.
Now,anyone... Please tell me what this yet another distro is better than mine (or any else)???
Josh Crawley
You nazi, you....
>Wouldn't it be more efficient to provide a couple of different binary packages for each package a'la mandrake (i586 and i486) ?
./configure --with-...
:)
No. I don't know what all the fuzz about those optimizations is, but the real advantage imho is the configuratibility.
You want your ftpd, mta to have kerberos support, ldap ? You want KDE to user alsa only instead of OSS ? You do not use Netscape Plugins and there do not need this motif dependency ?
Here is your way to go:
You want to provide a binary for every "architekture" with every possible combination (dependency) ?
No. usually you are eating what your distribution serves you and don't care about having your postfix make you also require to install slapd, too. Even if you don't use it at all. Fair trade of convenience vs. bloat.
I do not know how those "source based" Linux Distros (rocklinux, lrs-linux, gentoo, sorcerer) handle this, but for FreeBSD you have either your make.conf or your configure-args in your port makefile. Or even a curses based selection menu. Latter one rocks.
Sure, for a "base system" one usually does need to many selectins (maybe include acl support, glibc support for 2.2 kernels or use pam or not), but for "applications" I consider this essential.
Anyway, I will sooner or later give either of those four known-to-me source-based distros a chance and see how tey stad up to mighty-ole slack
Its about choice, not binaries.
Is it GNU (GNU's Not Unix) or is it Linux? Linux tries to be like Unix, and so goes GNU, but that doesn't make them the same thing.
-russ
Don't piss off The Angry Economist
Let's stop reviewing the review and the concept, and actually review the distro for god's sake.
--SC
You read fiction? I write it! Lemme know what you th
You know, just maybe the emergence of systems that try to build the whole shebang from source is a way of telling us that we need a better way to distribute programs for different platforms?
.NET and Java unless it adopts a VM. Cross-hardware platform distribution issues are already affecting PPC and ARM users and this will get worse as small non-x86 devices spread.
.class files back into source. Real equivalence (a bit like old tokenised BASIC systems) would mean that all that ever needs to be distributed is the 'compiled' form and, by its very nature, this code is always open.
Rather than assume that everyone can download the 386 version or compile their own on their embedded Linux PDAs, let's address the real requirement and make some progress, however small, towards practical cross-platform code distribution.
Eric and the rest of the 'visionaries' can ignore it as long as they want, but the fact is that Linux as a platform is going nowhere relative to
While code distribution requirements alone would be sufficient to justify a 'Linux VM', there is another possible benefit here which gets precisely zero attention. Ever thought what might happen if the source code and compiled code were semantically equivalent? Right now, this is almost the case now with Java bytecode, in that decompilers such as JAD can turn compiled
Sound tempting? Well, it's hardly rocket science to implement these days - we have Java, Mono and Parrot VM work going on anyway, and the commercial world has pretty much left the goalposts wide open for an improved bytecode or AST representation of programs.
Why is the investment of time and money going into such a parade of half-assed solutions?
It is out, downloadable, and runnable.
Perhaps if you clicked through, you might have seen that, troll-boy.
GPL'd web-based tradewars themed space game
At least that's my story and I'm sticking to it
I installed GNU Sourcerer on a box for a graduate Parallel Processing class I'm taking right now.
I'll post results on my web site as are updates warranted.
My thinking is, why not optimize your OS to integrate with your system board, especially in an experimental/research setting? At the least, we students now have a NACHOS-esque* OS for parallel theory.
"He who questions training trains himself at asking questions." - The Sphinx, Mystery Men (1999)
one hour after the 1st post mentioning gentoo? this is not a good way to whore 4 karma
Uh, yeah. I'm sure they have the storage space to compile for EVERY POSSIBLE CONFIGURATION. Using that cool new 100:1 compression, maybe.
What both sorcerer and gentoo both lack, is the ability to setup a 'build server'.
I have many computers running linux, from a lowly 586/133 and a P/100, up to a Dual P3/800. I would MUCH prefer to tell all my linux boxes to use my dual P3/800 as their 'build server' (ie. when I type make on the machine I'm installing in the directory of a package I want to make, it contacts the build server, transmits info about which package it wants, and more importantly, what the system specs are so it can optimize the compile, and the build server transmits back information about the compile as it happens, and a failure/success message... simple). This of course, requires the build server to run some kind of daemon to listen for such requests (and I HOPE They actually think about security up front with it!).
Its not worth it to me, to have my 586/100 compiling for a week or more, to get everything optimized for it. Heck, MOST of my machines I dont install a compiler on! they dont need one for their job.
Not to mention, if you have the concept of a build server, theres no reason you couldnt download source RPM's, and get the build server to create an optimized RPM for the system that its building for, and when done, get the taeget system to just install that RPM -- thus keeping it package based, and most importantly, easy to uninstall at will.
Idiocracy? Is that, like, a society run by idiots?
As long as that outdated thing also has half a Gig of memory...
Hey!!! the parentheses are good for something
When was the last time that you actually compiled the Linux kernel? Did you ever look at the # of options you have in the kernel config dialogs? There are about 2^(# of the config choice options) possible variants of kernel. The # is not exact - because, on one hand, sometimes the choices are not independent; on the other hand, some values are not binary.
Also keep in mind that even on multiple identical machines randomly picked among various Linux users it is absolutely not guaranteed that the requirements for the box stability and performance are the same, hence no same config!!!
One of the beauties of the Linux IMHO is that despite all this vast #s of different kernel configurations compiled out there, running on different hardware platforms, it evolves the way it does...
(Now just imagine the language Al Viro would have spit out if he bothered flaming you... ;-) ).
VKh
I use Mandrake on my desktop machines, but while it's full featured, there are some options I wish the default kernel came with, and some things I don't need that make the system bloated. By compiling everything from source, I can choose what options I want on every package. Plus, I can compile with Athlon optimizations, something MDK doesn't have.
Need Free Juniper/NetScreen Support? JuniperForum
After the years of RPM-Based Distros, it seems as if those "self-building" distros are the new trend. We now have 3 of them:
;).
RockLinux
Gentoo Linux
and Sorcerer Linux...
From my experiences and what I've heard Gentoo is the by far stablest and easiest to install of them and recently got a really good review at Newsforge.
I don't really know if that is good concept, because the time/use of self-compiling every bit of software is quite low IMO. What is needed is a new Distro, that builds the Kernel itself and installs all the other application through RPM. That would maximize Speed and usability. My friend and I are working on something like this right now
Boycot? Blackout? Subscriptions?
I don't care!
Did you actually *read* the review?
You know it seems like there is one camp saying "Why upgrade? What new features did you REALLY need? If it aint broke dont fix it! You fool you should not have upgraded to the bleading edge, what was wrong with what you had?"
And then there are the people who want to recompile a whole system every night...
Firstly, Religious Tolerance online does not recognise/list Linux distros, or the open source software movement, as ethical systems. Send e-mail to ocrt@religioustolerance.org to get this corrected. Seriously, I bet we can get them to include it as a religion. They include Scientology, after all.
Secondly, it is important that we tip off "investigators" from the counter-cult movement about this new, occult Linux distribution (former Linux programmer, now saved, reveals Satan's plan for open source software!). Nothing drums up good PR like being an instrument of the great beast. Religious Tolerance keeps a list of these fruitcakes. These people have suffered fundamental damage to the credulity centers of their brains and will believe anything packaged as evidence of Satan's machinations.
The good and new comes from no quarter where it is looked for, and is always something different from what is expected.
The whole idea of a kernel is that it provides an abstraction layer to the hardware: the optimization based on all these "thousands of hardware configurations" takes place in the kernel.
Let's take a look at the most important pieces of hardware that are in the computer:
The conclusion is that it is really nonsense to compile _everything_ from source. Have the users compile their kernel based on their hardware. Make sure they have the correct xfree driver for their video card and a correct xfree config file. That's all the "hardware optimization" you're ever going to need.
So why do people nowadays compile programs, then? That has nothing to do with hardware, but with the myriad of libraries Out There. Binaries will of course change if you compile them on libc5 or glibc2.1. But if you stick with one distribution, that is never a problem. The problem is there if you want programs that don't come with your distro. Again, there's really no reason to compile the programs that do come with the distro.
But that's just my opinion. Of course these people should be praised, because they had a Good Idea [tm] and did something with it.
This is revolutionary software! If it works like they say, I'm gonna get rid of my FreeBSD before you can spell cat.
they seem to do a bit more hardware detection, but for a running freebsd, the sequence
cd
make update
portsdb -uU
make buildworld
make buildkernel KERNELCONF=mykernelname
make installkernel KERNELCONF=mykernelnambe
init 1
make installworld
reboot
pkgdb -F
portupgrade -arR
will recompile every last line of the OS, and then fetch source code from the distribution site for every port that has an update available (the -a), check checksums, grab the ports upon which these packages depend (the -R [ok, this is overkill:) ]), compile those, compile the updated packages, and then do all packages which depend upon the freshly compiled packages (the -r).
a really cool process, which eats tons of cpu & banwidth
hawk
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
While I can understand the appeal of the name Sorcerer in an English speaking world (and with Harry Potter/Tolkien in vogue), the name is a mess in an international setting. Three R:s does not bode well in many a part of the world.
Thought it should be called Sourcerer.
--
The Cap is nigh. Time to get a fresh new account.
When updating packages rpm-style (especially something like KDE) it's really annoying that some of them are so large, while the change from the last version (that might still lie around on your platter somewhere) is probably less than a few percent of that.
It would heavily reduce bandwith, were it possible to grab just the diffs (and maybe an MD5 sum of the package complete with diffs), and not everyone has a T1 out there. With binaries that wouldn't make much sense (until one applied a very specialized diff), but with source-updates it would work well.
.
"By the way if anyone here is in advertising or marketing... kill yourself." -- Bill Hicks
How do you insure that the machines are EXACTLY the same ?
We once ordered 200 Compaq Machines.
All same Model.
Except...
that the batch had different controllers
that the soundcards were in fact 2 different chipset
and one other, but this one proved trivial.
And we had to install NT on them.
Not a nightmare, but quite close...
It takes 40+ muscles to frown, but only four to extend your arm and bitchslap the motherfucker
This goes right to the iso but the site is http://distro.ibiblio.org.
Please kindly wait 22 minutes so you do not kill my transfer. Thank you.
There is for example memory allignment for the variables, which differs depending hardware. There are the different execution costs of certain asm comands, so the compiler can chose the best for every arch.
All these things have nothing to do with Kernel or Librarys, and no (Binary) Distro can do this optimizatons for you, since these binarys won't run on every arch. (e.g. i686 binaries won't run on i586)
And belive it or not, this realy makes a difference. Especially huge Programs, like X or KDE gain noticiably from this Optimisations.
The other advantage of Compiling yourself is control, you can control any aspect of the build process. Take Mozilla as an example, you can choose whether you want Mail/News client, SVG, MathML, you can prefer certain librarys over others (each of which has its own pros and cons) you can even choose which kind of garbage collection you want it to heav, if any.
And another upside is that you can also do any step manually, which teaches you many things, and gives you even more freedom.
I never leard more about the inner workings of Linux, as when I first installed it manually from sources for the first time. (see http://www.linuxfromscratch.org, IIRC the devel Team from Sourcerer used this as a Starting point)
...as far as I can see, Debian can do this easily: apt-get source packagename .
./configure and make it yourself. If you only care about the optimizations (and not about the compile-options), you can even do apt-get source -b packagename and it will be built automatically.
Then you can
The required development packages can be installed with apt-get build-dep packagename by the way, so you don't have to worry about that either.
Uh KDE can take a day to compile and with gnome there are hundreds of apps. That could take a week.
Great its optimized, how long does the install take, and how fast of a machine do they recommend having?
A kernel compile is not a problem on my athelon as that takes 4 minutes from make dep to make bzImage / make install, but on my old P133 it takes about an hour.
I wonder if they have the newbie in mind here. Does your grandma really want to be compiling her own kernel? I think not. Most people don't want to know that much about their computer, I guess that is why so many people use windows is cause it allows people to stay ignorant about their computer (until something goes wrong).
It does however sound like something worth trying. I am wondering if this would work on my old P133 and how long it would take to do a full install.
Only 'flamers' flame!
apt-get dist-upgrade
i guess this IS just another distibution based off another one, named SORCEROR, and released under its own name..
QED
BSD is for people who love UNIX. Linux is for those who hate Microsoft.
Just finished downloading it, burning it to disc now... seems it's out and downloadable to me. (Runnable, now that just *might be a different story...)
Ah, but that would still depend on the processor only, wouldn't it? In fact the optimal memory alignment may vary between i386 (32 bits) and P4 (where internal chip works with 64 bit numbers) but on other platforms these differences do not exist. So if you consider a P4 a different platform than a 386, there is still no reason to compile everything yourself. BTW my guess is that most people who compile their own software nowadays wouldn't even know the switches to gcc to get i<xxx>-optimized code.
The other advantage of Compiling yourself is control, you can control any aspect of the build process. Take Mozilla as an example, you can choose whether you want Mail/News client, SVG, MathML, you can prefer certain librarys over others (each of which has its own pros and cons) you can even choose which kind of garbage collection you want it to heav, if any.
The same thing can obviously be accomplished with binary packages as well. And of course, control is nice, but some libraries are better than others and I think it's nice that the distro people make the choices.
I never leard more about the inner workings of Linux, as when I first installed it manually from sources for the first time.
I perfectly agree with that. If you have the time, it's a nice excersise. But then so is a good book.
There are only two mirrors listed, but 3 is better than 1...: sorcerer.wox.org/download/+sorcerer+linux&hl=en&lr =lang_en&ie=utf-8
http://www.google.com/search?q=cache:WfiloTqZMq8C
With the ISO download stalled at 90% (been running since the time of my previous post on the subject) I haven't been able to poke around, but if this is true I am very, very interested.
:-)
Can you provide any more details (name of the command, where to poke around for docs, etc.). Even a hint as to what to look for, given that "it is not obvious" would be helpful.
The Future of Human Evolution: Autonomy
make buildworld rebuilds the core operating system from scratch. It does not touch the ports tree, hence it does not touch X or "major apps" either. By default, it doesn't rebuild the kernel either, but when people say "I did a make buildworld, they usually mean that they rebuilt the kernel as well.
On my K6/200 server, remaking the world takes about five hours and a half to finish from a clean tree.
There is absolutely no reason to panic.
I'd like to see the following: Complete hardware and architecture independance. Why couldn't you use the same source tree for i386, PPC, Sparc, alpha, s390, and (once the kernel is merged) AS/400? Sure you'd have differing "boot" methods, say a MILO-imaged floppy for alpha... but because it's all just source, it would actually be possible to use a single CD image for all platforms. What do you gain? Identical system configurations and administration across heterogeneous clusters and labs. No other distribution can really do that yet... this could be the first, and has the potential for a big win in heterogeneous markets.
I see a lot of people here talking about remaking their OS from cron jobs. Unattended recompiling of the operating system is not a good thing by itself; it can lead to a lot of strange trouble if you don't do it very cautiously.
I ran a FreeBSD 4-STABLE server for a while which I had configured for recompiling itself once per month from a cron job, which I considered a safe interval. A central problem that I ran into was changes in the operating system with respect to the configuration interface because the average automated recompile is incapable of updating configuration files - that's just too touch a job to do it with a few automated runs of diff and patch.
That's why in FreeBSD, they give you lots and lots of warnings about having to take backups before remaking the world, about updating config files (mergemaster (8) comes to mind) and so on. Heeding that advice is a very good idea. Trust me. Don't recompile from cron.
There is absolutely no reason to panic.
This is not necessarily a new concept. Linux from Scratch is a project thats been around for a long time. LFS helps you build Linux systems from nothing. Its core is a book that basically starts you with GLIBC and leads you through all the packages you probably need for a decent Linux system. The book is quite readable, and easy to follow. I have met plenty of newbies that have built systems with little difficulty.
After that, you can read hints on their website or read the Beyond LFS book to help you through getting a usable system, such as X, KDE, GNOME, or any other apps or servers you need.
There is a whole community of users out there who help each other out building their systems. For instance, I have a great system using only Xlib, GTK, or Window Maker based applications that fit on a partition less that the size of a CD-ROM.
In addition to all this, there is also a project in the works called ALFS which stands for Automated Linux From Scratch. This system allows you to build Linux from Scratch with little if any user interaction. There is already a stable system based on this called nALFS which works like a charm. I'm sure it would be almost trivial to place it on a CD with all the sources and have a project almost identical to Sourceror.
However, I am not knocking Sourceror. I have a friend that I've known for a while, and this is his distro of choice. He said its quite the system, I just have never tried it.
-- 4 8 15 16 23 42
Couldn't help but notice the "Redmond Linux" icon out of all those at the top of the page there.....
:)
http://www.redmondlinux.org/
Hmmmmm. I'm not sure what to think.
Libertarianism is rich wolves and poor sheep playing gambler's ruin for dinner.
C'mon, this is a joke, right?
You take all the time to configure the system so it runs the way you want, and then you use automated updating of all the apps so they break every time there is a new version realeased?
I can see it now -- someone gets his system installed and follows the suggested crontab entry for updates, comes back after a week vacation and finds his system is completely nonfunctional. Or worse, some cracker has infiltrated and been "updating" his system to the most optimized spam or virus center "within a considerable radius".
Folks, "compiled on the system" does not equate to "most optimized for your hardware." Only if all the options are selected properly could this be true, and even then if there is no option to turn on certain optimizations you still get worse than possible performance.
I just posted this a couple of days ago.
Hey dickwads, do something else for a while, check out a Brittney Spears fansite or something. I want to get to the site! I believe I know what my next linux distro install is going to be. Seriously, this is way cool.
In Bushworld, they struggle to keep church and state separate in Iraq as they increasingly merge the two in America.
well, wox.org is /.'d all to hell, so the impatient can simply:
/ sgl/sorcerer.iso.bz2
wget http://distro.ibiblio.org/pub/Linux/distributions
Happy downloading!
Funny, I noted the same thing yesterday. We are both getting bitch slapped for this. My karma dropped quite a lot already.
The sick thing here is that I understood your point! This little thread actually did some good!
Maybe is was the question after all, not the off-topic nature of the thread. Maybe not...
Either way, I am not going to be overly bothered by it.
Blogging because I can...
I don't think this is that much similar, and I fail to apreciate the advantages:
:)
... :)
One advantage of this approach is that if you're installing on multiple identical machines, you would only go through the process once. Once it's done, you'd have a set of "instant" install CDs. No menus, no further tweaking, just a direct blast onto the hard drive(s).
But you can do just the same localy with a Mandrake-like duplication system. I'm not saying this isn't an advantage, but it's not intrinsicaly due to the fact you built it on the server site.
A second advantage is that a server site can have a compiler farm, making the build process MUCH quicker than would be possible for an individual.
This depends a lot on how may users are going to use the server farm at the same time, and in the end, your farm will have finite resources while you can have 'infinite' distributed computing resources. But ok I don't think everybody would ask for compilation at the same time
A third advantage is that if someone sends in a configuration which matches one that's already been done, the compiler farm only needs to rebuild updated packages. The rest has already been done. The CDs can then be built out of freshly-compiled binaries and pre-compiled ones.
That's my main objection, I don't think you are going to find many matches here, first there are many many different hardware architecture. Just think about the cpus, ss2 ? mmx ? floating point error ? smp ? you would end with a lot of different packages just to match the hardware, but my main concern is that from here, you explode to match the many many different configurations options that every package has to offer. I think that those who want to fine tune their system to the point they recompile everything will want to have their say about having php with or without support for say, mysql, they will want to have their say about how appache is built with or without mod_perl, and they'll definitely want to decide if they want a static build or dynamic libraries for this or this package. they'll want to decide what libc they want, and imagine the kernel options ! they'll want ext3 here, reiserfs there, not as a module, they'll want xfs here but as a module, with frame buffers, without, etc...That's a whole lot of different packages...
A fourth advantage is start-up time. Because you're downloading a very basic bootstrap, rather than a mini-distro, the time to download, install and run is going to be much much less.
Well yes, but then you'll have to download your customized iso. you could as well download a very basic mini-distro asking you everything you want about everything that would then only download the sources you will need and then creating the iso on your machine and you would also decrease total downloading time, but it would be extremely inconviegnent because you would never have a 'usable cd' as in 'usable anywhere, independent' Also, your server has to build a new customized iso each time someone wants one, because even if for some reason you do have all the possible binaries anybody would want, you will still have to put them together on the unique way everyone wants it because one wants kde, another gnome another xfce etc. and of course you wouldn't waste bandwith sending him those binaries if he doesn't need them. So you will have to send him a customized iso with a specific newly computed name to avoid confusion, that is, it cannot be cached anywhere by any squid-like caching proxies (ok not so much an issue maybe) but it also cannot be mirrored think about how your server farm will have to deal with just the bandwidth that becasue of you very definition of the site cannot be shared. How many distributions aren't backed by a handful of mirrors ? and they don't have so high bandwidth requirements because the very same iso is usable by many people on the same area, if I download it, all my friends can use it (and they do). in this case, everybody has to download his own iso. the only one guy who will see an advantage here is the one who has 30 identical machine with the same requirements. cool, but I bet he will have at least one server with, if the same hardware (unlikely) will surely have different configurations (kernel with packet filtereing etc... different software, squid, apache, kups or lpd...) so this will be a second download. when he could have dealt with it just with one download in a sourcer's case. so you'd have to compare 2 download times plus 2 remote compiling time against 1 download time versus 2 local (but parrallel) compilation times. I don't know many cases where this will represent a quicker install in your proposed configuration.
The last advantage is when it comes to updating your system. Again, with all the compiling being done on a remote compiler farm, the time it would take to do a basic update would be minimal, compared to Sorcerer, and far more optimal, compared to Up2Date or Red-Carpet.
Hmm I don't know this sourcerer but it seems you're implying that the only way to update your system is to burn a new cd and then install all over again (??) you can do that to have always the latest install cd, but I don't think you have to do it just to update your system. I suppose you just have to recompile the few instaled packages that have update which must be done by dowbloading just their patches (I certainly hope so !)
Oh well.. maybe I just missed your point
I've been saying for some time that I wanted a linux distro that would compile itself self and be optimized specifically for the system it was installed on.. everyone I talked to about it said I was crazy and that there would be no need for such a thing or that it would be a waste of time to optimize it so..
While the sorcery metaphors seems a tad bit overdone, the whole idea seems like a good one.. the package management (if one can rightly call compiling source package management) appears to be easy to use from the general description of it all.. it appears like it has an apt-get kinda ease to it.. its a shame the main site for the distro has been /.'ed but I can see where that would happen once all us get wind of it and run to download the iso's. hopefully someone that has used it can better comment on the ease of use overall and the package management especially.
I once had a slashdot sig to the effect of "Slashdot is not news for geeks, its a battleground for wannabe managers." Again I'm seeing the tendancy for people to offer their opinions as if they were managing a project.
What these people are doing is pretty cool. Its something that I've been hoping would come out for a while (actually it has, at rocklinux.org and has been mentioned on slashdot as much as two years ago.) Back in the days of StampedeLinux I found out first hand the benefits of a hand-optomized compilation. It easily ran at 20% faster speeds than anything else for desktop use.
Now that the optomizations of yesteryear found in egcs and pgcc are done pretty well in in gcc 3.0, I wonder why I still run packages for an i386 on my Athlon. Rock linux is by far the most real-man linux out there, and is the most stable and unbreakable. If Sorcerer is only a bit more managable I'll have to try it out too.
You don't have to compile your 2Gigs every night. Nor do you have to compile it all at install time. I don't think Sorceror will let you install from premade binaries, but that's irrelevant if you aren't using binaries.
Here's what you do on your distro (if it will let you compile from source without mangling the package system):
Monday: compile the kernel and glibc
Tuesday: compile gcc, binutisl, textutils
Wednesday: compile XFree86
Thursday: compile kde-libs, kde-base (or gnome equivs)
Friday: compile kde-network, kde-utils (or gnome equivs)
etc
etc
etc
The advantages of doing your own builds, summarized (you can get detailed advantages on the sorceror, gentoo and freebsd pages):
Significant performance increase
Customized package configuration (Dia without GNOME, Xmms with mods, etc)
Fewer dependency problems (let configure worry about which exact libs you have installed)
Binary packages are convenient during installation, but they shouldn't be the final product on your box. They're so you can get a system up and running fast. Afterwards you can rebuild everything in the background while you're posting your trolls.
Most of you Linux guys are fanatical about Open Source and Free Software. It's your mantra and credo. Yet you fear the words "./configure; make; make install" every bit as much as the clueless windoze lusers. Free Software is meaningless without source code. Without source it might as well be proprietary freeware. Source code is your power. Don't pheer the source!
A Free Operating System allows you to do whatever you want with it! You are in control. Your box is yours. So why is some release manager at Redhat or SuSE your sysadmin-by-proxy?
A Government Is a Body of People, Usually Notably Ungoverned
How much source code needs to be uploaded for a good, full-featured distribution? Can I do it over a dialup connection, or is a T3 line a prerequisite?
Much of the discussion here has revolved around how long it would take to compile everything. Well, the author just did that, but forgot to give the details about how long it took on his computer, and what computer he had.
But these are trivial issues of installation only. The more important questions deal with the maintanence and daily use of the OS. What about security? What about system stability? I don't think these words even appeared in the article!
I love the idea of a system that updates itself nightly, but the downside is that you could never be certain that the computer would still be working any given morning. This introduces a new kind of downtime: your computer is effectively down until patches come out that stabalize your system! If you ever use your computer for anything that's in any way important, this situation would not be tollerable. I'm playing the devil's advocate here in order to make the point that this is a major issue that needs to be addressed. It may turn out that sufficient testing is done with each software release and major screw-ups are extremely infrequent.
An automatically-updating system (or even manually-updated) is doing a lot of stuff as root, which has to be an enormous security risk. What mechanisms are in place to keep security tight? What are the risks? Since this is a niche distribution so far, I guess security is not a major concern yet. But if the author's predictions come true and this becomes a major distro, what then? How does this distribution concept scale?
- Topher
do it before They do.
Yeah, it doesn't offer binary packages.
I don't know about you, but I apt-get install most packages and build the ones that I want to build (to ./configure things and when I want to go farther than Sid). To be fair, their build process looks pretty neat.
Let's remember than even people who build packages won't check all the sources for trojans, that processor optimizations are mostly unnoticeable and that most binaries come appropiately configured and compiled. And some builds can be so slooow...
Hmmm...
[newbie@home newbie]$ startx
"Damn, X sure does load slowly on this box!"
(Seriously, it does sound like a cool idea, even if I'm not convinced it's practical, but I may try it.)
Proud member of the Weirdo-American community.
Yes, the article was neccessarily limited. Only so much you can say without boring folks before you reach the end.
I have been using SGl for several months.
To wit;
It does more than any other distro I have personally tried, and I have tried ALOT.
It is a true packaging system, not just some scripts that install some source. It tracks and MAINTAINS the system and the libs, and the dependancies, and much more than any binary distro would be called upon to do. The list of just what it can fix is rather astonishing, and how it does it in bash is truly fascinating.
I can go on and on about just how much of a difference stability and optimisation can make, but I would doubt I could convince anyone of any of this , unless they gave it a try.
So, I suggest those of you saying this is just another rock, or gentoo, or lfs, or alfs; just give it a try. I did three months ago while searching for something more encompassing, after breaking a box doing a glibc upgrade. Now I have a distro that does this, in fact it CAN clone itself using it;s binary cache and then automatically (or manually, you chose) fix itself right up, libs, sysmlinks, dependancies, and file intergrity !!!
bfinch
oh yeah, i forgot to mention that you can put any or all of your box on HOLD status, which means You can decide just what may be upgraded and when, even if your run the update once a day or so.
bfinch
http://www.openbsd.org/images/tshirt-7b.jpg
You're confusing abstraction with optimization. Abstraction makes sure that you do not have to recompile all your applications, and, in fact, not even the kernel.
Optimization includes making use of the latest features and optimizing for a certain architecture (e.g. Pentium vs. AMD). This usually doesn't make sense if you're shipping precompiled binaries, and abstraction makes sure it's not required. But that doesn't mean optimization shouldn't happen.
Free Software is about having the software configuration you want. Why not extend that to having it tuned for your hardware?
You don't think a Pentium 4 optimized or Athlon optimized executable is much more performant than a generic 486 executable? Besides, even if it's just a 10% increase in speed, why not? You get it for free (well, maybe the installation takes longer due to the compile time, but that's a one-time effort).
Sig (appended to the end of comments I post, 54 chars)
I didn't want to do it, i really didn't but my new comp comes with a ATI Radeon Mobility which is only supported under the latest CVS from XFree.
/usr/ports/x11/kde2; make; make install was easyer then downloading 25 packages. Also i guess KDE will be fast since i compiled it myself.. or something.
Wait a min, why did i compile KDE then, oh right because type cd
anyway the whole thing took about 4 hour on my P-III 1mhz, not too bad. but i started getting pretty anxious for it to finish, waiting 4 hours to see if somethings going to work or not kind of sucks. also c++ files take a shitload longer to compile then c files, so KDE took longer then expected.
i have no point, so nm.
-Jon
this is my sig.
Being a member in the first PC-demo group THE SORCERERS in 1989 this distro warms my heart :)
Because I can think of no better way to waste a whole lot of processor time, and a whole lot of bandwidth. (Did I mention user time?)
So what? My processor is fairly idle while I'm sleeping (besides what little the elves need) and user time would be nil if you can set up a cron to kick the thing off (or minimal if you kick it off just before going to get some much needed rest). The only drawback you listed that has any merit is bandwidth and that would only be an issue for those having metered connections (unless you're suggesting that a significant portion of the world will suddenly switch to this solution and bring the net to its knees - that's not likely since most corporate IT departments would probably cast a jaundiced eye at automatic changes being made on production servers).
--
As a matter of fact, I am a lawyer. But I play an actor on TV.
The optimized for specific hardware thing might be an issue for a 386 which you want to run as fast as possible but really doesn't matter that much on modern hardware on which you often can't even find much difference with a program compiled with or without optimizations.
The great parts of compiling something yourself are so great because of the lack of automation, not because the compilation itself.
Software should be free as in speech, but if we also get some free beer, all the better.
True story: I just put together a rather modest system for a friend of mine, using Mandrake 8.1.
It's OK, but I would have liked to recompile XFree86 to take advantage of the K6-2's 3DNow extensions. Read somewhere using -O6 is cool too.
Problem is there was almost no disk space left, and
it would probably take a *long* time.
Now, I have an Athlon 800 at home, with more disk space.
What I would like to see is a way to more-or-less automatically tell an installer "Make a distro for a K6-2 with an Mbogo Heavy Industries video card", let it grind away all night, and in the morning spew forth a custom CD-R. I guess this is similar to the earlier suggestion to have a compile farm somewhere, but even in that case you still wouldn't
want to have to have *every* machine represented,
thus the cross-compile idea.
Just make your own from scratch. And no, LFS also sucks. You can do anything without it.
...an open source Linux distribution which is more in line with the concept of what Linux is supposed to be. I find it hard to believe the amount of open source "advocate" nay-sayers.
:)
This distribution is targeted at optimization and performance. I personally never install RPMs due to the fact that the entity who created the RPM has no clue as to my hardware, my system configuration or anything else which defines my system. Compiling from source is what gives Linux the edge over the competition. RedHat, as much as I appreciate them for their contributions to the community, has turned something good (Linux) into a MicroSoft clone with it's RPM transactioning system. If I wanted to download binary packages and install them with an easy command (rpm -e xxx.rpm) or tool (setup.exe or install.exe which are both usually created with InstallSheild), why would any bother with Linux when you can get binary installations for MS Windows? You may answer this with "speed", "scalability", "performance"... If you are really concerned about speed, scalability and performance, compile from source so the software you are installing is optimized for your system configuration. Basically, RPMs defeat the purpose of Open Source.
Keep in mind, AOL/TW are having talks with RedHat, which seems to be the most popular Linux distro, about purchasing the company. This means I, along with many others, may end up finding a new distro.
If you are concerned about installing it on multiple systems, there are a number of roads you can take. Two letters for you... dd (disk duplicator). Second, burn your system on a few cd's, make a boot floppy, and install it that way.
Plus "Sorcerer GNU Linux" (SGL) has the same initials as me
sglane
This is the Internet. You can say "fuck" here. - AC
Optimizing the code for CPUs makes a big difference. However, in the long term, you can also make a big difference optimizing for amount of memory (big binaries vs. small). You can make a big difference by compiling only the libs you need in (a la ./configure). You do get a performance boost. More importantly, you get a flexibility boost.
Has anyone got a link to a mirror of sorcerer linux anywhere about? The site's been hosed for two days.
-Zarchon
Come on, these, and most GNU tools are trivial.