Author Topic: New NeXTStep / OSX Based OS  (Read 7663 times)

billy_gates

  • Member
  • **
  • Posts: 801
  • Kudos: 0
    • http://www.skinner.com/jeffberg
New NeXTStep / OSX Based OS
« on: 23 September 2003, 04:17 »
Jimmy, The Quirk, Psyjax, and I have decided that it is time for a linux based OS to drop its linux heritage.  Look at our ideas here:
www.skinner.com/jeffberg/next.html

(note from Orethrius: link is dead, no forwarding address)

I will add a more official list later when I have time, but this is just a quick verbal sketch of what we want.
« Last Edit: 8 February 2008, 04:55 by Orethrius »

billy_gates

  • Member
  • **
  • Posts: 801
  • Kudos: 0
    • http://www.skinner.com/jeffberg
New NeXTStep / OSX Based OS
« Reply #1 on: 24 September 2003, 21:40 »
bringing it to the top

suselinux

  • Member
  • **
  • Posts: 711
  • Kudos: 30
New NeXTStep / OSX Based OS
« Reply #2 on: 24 September 2003, 11:30 »
Is this only going to run on PPC chips?

or do want it to be like linux and cover many architectures?

Even if it can't run Mac Programs I think an OS setup like OSX would be great

Refalm

  • Administrator
  • Member
  • ***
  • Posts: 5,183
  • Kudos: 704
  • Sjembek!
    • RADIOKNOP
New NeXTStep / OSX Based OS
« Reply #3 on: 24 September 2003, 18:20 »
It doesn't matter if it has a Darwin core. Darwin is also ported to x86 by Apple, so that doesn't matter.

billy_gates

  • Member
  • **
  • Posts: 801
  • Kudos: 0
    • http://www.skinner.com/jeffberg
New NeXTStep / OSX Based OS
« Reply #4 on: 24 September 2003, 18:29 »
we plan on x86 first.

The only problem with starting with darwin is that it doesn't run on AMD CPU's.... yet.

hm_murdock

  • VIP
  • Member
  • ***
  • Posts: 2,629
  • Kudos: 378
  • The Lord of Thyme
New NeXTStep / OSX Based OS
« Reply #5 on: 25 September 2003, 02:07 »
I still think using Linux would be best. The other guys kinda wanna jump in head first with some of these ideas, like a single system folder, but I think taking it incrementally would be better... like building a new graphics framework.

X11 has been around forever and it's well documented and all, but it's also hopelessly outdated. We want to build a full Ghostscript or PDF-based desktop compositor that renders with OpenGL, much like Apple's Quartz Extreme does. Our working name for it is "NQ" for Not Quartz. Priority goes to video cards that are capable of running the GL-based renderer. Other cards will have to wait until a generic display-Ghostscript engine is built. But, since most machines today have cards that are capable of this (a notable exception is anything with a Rage128 series GPU. the R128 is incapable of textures that are not power-of-two sizes. 32, 64, 128, et cetera)

X11 compatibility will be implemented via a "classic mode". X11 apps would run alongside apps that use NQ but wouldn't be able to take advantage of any of NQ's advanced features.

The desktop will be built from WindowMaker and GWorkspace (the oss version of the NeXT Workspace manager). In the beginning, we'll simply use WM and GWorkspace as they are, and leave all the UI work until the end. We have no plans for what the desktop or the system's overall appearance will be like yet. If anybody is an interface designer, we'd love to have you on board. I've got a number of ideas to share on the subject, if you'd like to hear 'em.

As for the folder structure, it seems better to do it a little at a time, and start with this structure,

/private (this contains the typical UNIX folders like /bin and /var. there are invisible symlinks to these inside of /)

/Applications
/System/Library
/Library
~/Library

In the end, this is what we'd like to have, though

/Applications
/System
     /Library
     /private
~/Preferences

With NeXT/OS X, there is a private Library folder inside of ~/ which can contain DIFFERENT things from the System/Library folder and /Library. I think that, honestly, for most people, this can be improved.

By keeping only application-specific preference files and the like (mailbox files, browser caches, UI options, et cetera) inside ~/Preferences using XML files, the way NeXT and OS X do, all of that is separated fully from the OS. In the event of a failure if you have to reinstall, the whole OS is in /System and can be replaced rather easily.

/Applications contains the major applications used by the OS. MP3 Apps, and junk like that. Command line apps don't belong here. They go in /system/private/bin.

Legacy (Linux/X11) apps would also end up in their proper place inside /System/private/.

Apps built for this OS would be contained in .app packages. The binary, and all support files that are needed are inside the package. You'll never see anything ilke

/lib/libexorugal.lib.so not found

The higher-level parts of the OS and the apps will use APIs, frameworks, extentions and libraries that ride atop the UNIX layer, just like in NeXT/OS X. We're wanting much, much less of a UNIX clone, and much more of a high-performance desktop OS that's suitable for the masses.

As we go, we'll be able to look into other things, like integrating multimedia features, maybe using OggVorbis as the built-in audio/video codec.

As the project goes on, we'll also set out to make several consumer apps, in the vein of Apple's iApps. A movie maker, an audio library/player, and a photo app.

These are just a few thoughts... I hope we can generate some interest, get the project going, and have a real replacement for Windows before Longhorn arrives!
Go the fuck ~

suselinux

  • Member
  • **
  • Posts: 711
  • Kudos: 30
New NeXTStep / OSX Based OS
« Reply #6 on: 25 September 2003, 21:01 »
Quote from: billy_gates
we plan on x86 first.

The only problem with starting with darwin is that it doesn't run on AMD CPU's.... yet.

I did not know that

That kinda sucks cuz that's what I have.   :(

[ September 25, 2003: Message edited by: suselinux ]
« Last Edit: 8 February 2008, 04:57 by Orethrius »

hm_murdock

  • VIP
  • Member
  • ***
  • Posts: 2,629
  • Kudos: 378
  • The Lord of Thyme
New NeXTStep / OSX Based OS
« Reply #7 on: 25 September 2003, 21:22 »
Okay... we've got a couple of names...

LinuxNGE is the working name, but psyjax and I are kicking around "CthulOS", with "Dagon" being the name of the graphics engine.
Go the fuck ~

suselinux

  • Member
  • **
  • Posts: 711
  • Kudos: 30
New NeXTStep / OSX Based OS
« Reply #8 on: 25 September 2003, 21:25 »
Are you guys gonna try and keep it open source

or will you have to use propriatery things Like the
Quote
PDF-based desktop compositor
you mentioned?

Funny though, I thought Panos and Calum would popping up saying that they would like to Join in the fun.

[ September 25, 2003: Message edited by: suselinux ]
« Last Edit: 8 February 2008, 04:58 by Orethrius »

hm_murdock

  • VIP
  • Member
  • ***
  • Posts: 2,629
  • Kudos: 378
  • The Lord of Thyme
New NeXTStep / OSX Based OS
« Reply #9 on: 25 September 2003, 21:30 »
actually, we've decided to go with Ghostscript, as it's more open than PDF.

I think wer're going to build all of our original bits using the BSD license. It's still OSS, but there's less resistance to making it commercial if we wanted.

I figure once it's good enough, we could have two editions, the "downloadable" edition, which is really basic, and the boxed edition which would come with the OpenGL support, and more apps and stuff
Go the fuck ~

suselinux

  • Member
  • **
  • Posts: 711
  • Kudos: 30
New NeXTStep / OSX Based OS
« Reply #10 on: 25 September 2003, 21:45 »
when you guys say Linux what do you mean

RPM based, Deb, Slack, Source Based....

Can I ask why you want to use windowmaker as a starting point for your GUI

I think its great because it the GUI least preverted by the politics of business sofar


I think that this is really exciting!!!

billy_gates

  • Member
  • **
  • Posts: 801
  • Kudos: 0
    • http://www.skinner.com/jeffberg
New NeXTStep / OSX Based OS
« Reply #11 on: 25 September 2003, 10:08 »
Quote from: suselinux
when you guys say Linux what do you mean
RPM based, Deb, Slack, Source Based....

I think that this is really exciting!!!

I personally do not see a reason to add RPM support.  As most apps will use .app packages.  I think the RPM support would just slow it down.

And yes... this is very exciting.

My personaly choice for using Window Maker, is because its next based.  And so is this.  So it will be doubly next based... in a place where doubly is a real word.

I can't wait to get started on this.  Unfortunately about all I can do is graphics work. (whis is generally last on big projects like this)  However, I would like to stay on board with this project.

And I think we should start with Linux cus I don't have any Intel PC's to beta test on, so there is a problem with using Darwin there.
« Last Edit: 8 February 2008, 04:55 by Orethrius »

suselinux

  • Member
  • **
  • Posts: 711
  • Kudos: 30
New NeXTStep / OSX Based OS
« Reply #12 on: 25 September 2003, 11:23 »
Is Linux with a FreeBSD Kernel possible?

hm_murdock

  • VIP
  • Member
  • ***
  • Posts: 2,629
  • Kudos: 378
  • The Lord of Thyme
New NeXTStep / OSX Based OS
« Reply #13 on: 25 September 2003, 13:51 »
that would be FreeBSD. Remember, it's the kernel that makes it Linux.

As for what we'd base it off of... just a very, very basic, stripped down Linux tree. The kernel, and the most basic utils and commands. Everything that the user is going to interact with will be high-level, built on NeXT libs.

RPM support could be included as a "Linux Utilities" option in the installer. NeXT and OS X don't include any of the UNIX command-line apps by default, you can install them, though.  But the normal config won't have support for RPM, as it won't be needed. Drag and drop installof apps  is the goal.

System packages, and some apps that install system extentions will use the Package  Installer (Installer.app) to do their thing.

NeXT/OS X uses .mpkg bundles to install some things from. Double click the .mpkg bundle and the Installer.app opens and takes care of it all. It puts the Application's bundle in /Applications or whatever folder you specify in the install script. CthulOS will use the similar mechanisms. Package management isn't an issue, because an application consists of one icon. If it installs any extensions, then they'll be clearly labled and always be inside /System/Library/Extensions. they'll probably use a bundle format that I've tenatively dubbed the "Universal Bundle". It's a folder bundle much like a .app or .mpkg bundle, but it can contain drivers, extensions, documents, et cetera. If it isn't an app or installer package, it's a generic bundle, and it contains the file itself, metadata, and resources (icon, et cetera)

The desktop shell will need to be able to work with bundles, which is why WM and GWorkspace would be preferred, as they're designed to work with NeXT-style conventions. GWorkspace will correctly show application bundles as a single icon that runs the app when double clicked (at the command line, .app bundles are simply folders).

To understand the concept of bundles, I suggest reading up on them, as they're a pretty cool idea. Abstract an entire folder tree into one icon, so as to sheild the user from worrying about the binary and all of its support files.
Go the fuck ~

billy_gates

  • Member
  • **
  • Posts: 801
  • Kudos: 0
    • http://www.skinner.com/jeffberg
New NeXTStep / OSX Based OS
« Reply #14 on: 25 September 2003, 19:04 »
I guess darwin now works on AMD CPU's

Now we have a hard choice to make.  Go easy and use Darwin, or do a little extra work and use Linux?