
FlashDevelop Mac/Linux integration: the Bridge project
Hello Mac/Linux friends,
I've been busy lately working on a side project called the "FlashDevelop Bridge". I'll keep you informed in this thread and will edit this post to reflect the status of the project.
This project is not a port of FlashDevelop to Mac or Linux.
This project's goal is to improve FlashDevelop behavior when ran virtualized in a Mac or Linux host.
The main issues identified when you run FD virtualized:1. high memory & CPU need of the virtualized Windows OS
The Flex SDK in particular consumes a lot of memory so you have to allocate a ton of your RAM to Windows.
2. slow shared disk between Mac & Win
Usually you'll want to need to keep the project on the Mac filesystem which means Windows application access the Mac drive as a network location. This is slow, in particular for compilation.
This also brings up the next issue.
3. Mac/linux filesystem synchronization problems
Mac/Linux and Windows have a different approach to filesystem changes monitoring. And it fails badly in FlashDevelop which is not notified when files in the project & classpath change: new classes don't appear in completion, IO changes in project tree do not appear without manual refresh, etc.
4. poor integration with Mac applications
- Flash IDE integration (test/build with error reporting in FlashDevelop) is important for many users.
- Also in general, not all virtualization solutions (especially the free VirtualBox) will seamlessly associate Mac applications with Windows files. Which calls the following issue.
5. inconsistencies between virtualization solutions
Tutorials to get started with Parallels, VMWare or VirtualBox are complex, not up to date and hack-ish.
Solutions offered by the Bridge:Of course it won't be as great as a full port, but obviously a native Mac/Linux port of FlashDevelop would be very very very far from the current incarnation of FD. In the meantime, the Bridge will offer:
1. a consistent solution, compatible with Parallels, VMWare and VirtualBox
- start the bridge and enter minimum configuration to get started
- calling native Mac applications will be fully automatic and will not depend on solution-specific wrappers.
- Flash IDE integration (test/debug and error reporting in FlashDevelop) will be seamless.
2. no more filesystem problems
Filesystem monitoring runs natively in the host OS and entirely replaces Windows notifications.
3. reduced memory & CPU footprint
Flex SDK will be executed in the host OS instead of inside the virtualized Windows. You'll be fine with 512Mb allocated to your Windows system.
4. <your call>
Project statusDone:
- mapping between Win & Mac locations [1],
- calling Mac applications automatically [1],
- filesystem monitoring delegated to host [1],
- [1] configure host -> guest paths to map Windows paths to Mac paths,
- calling Flash IDE and get back error reports,
- program settings to configure all this s**t,
- nice UI for the Bridge.
In progress:
- Linux support (?),
- virtualization apps (missing Parallels).
To do:
- debugging & stress test,
- some more settings (IP, port),
- hide the bridge from the Dock,
- offload Flex SDK compilation to Mac
Contributing:You can contribute in general even/especially if you're a Win-only user by building FD4 from SVN or installing the dev builds and controlling that everything works as expected because this bridge introduces a few core changes to allow the delegation mechanism.
If you're a Mac/Linux user and very courageous and know some C++/Qt you can build the bridge and FD4 and start using it right now.
SVN:
http://flashdevelop.googlecode.com/svn/trunk/FD4http://flashdevelop.googlecode.com/svn/trunk/FD4/External/Tools/Bridge