Slashdot Mirror


Fedora Core 5 includes Mono

cyberjessy writes "Surprise! The Fedora Core 5 Release will include Mono in the distribution, in spite of Red Hat's opposition. In addition to the Mono runtime, it will also include Mono applications like Beagle and F-Spot. Is the Linux community finally ready to accept Mono? Mono is becoming increasing important due to Windows Vista, which has WinFX (the next .Net Framework) as its core API. This will mean that in future, all native Windows applications will easily run on Linux, with Mono. Will Mono achieve what WINE could not?"

39 of 463 comments (clear)

  1. Summary by Locarius · · Score: 3, Insightful

    Yes, off topic, but it's nice to see a well written and concise topic summary around here once in a while.

    1. Re:Summary by timeOday · · Score: 5, Insightful
      Yes, off topic, but it's nice to see a well written and concise topic summary around here once in a while.
      But how accurate is it?
      This will mean that in future, all native Windows applications will easily run on Linux, with Mono.
      I think that's far premature. Without even knowing yet what the catch is, I know there will be some. I just don't think Microsoft will let Windows apps seamlessly run under Linux, one way or another.
    2. Re:Summary by Glock27 · · Score: 3, Interesting
      I think that's far premature. Without even knowing yet what the catch is, I know there will be some. I just don't think Microsoft will let Windows apps seamlessly run under Linux, one way or another.

      Yes, as far as I know, there are no plans to clone "WinFX" at this point for Vista compatibility. Mono doesn't even have working WinForms as far as I know (after how many years?), which would provide compatibility with current Win apps.

      Java provides a better level of portability than C#/CLR...I'd look there instead for a VM based runtime.

      On that note, there is a Java port that runs on top of the Mono runtime and is supposedly fast. That might be worth investigating. (IronPython too if it ends up significantly faster than the regular Python interpreter.)

      --
      Galileo: "The Earth revolves around the Sun!"
      Score: -1 100% Flamebait
    3. Re:Summary by Jugalator · · Score: 5, Interesting
      Yes, as far as I know, there are no plans to clone "WinFX" at this point for Vista compatibility.

      WinFX is far from required for "Vista compatibility". Basically no applications will use WinFX when Vista is released, and I have to wonder how many Windows developers are actually ready to jump ship from unmanaged C++ to .NET and WinFX. The new WinFX development models with e.g. Windows Presentation Foundation and XAML for UI development, etc. are totally incompatible with current C++ applications. It feels like several years ahead at the very least.

      As for the Windows.Forms namespace, it's well underway actually. In the November 2005 status report, word is:
      Windows.Forms is the only piece that is holding us from officially renaming Mono to Mono 1.2, it is still missing a few features. Our plan is to complete the missing features by the end of this month and then move to bug fixing and testing open source our publicly accessible Windows.Forms applications. We are planning on spending three months on bug fixing at this point.

      This hardly sounds too unattainable to me.

      And before anyone asks, no, Windows Forms 2.0 support isn't required for "Vista compatibility" either.
      --
      Beware: In C++, your friends can see your privates!
  2. The patent problems have not been addressed by H4x0r+Jim+Duggan · · Score: 3, Interesting

    The strategy for dealing with patents is discussed on the Wikipedia article about Mono. It is not a well thought out strategy.

    It's probably good that Mono exists, it may have uses in some situations. It may help people get out of .Net related lock-in, but in general it should not be built upon.

    1. Re:The patent problems have not been addressed by ranton · · Score: 3, Interesting

      It may help people get out of .Net related lock-in, but in general it should not be built upon.

      What is this .Net related lock-in that you are speaking of? In my opinion .Net is one of the best things that Microsoft has ever done. Developing has never been as easy and feature rich as it is under the .Net platform. My development time since switching to .Net is on another level than it was before; I almost cannot imagine going back. .Net is one thing that Linux should definetly embrace, I havent found a problem or flaw with using the .Net framework yet (not including bugs, all software has bugs).

      --

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    2. Re:The patent problems have not been addressed by afabbro · · Score: 4, Insightful
      What is this .Net related lock-in that you are speaking of?

      Hey, I'd like to develop a .Net program and run it on Solaris/AIX/Linux/etc. Oh, I can't? Gee, seems like I'm locked in to the Windows platform with .Net.

      Compare and contrast with Java. Or open source code. Or a lot of closed-source code, for that matter. Just like Visual Basic, if you write in .Net, you're only writing for Windows.

      --
      Advice: on VPS providers
  3. Great news! by Anonymous Coward · · Score: 3, Interesting

    I don't really care about windows programs running on linux, though this is of course an interesting subject.

    What's more important is that the stupid infighting about what role mono could play in Gnome can now finally end.
    Mono seems to offer something that many people like and can now finally simply be used to build great programs for Gnome (just like pythong, jave, etc.), without being preoccupied with Fedora and thus a large Gnome distribution not shipping mono.

  4. Heh. by SatanicPuppy · · Score: 4, Funny

    First time the "Kissing Disease" has ever been accessable to geeks.

    One the one hand, I'm all in favor of open source alternatives, and it adds a lot to linux to be able to run .Net apps, but I can't help but think we'd be better off with another language. .Net is so freaking encumbered.

    Still, it'd be nice to be able to host .Net apps on Linux servers...

    --
    ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    1. Re:Heh. by Hosiah · · Score: 3, Insightful
      linux to be able to run .Net apps,

      Hey...wait a minute. Do you mean Net apps like in "Visual Basic Script-Kiddies EZ Virus Kit"? Maybe this isn't something to dance in the streets about after all...

  5. Re:Aha! by QuantaStarFire · · Score: 3, Funny

    It's the kissing disease, you know. Our little OS is growing up! :)

  6. Will all applications be rewritten? by mwvdlee · · Score: 4, Insightful

    This will mean that in future, all native Windows applications will easily run on Linux, with Mono.
    Will all major Windows applications be rewritten to .NET?
    I just can't imagine Adobe, Autodesk, Corel, etc. translating their code to .NET in the near future.

    --
    Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    1. Re:Will all applications be rewritten? by anarxia · · Score: 4, Insightful
      All applications.. no chance. Some of them might.

      The problem is that MS (intentionally or not) left a lot of functionality out of the .NET standard libraries _AND_ made it almost trivial to call native code from within .NET.
      The end result is that most applications end up using Win32 DLLs directly so wine is still necessary.

  7. Easily run by DrXym · · Score: 5, Insightful
    Someone has obviously never tried running a .NET application under Mono. More often than not, it calls Win32 via PInvoke, uses an ActiveX control / COM interop, or does something else which renders it unusable on other platforms. Some apps might work, particularly command line tools, but it is by no means guaranteed or even probable.

    And this is probably what MS had in mind all along. And I don't see it changing either. Microsoft make it easy to slap together apps with their stack and tools. Mono makes it hard to do the same with theirs. That means Mono will constantly be playing catch-up with Microsoft, reaching for but never getting close to 100% compatibility.

    1. Re:Easily run by adolfojp · · Score: 4, Informative

      There is a WinForms compatibility layer in the making. Its first release will handle the WinForms of the 1.1 .net specification. Mono will be forced to play catching up with this GUI framework and it uses the compatibility stack instead of the ECMA compliant one.

      If you want to make Linux applications using Mono I strongly recommend using GTK#. Beagle and F-Spot use GTK#.

      Cheers,
      Adolfo

    2. Re:Easily run by jonwil · · Score: 3, Insightful

      And that is where WINE comes in.
      The people behind Mono and the WINE people should work together so that Mono will use WINE for any PInvoke (either standard win32 APIs or something custom that comes with the .NET app) and hence the WINE implementation of COM & OLE for any ActiveX controls or COM interop.
      If the item being used (e.g. the API call being PInvoked) is a standard windows item, then the .NET app will run on any system that has a usable port of WINE and Mono on it. If it is a non standard item for which source code is available, again, it could be ported and run via WINE or WineLib somehow. (or if its closed source but documented, it could be cloned somehow)
      Even if the item being used is a closed source propriatory item for which there is no possible clone or use on non x86 platforms, Mono with WINE could still be used to run the whole thing on x86 linux

      The question is whether the WINE people are prepared to do what is necessary to allow Mono to use WINE for the bits it needs (including PInvoke, COM and the talked-about implementation of System.Windows.Forms which has to go on top of something looking like user32 so that all the support is there)

  8. talking about exaggeration by Anonymous Coward · · Score: 5, Insightful

    This will mean that in future, all native Windows applications will easily run on Linux, with Mono.

    How about

    This may mean that in the future, some native Windows applications will run on Linux, with Mono.

  9. Will Mono achieve what WINE could not? by overshoot · · Score: 4, Interesting

    Not a chance. All of the MS application base (including the new ".NET" stuff) still depends on the underlying Win32 system functions, DLLs, etc. The newer interpreted APIs are just wrappers around the older stuff.

    --
    Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
    1. Re:Will Mono achieve what WINE could not? by MobyDisk · · Score: 5, Insightful

      Actually it is quite easy because of one crucial difference. It's not the implementation that matters, it is the interface. And .NET provides a good interface.

      Even if Microsoft implemented the .NET APIs as wrappers around Windows APIs, the fact is that the APIs are clean and they are well documented. They follow the rules of encapsulation well. That makes it possible to re-implement them in a straightforward fashion. The problem with WINE is that the Windows API does not follow good design and rules of encapsulation, so the implementation is often exposed. WINE is not an implementation of an API as much as it is a reverse-engineering of one. But that problem goes away with .NET.

      Mono today works stunningly well today. The only issue is Windows Forms, because it isn't as well encapsulated as the rest of the API.

  10. Some interesting stuff coming in .NET by Sanity · · Score: 5, Interesting
    Microsoft has some interesting technologies in the pipeline for .NET 3.0. One of the most exciting is LINQ which will change the way we interact with SQL databases, and data in general from within our code. Other language enhancements will mean that Java has a lot of catching up to do (and no, I'm not a M$ fanboy, Java is my tool of choice and I use a Mac).

    The question is: Will Mono support these new features, and if so, when?

  11. Re:From the article you linked to: by H4x0r+Jim+Duggan · · Score: 4, Insightful

    "The problematic parts are not the core technologies submitted to the ECMA or the Unix/Gnome-specific parts."

    The problem (software patents) can affect any part. If MS have claimed they don't have patents on "core parts", you cannot trust them. If the Mono devs have claimed that MS don't have patents on "core parts", they are saying something they can't possibly know.

    As well as including "according to the public statements of MS and the Mono devs", you should also read that sentence with the qualification: "for now anyway".

    if you say something is not well thought out, also saying why

    The reasons why their plan is not well though out are given in that article, in the last paragraph of that section, just after the list of the 3 strategies.

  12. Re:Unless you use python by amightywind · · Score: 3, Insightful

    Sadly the portage system is written in Python, which is my point. Gentoo depends on Python. A simple clean design would have Gentoo consist of a kernel, binutils, compiler stack, init scripts, and portage written in C and depending on the C library only. Instead the portage system pulls in Python for no particular reason. By all means use Python as an application language. Foundational system services should not be written in it.

    --
    an ill wind that blows no good
  13. Mono is like Java by TCFOO · · Score: 3, Interesting

    This will mean that in future, all native Windows applications will easily run on Linux, with Mono Maby, but Mono is sorta like java. the .Net Programs will be portable as long as the developers don't use Microsoft APIs like java is portable to gcj as long as you don't use the com.sun.* packages etc.

  14. Vista will muddle the developer landscape by boxlight · · Score: 5, Interesting

    Mono is becoming increasing important due to Windows Vista

    As a developer, I have great concern over how Vista will muddle the Windows landscape. Microsoft is creating a situation where developers have to build and test for way too many Windows platforms.

    That is, many developers and network administrators use Windows 2000 exclusively and most other pros and home users use XP -- and my father in law still uses Windows 98. NONE of these people have any intention of upgrading to Vista. So Vista will likely only be installed on new PCs

    It's getting to the point where there's just too many versions of Windows out there to support:

    Win 98 SE
    Win 2k Workstation and Server(s)
    Win XP Home and Pro
    Win Vista??

    And the pointy-haired-bosses will continue to shout that *all* versions of Windows must be supported. That means more development, more testing, more installers, more deep sighs.

    The "write once run anywhere" of Java is becoming more attractive all the time.

    boxlight

    1. Re:Vista will muddle the developer landscape by adolfojp · · Score: 3, Informative
      As long as you make your applications for the .NET framework your applications will run on the .NET framework.
      You can get it here and according to their website it will run on the following:
      Supported Operating Systems: Windows 2000 Service Pack 3; Windows 98; Windows 98 Second Edition; Windows ME; Windows Server 2003; Windows XP Service Pack 2
      It is like Java, except that it is designed to feel and perform like a native windows app.

      As for Vista. Considering the monumental effort that they made in making their .NET 2.0 compatible with the 1.1 I can't see any good reason for them to break it in the future.

      Cheers,
      Adolfo
  15. Eh... no by adolfojp · · Score: 3, Insightful
    Mono is becoming increasing important due to Windows Vista, which has WinFX
    Mono is becoming such an important platform because it is such a great platform to develop for. If you like statically typed languages C# has no equal. If you like virtual machines, mono is the only one that performs well and is open source. If you like python, you will be able to compile python to bytecode for added performance.

    Winforms on mono is not complete yet and it will be a long time before a compatibility WinFX layer is ready. Mono is great for what it is, not for what it could be.

    Cheers,
    Adolfo
    1. Re:Eh... no by adolfojp · · Score: 3, Informative
      Sir, you are absolutely correct and Cacao is great. And now, to undo my mistake, allow me to rewrite my previous statement.
      If you like virtual machines, mono is the only one that performs well and is open source and is designed to be almost programming language independent.
  16. What I want to know is ..... by ajs318 · · Score: 5, Funny

    ..... why wasn't the Open Source clone of the "C#" programming language called "Db" ?

    --
    Je fume. Tu fumes. Nous fûmes!
  17. Re:Unless you use python by gowen · · Score: 4, Insightful
    Instead the portage system pulls in Python for no particular reason.
    Portage is a complicated set of programs. Complicated programs are easier to write in python, because of the languages features, and complicated secure programs even more so. They're written in python because the developers consider it (one of) the best solutions to the problem.

    If you know better, and think it should have been written in C, I', sure the present developers would be very interested in seeing your port.
    --
    Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
  18. Misleading by JanneM · · Score: 4, Insightful

    The whole "run Win-apps under Linux" really is a little misleading. That's not really the point of Mono for most users.

    The point, rather, is that it is a very, very nice development environment and a very pleasant language, well-suited for application development, as f-spot and others are a testament to. As a bonus, the apps written under mono will be easy to deploy under Windows as well, should it be needed.

    And when you use Mono to write desktop apps under Linux you aren't using anything Windows-related that isn't covered by the ECMA standard. You have no larger exposure to patent issues than you have under any other environment (possibly barring plain C and POSIX libs. Possibly).

    --
    Trust the Computer. The Computer is your friend.
  19. Re:Mono and python by m50d · · Score: 5, Insightful

    How is it a boil? It's a great language, very useful, makes the base system smaller overall (because so many things can be made much smaller in python) and is nice to be able to depend on it being available. Slating distributions for depending on python is like criticising them for depending on libc.

    --
    I am trolling
  20. Re:Why .MONO by Christopher+B.+Brown · · Score: 4, Interesting
    There is a merit of MONO over Java, for free-ish software, namely that it is likely to be a more uniform platform than Java.

    The trouble with Java, at present, is that full implementations (complete with all the latest J2EE, Java 1.whatever-is-latest) are proprietary to Sun and other commercial vendors. You can't include a full-scale Java with a Linux distribution; the licenses won't permit it, as the implementations aren't "free" the way Linux and attendant software in a Linux distribution need to be.

    The lowest common denominator takes you back to partial implementations of Java 1.2 or the like; Kaffe, Classpath, and the like, with no Swing GUI and I'm not sure if Eclipse will run well with these "partial" Java environments.

    MONO avoids all that; the free implementation is reasonably full featured, seemingly moreso than the "libre software" implementations of parts of Java.

    I doubt it'll actually provide all that much interoperability with Windows. But the point of it was that the Ximian folk were getting tired of fighting with writing C memory management code for dynamic applications like Evolution. If they can write "Evolution Next Generation" using MONO, and have it be smaller, more componentized, more powerful, and more robust than struggling with the C version, that could be the "killer app" that makes MONO worthwhile in its own right, ignoring Microsoft's software.

    It seems to me that Beagle is one of the relevant components for MONO-based "killer apps."

    --
    If you're not part of the solution, you're part of the precipitate.
  21. Re:Simple question -- simple answer. by Eivind · · Score: 4, Interesting
    Yeah, sure, it's something completely different from Wine. But my "no" was sorta based on something different, namely the idea that, as stated in the blurb:

    This will mean that in future, all native Windows applications will easily run on Linux, with Mono. Will Mono achieve what WINE could not?"

    Mono will certainly not ever come anywhere *close* to being able to run "all native Windows applications", there's like half a dozen independent reasons for that, ranging from your "it'd require a recompile in any case" trough unpleasant little facts like the fact that Mono is trying to chase a moving target that is willing to spend a lot of money and man-hours precicely to *avoid* that too much works with Mono.

    In sum, they'll have all the problems of Wine, and then some. (the need for sourcecode f.ex)

    Worse yet: the mono-developers are suggesting one migth want to develop OSS applications with a primary target being Free OSes under Mono. Doing so would be double hurtful: It'd ensure that any such application developed for Linux works perfectly under Windows (because mono is a *subset* of the MS-environment, AND because all OSS-applications come with source), but *not* the oposite.

    It's a braindead waste of time. I don't see how I can put it more politely. It actively hurts the Free Software ecosystem.

  22. solidarity by H4x0r+Jim+Duggan · · Score: 3, Informative

    People in Europe and Britain are kinda safe right now. Software patents are being granted, and are being used as the basis of litigation threats that the recipients can't afford to contest, but at least the courts are on our side, so far.

    This situation is not stable. If China, India, and Latin America bring in software patents, then Europe will probably give in at a subsequent world trade agreement.

    To keep people in Britain and Europe safe, people in Britain and Europe must take action - and one easy way to do this is to donate to competent, active groups such as FSFE. One way to do this is to join The Fellowship of FSFE, and also encourage others to join.

    Here's a webpage about how and why to support FSFE's Fellowship campaign.

  23. Re:From the article you linked to: by JanneM · · Score: 3, Insightful

    This more general patent problem is not limited to Microsoft and not limited to Mono. Java is no more protected, and neither is any other reasonably modern implementation of anything non-trivial.

    The only way to be _sure_ you aren't violating a patent is to turn off the computer and leave it altogether.

    --
    Trust the Computer. The Computer is your friend.
  24. Quality of unencumbered Java implementations by lamber45 · · Score: 3, Informative
    The lowest common denominator takes you back to partial implementations of Java 1.2 or the like; Kaffe, Classpath, and the like, with no Swing GUI and I'm not sure if Eclipse will run well with these "partial" Java environments.

    Eclipse is a package in FC4, compiled with gcj. It's fairly stable, and the user-interface is the same as in a version of Eclipse running with Sun Java on another platform.

  25. Completely missing the point by GauteL · · Score: 4, Insightful

    The inclusion of Mono in Fedora is the first step towards healing a rather serious potential rift in the GNOME world. Up until now, you could not develop a Mono-app with GTK# and expect it to work on all major updated distributions without added software.

    Don't worry about Windows compatibility, Mono is cool enough on it's own, especially because Novell/Ximian has done such a good job with the Mono-wrappers for GNOME-technologies. Hopefully this will see more GNOME-development.

  26. Re:Mono and python by m50d · · Score: 3, Insightful
    Distributions depend on libc because they have to.

    No they don't. They could write everything in assembler and just use the kernel calls. They depend on libc because it's easier to write programs in C and use the library - the exact same reason they depend on python.

    --
    I am trolling
  27. Trust Microsoft. by Burz · · Score: 3, Interesting
    Miguel de Icaza: Mono BOF Proposal Turned Down By Microsoft For Second Year Running?
    "At the last PDC," Miguel de Icaza (pictured) notes, "the Mono BOF had the largest number of votes when half the spots were still available and it got dropped out of the list." Now it seems that history is about to repeat itself.

    Writing, in his blog, of last year's disappointment, he explains:

            "When I asked the various people in charge what happened they kept pointing fingers at someone else until it reached full circle. Nobody could tell me why the most voted BOF proposal did not get selected. I would be happy with an honest answer even if it is "We do not want to promote open source/Mono/Novell" instead I heard a number of variations on "The problem is that `New frontiers for 6502 assembly language in the copy-editing industry had more votes'" (it didnt)."

    This year's PDC, de Icaza fears, "is looking just like the last one. So it is time to get ready for a Mono meeting like we had the last time: in the middle of the hallway."

    Very telling entry from Miguel's own blog.

    What's on display here isn't even remotely close to a cooperative spirit to further a community standard. It is more of a Cold War.

    ECMA? Who cares... ECMA trying to set the direction of C# and CLR is like steering a truck with a flea.