mtPaint

Mark Tyler's Painting Program

mtPaint is a painting program which Mark Tyler developed from scratch so he could easily create pixel art and manipulate digital photos.

It uses the GTK+ toolkit (version 1, 2, or 3) and runs on PC's via the GNU/Linux or Windows operating systems. Due to its efficient design it can run even on ancient PC hardware (e.g. a 200MHz CPU and 16MB of free RAM).

mtPaint is free software, which means you are able to freely use, modify and distribute it according to the GNU General Public License.

Currently mtPaint is maintained by Dmitry Groshev.


Features

  • Interface

    • Toggle the toolbars on or off at the touch of a button.
    • Horizontal or vertical split view mode.
    • Pixel grid for guidance at high levels of zoom.
    • Move the mouse pointer with exact precision using the arrow keys.
    • Extensive shortcut keys used to improve productivity, configurable to the user's preference.
    • 12 Image clipboard.
    • Up to 1000 undo steps.
    • Zoom levels between 10% and 8000%.
    • Pan window for quickly navigating a large image, or at a high zoom.
    • Browse different files passed at the command line.
    • Translations: Chinese (Simplified), Chinese (Taiwanese), Czech, Dutch, English (UK), French, Galician, German, Italian, Japanese, Polish, Portuguese, Portuguese (Brazilian), Russian, Slovak, Spanish, Swedish, Turkish.
    • Use a pressure sensitive graphics tablet.
    • Limit memory used for undo images.
    • Grab screenshots.
    • Write scripts and run them from menu, or by a shortcut key, or from the command line.
  • Pixel Art

    • Edit indexed palette or RGB images.
    • Save and load BMP, GIF, JPEG, JPEG2000, LBM, LSS, PCX, PNG, PNM, TGA, TIFF, WEBP, XPM, XBM files.
    • Extensive palette features - load, save, sort, edit, posterize, quantize, remove duplicate colours, remove unused colours, colour protection, palette shifting.
    • Image channels: Alpha, Selection, Mask. All saved to a PNG file.
    • Up to 100 layers.
    • Create animations by moving layers, or shifting palettes.
    • Create animated GIF's using Gifsicle.
    • 81 brush presets.
    • 100 preset brush patterns, or up to 256 user-defined ones.
    • User defined gradients.
    • Copy and paste using rectangle or polygon shapes, or freeform masks.
    • Tools to shuffle pixels, flood fill, draw straight lines, smudge, clone, paste text, draw/fill rectangle/ellipses.
    • Use gamma correction when drawing with semi-transparency.
  • Image Manipulation

    • Quickly transform image gamma, brightness, contrast, saturation, hue, posterize from a single dialog, and preview the results in real time.
    • Apply various effects such as invert, greyscale, isometric transformations, edge detect, sharpen, unsharp mask, soften, Gaussian blur, emboss, bacteria.
    • Use gamma correction on effects to improve the quality of various effects.
    • Crop at the touch of a button.
    • Resize the canvas.
    • Rescale the canvas, enlarging or reducing, using several filter methods.

Get mtPaint at SourceForge.net. Fast, secure and Free Open Source software downloads

mtPaint

Mark Tyler's Painting Program

News

31th December 2020
Version 3.50 released

The latest version of mtPaint is now available, and can be DOWNLOADED HERE.

The new features of this version are:

  • Scripting, both from the command line and from within the GUI
  • Configurable keyboard shortcuts
  • New effects - Threshold, Normalize, Map, Solid Noise
  • More options for Blend mode and Gradient mode
  • DPI, spacing, and alignment settings in Text tools
  • More powerful and configurable Polygon, Clone, and Lasso tools
  • Optional gamma correction when painting
  • Support for LBM and WebP image formats
  • Improved support for BMP, SVG, TIFF and XPM image formats
  • Support for raw palette files (PAL and ACT)
  • Saving animation frames in any supported image format
  • Variable substitutions in file actions
  • Some new keyboard and mouse shortcuts
  • Support for newer versions of libraries and compilers
  • Support for GTK+3
  • And various speedups, interface improvements and bugfixes
This time, the detailed list in the NEWS file is even longer than it was in 2011. :-)

The long, long, LOOONG wait since 3.40 was not so hard on those who used, or packaged, the development version. And to those who heroically sat nine whole years hanging onto the "latest release", I have a few words to say.

There is no such thing as an unstable version of mtPaint. There had been a few experimental ones, each time with a clear warning that this specific one was not for general use yet; otherwise, every version (including those experimental ones) has the same number of known bugs on the day of its uploading; namely, zero.

I myself use the latest development version of mtPaint for everything. It does not fail me, and when it does, a new version gets made. If you were sticking to the release version, you have been suffering for nothing.

Nevertheless, no known bugs does not mean no yet unknown ones, so if you notice one (or more), do not hesitate to tell me of it HERE.

And Happy New Year to you all!


30th December 2011
Version 3.40 released

The latest version of mtPaint is now available, and can be DOWNLOADED HERE.

The new features of this version are:

  • Usage of multiple CPU cores to speed up slower processing tasks
  • Two new tools - for image segmentation, and for approximating gradients using palette colours
  • Dynamic preview in colour selectors
  • sRGB (linear RGB) colour scales and gradients
  • Palette sorting by brightness
  • Dock area to hold settings toolbar and layers window
  • Colour chooser popup
  • Autoscrolling in canvas, view and palette windows
  • Auto-resizing toolbars
  • Support for PBM/PGM/PPM/PAM, PCX and SVG image formats
  • Support for ICC colour profiles in images
  • Loading of animated GIFs and multipage TIFFs into layers
  • Palette extraction from image files
  • Format conversions in file actions
  • "Snap to grid" mode
  • New keyboard shortcuts
  • Themeable icons
  • And various speedups, interface improvements and bugfixes
This time, the detailed list in the NEWS file is too long to reproduce here in full. :-)

It was a long wait since the last major release, but this cloud is not without its silver lining, either. :-) With the release versions lagging far behind development, people, and distros, have taken to using dev alpha versions in production. This wider userbase makes this release the most tested one in the history of mtPaint, and for this reason I was able to skip the public-beta stage. But with libraries and toolkits constantly developing exciting new bugs :-) there is no hope of us having caught them all, so if you notice any bugs or glitches, please contact me HERE.

And Happy New Year to you all!


9th September 2009
Git repository created

Christian Oudard created a public git mirror of development version of mtPaint, HERE.
So thanks to his effort, mtPaint development is now not entirely stuck in stone age. :-)

P.S.: I created my own copy of Christian's repository, HERE, which will be used as the project's official repository.


16th April 2009
Version 3.31 released

Version 3.31 has updated Japanese, French and Swedish translations, and several bugfixes.


12th February 2009
Version 3.30 released

Three new translations have been added - Dutch, Italian and Swedish. Several other translations updated, about a dozen bugs fixed, and now mtPaint 3.30 is finally as ready as I could make it. :-) You can download it HERE.


31th December 2008
Version 3.29 released

The latest beta version of mtPaint is now available, and can be DOWNLOADED HERE.

Version 3.29 is a beta version for the final version 3.30, which will be released in a few weeks time. A whole year since 3.20 is a lot of time, but a lot of things were done in that time, too. :-) To name a few - here is long-awaited system clipboard integration ("Edit->Import/Export clipboard"), support for tracing images, image skew transform, and new gradient types, blend modes and effects. As usual, if you spot any bugs or glitches, please contact me HERE.

And Happy New Year to you all!

Here is the latest fragment from the NEWS file:

  • Chinese (Simplified) translation updated by Cecc
  • New colour picker (old one available as configure option)
  • New file picker (old one available as configure option)
  • Some menu items can have an icon (if set in the preferences)
  • Dock area added which now holds the former command line window (View->Show Dock)
  • Layers window handling reworked to make it more responsive
  • Layers window: position now editable via spin buttons
  • Layers window: transparent colour toggle removed
  • L key now toggles the layers window off (if the main window has focus)
  • "Composite to New Layer" operation added to Layers menu
  • Palette can be copied to or from the canvas using the Edit menu
  • System clipboard can be imported or exported using the Edit menu
  • Horizontal and vertical ramps can be created using the Selection menu
  • Shapeburst gradient now used for filling gradients when no placement exists (see handbook section 3.5.6.5)
  • Angular and conical gradients added
  • New image creation can now be made undoable
  • New image or layer can now be created from system clipboard or internal clipboard
  • Screenshots can now be grabbed into a new layer
  • Lasso tool now trims existing clipboard if no selection is present
  • Image->Skew skews image in one or two directions
  • View->Configure Grid sets grid colour preferences
  • "Smart Grid" toggle shows layer boundaries around transparent pixels
  • "View->Tracing Image" added : See handbook section 5.5 for details
  • Gaussian blur effect for images with alpha now is about 40% faster and uses less memory
  • Kuwahara-Nagao blur effect added (edge-preserving blur)
  • Dilation and erosion effects added
  • Seven new edge detection filters added - Sobel, Prewitt, Kirsch, Gradient, Roberts, Laplace, Morphological
  • Invert effect now respects masking
  • Drawing operations on utility channels now respect tool opacity
  • Drawing in image channel with coupled alpha now ignores drawing modes for alpha channel
  • Smudge tool now works about two times faster
  • 12 new blend modes added - Multiply, Divide, Screen, Dodge, Burn, Hard Light, Soft Light, Difference, Darken, Lighten, Grain Extract, Grain Merge
  • Ctrl+Double click selects average colour underneath brush square or selection marquee
  • "Convert to indexed" using current palette now truncates the palette only if requested
  • "Convert to indexed" PNN and Wu quantizers now have diameter based weighting option
  • Brush preview area, canvas, view and palette window now do not lose mouse button release events in GTK+1
  • Brush preview area border now can't be messed up by theme engines
  • Makefiles now honor DESTDIR
  • Configure script now honors CC
  • Shift+Enter while pasting swaps clipboard with canvas (see handbook section 4.8)
  • Communal memory space now implemented for layers (see handbook section 8.4.3)
  • Support using ImageMagick for GIF animation, instead of Gifsicle - "./configure imagick"
  • BUGFIX - Polygon line selection now clearer in Windows version
  • BUGFIX - Occasional redraw glitches in paste and gradient previews eliminated
  • BUGFIX - "Remove All Layers" with layers window closed doesn't cause crash
  • BUGFIX - Pasting in tint mode into indexed images' utility channels now works correctly
  • BUGFIX - Gradient preview now properly shows effect of mask channel on alpha channel
  • BUGFIX - Alt+S key now opens Selection menu as it should
  • BUGFIX - Directory for animation frames is created relative to layers file, as it should be
  • BUGFIX - Saving animation frames in PNG format doesn't cause crash
  • BUGFIX - When pasting to a new layer it is created untitled, as it should


9th June 2008
Version 3.21 released

Version 3.21 has new Galician and Russian translations, updated Spanish translation, and several small improvements and bugfixes.


28th December 2007
Version 3.20 released

After fixing a dozen small but annoying bugs, now mtPaint 3.20 is ready at last, and can be downloaded HERE.


19th November 2007
Version 3.19 released

The latest beta version of mtPaint is now available, and can be DOWNLOADED HERE.

Version 3.19 is a beta version for the final version 3.20, which will be released in a few weeks time. It was a long time between releases, but not all of it had been wasted. ;-) Among other things, mtPaint had large parts of its low-level image-handling and interface framework rewritten, so if you spot any bugs or glitches, please contact me HERE.

Here is the latest fragment from the NEWS file:

  • mtPaint is now licensed as GPL version 3 (or later)
  • Chinese (Simplified) added by puppychinese(Cecc)
  • Japanese translation added by Norihiro YONEDA
  • Polish translation updated by Groszek150(LucaS)
  • FreeType text pasting facility added
  • Actions section added to File menu
  • Sharper image reduction toggle added to "Scale Canvas"
  • Spacing for non-continuous tools is now configurable - right click the continuous mode toggle
  • "Blend" drawing mode added
  • "Unassociate Alpha" operation added to Channels menu
  • PNG compression level made configurable
  • TGA file format save/load added
  • JPEG2000 file format save/load added
  • XPM files with up to 4096 colours can now be saved and loaded as RGB images
  • Palette->Dither A sets colour A/B and the pattern based on the current A colour and the palette
  • Max-min quantizer added - creates small palettes with higher saturation and contrast
  • Faster and better PNN quantizer replaces the old DL3 quantizer
  • Full error precision toggle added to settings page of 'Convert To Indexed' window
  • Eliminated flicker when scrolling canvas in GTK+1 and GTK+2/Windows
  • Dragging the main/view window divider made to behave in GTK+1
  • Main menu now rearranges itself to fit in window
  • Tile based undo system introduced to save memory when changes affect only small areas of the canvas
  • Max undo levels now configurable (from 10 to 1000)
  • Image loading now can be made undoable
  • mtPaint can now be compiled as a library (libmtpaint)
  • Image rotation now sharper and faster
  • Difference of Gaussians effect added
  • Patterns increased to 100 and now stored in xbm_patterns.xbm file
  • Edit->Create Patterns removed as patterns are now saved as standard XBM file
  • Preferences->Paths : Default palette and patterns now selectable
  • BUGFIX - Colour selective mode with zoom < 100% doesn't cause crash
  • BUGFIX - Gradient preview now properly shows effect of mask channel
  • BUGFIX - "Resize Canvas" with negative offset now works correctly
  • BUGFIX - Clipboard rotation now properly handles clipboard alpha
  • Lanczos3 rescaling filter removed due to unfavourable results
  • DL1 quantizer removed for the same reason


3rd April 2007
Version 3.11 released

Version 3.11 has updated French translation, support for saving and loading LSS16 files, and several other improvements. Also, GTK+1 support is now much better, with many bugs fixed.


22nd January 2007
Version 3.10 released

Interface issues got resolved, a couple of other bugs got fixed, and now version 3.10 of mtPaint is finally ready, and can be downloaded HERE.

There was a change in packaging - now, HTML documentation is included in Linux binary packages, instead of being a separate download. The increased size of these packages is due to that, and not to mtPaint binary suddenly becoming hugely bloated. :-)

Also, due to popular demand, we now provide a .deb package for Ubuntu.


30th December 2006
Version 3.09 released

The latest beta version of mtPaint is now available, and can be DOWNLOADED HERE.

Version 3.09 is a beta version for the final version 3.10, which will be released in a few weeks time. It may exhibit interface glitches in its gradient configuration window under some systems, which problem will be fixed in the final release. If you do have other problems with the program or the handbook, please contact me HERE.

There are improvements in many areas, but the new version is not much larger, and certainly no slower, than before.
Here is the latest fragment from the NEWS file:

  • Gradient drawing mode added
  • Palette shifting feature added to Palette menu
  • Turkish translation added by Muhammet Kara, Tutku Dalmaz
  • Taiwanese Chinese translation added by Wei-Lun Chao
  • Image tiling mode added to "Resize Canvas"
  • Greyscale effect now respects masking
  • Gamma corrected greyscale effect added
  • Gaussian blur effect replaces the old blur effect
  • Unsharp mask effect added
  • More palette sort modes added
  • Controls for alpha/selection/mask A/B added to "Edit colour A & B"
  • RGB and HSV colour scales generation integrated into palette editor
  • New advanced dithering modes with many configuration options added to "Convert To Indexed" window
  • Optional gamma correction for image scaling, rotation, Gaussian blur and unsharp mask
  • Smudge tool can be configured to ignore opacity mode - right click the tool icon
  • Smudge tool respects tool opacity for RGB images
  • Channel deletion made easier to use
  • View window can now be placed under drawing window using the View menu or 'H' key
  • "Blend A to B" with colour A identical to B now works like GIMP's Color To Alpha filter
  • Arrows and Shift+Arrows now move cursor around on canvas
  • Enter now simulates left mouse click, and Backspace, right click
  • '[' ']' and '{' '}' keys now used to change colour A/B
  • Ctrl+scroll wheel now scrolls canvas left-right (GTK+2 only)
  • Shift-+/- keys now zooms view window in/out
  • Shift-1...Shift-4 keys now switch to image/alpha/selection/mask channel
  • Selection marquee now persists through tool changes
  • Lasso tool now works for rectangular selections too
  • Indexed clipboard can now be pasted into RGB image
  • Image save/load completely rewritten, now with better support for TIFF, BMP, XPM and XBM formats
  • Channels, composite images and undo images can now be saved to any suitable supported file format
  • Image channel can now be saved and loaded just like other channels
  • Paint tool in tint mode now respects both Tint +/- toggle and left/right mouse button
  • "By image channel" flood fill option now works in non-fuzzy mode too
  • BUGFIX - Polygonal selections now respect selection channel
  • BUGFIX - Effects menu items now remain enabled for indexed images' utility channels
  • BUGFIX - 'Focus View Window' toggle now doesn't cause snatching during layer drags
  • BUGFIX - Smudge now doesn't make pixels darker than it should


13th October 2006
Version 3.02 released

Version 3.02 has updated Spanish translation and several bugfixes.


16th July 2006
Version 3.01 released

Version 3.01 has updated German translation and two minor bugfixes.


25th June 2006
mtPaint is alive and well!

From now on, mtPaint project will be maintained by me, Dmitry Groshev.

Version 3.10 can be expected sometime this autumn. I hope. ;-)


21st June 2006
Version 3.00 released

Sadly I am suspending the mtPaint project with immediate effect. Due to real world issues that I have to face, I do not have the time or the energy to continue. It was a great project, and a lot of fun over the last 2 years, but nothing lasts forever.

I would like to thank all of the people who have helped me with mtPaint, or written to me with feedback, as I have really appreciated their support.

I hope people continue to find mtPaint useful, either as a tool, or maybe a fork.

Best wishes for the future,

Mark.


17th June 2006
Version 2.90 released

The latest beta version of mtPaint is now available, and can be DOWNLOADED HERE.

The documentation now exists in a separate HTML form. CLICK HERE for more information.

Version 2.90 is a beta version for the final version 3.00, which will be released in a few weeks time if no major bugs are found. If you do have a problem with the program or the new handbook, please contact me HERE.

There are a lot of changes and additions to the program but it remains small and fast. In fact, thanks to Dmitry's excellent work, many operations are significantly faster and more efficient than before.

Here is the latest fragment from the NEWS file:

  • Channels facilities added
  • Menus & toolbars reworked to be more task oriented
  • Toolbars can now be toggled on and off via the View menu
  • Drag 'n' drop from file managers supported for loading new layers
  • Clicking palette numbers opens up "Palette Editor" window
  • Paste preview now respects the palette protection mask
  • Transform Colour Window - Hue control added
  • Transform Colour Window - Selective palette option
  • Undo now less wasteful of memory when adjusting the palette
  • Major rewrite of back end code to improve performance
  • Colour A/B editor now uses GTK+ colour dialog
  • Ctrl+Arrows resizes selection area
  • Flood fill has fuzzy mode - right click icon for controls
  • Saving/Loading clipboards now includes mask data
  • Saving a composite layer image now de-coupled from saving the layer data file
  • Most documentation has been removed from the F1 help and is now in HTML form
  • HTML documentation available as a separate download package
  • mtPaint mailing lists set up - http://sourceforge.net/mail/?group_id=155874
  • configure script makes no assumptions about CPU - ./configure --help
  • BUGFIX - Saving a composite layer image does not occasionally leave transparent areas
  • BUGFIX - Transforming colour of palette with preview (RGB images) now works properly
  • BUGFIX - Status bar now updated after removing all layers


31st May 2006
Version 2.31 released

A German translation was contributed by Oliver Frommel, so I released a new version for the benefit of German mtPaint users.

Version 2.90 Coming Soon

The work on the new features for version 3 is almost finished, so a beta version (2.90) will be released sometime in June. If you want to get an email when this is released, sign up to the 'announce' mailing list as described HERE.


Get mtPaint at SourceForge.net. Fast, secure and Free Open Source software downloads

mtPaint

Mark Tyler's Painting Program

Download

The latest stable release of mtPaint can be downloaded HERE. Here is a more detailed description of these files:

Windows Version

mtpaint-?.??-w64-setup.exe

Installation program for 64-bit Windows systems (Windows 7 and later), including all of the translations and the handbook.

mtpaint-?.??-w32-setup.exe

Installation program for old 32-bit Windows systems (95/98/ME/XP), including all of the translations and the handbook. Should work on newer Windows versions too if you want a 32-bit program version there.

Linux Version

Due to the rich diversity of Linux systems, the best way to install mtPaint is to use a package that has been specially created for your system. The only packages here are TGZ packages for Slackware and Slackware64. They have the following filenames:

mtpaint-?.??-i386-1_slack14.2.tgz
mtpaint-?.??-x86_64-1_slack14.2.tgz

These packages require the following libraries to be installed: GTK+2.24, giflib, libpng, openjpeg2, libtiff, libjpeg, lcms2. They also install all of the translations, and the handbook. Packages for other systems exist at the following locations:

https://www.rpmfind.net/
https://aur.archlinux.org/

If a package is not available for your system, but you have a full GNU development environment, you can download the source code and compile the program:

mtpaint-?.??.tar.bz2 - Source file archive in tarball form.
mtpaint-?.??.zip - Source file archive in zip form (identical content to tar.bz2).
mtpaint_handbook-?.??.zip - The handbook.

The sources also allow you to compile mtPaint with your own options, such as targetting a specific type of CPU. Please consult the README file for full instructions on this procedure.



Get mtPaint at SourceForge.net. Fast, secure and Free Open Source software downloads

mtPaint

Mark Tyler's Painting Program

Contact

At present, development of mtPaint is happening on GitHub. To see its progress, download a development version, report bugs, propose new features or improvements to existing ones, you can go here:

https://github.com/wjaguar/mtPaint

If you want to keep up to date with information on new releases of mtPaint (however infrequently those happen) you are advised to subscribe to the announce mailing list:

https://lists.sourceforge.net/lists/listinfo/mtpaint-announce

If you are a user of mtPaint and you want to give feedback, you are welcome to post a message to the user mailing list:

https://lists.sourceforge.net/lists/listinfo/mtpaint-user

I am happy to receive constructive emails relating to bug reports, feature suggestions or contributions of translations to new languages. Please be aware that mtPaint is developed in my own spare time. Therefore I may have to refuse feature suggestions if they don't conform to my general vision for mtPaint or would require too much effort for too little gain.

If you are a developer and you have improved any part of mtPaint you are welcome to post a message to the developers mailing list:

https://lists.sourceforge.net/lists/listinfo/mtpaint-devel

I would also be happy to hear from you if you have used mtPaint (or any part of it) in your own work, either as an artistic tool or some other use (e.g. including mtPaint in an operating system, or using code fragments from the mtPaint sources).

If you would rather contact me directly you can send an email to wjaguar@users.sourceforge.net


Get mtPaint at SourceForge.net. Fast, secure and Free Open Source software downloads

mtPaint

Mark Tyler's Painting Program

rgbPaint

At the beginning of January 2007 Mark Tyler decided to fork version 3.09 of mtPaint to see how easy it would be to create a very basic painting program which could run on the One Laptop Per Child Sugar system.

After just 2 weeks of hacking he managed to finish the program, which functioned well in Sugar, and any other GTK+2 based GNU/Linux system. rgbPaint is much simpler than mtPaint, with no menus for example. Also it is only able to edit and save RGB images. It is a GTK+2 only program, and uses the pixbuf facilities for file handling so it does not depend on file libraries like mtPaint does, i.e. libpng, libjpeg, libtiff, and libungif/giflib.

The rgbPaint sources, and the OLPC activity can be DOWNLOADED HERE.

Here is a screenshot of rgbPaint running in the Sugar environment:

Here is the same binary running on Fedora Core 6:


Get mtPaint at SourceForge.net. Fast, secure and Free Open Source software downloads

mtPaint

Mark Tyler's Painting Program

libmtpixel

Mark Tyler's Pixel Library

libmtpixel is a fork of mtPaint 3.14.42 with all of the GTK+ dependent code removed and a new application program interface (API) added to allow C programs to use mtPaint functions via a C library. This includes file operations, image manipulation, and pixel painting. The sources can be DOWNLOADED HERE.

This package includes several examples such as drawing a graph, creating an animated GIF, a console based image manipulation program, and a CPU load monitor. Here are some images created by these demonstration programs:

Here is what a 'Hello World' program looks like:

#include <libmtpixel.h>

int main()
{

    char *txt = "Hello World", *font_filename = "/usr/X11R6/lib/fonts/truetype/arial.ttf";

    mtpaint_init();

    mtpaint_new_image(320, 240, 256, 0, 3);
    mtpaint_col_a(7);
    mtpaint_text(txt, strlen(txt), font_filename, "ASCII", 50, 0, 11, MT_TEXT_SHRINK);
    mtpaint_paste(0, 0);
    mtpaint_file_save("test.png", FT_PNG, 5);

    mtpaint_quit();

    return 0;
}

This program is compiled and run by using:

gcc hello.c -lmtpixel -o hello
./hello


Get mtPaint at SourceForge.net. Fast, secure and Free Open Source software downloads