Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Linux Software

If I Had My Own Distro... 823

Gentu writes "Adam Scheinberg writes an interesting editorial explaining what he would do if he was a developer and he had a Linux distribution. His suggestions are pretty radical, and in places resembles of what Apple had done to MacOSX with the help of BSD as the underlying technology. But if this is what it takes to get Linux into the next level, it might worth the consideration."
This discussion has been archived. No new comments can be posted.

If I Had My Own Distro...

Comments Filter:
  • Prediction: (Score:5, Funny)

    by Anonymous Coward on Tuesday April 29, 2003 @06:00PM (#5838170)
    Prediction: Linux From Stratch mentioned in first 50 posts.
  • Uhm... (Score:2, Interesting)

    by jawtheshark ( 198669 ) *
    I understand what he means. I've been trying to do what he describes with the bare bones distributions like Debian and Slackware. I didn't succeed by now.

    This is probably linked to my own incompetence and not to the fact that it isn't feasible.

    • Re:Uhm... (Score:4, Interesting)

      by intermodal ( 534361 ) on Tuesday April 29, 2003 @06:05PM (#5838225) Homepage Journal
      Gentoo. Customize as much as you want. most of his first page can be taken care of with static links anyhow.
      • Re:Uhm... (Score:3, Funny)

        by budgenator ( 254554 )
        most of his first page can be taken care of with static links

        no he can't, everybody knows that excessive use of static and sym links to work around crappy filesystem layout is IP of SCO, and they'll sue you for a gizillion schamolies if you don't have a liciense and a NDA on file Just ask the rabbit next thing you know the Weezles and Judge Doom will busting down his door with a barrel of dip in the paddy wagon
    • Drop X (Score:3, Insightful)

      by cscx ( 541332 )
      I think Linux could benefit from scrapping X and developing a new, fast GUI system like Windows or MacOS. X is too dependent on networking protocols and is just pretty goddamn slow all-around. It will take a lot of effort to make something like this happen, but if Apple could do it why can't the open source community do it too? Instead of developing Window Manager # 123480, people need to collaborate and make a common, consistent, and standard layout that all programs can use, without all the bloat of the g
      • Re:Drop X (Score:5, Insightful)

        by oconnorcjo ( 242077 ) on Tuesday April 29, 2003 @08:05PM (#5839107) Journal
        I think Linux could benefit from scrapping X and developing a new, fast GUI system like Windows or MacOS. X is too dependent on networking protocols and is just pretty goddamn slow all-around.


        (sarcasm)
        Yes lets just start over from scratch and abandon 15 years of gui development. I am sure in ten years the new system will be much better than the old system.
        (/sarcasm)


        BTW it is GNOME and KDE that are dog slow but that is the new "modern" stuff while "old" X and fvwm still runs fast and light (and looks better too).

        It amazes me how quickly some people are willing to just abandon something because it has flaws. Almost all software of any real complexity has flaws but developers should not be so quick to abandon what works.

        Example:

        The OSS community decided to abandon the source to Netscape and it took them 3 years to provide a high quality browser worthy of replacing 4.7. Just think what could have been accomplished if Netscape's components had been replaced piece by piece instead of killing the project in one fell swoop. Today the Roadmap on Mozilla.org discusses the design flaws of the current Mozilla browser (and Apple thought Mozilla's gecko was too messy so they went with Khtml for thier "Safari" browser).

        To the credit of the Mozilla developers, they did eventually provide a very good browser but when they started over, they nievely thought they would have a solid product by the end of one year! Mozilla is very simple in comparison to all the infrastructure and design used with and by X.

        The lesson of "Easier said than done" seems to be ignored all too often. It is not fast or easy to replace a sophisticated working system. Many projects have been started to replace X but none of them have ever made it all that far because amazingly X works better and supports more software. If you want to use something else, go ahead. Nobody is stopping you.
      • Two Things (Score:5, Insightful)

        by Tony ( 765 ) on Tuesday April 29, 2003 @08:05PM (#5839111) Journal
        Point one:
        X is too dependent on networking protocols and is just pretty goddamn slow all-around.

        X is hardly dependent on networking protocols. Local client access to the server happens over Unix Sockets, a very low-latency, architecture-independent solution. Nor is X that slow. X ran jes' fine on my old 386 with 8 MB of RAM and 256K CL graphics card. Let's see the "fast GUI system like Windows or MacOS X" do that. ...without all the bloat of the gtk+ and QT toolkits.

        I think this is the core problem, not X.

        Point 2:
        Instead of developing Window Manager # 123480, people need to collaborate and make a common, consistent, and standard layout that all programs can use...

        If Linux were a business, I'd agree with you. However, Linux is not a business; it's essentially a hobby. Linux' success is based not on the application of business practices, but by a bunch of people having fun writing software.

        Sure, there's a lot of businesses interested in Linux, and contributing to Linux for their own needs. But this is after-the-fact; businesses have already accepted Linux. Now they are customising it to fit their own needs, or supporting it out of the understanding that what is good for Linux is good for business.

        Anyway, this is all a lot of armchair quarterbacking. Linux is Linux is Linux. Telling a bunch of volunteer developers what they *should* be working on (instead of providing positive and useful feedback on they projects they *are* working on) shows both ingratitude and lack of understanding of the entire Free/Open Source culture.
      • No! (Score:3, Insightful)

        X is too dependent on networking protocols and is just pretty goddamn slow all-around

        IMO, X is NOT what is slow! It is KDE/Gnome/[insert slow desktop/window manager here]. If you want to see the speed of X all by itself, try typing 'X' at the command line. The X server pops up damn near instantaneously (minus anything useful though) on my P4 1.7Ghz, and it is still quite fast on my K6-2 450 (yeah I still have one of those). Also, I have noticed that recent versions of Gnome have improved startup times. F
      • Re:Drop X (Score:3, Interesting)

        by shellbeach ( 610559 )
        Um. Yeah. Let's scrap X and using something completely incompatible. Furthermore, let's scrap gtk+ and qt instead of porting them! So almost every single application with a gui ever written now doesn't work in your new system. No GIMP, no mplayer, no XMMS, no mozilla/firebird, no konqueror, no evolution, no anything ... well, not unless you fork them and rewrite them to work with your new system.

        In reality, I think you'll find that we're fairly much stuck with X. And while ever there's gtk+ and qt, w

  • by loknor ( 583729 ) on Tuesday April 29, 2003 @06:01PM (#5838179) Journal
    I would call it "AssHat" and make it look like Windows but covered in tinfoil.
  • by Jerk City Troll ( 661616 ) on Tuesday April 29, 2003 @06:01PM (#5838180) Homepage
    Wait a minute here, I am confused. How could you not have your own distro, I mean, it seems that everyone else does [ibiblio.org].
    • by theLOUDroom ( 556455 ) on Tuesday April 29, 2003 @06:16PM (#5838316)
      Actually, I belive this [bbspot.com] would be the better link on this topic.
  • by jonathonc ( 267596 ) * <(jonathon) (at) (despammed.com)> on Tuesday April 29, 2003 @06:03PM (#5838202) Homepage
    I'd sue SCO for "misappropriation of trade secrets, tortious interference, unfair competition and breach of contract." Just like they're doing to IBM [sco.com].
    ;-)
  • Hmm... (Score:3, Insightful)

    by Bendebecker ( 633126 ) on Tuesday April 29, 2003 @06:03PM (#5838204) Journal
    Maybe the fact that he doesn't have his own distro indicates something...
    Thois guy has a lot of ideas but most are just opinions on what's wrong with Linux. If he was a developer and knew what was actually entailed in running a distro, I might listen. But most of his opinion seem to be: "let's make Linux btter by making it more like Windows."
    • Re:Hmm... (Score:5, Insightful)

      by mingot ( 665080 ) on Tuesday April 29, 2003 @06:12PM (#5838281)
      Maybe the fact that he doesn't have his own distro indicates something

      Yes, it indicates that he doesn't have a distro. Good job on putting that together.

      Thois guy has a lot of ideas but most are just opinions on what's wrong with Linux.

      Hang on there, slappy. And idea and an opinion are two different things. He does have an opinion about what things are broken. In addition to that he has ideas that he feels will correct said things.

      If he was a developer and knew what was actually entailed in running a distro, I might listen.

      Do developers have a monopoly on creating a good user experience? I'd say just the opposite is true.

      But most of his opinion seem to be: "let's make Linux btter by making it more like Windows."

      Linux does a LOT of things better than Windows. And Windows does a LOT of things better than Linux. So what's wrong with wanting to incorperate some of the ideas of gates and putting them into Linux? You can bet your ass billy is adding Linux features to Windows.
    • There's a reason (Score:5, Insightful)

      by gregmac ( 629064 ) on Tuesday April 29, 2003 @06:17PM (#5838322) Homepage
      He didn't actually say anything about "Windows" in the article. Although yeah, a lot of his ideas are basically saying "let's make Linux better by making it more like Windows."

      But do you know why? It's because windows has it right. Windows is a really good operating system -- in theory, at least. Like the article suggests, it has a way of launching one browser anytime you load a URL from any program. It has a way to install/uninstall programs (well, kinda). Microsoft has already figured out the way to setup the interface.

      It's just that their implementation sucks, and half the times things break / don't work properly.

    • Re:Hmm... (Score:3, Funny)

      by Plug ( 14127 )
      Maybe the fact that he doesn't have his own distro indicates something...

      Yes, it means that he has come to the realisation that you don't need to make another distribution to make Linux better.

      Ximian [ximian.com] have exactly the right idea. Their product practically revolutionised your desktop in the GNOME 1 days; with things like OpenOffice.org for GTK2, I imagine Ximian Desktop 2 will have a similar impact. Not a distribution, but an add-on for others.

      The next best thing is building on top of Debian [debian.org] - then yo
  • by Anonymous Coward on Tuesday April 29, 2003 @06:04PM (#5838207)
    I would be sued by SCO.
  • Leave it be! (Score:3, Insightful)

    by AdrocK ( 107367 ) <adam.gabriel@3.14159gmail.com minus pi> on Tuesday April 29, 2003 @06:04PM (#5838212)
    IMHO, I think the user-firendlyness is nice, but if people want to keep the stability and flexibility built into *nixes, then there is going to be a limit to the user-friendlyness that the OS can have. OSX might be as close as a balance as you can get, but does a stable Debian user care more about linux going to the next level of Desktop OS, or whether or not his servers stay up. Perhaps it might be time start a fork for Dekstop environments and one for servers/kiosks/embeded systems, etc. If someone is going to release a "User-friendly" linux distro, I want it to be pretty damn friendly, otherwise I will continue to use linux for what I think it's best at, stability and a work horse.
  • by BoomerSooner ( 308737 ) on Tuesday April 29, 2003 @06:05PM (#5838214) Homepage Journal
    I did. I've never looked back on the desktop. Servers still run Linux.
  • by jfisherwa ( 323744 ) <jason.fisherNO@SPAMgmail.com> on Tuesday April 29, 2003 @06:05PM (#5838215) Homepage
    (I've posted this before, but it is 100% relevant to this article and something I want people to think long and hard about. [slashdot.org])

    Forget copying the Windows UI, that's absurd.

    Someone is going to get on that machine, go to Start -> Programs looking for "Microsoft Excel" and feel like an idiot or be completely frustrated because they couldn't find it.

    NO ONE has complained that people stay away from OS X "because it doesn't look like Windows." WHY are we trying to pretend that's the reason people don't try Linux?

    If you want Windows people to use Linux, we need distributions to do a few things:

    Ditch 3 of the 4 programs that do the same thing. Seriously. Why do I need 4 CD-R burning programs? Just give me the one that works the best, that's *all I care about* - and make sure it's labeled "CD Burner" so I don't have to decipher "gkdesbUISO." Contrary to what people here may think, we do NOT need to include every single Web Browser available. Don't put every alternative in the "Programs" menu - you hide the extra versions, and it only comes out when someone says they are an "advanced" user. Or perhaps a help option that says, "Software Doesn't Do What You Want? Try These:"

    Distro installers should have a "I have never used Linux before, but I have been using Windows for 5 years" option. This will offer extra help in the form of, "If you are looking for this, you will now use this instead."

    Make sure "regular" users *only* need the first CD. In the case of a 3 CD distro like Mandrake, make the additional CDs required only for developers and/or international users.

    When you setup the desktop, be it either Gnome or KDE, you need to include a few "What do I do now?" icons on the desktop. I'm not talking about your "Welcome," because most of these people are illiterate or too lazy to read them, I'm talking about a few icons such as "Games," "Mozilla Web Browser," and "OpenOffice Applications." Do NOT just call the web icon "Mozilla," because these people have no idea what Mozilla even is.

    I don't know if one exists yet, but we need yet-another new standard Linux portal. One that can be branded with Mandrake, RedHat, etc, but has software reviews, HOWTOs, special tips, best applications in each category, downloads, news, a forum, etc. And when you click to download a file, it is either a .RPM or .DEB, in which case it is already figured out for you (Mandrake-branded site will default to .RPM, etc).

    Apple has the portal down to an art--take heed as it will go a long way to making them feel like they are both a part of something, and that they've just entered a Brave New World as opposed to being made to feel like an idiot because they can't find anything or get anything done.

    The thing that most mainstream distros seem to be doing well, is that as soon as they are installed, 99% of the applications you will ever need are already installed and setup. With Windows, you're stuck with installing all of your software off of CD again, downloading everything again, etc, etc.

    Prove me wrong now.

    Jason Fisher
    • by Mitchell Mebane ( 594797 ) on Tuesday April 29, 2003 @06:16PM (#5838310) Homepage Journal
      Forget copying the Windows UI, that's absurd.

      Someone is going to get on that machine, go to Start -> Programs looking for "Microsoft Excel" and feel like an idiot or be completely frustrated because they couldn't find it.

      NO ONE has complained that people stay away from OS X "because it doesn't look like Windows." WHY are we trying to pretend that's the reason people don't try Linux?


      I fully agree with you. The Windows UI might be nice, but if you don't offer full Windows functionality it can get confusing. In fact, one of the first things I get after installing KDE was change everything around until I found a style that suits me, which happens to be a hybrid of OS X and Windows, with a little bit of BeOS thrown in, and some of my own special magic.


      Ditch 3 of the 4 programs that do the same thing. Seriously. Why do I need 4 CD-R burning programs? Just give me the one that works the best, that's *all I care about* - and make sure it's labeled "CD Burner" so I don't have to decipher "gkdesbUISO." Contrary to what people here may think, we do NOT need to include every single Web Browser available. Don't put every alternative in the "Programs" menu - you hide the extra versions, and it only comes out when someone says they are an "advanced" user.

      Except for the fact that Gentoo is really only for "advanced users", it fits the bill pretty well. By forcing you to manually install everything you want, it cuts WAY down on bloat.
      • Except for the fact that Gentoo is really only for "advanced users", it fits the bill pretty well. By forcing you to manually install everything you want, it cuts WAY down on bloat.

        I don't think the person was commenting on bloat, but confusion. More choice causes most people to be confused on topics they're not familiar with or may feel uneasy about. Some people don't want more choices.

        I don't want to have to decide between 5 guys to fix my car. I don't know who to trust or what I'm getting into.

    • by The Vulture ( 248871 ) on Tuesday April 29, 2003 @06:16PM (#5838318) Homepage
      I have to agree and disagree with you on this.

      First of all, I would like to say that I have no objections on multiple pieces of software that do the same thing, after all, variety is good. Whether they should be included in a distro, well, that's up to the distro.

      There's different Linux distributions out there that have different purposes. RedHat seems to be going after the office market, Mandrake, the home user, Debian, the person who wants complete freedom (as in speech), Slackware, the tinkerer, etc.

      I've actually had visions of making my own distro, similar to the article author - I've gotten so far as to building my own program (on Freshmeat) that parses the Linux From Scratch XML file, to generate scripts to do an (fairly) automated build. From there, I would then decide on which packages I'd like to standardize on (KDE probably), and build them, make a nice installer, and there's my homebrew Linux.

      Personally, I don't care if Linux ever gets complete mainstream acceptance, and I get the feeling that many of the core developers of the kernel and other bug projects feel the same way. However, I would love to see a good distro that:
      1. Does not use RPM for package management (I've had RPM screw up way too many times in the past).
      2. Has a decent GUI installer
      3. Can configure all of my hardware without me tewaking it (I'll understand for some of the latest/greatest hardware, like my AIW 9700 Pro, but for instance, getting wireless setup on my laptop with both RedHat 8.0 and Slackware 9.0-pre was a pain)
      4. Very configurable

      The biggest obstacle to a lot of this is that writing programs (or frontends) that are easy to use is a pain. It takes a lot of work to design a GUI, and a lot of programming, and sanity checking, and for most of these developers who are working for free, it's just not worth the time (unless the program absolutely requires a GUI).

      Until then, I keep dreaming of my magical Linux distro... What keeps me from doing it is my full-time job as a programmer, which gives me little incentive to code at night.

      -- Joe
      • by RealAlaskan ( 576404 ) on Tuesday April 29, 2003 @06:42PM (#5838545) Homepage Journal
        However, I would love to see a good distro that:
        1. Does not use RPM for package management (I've had RPM screw up way too many times in the past).
        2. Has a decent GUI installer
        3. Can configure all of my hardware without me tewaking it (I'll understand for some of the latest/greatest hardware, like my AIW 9700 Pro, but for instance, getting wireless setup on my laptop with both RedHat 8.0 and Slackware 9.0-pre was a pain)
        4. Very configurable

        Knoppix? [freenet.org.nz]

        Seriously, Knoppix seems to have everything but a ``push me to repartition the hard drive and install automagically'' button. That link makes it look as if getting that magic button wouldn't take much effort.

      • by iabervon ( 1971 ) on Tuesday April 29, 2003 @07:33PM (#5838917) Homepage Journal
        Debian is also good for the user who doesn't want to deal with installers. My experience with Debian has been that "sudo apt-get install " will reliably install just about all of the programs I've tried (the main exception being valgrind on stable). RPM is a nice idea, but you have to actually find RPMs, which is a pain.

        It could really use a nice index (not a list; an index, where you could look up "Web Browsers, m-something") of available packages. It could also use a nice index of the packages you have installed.

        For that matter, it would be nice to be able to type "apt-get install some clock" and get a nice clock. Not a particular clock, since the user obviously doesn't care, but one that some maintainer likes. And it should appear in menus as "clock", not as whatever the clock package is actually called, because the user doesn't want to know. If somebody wants "xclock", that's available to, as "xclock".

        When an application wants a web browser, it should run "web-browser [url]". That's a symlink in ~/bin to the user's current favorite web browser, or a symlink in /usr/bin to the system's favorite (or only) web browser. Maybe it should be possible to configure the application to do something different, but people probably wouldn't. We've had $PAGER for ages, and symlinks are even cooler than environment variables. My editor of choice is $EDITOR filename (actually a small shell script which does this).
    • by ScoLgo ( 458010 ) <scolgo@g m a i l . c om> on Tuesday April 29, 2003 @06:23PM (#5838378) Homepage
      Distro installers should have a "I have never used Linux before, but I have been using Windows for 5 years" option. This will offer extra help in the form of, "If you are looking for this, you will now use this instead."
      This is an excellent point. Microsoft did this very thing with Office. In the Word Help menu, there is a 'WordPerfect Help..." option and in Excel you'll find "Lotus 1-2-3 Help...". While most people that are willing to try Linux are (usually) capable of figuring things out for themselves, there's nothing wrong with making it easier up front.
    • by Black Parrot ( 19622 ) on Tuesday April 29, 2003 @06:31PM (#5838449)


      > If you want Windows people to use Linux, we need distributions to do a few things:

      Maybe we should start by questioning some assumptions, such as: Do we want to roll Linux to appeal to Windows users, or do we want to let it seek its own niche?

      The GNOME 2 "less is more" mantra may appeal to Windows users, but it makes some of us wonder how to get the missing functionality back. Let's not drag the whole game off in that direction.

    • You are so damn right. That's exactly what Linux distros are lacking. Linux already has all the applications needed to make the change (all but a DreamWeaver-like HTML editor), the problem is in the presentation, distribution, general feel of the environment.

      I know a lot of distros are going this way (RH 8.0 and the unified desktop was a step in the right direction and they ditched a lot of apps from the menus, just leaving one of each; MDK 9.0 and 9.1 have the right installer for any newbie to use, perhap
    • I have a few thoughts on your article.

      The problem with making Linux not just a clone of Windows is that it's always (from the X perspective) been a clone of Windows. Motif was designed to offer the functionality of the HP VUE system and the visual elegance of Windows 3.1. I kid you not. Motif still remains as the single biggest influence on Linux desktops today. QT 1.x offered just two styles - Windows and Motif, Motif being a clone of Windows. GTK was always a blatant Motif clone. Other styles changed th

    • Have a look at Fluxbox, Enlightenment and projects like Slicker which is a more radical card based version of the KDE kicker. It's pretty unique in my eyes.

      http://slicker.sourceforge.net/

      Cloning Windows? the screenshots I've seen of latest Windows betas seem to suggest they've lifted a few ideas from the Unix desktop as well.
  • MY DISTRO!! (Score:4, Funny)

    by Bearded Pear Shaped ( 665665 ) <nerves@ g m x . n et> on Tuesday April 29, 2003 @06:05PM (#5838216)
    OKAY
    it would have AVRIL LAVIGNE
    AND ICE CREAM
    AND A SODA PUMP WITH UNLIMITED REFILLS
    And UT2K on a BIG SCREEN

    Also I wouldn't have to write shit in perl just to make it do stuff it should already do out of the box.

    It would also be nice if I didn't have to go that scary admin with a huge UC Berkely Beard for advice (he smells like chlorine and fish).

    P.S. ICE CREAM
  • by TheViffer ( 128272 ) on Tuesday April 29, 2003 @06:06PM (#5838234)
    So I'm in charge of my own personal Linux distribution, DistroX, and here's what I'm telling my staff and engineers.

    Ok .. so you are in charge of a Linux Distro ... mkay ...


    We're a company first and foremost, and so our goal is to stay in business and make money. We'd have to achieve this in two ways:
    a) first off, we should probably base our distribution on the FreeBSD system. FreeBSD has many drivers, boots much quicker than Linux, is very clean code, and most importantly, has a much more liberal license.


    Wait a second .. this article is how you would create a Linux Distro just to convince yourself you would use BSD?

    Hu?

    • Than to try and have a technical discussion with a suit.

      Here, I put the quotes into the ManagementSpeak part of Babelfish:

      So I'm in charge of my own personal Linux distribution, DistroX, and here's what I'm telling my staff and engineers

      I make sure people show up to work and have unreasonable project milestone deadlines. Here is what I'm saying when our employees are asleep during meetings.

      We're a company first and foremost, and so our goal is to stay in business and make money. We'd have to achieve
  • Well (Score:2, Informative)

    by GigsVT ( 208848 ) *
    He has some valid points, but my first impression is that a lot of what he wants already exists.

    He asks for a website where he can go download things that will automatically work on his distro, pretty much every distro has that.

    He asks for automatic dependancy solving, that's not a distro problem, that's a packager problem. There is apt for Red Hat and debian, or up2date on Red Hat if you want to pay, there is no reason to put all deps in every package, that would make some packages three or four times l
    • Re:Well (Score:3, Informative)

      by BigBir3d ( 454486 )
      > He could argue that it's too difficult to make a proper RPM, and I would agree, but he doesn't argue that.

      urpmi

      Being a Mandrake 9.1 user, he should know about that...
  • My wish (Score:4, Interesting)

    by Adam9 ( 93947 ) on Tuesday April 29, 2003 @06:07PM (#5838244) Journal
    I'd love to see Knoppix's hardware detection in other distros that need such a thing.
    • Re:My wish (Score:5, Informative)

      by Plug ( 14127 ) on Tuesday April 29, 2003 @06:34PM (#5838484) Homepage
      Discover [debian.org].

      apt-get install it in Debian; all of a sudden your system will load whatever modules it needs at boot! No more adding your network card to /etc/modules.

      (Note for stable users: get the latest discover-data source from unstable and rebuild the package for stable; it's just a PCI ids list - no software - and it detects a lot of newer hardware, and has better support for 2.4 kernels.)

      Alternatively, check out a list of other interesting hardware detection information at debian-devel [debian.org], and you can even find a link to a Mandrake script to port databases between the systems.
  • by Anonymous Coward on Tuesday April 29, 2003 @06:11PM (#5838273)
    What if you took the Linux kernel and created an OS around it that looked nothing like Unix?

    * Use a filesystem layout like he describes, with long, verbose, friendly names.

    * Use a centralized configuration storage system like LDAP (or NetInfo if netinfo didn't stink).

    * Use buzzword-compliant technology throughout ... XML for simple data storage, SOAP for RPC, Jabber for alerts and messaging. Rendezvous, etc., put it all in there.

    * Come up with a modern window system like X on weight-loss pills that doesn't need a hack or add-on module to do the stuff that most PCs do today.

    * Use a virtual machine like .NET wherever appropriate. Use dynamic languages like Objective C. Make everything callable from everything else whenenver possible.

    Now you might be thinking, well that's just OS X. Well, in a way. But OS X is still too unix-y. I mean rip out ALL the unix stuff and start over with OS X as inspiration.

    I dunno, I used to think about this a lot between the time NeXT disappeared and Mac OS X appeared. But OS X is "plenty good enough" so I don't think about it much anymore.

    But the question is, what would we get if we took the Linux kernel and put a new OS around it?
    • by JoshRendlesham ( 641219 ) on Tuesday April 29, 2003 @07:16PM (#5838800)
      The LinuxSTEP [linuxstep.org] and the Simply GNUstep/Prometheus [sf.net] projects are working on Linux-based distros similar in some respects to what you propose.

      LinuxSTEP, for instance, has reworked the filesystem layout a fair bit, towards a more NeXT/OS X-ish layout. The Simply GNUstep project was working on an alternate, light-weight windowing system, NuVu [sf.net]. Both use Objective-C, as the GNUstep [gnustep.org] framework is an integeral component of each.

      While they might not offer a very usable system at the current time, they might be more viable options in the future, and perhaps might be worth following or contributing to.
  • by Anonymous Coward on Tuesday April 29, 2003 @06:14PM (#5838297)
    The goal of the MHS project is to define a Modern Hierarchy Standard for UNIX-like operating systems which will further enable them to evolve, innovate, grow, and compete with Windows and other modern OSes.
    Specifically, MHS technology will provide the following benefits:
    100% Application Directory Oriented
    Internationalization of Directory Names
    More Intuitive Directory Names
    Fewer Root Directories
    Support for Case-Insensitive File Systems
    Full Coexistence with Legacy FHS
    Increased System Flexibility
    A new hierarchy will be a big enough change to make distributions switch to application directories.
    Set of environmental variables pointing the location of major system directories.
    Applications would no longer need to hard code directory names.
    System level directories grouped together under a common directory. (/System)

    Currently, the directories are expected to be moved to the following locations: /bin => /System/Commands /sbin => /System/Commands /boot => /System/Boot /dev => /System/Devices /etc => /System/Config /lib => /System/Libraries /proc => /System/Process /mnt => /Mount /opt => /Apps /tmp => /Temp /home => /Users /usr/bin => /System/Executables /usr => mostly placed under /System /var => mostly placed under /System

    All paths will be lower-case on a case-sensitive file system. As shown otherwise.

    Application developers and distribution makers will need to use the /Apps directory rather than cramming everything into /usr.

    The autoconf family of tools will be patched to support the new hierarchy which will make most applications translate easily.

    Although it can still be done, MHS will not support the same level of shareability (i.e. mounted over a network) as the legacy FHS standard.

    FHS can be emulated via symlinks and MHS can be emulated on existing FHS systems. A kernel/file system hack of some kind may be done to have the legacy directories disappear in directory scans, to help improve user friendliness.

    In addition to the standard, the project is developing a set of scripts that will setup the new hierarchy on existing FHS compatible systems.

    The standard will not be finalized until a Linux distribution ships based upon it.
    • by MobyTurbo ( 537363 ) on Tuesday April 29, 2003 @07:37PM (#5838943)
      Currently, the directories are expected to be moved to the following locations: /bin = /System/Commands /sbin = /System/Commands /boot = /System/Boot /dev = /System/Devices /etc = /System/Config /lib = /System/Libraries /proc = /System/Process /mnt = /Mount /opt = /Apps /tmp = /Temp /home = /Users /usr/bin = /System/Executables /usr = mostly placed under /System /var = mostly placed under /System
      Whoever moderated this post to "5" is on crack. ;-) Making directory names longer, fewer, and with more capitals isn't going to help. The type of user that has problems with using directories and the command line has problems using *any* directories, no matter what user friendly name they are named, at least that's been my experience with supporting users running Windows 9x. Microsoft is junking the normal file system for their upcoming OS and have a database that loads files based on each application because of this. Personally I think this is a good idea for their users; but it's one that we don't need to copy...

      One of the things I like about Unix is that it helps power users and programmers get done what they need to get done, simply making everything more verbose and harder to type won't be of help to anyone, expert or novice, IMHO, anymore than COBOL is more friendly to programmers than C.

    • by Crispy Critters ( 226798 ) on Tuesday April 29, 2003 @08:45PM (#5839366)
      Sigh. Whoever wrote this apparently has never read or thought about why the *nix filesystem is arranged as it is, or at least what the strengths are of the current setup.

      Example: "/var => mostly placed under /System" The /var directory exists to collect the stuff that programs have to have write access to, like logs, spools, locks. There is some advantage to mounting e.g. /usr/bin read-only on production systems while mounting /var read-write.

      Example: "/bin => /System/Commands.../usr/bin => /System/Executables" The stuff in /bin (and /sbin) consists of programs you need to rescue a system that has gone nuts, e.g. ps belongs in /bin and pstree goes in /usr/bin. It makes no sense to call one of these a "Command" and one an "Executable".

      Example: "/opt => /Apps" What is the difference between a "Command", an "Executable", and an "App"? Is mozilla an executable or an application? This is very like metaphor shear. These three different names seem to mean three different things, but really they are essentially synonymous, so all this will do is create confusion as people try to understand the difference when the categorization is in fact utterly arbitrary.

      The goals: "100% Application Directory Oriented" which means what? "Internationalization of Directory Names" has nothing to do with moving around /bin etc. "More Intuitive Directory Names" Demonstrably false--see above. "Fewer Root Directories" so what? What value is there in have fewer root directories, when all you are doing is creating more subdirectories? "Increased System Flexibility" how is flexibility increased? "Applications would no longer need to hard code directory names." Any hardcoded directory compiled into an app is probably a bug (unless it is easily over-ridden with an environment variable). "Set of environmental variables pointing the location of major system directories." What is the difference between hardcoding a directory name like /tmp and hardcoding an environment variable like $TEMP? NOTHING. (As I said, a decent program will do something like use $TEMP if it exists and fall back on /tmp.)

      This is the best: "The standard will not be finalized until a Linux distribution ships based upon it." I have a good idea when that will happen.

    • by karlm ( 158591 ) on Tuesday April 29, 2003 @09:40PM (#5839697) Homepage
      If you want case insensitivity and "better" names for directories, then do that in the shell/GUI file browser. Things are aranged the way they are for good reasons. (As my sibling posts have pointed out.) Give the user a nice gui and maybe a nice shell that will automagically resolve case problems. No need to do that in the fs.

      All of the problems you see are UI problems and should be taken care of in the UI layer. I believe the best thing about *NIX is its seperation of duties and layers. No need to make *NIX more like windows in the respect of mixing layers. Fix UI problems in the UI and let the fs be the best FS it can be. Oh, and there is support for FAT16/32 and other case-insensitive FSes in *NIX. I believe the driver converts all of the paths to upper case. Maybe tab-completion in your shell doesn't work the way you want, but then you should fix the shell.

      Others have pointed out most of the other flaws in your proposal. Hard-coding should be considered a bug, etc. People will ignore your suggestion for environemnt varibles just as much as they ignore good design practice now.

      You should look at Plan9. Each user has a custom view of the filesystem, kind of like chrooting every user, but much more elegant. You could implement your proposal that way if you wanted and it would indeed be more elegant than the *NIX single-rooted fs. However, your proposal makes changes at the wrong layer. Move up or two in the layers of abstraction. You're too used to windows where it's painfully obvious which "drive" your files are on. Under *NIX, if you care you can type "df" and see what's mounted where, butoterwise you don't know which physical volume your data is on, nor should you. Think abstraction layers. They make things cleaner and more flexible.

  • by 1010011010 ( 53039 ) on Tuesday April 29, 2003 @06:19PM (#5838339) Homepage
    One of the things I love most about the Mac is its drag+drop installations. You won't have to worry about system dependancies (as much) if you just make the drag+drop installer include all the libraries that the application in question needs, in the application's folder. Mozilla can have its own private version of GTK. Rhythmbox can have its own version of gstreamer, etc.

    --
    Yes, I posted this on OSnews.
    • by dh003i ( 203189 ) <dh003i@gmail. c o m> on Tuesday April 29, 2003 @06:36PM (#5838493) Homepage Journal
      The problem with that is that you get lots of wasted hard-drive space if many applications use the same libraries and reproduce them all in their own directories.

      It is superior to have differnet applications calling on the same library, as this reduces bloat on the HD, reduces RAM-usage, and creates a single point from which stability and performance issues can be addressed accross different applications.

      The problem is managing these things well so that you don't get into . hell. Gentoo does a pretty damn good job; RedHat does a pretty damn bad job.

      Why should every application have it's own private version of said library (say GTK)? This just means that lots of space is wasted on the HD, and the user has to spend more time downloading stuff. Furthermore, if the user wants any performance improvments to be gained from libraries that multiple applications use, (s)he will have to do this for every single application individually.
      • > The problem with that is that you get lots of wasted hard-drive space if many applications use the same libraries and reproduce them all in their own directories.

        3 years ago, I paid $200 for a 10G hard drive. Today, I paid $200 for a 100G hard drive. RAM's pretty cheap too.

        Unless you're telling me that the Earth's rotation has slowed (I haven't noticed) to the point that you now have 240 hours a day to work out library interdependencies, I say it's time to fuck dynamic libraries and the horse

        • there's more to it (Score:3, Insightful)

          by fferreres ( 525414 )
          Having a single place, shared library allows you to know exactly what library you have, and how vulnerable you are, in a single location. And if a vulnerability is found, you fix the problem in one shot.
  • by dbretton ( 242493 ) on Tuesday April 29, 2003 @06:20PM (#5838357) Homepage
    My distro will also:
    observe my web surfing habits, and automatically download buttloads of pr0n based upon my preferences
    telecommute and perform all my tasks for me
    make coffee for me in the morning
    take care of 'morning wood' for me
    b*tch out telemarketers who call
    do my laundry
    fix Wine so all Windows games work on it
    and spam Microsoft when its idle

    Hell if you're gonna fantasize, fantasize BIG!

  • by DeepEyes78 ( 551679 ) on Tuesday April 29, 2003 @06:21PM (#5838364)
    The article illustrates one of the problems I see with the various distros out there. There's just SO much availible, I just don't know where to start. It's rather intimidating. Also, why should I have to learn the ins and outs of 2 or more DEs (KDE, Gnome and maybe others) to get all the functionality that should be availible in one. I think this is one of the reasons why people put up with Windows despite Microsofts draconian EULAs: there's a consistant look and feel there that just isn't availible on linux (yet).

    And on a similar note, I definitly agree with the authors idea of changing default directory names to be more user friendly (it wasn't up until 2 years ago that I found out that /usr didn't mean USER but rather Unix System Resources. WTF?)
  • If only.... (Score:3, Insightful)

    by N8F8 ( 4562 ) on Tuesday April 29, 2003 @06:22PM (#5838369)
    Having worked on a few large projects I'm always amazed how you can start with a clear set of ideas like this guy and wind up with a monstrosity. I'm pretty sure a Linux distro meeting my needs could easily fit on one CD -source and all. Instead I wind up installing 3CDs because. It's just too hard to say "no".
  • by PD ( 9577 ) * <slashdotlinux@pdrap.org> on Tuesday April 29, 2003 @06:25PM (#5838389) Homepage Journal
    I was the only person to run it too. I first installed Linux back in 1993, and except for the basic kernel and compiler (which were SLS) I manually tracked down the sources to everything I needed and compiled it myself. I kept everything up to date by myself, and even went through some standard library changes, and the big move to the ELF executable format. I had networking, and X running twm very well on my 386SX. When I switched computers, I'd just make a boot disk, make a filesystem, move a big tarball from one machine to the other with floppies, untar it, and reconfigure everything by hand. I learned so much about how UNIX works in those years, but it eventually became too much work to keep it all running. I was spending most of my time tracking down sources, compiling, installing, and configuring my machine.

    So, I installed Red Hat 4.0 and later moved to Debian. I'd recommend that everyone should have the opportunity to build a linux system from scratch, even if it's just a fairly simple single floppy boot disk distribution. Get the kernel and filesystem installed. Build init from sources on another machine. Download a prebuild gcc compiler from the net, and the sources to gcc, and build a stage two compiler and install it. Get the XFree86 sources and compile them. Same goes for xterm and the other utilities.

    This is a much different experience than installing Red Hat, or Slackware, or Gentoo, and I promise you'll learn a lot and have fun at the same time.

  • by inertia187 ( 156602 ) * on Tuesday April 29, 2003 @06:25PM (#5838391) Homepage Journal
    Isn't that a Barenaked Ladies song?

    "If I Had My Own Distro"

    If I Had My Own Distro
    If I Had My Own Distro
    I would code my own FS
    I would code my own FS

    and, If I Had My Own Distro
    If I Had My Own Distro
    Design a sensible directory structure
    Keep those symlinks all in order

    If I Had My Own Distro
    If I Had My Own Distro
    Well, I'd select only ONE desktop
    A nice reliant environment

    .
    .
    .

    Something like that.
  • please (Score:4, Informative)

    by dh003i ( 203189 ) <dh003i@gmail. c o m> on Tuesday April 29, 2003 @06:27PM (#5838402) Homepage Journal
    Ok, so this guy has an article about how confusing it is that there's a zllion GNU/Linux distros, and he wants to add one more -- his own? His own distro which does everything backwards from other distros, so that users can't use any of the help-documents that apply to all GNU/Linux distros?

    His complaints abou the file-system hierarchy are noted. However, I believe he is wrong. There is /boot -- the portion you boot from. /dev -- where devices (like your CDROM) are. /mnt -- where devices are mounted and accessible from. /root and /usr -- where most of the applicaitons are. Then there's /home -- where the user's stuff is. How exactly doesn't this make sense? My suggested improvements would be renaming /dev to /devices, /usr to /user, and /mnt to /mounted-devices.

    I think this guy's comments are certainly not taylored towards making a good GNU/Linux distributiion overall -- but only one that is good for people with 1+GHz systems. Only allowing people to choose what are clearly the most bloated applications? I don't think so. Obviously, this guy doesn't give a flying fuck about anyone who wants to use Linux for older computers.

    Rather than eliminating choices, the distributions should give users the information to make better choices. Mark one e-mail client as the preferred "light" client, and several others as preferred "well-featured" clients for various environments. Also, for categories (in Gentoo) like net-mail, provide a spreadsheet of features and which e-mail clients have those features, as well as binary-sizes, RAM-sizes, and benchmarks of run-time performance, load-time; also, user ratings.
  • by raehl ( 609729 ) <raehl311@@@yahoo...com> on Tuesday April 29, 2003 @06:27PM (#5838404) Homepage
    Where can I get a CD that I put in my computer, click the appropriate "Yes/Ok" buttons a few times, and have Linux on my computer, with a web browser and a word processor, that all my hardware automatically works with, including my internet connection through my router to my cable modem, as well as my video and sound cards, that automagically downloads any updates I need, and works with anything I happen to plug into the USB port?

    Where would I get something like that?

    The very fact that I don't know whether something like that exists, much less where to get it, is exactly why people use windows.
    • Try Knoppix (Score:4, Interesting)

      by Cato ( 8296 ) on Tuesday April 29, 2003 @07:23PM (#5838852)
      Knoppix is a Linux distro that pretty much does what you want - it tries hard to detect almost any hardware and seems to succeed pretty well. You can try it out just by burning or buying a CD, no need to install on your hard disk until you're happy it does what you want. It's also Debian-based so 'apt-get' will get you the latest packages and figure out dependencies. Not so easy to install on an HDD but overall I'm very impressed - the closest I've seen to a plug-and-play Linux CD. See http://www.knoppix.net/ for more information, but beware that the site is not as polished as the distro.

      If you have DHCP on your network, it auto-configures everything, so within a few minutes (takes time to boot KDE from CD) you have a working Linux workstation even if the PC normally runs Windows.

    • I wish there were _any_ operating system that would do that. Unfortunately, given the proclivity of hardware vendors to make new devices which need new drivers, the proclivity of OS vendors to remove support for old hardware, and the proclivity of users to demand that both very old and very new software work perfectly, I don't see this situation happening anytime soon, for any OS.
  • A couple more. . . (Score:5, Insightful)

    by Bastian ( 66383 ) on Tuesday April 29, 2003 @06:28PM (#5838414)
    He covers a lot of overlooked stuff. A lot of the people working on having a desktop-ready linux seem to think that you can just throw on some clone of LinuxConf or YaST that you made yourself and call it a day.

    Not true.

    The math and CS departments at my school have started maintaining machines running Red Hat in any computer lab they can exercise any control over. Naturally, students who aren't familiar with linux try them out. Seeing as how I work the helpdesk and I'm the one everybody seems to come to for help with installing linux anyway, I end up helping them out a lot, and I've noticed a few things.

    The author's comments on the filesystem are dead-on, but don't go far enough. I've helped users who are trying to save files on the desktop, and they expect the desktop to be an option in file pickers. I would like it to be there, too - having to go to "/home/uname/Desktop" is not intuitive, and it's a pain in the ass. This should be something that is global to all file handling dialogs. KDE does it in a half-assed way (I don't know about Gnome 2), and it doesn't really help much anyway since all applications seem to want to write their own dialogs from scratch, anyway.

    KDE and Gnome need to come to an agreement on some common dialogs, work on a design for these dialogs and how they will work, and then implement them using a shared library that both will access. I don't care how it is implemented - the dialogs can be written in straight X11 so it looks the same on both, or the library can check for what environment is being used and pop up a dialog that is written using GTK+ or QT. As long as they look and work the same, I'm happy.

    Another one is networking. We've tried finding a good way to help students who aren't good with Linux to access our campus network resources. LinNeighborhood is the best we've come up with so far, and that doesn't even get to the configuration issues that pop up for people trying to get their own linux boxen connected to the network. Come on, people. Most everyone using Samba is connecting to Windows networks. Windows networks usually have pretty much the same configuration. Why the heck can't we have distros that set up Samba by default, have Samba's default configuration be for a standard Windows network, and give users a decent system? On top of it, there is no good network browser. Apple gives me splat-K and pops shares up on my desktop. Windows gives me Network Neighborhood and acts as if all shares on a network are already in my filesystem. LinNeighborhood makes me mount everything, then forces me to go into the filesystem again and find where I mounted the share, and it asks me for my username and password every step of the way. In this case, I like the Apple model best. Give me a "connect to server" option in my start menu, and when I connect to a server, pop up an icon on my desktop.

    While we're on the subject of things just popping up without any hassle, if your distro isn't using DevFS yet, get it switched the heck over. If the driver you're writing isn't DevFS compatible, get it working that way.

    Anyway, I could go on and on, but the point is, there are a whole lot of details involved in a good desktop OS. Linux is a great desktop OS for me, but I am comfortable enough with Linux to handle the hassle, and I've made it over the 2-year learning curve. Anyone who thinks that drag'n'drop and a somewhat working office suite makes a complete desktop OS for the general public needs to get a clue.
  • Mac OS X (Score:4, Interesting)

    by Swift Guru ( 168704 ) on Tuesday April 29, 2003 @06:30PM (#5838430) Homepage
    There's not a single thing he mentioned that Mac OS X doesn't have. Not one single thing. If he hadn't mentioned it once in his article I would guess that he had either never heard of it, or was making a thinly veiled jab at the OS community for not achieving anything that comes close to the usability of Mac OS X.
  • by ralico ( 446325 ) on Tuesday April 29, 2003 @06:31PM (#5838444) Homepage Journal
    If I had my own distro
    (If I had my own distro)
    I'd buy you a red hat
    (but not a real red hat thats cruel)
  • by blunte ( 183182 ) on Tuesday April 29, 2003 @06:33PM (#5838468)
    This article suggests nothing earth-shaking. In fact, it's really just another distro, like what the author himself is complaining about.

    There are two areas that most need fixing. Filesystem structure, configurability of apps, and other things aren't what need fixing most.

    We need fewer, better (how about, doesn't crash often, for starters) apps and tools. After using Linux for several years for servers, this weekend I actually tried to use it as a desktop OS. I had a big mess of files, source, and other docs (of my own making) that I had to try to get organized.

    Gnome Nautilus crashed frequently. It paused for several seconds at a time periodically (top showed no activity, no load). It didn't redraw all the time as it should. It sometimes wouldn't allow an operation (such as deleting an empty folder), for no apparent reason.

    KDE (konquerer) was moderately better, but it still crashed periodically.

    There will forever be debates over KDE vs Gnome, but the fact is, we'd be better off with just one desktop that worked (dare I say, as good as Windows). Windows has its problems, but it is much more reliable as a desktop OS, in terms of application behavior.

    And then we have desktop apps - word processors, spreadsheets, etc. How many email clients do we need? How many word processors? There needs to be some consolidation and some serious quality improvement. Then we can diverge into competing products. But right now, in general, we have a bunch of decent, but still-too-buggy apps.

    Last, we need more complete, universally supported OS management tools. Whether it's linuxconf, webmin, etc., we need one or two solid tools for helping non-shell users manage their OS. Right now we have some nice individual tools, and some decent tool umbrellas, but it's still not clean and uniform.

    I know you can't expect people working for free to do exactly what you want, but it would be nice if half of the creative energy spent was directed toward some of these goals, rather than yet-another-IM, or WM, or screensaver, etc. Let's get one to three of each type of app or tool, and one or two desktop managers, etc.

  • by Radical Rad ( 138892 ) on Tuesday April 29, 2003 @06:41PM (#5838538) Homepage
    One thing that I didn't see him mention was a standardized GUI help facility with a search feature. It seems that most times I open a help file it is usually either a text file or html which only allows me to find keywords on the particular page I am looking at. xman doesn't count because it is not slick, is not showing text formatting correctly, is not hyperlinked, and man pages are being maintained less and less these days.
  • by ebbomega ( 410207 ) on Tuesday April 29, 2003 @06:44PM (#5838558) Journal
    Since I started using linux (and I've been very happy with it) I've been saying a few things around "what it needs" in order to be a full-on desktop computer. Apps aren't the problem (Openoffice is great, mozilla/galeon/konqueror are great, Evolution is great, sylpheed is great etc. etc. etc.). The problem is overall use.

    First of all, it needs a good package system. RPMs almost do it. Apt is great, but hasn't yet been implemented in a decent distro with user-friendliness abound (Not to mention debian stable trees are in serious need of more consistent updating. Gnome 1.6 just doesn't do it for me.)

    Basically, what's in dire need is a decent implementation of a software installer. Something similar to RPMs with a decent program-specific gui. I guess what I'm really hoping for is self-extracting shell scripts. But the main problem I have with this is running them from a graphical mode. These days, I use mandrake's software installer, though that does nothing to help configure the programs themselves for my personal use, something that InstallShield has a definate advantage of. The Software Installer has a great implementation of urpmi and handles dependencies rather well.

    Package management is the main difference between distros and is the one thing that makes one distro better/worse than another, other than installers. Frankly, though, I think that Mandrake and Red Hat installers have gotten to the point where they're about as good as a Windows installer. They just need a "really dumb user mode" that holds your hand down the whole way.

    I dislike what the author of the article says about removing legacy support. This is what really bugs me about Lindows and Xandros: They're more user friendly but they do so by eliminating a lot of the advantages of linux other than the very low-level "keep it from crashing" stuff. I think the important idea is to render all the low-level uber-user stuff obsolete but still keep it available. Removing Legacy support falls right underneath this category. One of the main issues people have had with MacOS releases and Windows is that they only work on top-of-the-line hardware and the like.

    Yeah, sure, some stuff _should_ require top-of-the-line hardware. I don't expect that UT2003 should run on my old 486. But the OS that runs it should, imo. Cross-compatibility for legacy hardware is probably one of the main reasons linux came into being and is one of the main reasons for its stability. This is what open source is thoroughly about: Making something everybody can use.

    The main thing that linux needs though if you ask me on a developer standpoint is a user-friendly and powerful software package manager. Rpms and debs just don't do it. However, the _really_ important thing in getting linux to the end user in a nice package is simply to promote its use. The more it gets used, the more support there will be for it, the more support the better drivers and the like there will be. One of the main problems I've seen with people using stuff like Drake or Redhat is problems getting their hardware to run perfectly (under X and the like, soundcards and so on). There need to be better auto-detection and driver support, as there always has been. Probably the main reason I'm still using Linux today as my primary OS is that the first time I used Mandrake, _everything_ got detected right off the bat. Of course, I had problems with the software in 8.2, but by the time I got to where I am now, in 9.1, the ONLY problem I have is with getting wine running (Bamboo doesn't have the wine with glibc support, and I'm getting a plethora of other problems with the Cooker build).

    So yeah. I guess that's all I wanted to say about that. Distro's are getting very close to being a feasible alternative for the desktop to Windows. It just needs more exposure and fewer people writing Windows-only apps.
  • by Drakonian ( 518722 ) on Tuesday April 29, 2003 @06:44PM (#5838563) Homepage
    If you actually read this article you realize how ridiculous this is. It should not be on the front page of Slashdot. This idiot can't spell to save his life. (Note to self: double check post for spelling errors). He basically wants Mac OS X but wants it free. Paraphrase: "We will release some of our source but not all of it because we want to protect our investment. But people who don't release some source are bad, mmm k?"
    • "On that note, my source code CDs are not available for public download either. That's bandwidth I don't care to pay for. Source, or what we release of our source, will be available to those that request it for postage only - I'll GIVE it to anyone who wants it and is willing to pay for the postage - the CD's are on me."

      Maybe I'm thinking wrong but is this not a violation of the GPL. I seem to recall that you *have* to make source available in the same format that you make the binaries. This guy comes off
  • My #1 desire--- (Score:4, Interesting)

    by Cerebus ( 10185 ) on Tuesday April 29, 2003 @06:52PM (#5838625) Homepage
    I'd do away with packages & installers altogether in favor of directory-based applications a la RiscOS and MacOS. You can how this could work with the ROX project.

    Drag 'n drop installation! Think of the possibilities! Of course if you have OS X anywhere you don't have to imagine it...
  • Choice/No Choice (Score:3, Interesting)

    by tacocat ( 527354 ) <tallison1&twmi,rr,com> on Tuesday April 29, 2003 @07:08PM (#5838743)

    Interesting article. Some thoughts.

    • Single Desktop: it's either a good idea or a death wish
    • Changing the directory tree: Why? No one cares about the directory tree. The names would only confuse people. Just educate users that there is a HOME.
    • Single applications: He mentions using only one FTP client and so on. Bad idea. But I think that the selection process for RPM and DEB packages could be improved upon by grouping like applications together. Example would be to group all the FTP clients together with a description for each to let you decided.
    • Development community: Gentoo is not the best example. They are too hard core in their attitude to be a good example.
    • Killing off legacy hardware: Most of this is done already

    All that aside, I think a Distro should emphasize the following, in order:

    1. Stability
    2. Installation/Uninstallation accurate and complete (IMHO Debian excels at this)
    3. Completeness of install -- anything installed should work to a basic set of defaults. Often times there is a lot of personal configuration to be done
    4. Security: A lot could be said by simply asking if the existing hardware is in a DMZ or a protected LAN. Then act accordingly.
    5. Software Selection: Give them what they want
  • by Verteiron ( 224042 ) on Tuesday April 29, 2003 @07:37PM (#5838940) Homepage
    If I had a Linux distro (If I had a Linux distro)
    I'd wanna support your mouse (I would really support your mouse)
    If I had a Linux distro (If I had a Linux distro)
    I'd load a GUI for your mouse (Maybe KDE 3 or Gnome)
    And if I had a Linux distro (If I had a Linux distro)
    Well, I'd autoprobe your hardware (Hey, that's a nice NVidia card!)
    If I had a Linux distro I'd fill your drive...

    If I had a Linux distro
    I'd load every package under the sun
    If I had Linux distro
    C'mon, you know it'd be lots of fun
    If I had Linux distro
    Maybe we could put like a little tiny package manager in there
    You know, we could just like, run the package manager
    Like, look at all the names and stuff
    There would already be a huge list and everything
    Like little packaged apps and everthing

    They have packaged apps but they don't have packaged distros
    Well, can you blame 'em
    Uh, yeah

    If I had a Linux distro (If I had a Linux distro)
    Well I'd compile everything from scratch (Except Mozilla, that's just cruel)
    And if I had a Linux distro (If I had a Linux distro)
    Well I'd include O'Reilly books (Yep, with the llamas and the emus)
    And if I had a Linux distro (If I had a a Linux distro)
    Well I'd install millions of games (Ooh, all them crazy Minesweeper clones!)
    And If I had a Linux distro I'd fill your drive...

    If I had a Linux distro
    You'd have every GUI under the sun
    If I had a Linux distro
    Well you know you can't use just one
    If I had a Linux distro
    We wouldn't have to eat Kraft Dinner
    But we would eat Kraft Dinner
    Of course we would, we'd just eat less
    'Cause we wouldn't be making a dime off this thing
    That's right, we'd probably have to eat Ramen, actually
    Mmmmmm, noodles

    If I had a Linux distro (If I had a Linux distro)
    Well I'd update it every night (Just 'cause bleeding edge is cool)
    And if I had a Linux distro (If I had a Linux distro)
    Well, I'd bloat the kernel to death (Video4Linux and throw in ALSA!)
    If I had a Linux distro (If I had a Linux distro)
    Well I'd include a monkey (Haven't you always wanted a monkey?)

    If I had a Linux distro
    I'd fill your driiiive...

    If I had a Linux distro, If I had a Linux distro
    If I had a Linux distro, If I had a Linux distro
    If I had a Linux distro
    I'd be killed.

    --

    Sorry, but as soon as I saw the title of this story this had to be written.
  • by mnmn ( 145599 ) on Tuesday April 29, 2003 @07:39PM (#5838949) Homepage

    Only BeOS was more sophisticated with the GUI glued into the kernel. It was the most beautiful OS I had ever seen (havent seen OSX yet) and it somehow didnt make it. Lycoris Xandros Lindows etc are trying to push for the desktop but underneath its all Linux. With that comes the painful lack of standards, not even installation or LSB standards, and all the mess. Each of these distros is an island in itself with its community, packages, interface etc. You cant put ones package and install it on another, or take a user of one of these distros, put her on another and expect her to feel at home, and we're talking about the same OS. Anyone who even dreamed of porting J2EE or websphere to slackware say, knows this.

    All these new OS companies are falling apart because of the inherent lack of a few things in Linux. RedHat, SuSE and Linus could help here, SuSE did chip in with their LSB, but it was obviously a bad investment. If a company like RedHat can be confident of their success, and create good industry standards without fearing being overthrown, the Linux desktop can finally take off. People could choose one distro, click n run any app developed by some teenager in his basement and it will work just fine. This will move far more users from Windows to Linux.

    The BSDs could have done this but they seperated much longer ago. FreeBSD remains the biggest and have quite a clean system on their hands, ready for any major changes or making inroads in the industry.. but the same resolve that gives them the energy to build the most robust OS doesnt let them risk changing the direction of BSD too fast, for BSD is now a culture, and not of being a desktop OS of the masses. Thats why the author here chose FreeBSD. Apple can simply port OSX to x86 and be over with it, dangling it out like darwin is just rubbing salt on the pains of the already desperate crowd.

    All the while the geekdom is sick of dual booting and cleaning spyware from the crashing windows installation. Linux is very very big out there, its almost made it. But it has such a long way to go to really reach the stratosphere.. or rather on everyones computer. It was this hope that pushed the tens of thousands of developers to code for the Free OS from version 0.01 to 2.4.20.(and all its associated GNU tools). We're not there yet.

    I wonder what I'm doing in my windows partition now. I could be writing this in Linux+opera....
  • symlinks (Score:3, Insightful)

    by u19925 ( 613350 ) on Tuesday April 29, 2003 @07:51PM (#5839020)
    one of the greatest strength of Unix is symlinks. Unfortunately that is one of its weakness also. Imagine a newbie who sees following two files: /home/photos/my_most_precious_photo.jpg and /user/photos/my_most_precious_photo.jpg. Well, he or she thinks this is duplicate and deletes one of the files which happens to be a real one! The default version of "ls" with no option makes no disntinction between the symlink and a real file.

    Few possible solutions, none perfect:
    Warn user during delete if any symlinks are pointing there. Requires kernel filesystem rewrite.
    Default "ls" should be modified to warn user that the file is a symlink. This may break many shell scripts.
    Shells should have "ls" built-in. In interactive mode, it should warn users. Requires users to use one of these shells.

    Second problem with symlink is that you can't move up and down in the hierarchy in intuitive way. If you do "cd x/y" followed by "cd ..". You should in directory "x", right? Not necessarily, if you are using symlinks. Since "cd" command is a shell built-in, the shells should be able to keep track of directory navigation and should be able to keep track of this, so that user would in directory "x" even if there are symlinks. This may break some unknown things.

    In short, I believe that for home user, symlinks should not be requirement (no executible or scripts should use) and user must get visible signs that they are dealing with symlinks whenever they encounter one.

    • Re:symlinks (Score:3, Informative)

      by lkaos ( 187507 )
      I cannot believe how stupid you are.

      You have no understanding of how symbolic links work.

      If you really think this is such a problem, use hard links!

      You're making claims out of your ass that "kernel filesystem" needs to be rewritten simply because you don't understand the difference between hard links and soft links.

      Congradulations, your stupidity has caused me to no longer read comments on slashdot.

      I can't believe how bad it's gotten...
  • nutz (Score:5, Interesting)

    by cdn-programmer ( 468978 ) <<ten.cigolarret> <ta> <rret>> on Tuesday April 29, 2003 @08:05PM (#5839110)
    I think the artical speaks for itself... if he made that distro available I would not touch it and I doubt many others would either.

    1) I am quite happy with the present directory structure. I do not want a bunch of symlinks - they are confusing and utterly unnecessary.

    2) His idea of what apps to include probably will not coincide with mine. For instance - is he planning on including emacs? How about gcc and g77?

    I'm sure he thought about gcc but I'll bet he forgot about g77.

    3) He never mentioned the most important aspect of a distro - that is its upgradeability. This is the reason I switched to Debian... Debian can be painlessly upgraded.

    I have an old machine with RedHat 6.1 in it. I bought a copy of Mandrake 8.0 Mandrake is NOT installed (does anybody want it?). The reason is the question of doing an upgrade. I _KNOW_ that the moment I try to upgrade that redhat box that it will break all over the place. If I wipe the drive I lose 3 years of work. In fact - if I were to take it out from behind the firewall - it would be hacked within the hour!

    For me it was cheaper to go buy ANOTHER computer and leave the old one as it was.

    4) He made no mention of security.

    5) He has missed the most important areas where Linux needs work. I'd like to offer My Humbol Opinion. The work needs to be in the area of the functionality of a loopback mount. We need to be able to stuff a directory tree into a single file and have the OS mount it automatically - similar to the loopback but with the following difference.

    When you do a loopback mount - the whole file system sees it. I want a mount where ONLY a single process tree sees it. This allows one to EASILY create a chroot jail for a user.

    Several years ago I tried with Kurt Seifried to create a true chroot jail in linux - we failed.

    This automatic mount to a single application could be say bash mounting into a given file or it could be a daemon mounting into a file or it could be an application mounting into a given file. This would make it possible to stuff a complete app into a single file which can be unzipped and pointed too. By doing this, different versions of an app could be simultaneously present in the machine and a user could switch back and forth with a simple pointer change. The pointer could be a symlink.

    We are already partway there with the loopback and chroot. Where the problem is stems from the apps that are NOT chrooted. As an admin when I install say something like wxWindows - I would prefer to see only one file. As a user I prefer to see all the files in the package.

    This is one step away from a true Virtual Machine for Linux - which we also need. Probably it can be done using User Mode Linux. But I think it should be supported right in the distro.

    IMHO - the present filesystem was designed to be lightweight. When disks were 40MB it probably made sense. Now that disks are past 40GB I don't think it makes sense. When they pass the TB mark in a couple years - well - IMHO they are almost unmanagable now.

    The underlying reason that this author cannot un-install the apps is because the apps are allowed to spew files all over the system. Most sysadmins don't even know where the files go and they simply trust the developers came up with a reasonable organization. If we go to a filesystem that allows us to force an app to live within a single file - then we can easily remove any old app - we simply delete the file it lives in. People can easily deal with a single file - where the problems come from is when we have 1000's of files and the make clean doesn't work right.

    IBM had this concept fully developed years ago under VM/TSO. It was called a Partition DataSet back then.

    If we had this concept in linux then for instance X-Windows might live in a file called XFree86_4.1.0.1.PDS and we might use something like ln -s XFree86_4.1.0.1.PDS startx

    If so - then when startx is run - the PDS is mounted and the
  • by Anonymous Coward on Tuesday April 29, 2003 @08:06PM (#5839121)
    1) A manual.

    No more man pages. Ever. I am as sick to death of plowing through all that crap as I know all of you are. If I have to deal with one more half-written, closely-worded, semi-irrelevant man page that doesn't even talk about the stuff I think I know I want to do but I have to read it because I think the command I think I want MIGHT have something to do with what I think I want to do ... I'LL GO INSANE.

    2) A good GUI.

    Good means fast. Good means internally consistent. Good means programmatically consistent. Good means the programs actually USE the GUI. One thing I really like about Windows? Add/Remove Programs. It's right there. Talking about package this and package that makes everyone's eyes glaze over.

    3) A good set of apps.

    As the other guy said, let's quit jamming every stupid little command line piece of shit into every distro. Most of us never bother with them, and that's half the reason RedHat is 94 DVDs and can only fit on a shelf that's got concrete reinforcements. OK, I'm exaggerating, but seriously -- if the "competition" fits on ONE CD, how "bloated" is that?!

    4) A good use of the Linux kernel and the Linux philosophy (such as there is one).

    Do we really need to see 50,000,000,000,000,000 lines of kernel messages whenever we boot? Do we really need to have every messy, nasty part of the kernel hanging out and exposed? I'm sorry, but the more I work with Linux, the less I appreciate its design -- it's ten thousand times as crufty as anything else out there. I'm sick of getting library errors 'pon unpacking a distro straight from the CD, sick of not being able to figure out how to do X on this particular distro (which package manager is it again?... where do I find that?... uhhh...), sick of the fact that we have a GUI which most programs don't bother to fully exploit (no consistent mechanism for adding and removing an icon, for Christ's sake!)

    5) A good level of internal consistency.

    Linux needs to PICK ONE THING AND STICK WITH IT.

    Sometimes a little internal consistency is not a bad thing. I don't need 300 shells and 129 different ways to boot. I need something that works, and I need to know that if something goes wrong with it, I can get better answers than "oh, here's the source code, you figure it out." I'm amazed more people are not as shocked by the essential contempt that such an attitude shows for the end user (i.e., the people who want to, you know, USE the computer instead of have to learn 30 programming languages to do every lousy thing).

    There. Flame away.
    • by cdn-programmer ( 468978 ) <<ten.cigolarret> <ta> <rret>> on Tuesday April 29, 2003 @08:28PM (#5839252)
      I dont' agree with you at all on a number of your points.

      1) Yes we DO need to have every little command line utility. While you may not directly use them - the underlying scripts very well might. Besides they are small... and some of us actually DO use them.

      2) Yes we DO need to see those 50,000,000,000 kernel messages on startup. I would NEVER have been able to get my soundcard working without them. I don't like being stuffed in a closet and treated like a Mushroom the way M$ does it.

      Suppose your boot hangs. Where would you be then?

      3) Linux will NEVER pick one thing and stick with it. No operating system ever did. Look at M$. NT contains the OS/2 character mode libraries. That means I can run the OS/2 version of Breif. It has since been removed from w2k or XP thus - I will NEVER upgrade.

      NT, w2k and XP still contain DOS and win16. Talk about crap eh? But people need it.

      The thing is - were we to ask 100 people in a room what they needed - we'd get close to 100 different answers.

      4) I agree with the man comments. Man needs to be re-written. We maybe need to look at a wikiman.

      5) so how would you elimiate the 30 programming languages? Would you discard the perl stuff? how about bash or csh? Maybe discard tcl or gtk eh? What about python?

      Each of these languages is there for a reason. Each is doing a job and removing any one of them would leave a rather big hole.

      I do agree mind you that the learning curve is rather horendous. We can do a much better job of documentation I think. That would really help matters.

      DOS was the cut down version of linux that only did some things one way. So if you suggest going in that direction - then the question comes down to what parts you'd like to throw away.

      Maybe you should look at OpenBSD. For servers it is lean mean and clean. I love OpenBSD on my servers. But on my desktop - I like Linux.
  • by drsmithy ( 35869 ) <drsmithy&gmail,com> on Tuesday April 29, 2003 @08:18PM (#5839187)
    (This is mostly the reply I posted on OSNews, so some of the wording might appear a bit weird)

    This article has some (really) good ideas, but there's some pretty bad ones that would cause problems right from the word go. For example:

    My developers are going to meet and agree on ONE desktop environment. Yes, we'll include the libs for the other major one we leave out.

    Already you've fallen into the trap of pandering to the existing Linux crowd. Why ? Most of the other things you're doing are already going to drive away these people. Pick (or create) a GUI. Stick to it, customise it, tweak it "just so". Don't waste any developmental effort on another - let others do that if they _really_ want to. Every minute spent on including or developing stuff for the "other GUI" is time you could have spent making yours better.

    [...] graphical, heavy on eye candy, with few visible options but lots of "Advanced" buttons.

    Bad idea. "Advanced" buttons just allow for more mistakes to be made by newbies. If you *really* want to give the option for users to perform an "advanced" install (in which case you should really sit down and ask yourself *WHY*), then make it a well documeted *boot-time* option that can't be stumbled on accidentally. SImilarly with things like filesystems - pick on and stick to it.

    I'm already stripping out a number of apps, so what I'm not going to worry about are libraries and system files. Even the minimal install will include every common system tool my develops can think of.

    This is another bad idea. It's this sort of reasoning that *causes* library versioning problems. Include _only_ the libs necessary to support your included software and development on your "default" platform. Again, if other people really want to get app XYZ that requires libs ABC and HIJ to get working, they will. The only time this might be an issue for you is when your users are asking for a service your existing software doesn't provide.

    On the whole, the ideas here are pretty good. It's obvious your objective (dream ?) is to create an OS X equivalent on x86, which is an admirable (and achievable IMHO) goal. However, you're also trying to pander to existing userbase by including options for this, options for that, etc. Don't - it's one of the biggest reasons Linux distros are difficult to approach for people who don't have the knowledge to make the necessary decisions between all those options. If you _really_ want to make "something new" then you have to make choices and stick by them. Certainly don't go out of your way to hinder people trying to port/develop for the new platform, but by the same token don't waste any of your development time and money re-implementing features (note: *features*, not specific bits of software) that already exist on your platform, just because a handful of users prefer a slightly different version.

  • by Wayne Gramlich ( 449352 ) on Tuesday April 29, 2003 @08:21PM (#5839207) Homepage

    The whole concept of distribution installation is getting a little frayed around the edges. Installing a distribution made sense when everybody had CD drives and few people broadband connections. It is making less sense now. It will make even less sense 5 years from now. Why not do something new for a change? How about a distribution that is only available on the net? How about using a P2P caching file system?

    Think in terms of something that is a cross between NFS (20 years old) and BitTorrent. For example, when I access:

    /global/redhat.com/rh10.2/usr/bin/{some_program}
    it goes off and downloads and locally caches the binary. If it needs any librarys, it downloads and caches them as well. The bottom line is that the user only downloads those files that they actually use and they do not have to decide beforehand what they want. Just use it! If it isn't cached on your disk, the system fetches it. If you want to upgrade, just change your path from:
    /global/redhat.com/rh10.2/usr/bin
    to:
    /global/redhat.com/rh11.0/usr/bin

    No install program needed, just start using the new bits. When a cached file hasn't been used in a year or so, it just gets deleted by the underlying system.

    Please note, the Open Source community does not have to figure out how to charge for files downloaded, unlike some big commercial software companies out there. Thus, the Open Source community can make it easier to install and upgrade than the commercial counterparts.

    Yes, I'm glossing over a bunch of very important issues (security, multiple platforms, configuration files, load distribution, etc.), but it is time for people to start thinking about doing things in new ways rather than the way we were doing them for the past 10-30 years. I'm suggesting that we actually innovate for a change.

    -Wayne
  • freedom of choice (Score:5, Insightful)

    by Phoenix Dreamscape ( 205064 ) on Tuesday April 29, 2003 @08:54PM (#5839422) Homepage
    "I'm going to remove a lot of choice from the user, because, to many, it's more a gamble than a choice."

    I agree whole-heartedly with that. When your basic desktop user is switching from Microsoft to Windows, all of those choices are guaranteed to blow his mind. Postfix? Sendmail? Qmail? Procmail, mailx, mailutils, maildrop, mailbase, getmail, fetchmail, mutt, elm, squirrelmail, kmail, sylpheed, evolution!? I don't know, I just want to check my mail! Why are there so many choices in the "mail" section!?

    What ALL distros lack is sufficient documentation on what all of these packages are and why you would need them. Gentoo's description of fluxbox: "Window manager based on Blackbox -- has tabs." Yeah, that about sums it up. Now I know exactly what it is... uh huh. To anybody who needs a description of fluxbox, that's not enough. Imagine the user coming from Windows and reading that description. What's a window manager? What's blackbox? What are tabs? Do I need this?

    The way to fix this isn't to just force the user to take a certain window manager. It's to give real documentation. A page, or two, or three. Better yet: screenshots. A picture is worth a thousand words, right? Each window manager could have 5 or 6 screenshots viewable from the installer, or maybe a little automated tour.. a slideshow or video that demonstrates its features. Every program should be well documented. Those that can't be described completely yet simply should include some sort of a graphical demonstration. Documentation should include who it's targeted at, what it does, and why you would need it. This could include a list of common tasks it is used for.

    Similarly, a well-documented installer should have an index where users can search for specific actions like "reading mail" or "web browsing". Under each topic should be a list of available programs to do that task. Current installers allow you to choose pre-defined setups like "workstation" or "server". There should be more than just a few pre-defined choices, and they should explain in great detail what they install and why. Obviously, there are some people who just want to click "install" and have everything setup for them. But those who are really trying to get into Linux won't just want to have a box pre-configured for them. It's MUCH more valuable to have each choice explained. "This is fluxbox. Fluxbox is a window manager. A window manager is... Fluxbox was chosen because you selected the 'fast and lightweight' setup. Fluxbox's competition is:... Fluxbox was chosen instead of its competition because..." Sure, it would take forever. I know I would have preferred to have taken a long time but known exactly what was going on rather than installing in 10 minutes and taking two years to learn what all of my software is for.

    Maybe a distro intended solely for introducing linux is in order. Not like Lindows and Lycoris which "introduce" you to linux by isolating you from it, but something that is more of an interactive tutorial.
    • Re:freedom of choice (Score:3, Interesting)

      by pi_rules ( 123171 )

      Maybe a distro intended solely for introducing linux is in order. Not like Lindows and Lycoris which "introduce" you to linux by isolating you from it, but something that is more of an interactive tutorial.

      Your post got me thinking... and that's sometimes hard to do.

      People hate tutorials. If they actually liked learning stuff they'd read all of the documentation that abounds before they went through the install. I know I sure as heck didn't know what the differences were between AfterStep/WindowMaker/E

  • by jbolden ( 176878 ) on Tuesday April 29, 2003 @09:49PM (#5839756) Homepage
    The directory aliasing, is rather trivial. I do something like this as part of my default installs by hand in a few minutes (example /root to /home/root, /tmp to /var/tmp, /var/www to /home/apache, etc...).

    As for a repository of rpms that are distribution specific most distributions do do this. So your question about why they don't is moot. The issue with software occur when people try to install rpms from other distributions.

    As far as libraries, certainly to a limited extent you could simply install all libraries but then frankly if you are going to do that go whole hog and just the apps as well and have only one software configuration you need to support. In general though you may not resolve all the issues of dependencies. Often apps need libraries compliled with particular settings. So if you are really going in this direction you are not only assuming quite a bit of harddrive space but also 2-3x as much ram. For a newbie distribution that isn't neccesarily that horrible but it should be understood.

    Take a simple example. What languages are you going to compile into your interfaces for messages? English only (very limiting). Or maybe English and Spanish (now you have just added a lot because you now have to support some non ascii fonts)? But then are you going to have right to left support so that people can use Arabic and Hebrew? What about cyrillic support for eastern europenas. How about Unicode and if so will all Asian fonts have to use something like UTF8 (i.e. Asian text will be 50% larger than using a 16 bit font)? Most unix code will allow you to complile versions for various font sets, very few support arbitrary font systems and those that do are very complicated (see Oracle's excellent documentation on national language standards for a very good discussion).

    Finally on the issue of apps you are showing ignorance here. Either you install one of each major type of app or you give people wildely different experience and install/offer lots of different apps. People always say "why do I need 12 different text editors" but what they forget is:

    Emacs -- virtual lisp environment editor
    note two choices which are incompatable if you want X support: GNU with X extensions or XEmacs
    Also Emacs21 introduced library incompatabilities so you often want to offer 20 and 21 versions.
    VI/VIM/Elvis/Viper -- vi environment. BTW often people who use one of these are quite picky
    pico -- very simple editor
    joe -- full features wordstarish editor
    if we are going to offer joe what about jed?
    beav -- good hex editor, also useful for people who need EBCDIC
    yudit -- better for unicode users

    etc... Mainstream Linux distributions on the whole handle this situation quite well:

    a) Very nice default choices
    b) Wide range of packages for people with specialized needs
    c) The ability to install the thousands of other packages which are even more specialized.

    The fact that you couldn't even make simple choices:
    -- gnome only
    -- open office only (though why pick gnome since OO isn't gnome specific)
    etc... means you wouldn't be able to go the unified route.
  • by Rysc ( 136391 ) <sorpigal@gmail.com> on Wednesday April 30, 2003 @02:40AM (#5840950) Homepage Journal
    I've scrolled halfway through the posts and haven't seen anyone say it, so I will: He's describing Debian.

    Okay, not now Debian, but a friendly Debian. His /system/commands "idea" is a clunkly thought out version of /etc/alternatives. His "One bog site where you can download packages that are guaranteed to work with your distro" describes the official apt repository nicely. His description of dependancy hell sounds like the experience of a RPM user--I wont say that Debian never has pckage problems, but I will say that I've only ever seen them in Unstable--on my Debian system dependancies are never an issue.

    I don't mean to sound like a Debian-loving zealot (though I probably am...) but 50% of what he wants Debian already does. Of the rest:

    The revamped directory structure is a must. I've looked at it every way I can, but as far as I can see the old unix layout (while close to my heart) is not going to make desktop users happy. I've heard all tha counter arguments (and made most of them myself) so don't bother. I dissagree with his names, and I don't like the way MacOSX does it either, but something has to be done. Even if it isn't renaming (people can learn any names, after all) it should be depreciating certain practices and/or not allowing them. I know there are good reasons for /bin and /usr/bin and /usr/local/bin (and on Debian at least their uses are clearly defined) but one bin directory for users and one for root should be enough. (The argument is (of course) partitioning. Mount /usr ro! /bin is on / so that the system always boots and everything else can be remote! I don't have an answer; maybe the HURD and its fancy merging directory thing will be the solution.) Debian can dictate such a change, if it could be agreed upon.

    Limiting choice. This is a Very Bad Idea. limited choice is never, ever good--this is my firm conviction. But that doesn't mean there can't be sensible defaults. Make everything work automatically and TOGETHER automatically, and have all of the choices there for those who go looking. Maybe limiting packages on the install CD is worthwhile... but the choice should always be there. Debian limits nothing, and its default setup does not work perfectly... but it has potential. I can see it pulling itself up by its bootstraps and becoming a system that works together with itself.

    Graphical installers. I'll say it one more time, I've said it before: screen one of the installer should be DOS/curses style and say "Easy install or Advanced install?" This is not to say everything he said about having the graphical install have advanced buttons isn't true; that's necessary as well. What this means is that the idiots can pick "Easy" while I pick "Advanced" and I get my sure-to-work-on-this-VGA-piece-of-shit installer complete with cfdisk partitioning and all of the gory details. There should never be a total reliance on a fully GUI install. Debian's installer is awful and could use some kind of option like this.

    Liscense. BSD-style is nice, but GPL is Free. Non-GPL is not an option.

    Kernel. This is another point in favor of Debian. It's (at least potentially) kernel agnostic. Linux today, NetBSD tomorrow, the HURD on Friday. A truly Complete Debian would allow you to pick any (supported) kernel you wanted at install time... be it Linux, or *BSD, or whatever. Doesn't matter.

    As far as source goes... the debian way seems good. apt-get source. You can't do it by mistake, and it's not like archive material so few would get it "because it's free". Bandwidth problem largely solved (or at least not seriously aggravated) and you don't piss off zealots like me.

    I will close by saying it again: Don't reinvent what Debian already does. Build a debian-based distro (a script could repackage many applications to use any new dir layout you choose). What this guy wants is a Friendly Debian and a little bit of proprietary code.
  • by master_p ( 608214 ) on Wednesday April 30, 2003 @05:11AM (#5841368)

    It needs something new, something fresh, something that really rocks the Linux community's world.

    The file system is a nightmare for a normal user. This has been covered in exhaustive detail by hundreds of articles, but if I'm going to run my own distribution, I'm going to make a sensible directory structure: /users, /apps, /system, /hardware, /downloads, /logs, /servers, /shared, and more. Then, using symlinks, we're going to recreate the current basic layout of the standard Linux/BSD filesystem to assist developers in porting applications.

    If he wants to do something truly revolutionary, this is what he should do: throw away the notion "file system" and introduce the "information store". Let me explain: Although what he proposes (a file system hierarchy that makes sense) is probably the next step, it is widely known that the most important problem for computers today is that there is no uniform way to manage digital information.

    Most applications have lots of code in them to save/load information to/from the filesystem. Most code is similar, and I have some experience on this, since in the company I work most apps share some code, but most importantly they share the logic to save/load data.

    But the today's filesystems are really dumb. It's up to the applications to manipulate them. As a result, there is no way I can find any special information I like using a search utility. For example, if I wanted to find all the pictures that contain a picture of my child, there is no way to do that using Windows Explorer. And there is no way to formulate complex queries on the file manager level in any O/S of today.

    So, in order to do away with all the problems and really innovate, the filesystem must be turned into a database. But a simple RDBMS system may be not enough. Why not turn it into an object-oriented database ?

    Most applications have an object model in them. By "object model", I mean about a tree of instances of classes that represent digital information. Most popular apps like Word or Excel reveal their object model to the users through scripting engines (VBA for example) so the app can be extended in run-time without the need to re-compile the application.

    If the problem is studied close enough, you will definitely see a pattern: "object model", "tree", "information". So why not code this at the operating system level ? Instead of having files, each file could be an object. And this object could contain other objects, making possible the organization of the information in a tree. Trees is most natural way to represent information, that's why almost every app has a tree (and that's why a tree control is one of the most important controls in gui libraries).

    In order to extend this system further, the operating system should define a 'component object model', that is a binary interface to interacting with objects. Each object would be represented by a class, and the class's code could be kept by the file system and invoked when needed. Of course, this means throwing away the concept of "app", since the focus is now on the component.

    Each object would manage its storage the way it likes, using the operating system primitives. Each object could contain other objects. Since the whole mechanism is strongly typed and the O/S would keep meta-information about the objects, the most basic problem of the computer is solved in an elegant way. A computer is about information I/O, search and computations on the stored information. This is a part which concerns most applications and it could be assisted by the operating system.

    The object-oriented information system paradigm fits nicely with modern object-oriented languages. A programmer could make components using Java, C++, C#, VB, or any other language that supports effectively OO.

    Let's see an example: the mail system.

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...