Any Free tools for producing flash apps?
Flex SDK should be the way to go. The only thing you would miss is a graphical IDE. Unfortunately the best Open Source Flash IDE, FlashDevelop, is only for Windows.
The alternative would be OpenLaszlo. It is a mature and robust technology and you can develop complex Flash applications or RIAs with it. It features its own layout markup language and it is actually very quick to learn and very powerful. An extra bonus is that you can compile either to SWF/Flash or to DHTML with the same exact final result. Quite fancy.
You might also want to try Haxe, a relatively new language with similar syntax with ActionScript/ECMAScript that can output to several different formats such as SWF, Javascript, PHP and C++. It is being very hyped lately. Definitely worth checking.
About other Flash/OpenSource related projects and tools, you can check the Open source Flash site
If you don't need the Flash GUI features, you might check out Adobe's free Flex developer tools. They produce SWF files.
Programmaticaly: MING - http://www.libming.org/