Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Explorer Shell Merged (reactos.org)
166 points by jeditobe on Nov 27, 2014 | hide | past | favorite | 68 comments



Compare it with screenshots of the old explorer: http://old.reactos.org/en/screenshots.html

http://www.reactos.org/screenshots

Information about the old explorer: http://www.foxplanet.de/explorer/


Looks more Win2k than XP, and that is a good thing in my book.


ReactOS has some theming support, so you can make it look Luna-ish if you want.


Deities forbid...


More fixes are coming :-)


Thanks, these should be linked in the communique!


I commend their dedication, but I don't quite understand why they do it. Is it fun to develop? What do the developers get from it?

I understand what the Linux kernel developers get (it touches the lives of almost every living human being) or the BSD folks do (it's a exquisitely well built OS) or the Haiku ones (it's a really cool OS), but reimplementing Windows, with all the cruft needed to be binary compatible is an exercise the joys of which completely elude me.


For those who work on it, it probably is just for fun.

But Windows is, at its core, not a completely bad OS. I heard many parts of it are actually pretty well-engineered. The Windows NT kernel has pluggable subsystems, one of which is for Windows applications, but there used to be also a POSIX layer. In the kernel, almost everything is an object and can have ACLs (security descriptors). You actually do have something like Linux' /dev and /proc, it's just not exposed to the shell (you can sometimes see hard drive device paths, not legacy drive letters like C:, shine through the cracks, but mostly when there are boot problems).

Even in the shell, there are a few neat ideas. Everything is a (COM) object, and has interfaces. Applications can embed parts of the shell, e.g. explorer windows, and they can also contribute back parts, like custom places and icon types.

Of course there are layers and layers of cruft in Windows, but funnily, the older parts seem to be better engineered (especially taking to account their age, and looking over things like legacy 8.3 module names). Its a bit telling that the new Windows Runtime is actually a new version of native COM underneath, and not .NET CLR (but both are fully brigded).

I think the hardest part to emulate for ReactOS is not the old cruft, but the modern cruft. WPF for example does have a few nice ideas, but its insanely huge and complicated. And a typical windows system has like 4 different, incompatible .NET runtime libraries (.NET, Silverlight, WPF, WinRT). This is one thing I hope MS will get sorted out in the future.


Core Windows is, still, Windows NT, which was designed by Dave Cutler, who designed a number of OSes for DEC, which changed its name to Digital before it was bought by Compaq, which then merged with HP, which is its own can of worms.

Cutler designed RSX-11M, VMS, and VAXELN (a real-time OS for the VAX), which are or were all serious OSes. VMS in specific was a serious competitor to Unix; in the form of OpenVMS, running on Alpha and Itanium, it still exists.

So Windows NT is a foundation made by someone who knows OSes and OS design; in many markets (not all, not that I think my parenthetical will stop people from "correcting" me) it's the last OS family not based on a fundamentally Unix-like foundation. Having an Open Source version of that is interesting for historical reasons, if nothing else, and there's something to be said for hybrid vigor if some bright spark figures a way to port a few concepts to the rest of the OS world.


In between his work on VMS and VAXELN, and leaving for Microsoft, he was also responsible for a system called "Mica" which was intended to be a micro kernel system which supported both a Unix and VMS layer on the system, and was written in an in-house Pascal-like language called Pillar. FWIW, NT was inspired by some of the ideas they had while designing Mica.

http://bitsavers.informatik.uni-stuttgart.de/pdf/dec/prism/m...

http://bitsavers.informatik.uni-stuttgart.de/pdf/dec/prism/m...


For anyone who is interested in the story of the original development of Windows NT, check out the G. Pascal Zachary book, Showstopper.


I would agree, not read my copy for a very long time but it's very enjoyable. I think I read it at around the same time as I last read "The Soul of a New Machine" by Tracy Kidder, also a worthwhile read for some of the younger HN'ers who missed out on that era.


As surprising as this may sound, it seems OpenVMS is still under active development, even though not by HP. Even an x86-based version is on their roadmap.

http://www.vmssoftware.com/


That company is an HP contractor.


The core Windows OS is actually very cool, IMO. Pity it's closed source. Some time ago, I did some research on Windows 2000 and wrote a lot of it down on the Windows 2000 Wikipedia article. I later split it to the "Architecture of Windows 2000", which interestingly (and correctly) has been renamed to "Architecture of Windows NT" [1]

What you are referring to, however, is in user mode, in the environment subsystem. There is actually a few subsystems - the one you are talking about is the POSIX subsystem. I believe it's actually still there in the latest versions (might be wrong about that).

1. http://en.wikipedia.org/wiki/Architecture_of_Windows_NT


I still own Windows Internals, the most authoritative book on the subject. Fascinating stuff.


The author is pretty amazing.


Alex Ionescu, one of the authors, has actually had some involvement with ReactOS.


The POSIX and OS/2 subsystems were removed as of Windows XP and 2003.


POSIX was not. It's call SUA and I still enable it, and on w7 run Gentoo bootstrap under it. It works well enough and I even see sshd run as a service process.


Googling turned up only a really thin wikipedia article - got some links on how you're doing that? That's really quite cool.


It was very much an exploration project, so there isn't a single source. I used https://www.gentoo.org/proj/en/gentoo-alt/prefix/techdocs.xm... and SUA Community forum that is down now, on some of the necessary code patching.


Thanks, I didn't know that SUA still uses a subsystem that's different from the Win32 subsystem. However, it's a different one (Interix) from the old POSIX subsystem, as far as I know. Or does anyone know whether it shares or inherits some code from it?


Sadly, SUA is only available in the Ultimate and Enterprise editions of Win7.


Didn't POSIX subsystem have no access to TCP/IP?


No of course Windows is not bad by itself. Only people who haven't looked closely enough would say that. Windows OS just like Linux has its dark sides but also its bright sides where it shines. The Windows kernel runs extremly well on ARM Devices like Windows Phone as well.


The POSIX implementation in Windows was a shim to satisfy requirements about "POSIX compliance" when selling Windows NT. Even Microsoft tells it's not really useful: http://msdn.microsoft.com/de-de/library/y23kc048.aspx



> WPF for example does have a few nice ideas, but its insanely huge and complicated.

I have not written Windows code in a while, and what code I touched was C/Win32 and C++/MFC. But my impression with Microsoft software has been that they seem to like doing things in an unnecessarily complicated manner, then realize it does not really work out all that well, then reinvent the wheel, but make it even more complicated than whatever they tried to replace.


WPF and .NET are not different runtimes.


‘Reverse engineering’ must be a joy all to itself.

And it’s hugely important because it lets old software live on. Think of 90ies games for example, so often made for the DOS/Windows platform. Projects like ScummVM, Dosbox and Wine make that accessible right now. React takes that a step further still I imagine.


Helped a relative set up a new computer this year. Found that a program they enjoyed using dated back to 3.11 or something. Only noticed this because it refused to run on 64-bit Windows 8...


Yes, but a modern computer is certainly capable of running that program perfectly under a virtual machine running the actual matching release of Windows.

Heck... I once started porting Hercules, the mainframe emulator, so I could have a fully functional 370 series mainframe in my Nokia E62 phone.


Means i need to dig up a Windows 95 iso or something, and instruct them in how to launch the thing once set up...


You can install the VM yourself, set it up, and then send them an image of the entire disk.


Heh, i see now that my comment was not clear.

Yes, i would be the one do set up the VM, install Windows within it etc. But after that they still would need to fire up that VM each time they wanted to use that program.


You can make Windows inside the VM run the program on boot and then put a desktop shortcut on the host that launches the VM. That's what I do for Office.


Or export the VM as OVF archive.


That's what I meant, not just the hard disk.


I'm curious -- what program was/is this? :)


Don't recall off hand.


How about trying to run it under compatibility mode?

http://i.imgur.com/jrueyYG.png


It's almost certainly 16-bit and you can't run 16-bit apps with the 64-bit instructions enabled.


Red face...can't believe I missed that.


> ‘Reverse engineering’ must be a joy all to itself.

I agree and I think it because you have a very clearly defined goal and can just focus on the technical challenges.


Personally, I get a lot from knowing FreeDos exists. It makes things like DosBox much more compelling.

I look at this project in the same light, before too long you'll be able to download WinBox and play all your favorite old Windows Games or use some long forgotten old productivity tool.

This is amazing work that will ensure we can keep alive our culture and history in a meaningful way.



Thanks for the links.

The interview series were part of the relaunch of the ReactOS website (2005) and community iniatives (2006). I know it first hand, I was the interviewer. OSNews was not involved, but they were open minded amd supportive to ReactOS - often featured news articles - thanks.

The old website is still up, e.g. http://old.reactos.org/en/interview_1.html


Looking at those screenshots made me a bit nostalgic for the old windows 2000 UI. It wasn't exactly showy, but from a UX experience it was great (clean lines, nice spacing, easy to find things, responsive, consistent). Every UI Microsoft has done since then has sort of been a regression, even if not a terrible one. Windows XP looked like a cheap toy, Aero was pretty but their insistence on killing menus and blending UI elements with the title bar was weird, and metro is awkward on a desktop. I know you can still go back to "classic" mode, but it's definitely a second class citizen at this point.


Agreed. I do not miss working in a Windows OS as I much, much prefer a UNIX system.

However I do miss working in a Windows UI. You could very quickly and efficiently do just about everything with keystrokes.

I much prefer the win2k UI over the OSX UI.


I'm generally with you, but preferred XP with the Classic theme, and stupid sidebars disabled. It had a quite a few improvements over 2k.

I miss real menus and configurable tool bars. I've had to piece together a Frankenstien of gnome-classic and xfce4 tools to almost approximate how good XP was 15 years ago. And some parts of it still weren't as good as the classic Mac OS long before that.

GUIs are going backwards, sniff.


I use Windows 7 at work, and I have to admit it has kind of grown on me. For once, Microsoft got a couple of things right. Aero Snap is great, and the search field in the start menu is very useful, too.

But otherwise, I agree, they had a good thing going, and then they went and ruined it. I am not opposed to change, but if it is change just for the sake of change, I do not see the point.


IMHO the Windows 8 standard desktop theme is a "better Classic than Classic". With the Aero excess gone, the remaining design is clutter-free.

I also like the current Office UI a lot [1]. Maybe I'm weird.

[1] On Windows only -- Mac Office 2011 is a mess.


Where do you see screenshots? I've tried every single browser I have and I see no screenshots.


Why is it "second class citizen"? I've used it exclusively with Win7 and it works fine (granted it does need 7 Taskbar Tweaker for best results..). I have never ever liked the Aero Peek feature of Win7: it invariably adds extra steps and mouse work to the simple task of switching between apps for no good reason (no, seeing a mini thumbnail of an app I already know is running does not make anything clearer or better).

ReactOS, I will be happy to go there if I ever get the chance from a compatibility standpoint.


I guess it's subjective, but in windows 7 the aesthetics are weird. The taskbar looks funny, a lot of the UI dialogs were obviously not designed with that styling in mind, and so on. In windows 8 they killed the theme completely. (Although once you get rid of metro, I actually like the windows 8 theme quite a bit).


[deleted]



Oh man, this is pretty big. Good as it was at the time, it's nice that ROS finally, finally gets the shell it's always deserved.

I wonder how well it will interact with Windows apps that deal with explorer.exe.


Depends on the app - sometimes the apps don't work well under Windows - as Raymond Chen found.

http://blogs.msdn.com/b/oldnewthing/archive/2011/08/03/10192...


As someone who often trains people in places in the world with low levels of IT literacy - where Windows is by far the dominant platform (very little chance of most people affording Mac or being able to pick up Linux). I've always thought ReactOS had a useful ability to bridge the problem of people a) not being able to afford new versions of Windows b) Even when they do, often ending up with counterfeit versions of it.


Looks good at first glance, but there's something about the icons that compared to the real Windows ones doesn't seem quite right; I understand there's copyright issues with using the Windows icons exactly, but these icons have a very "Linux-ish" appearance to them, for lack of a better term.


They're probably stock Tango items. You've probably seen them before in Linux distributions and OSS software, ergo the association.


In fact, they are stock Tango icons.


I never heard about reactos before. Am I right to assume that this is Windows 98 as Open Source project? Am I right to assume that a lot of people who hate that XP is not maintaned anymore will switch to something like that instead of Linux or BSD? If that's true I have to sit in a corner for a while crying my heart out...


Actually this is Windows 2003\XP as Open Source project


If somebody wants to support ReactOS development, he can do it by use of https://www.bountysource.com/teams/reactos/issues

Cast your bounties on bugs that bother you.


Congratulations to the ReactOS team, awesome work! :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: