Skip to content

Releases: mypaint/mypaint

MyPaint v2.0.1 (2020-05-29)

29 May 19:30
Choose a tag to compare

This is a bugfix release for v2.0.0.


For those who primarily use the 2.x mode (the default mode), this is an important upgrade. A color conversion function in the v2.0.0 release has an error that can (and usually will) cause image degradation over multiple save/load cycles. Big thanks to gwojcik for noticing and fixing this. The 1.x mode has not been affected by this.

v2.0.1 requires libmypaint v1.6.0 or higher to run. This is not something Windows users or Appimage users have to worry about.


  • HSV/HCY brush dynamics in 2.x mode fixed.
  • Undo/Redo stack size made configurable and more efficient.
  • Undo/Redo stack default size increased to 40.
  • Rounding error when saving files in 2.x mode fixed.
  • Invalid l11n strings fixed.
  • Translated strings added/updated for several languages.
  • Dependency on intltool removed (still required for libmypaint).
  • Variables in l11n strings validated on build (xml tags are not validated yet, however).
  • libmypaint translations are now bound, making them work properly in the appimages.
  • OARS rating added to appdata (relevant for app-distribution software, but not much else).
  • A number of Py3 compatibility issues were fixed.
  • Svg icons fixed - some were previously considered invalid by librsvg >= 2.48.
  • Svg icon sizes reduced across the board.
  • Windows build now uses openmp, which should improve performance on most systems.
  • Size of Windows install bundle significantly reduced. (installed size by ~50%, bundle size by ~70% for installers)
  • Size of AppImage files reduced by ~9MB
  • AppImages now handle external editing better (no longer overrides the host environment for the launched programs)
  • Typos in documentation fixed (not user-facing typos).

AppImage compatibility

The smaller AppImage bundles have been confirmed to run on clean installs of the following systems:

  • Ubuntu 14.04, 16.04, 18.04
  • Fedora 30
  • Manjaro 20
  • CentOS 7
  • OpenSUSE Leap 15.1
  • Debian sid (for the day of the release)
  • Slacko Puppy Linux 6.3.2

If they do not run, or are otherwise buggy on your <6 year old distro, open an issue in the tracker.

Additionally, you can try the MyPaint-v2.0.1-alt.AppImage if the smaller ones do not run on your system.

Release candidate for v2.0.1 - bugfix release

16 May 17:10
Choose a tag to compare

See in the source archive for details.

For packagers: Note that v2.0.1 will require libmypaint >= v1.6.0 to build/run.
Windows users and appimage users don't need to worry about that.

MyPaint v2.0.0 (2020-02-15)

15 Feb 19:46
Choose a tag to compare

Edit: 2020-02-20

Uploaded corrected AppImage files, which are actually built against the bundled dependencies and with openmp support enabled (the old versions were built on vanilla Ubuntu 16.04, but packaged on a CentOS 7 docker image).

After a bit of a lull in development, MyPaint 2.0 has arrived at last! Many have already tried out the new features in the new automated continuous appimage releases, but for those who prefer to use stable releases, this is the time to pester your distro's package maintainers (or better yet, package and take a maintainer role yourself).

Why is this 2.0 and not 1.3?

MyPaint 2.0 adds a new layer mode and uses a different compositing method than before (by default, this is configurable), which means that you can create files in 2.0 that will not look the same when opened in earlier versions. Additionally, changes to the brush parameters means that you can create stroke data in 2.0 that cannot be safely used in earlier versions.

Major New Features

  • Linear compositing and spectral blending (pigment).
  • Layer views.
  • Brush strokes dependent on view rotation and view zoom.
  • Additional symmetry modes: vertical, vertical+horizontal, rotational, snowflake.
  • Expanded flood fill functionality: offset, feather, gap detection and more.
  • New brush settings: offsets, gridmap, additional smudge settings, posterize, pigment.
  • New brush inputs: barrel rotation, base radius, zoom level, gridmap x/y, direction 360, attack angle.

See the change log for more.


For Linux users, the appimage files should work fine on both fairly old (~6 years) and new distros alike.
For Windows users, it is strongly recommended to uninstall any old versions of MyPaint you have installed on your system before installing the new one.


This is a condensed list of changes since 1.2.1.

  • Full Python3 support (Python2 still supported)
  • Tons of style consistency updates (flake8).
  • Switch to PyGI
  • New ability to simplify nodes in Inking tool.
  • New ability to delete autosaves from recovery dialog.
  • Improved user messages.
  • Scratchpad no longer scrolls on size changes
  • Integrated bug reporting w. issue template
  • Use external libmypaint (>= 1.5).
  • Most (possibly all) IO uses context managers.
  • Layer manipulability dependent on visibility.
  • Brush description shown in tooltip in quick choice dialog.
  • AppImage builds added.
  • Move build to setuptools/distutils.
  • New keyboard shortcuts/defaults.
  • New symmetry modes (vertical, vert+horz, rotational, snowflake).
  • Flatpak support added (currently not functional?).
  • Maximum input mapping curve points increased to 64.
  • Curve editor points snaps on 0.5 increments.
  • Input curve reset button clears the graph.
  • New Import Layers feature.
  • Zoom and view-rotation-dependent painting.
  • New debug command: Vacuum Empty Tiles.
  • Progress feedback for loading/saving.
  • New Layer Properties dialog.
  • New separate H/C/Y pickers.
  • Per-document settings.
  • New Layer Views.
  • Layer rendering code reworked.
  • New Remove Layer Backdrop command.
  • New Refactor Layer Group commands.
  • Linear compositing.
  • Spectral mixing (pigment mode).
  • Ability to emulate inputs with modifier keys.
  • Support for barrel rotation input.
  • Floodfill performance improved.
  • Offset, feathering and gap detection added to Floodfill.
  • Source, blend mode and opacity added to Floodfill.
  • Erase / Lock Alpha / Colorize modes respected by Floodfill.
  • Floodfill is now cancellable.
  • Configurable layer blinking on layer switching.
  • Fix crash when moving empty layer group.
  • Interface language configurable in user preferences.
  • Add version info to .ora files and compatibility checks.
  • Bundled backgrounds optimized for size.
  • Lots of bugs, crashers and other annoyances fixed.

Known issues

There are still plenty of input issues on Windows, ranging from offset bugs when using multiple monitors, to pressure not working with certain devices and generally worse support for some of the more advanced features, like external editing. Some of these issues will hopefully be resolved by fixing instances where deprecated interfaces are used, but if they are not, the situation is unlikely to change unless a Windows-using developer joins the team to investigate the underlying issues.

Moving forward

The next minor release will focus on fixing the use of deprecated interfaces, as well as general improvements to the user interface, hopefully alongside general performance improvements (particularly for the spectral blending) and some new features as well.

Dependencies & Packaging

This release requires libmypaint >= 1.5.0 and mypaint-brushes-2.0.2 (technically v2.0.0 and v2.0.1 will work as well, but do use v2.0.2)

Note that this is different from the master branch, which requires the libmypaint-2.0 dev library.

See for the other dependencies.

MyPaint now uses setuptools for its build, but cannot be built/distributed as a pip package (at least not easily). This may change in the future, but would/will require a fair amount of restructuring.

The astute observer will notice that the source package for v1.2.1 was over 36MB, whereas the one for v2.0.0 is just under 7MB. This is not a packaging mistake, but merely (mostly) a consequence of a culling and optimization effort of the bundled backgrounds (png files).

Beta at last

20 Dec 14:48
Choose a tag to compare
Beta at last Pre-release

The road to the release

At long last, we're moving into beta, meaning that no more features will be added before the 2.0.0 release, and no translatable source strings will be added or changed (unless absolutely necessary, if a source string turns out to be completely wrong).

This is now the best time to contribute to the translation effort over at Weblate. Translation is not easy, and should not be rushed. It doesn't matter if the translation covers 100% of the strings if 90% of the translations are incomprehensible or confusing. It's better to spend more time to try to make the translations consistent, and as clear as possible (while being reasonably terse, I did say it wasn't easy, right?). We aim for a full release at the end of January, so there are at least five weeks available to work on translations.

If the meaning of a source string is ambiguous, or generally lacking context/clarity, make a comment for that string in the Weblate interface. Make sure that the scope is set to "Source string comment, ..." so we can see it. Even though we won't add or change source strings, we can add source string comments to provide more information to translators.

We don't expect the (many) new languages that have been added to be fully or even partially translated in time for the release (aimed for the end of January 2020), but hope that most of the older major translation will be updated and improved (most of them are at least 75% done, string-wise). The languages that have been continuously updated during the past 5 months have less than 30 new strings that need to be translated.

Apart from the translations, the goal is now to find and fix any bugs we can fix (generally this does not cover input bugs on Windows, unfortunately). If you find a bug *, search for it on the tracker. If you find it on the tracker, make a comment to indicate that it's still a problem, and if you do not find it, report it in a new issue.

* That is, an actual bug - something that does not work, causes an exception or crashes the program - and not missing features you would like to have (for that, you can request/discuss/vote for features on the forums). Do report input bugs, even though we may not be able to fix them for this release.

Changes since alpha 13

Compatibility modes

Anyone who has used the prereleases knows that the 2.0 release brings with it the awesome spectral subtractive color mixing features - allowing colors to mix more like real paint would. They may also have noticed that their old files don't look quite the same when opened with those prereleases, and that painting can be a bit laggy when working with high resolutions.

In order to support working with old files, and for those who don't really need the new color blending (though you should try it out!), MyPaint now supports two compatibility modes:


When in 1.x mode (indicated in the window title):

  • The rendering mode is the same as in 1.2.1 and earlier (sRGB).
  • The default layer is "Normal" (configurable).
  • The default Pigment brush setting is off (configurable).
  • Spectral blending (pigment mode) will not work quite as it should.


When in 2.x mode (default, configurable):

  • The rendering is adapted for the spectral blending (Linear sRGB + non-linear blending).
  • The default layer is "Pigment" (configurable).
  • The default Pigment brush setting is on (configurable).
  • Painting will be slower *

Each document keeps track of which mode it was using when it is saved, but it's also possible to override that mode when opening files. For old documents, which do not have the mode information stored, the mode used can be configured to either be one of "1.x" and "2.x" or opening in "1.x" unless there are Pigment layers present (from files saved in 2.0.0 alphas).

* This will almost certainly be addressed in the future. @briend has already made an experimental branch with drastically improved performance and quality of results. To some extent the spectral blending will always be a bit slower, but it can be made a lot faster than it is today

Other changes

  • The new brush settings are now properly categorized. You will no longer see the "Experimental" group, and can find the new settings under the "Color" and "Smudge" categories.
  • Painting with the new symmetry modes is a lot faster. The entire area is no longer processed, avoiding the quadratic slowdown. Symmetry mode can still be slow when using the line/curve/ellipse modes, but that might be addressed in time for 2.0. Nevertheless, bear in mind that it will always be slower to paint with more symmetry lines - using e.g. 12 lines with the snowflake symmetry mode is the equivalent of painting a stroke that's 24x as long as the distance of your actual stroke.
  • Version information and compatibility warnings have been added, warning when attempting to open a file created with a newer version of MyPaint. There are two separate warnings shown for different levels of incompatibility, they can be disabled separately (and of course, you won't be able to see them at all until future releases).
  • Python 3 is now used for the Windows build *.
  • Preparations for adjustable symmetry angles - unfortunately this won't be part of the 2.0 release, but will be ready for 2.1.

* In just 11 short days, Python 2.7 will be EOL. In general we'll keep supporting Python 2.7 for MyPaint 2.0 and probably 2.1, but support will be dropped for the 2.2 release (so the code can be cleaned up).

Translations, language selections, and fixes

09 Nov 14:21
Choose a tag to compare

Changes Since the Last Alpha

  • Translations - tons of translated strings have been merged - check out if you want to help out by contributing to your own language's missing or outdated translations.
  • Language selection - you can now select the language you want to use from the preferences window under the "View" tab. The alpha releases ship with all translations, so beware that a lot of them are incomplete.
  • Floodfill - some bug fixes, ability to use arbitrary blend modes, adjustable opacity, colorize mode
  • Layer blink option - showing layers in isolation for a brief time period, when changing or selecting them, is now optional.
  • AppImage improvements - the appimages will now work out of the box on Ubuntu 14.04 and later. If they don't work on your distro (preferably not-too-obscure or older than 2015), create an issue in the tracker (after a quick search in it for your problem). The issues with themes and icons should also be resolved, and gtk localizations are now fully supported.
    The latest appimage builds (based on the latest error-free commit) can always be found here.
  • 32bit builds for Windows are back (though the demand is probably not that high).
  • Some crash fixes in both MyPaint and libmypaint
  • Fixes for some cosmetic bugs (frame window outline, some text formatting glitches)
  • Wayland GUI freeze workaround added (MyPaint will just try to use XWayland for now).
  • Fixes for a bunch of Gtk deprecations (should not make any difference for users).
  • ...and a fair amount of administrative and build-related stuff that should improve the dev experience.

Attention Windows Users!

We've switched the standalone archives from ordinary zip to 7z, so you'll need some archiving program to decompress them (I would recommend

If you really want to use the installers instead, you can download them here:

These links are only valid for six months, but the full release should be out by then anyway.

Also, if you are a developer who likes MyPaint and also happens to like and work on Windows, your help with some of our windows-only bugs (and there are quite a few) would be most welcome! There are also Windows-only issues related to the external-edit functionality that could be improved with input from an expert on how Windows handles default applications, application candidates and similar. These problems will unfortunately not fix themselves.


22 Jun 18:53
Choose a tag to compare
v2.0.0-alpha.12 Pre-release

This pre-release adds some really cool flood-fill enhancements from @jplloyd
Please give the features a try!


31 Mar 03:42
Choose a tag to compare
v2.0.0-alpha.11 Pre-release

This pre-release brings back floating windows on Windows OS; it seems the related GTK issues have been resolved.

On libmypaint, the smudge sampling now respects the pigment mode setting as well. Instead of additively averaging pixels within the smudge radius you can average subtractively, or blend the two methods. To improve performance only a small random selection of pixels will be sampled within the smudge radius, which doesn't seem to negatively affect the results.


22 Mar 03:56
Choose a tag to compare
v2.0.0-alpha.10 Pre-release

Last release had a nasty bug loading PNG files.

If you have old mypaint files that you'd like to render with the old legacy blending,
open your settings.json file and set display.colorspace_EOTF to 1.0

v2.0.0-alpha.8 fake inputs, barrel rotation/pressure

10 Feb 04:32
Choose a tag to compare

Added "fake inputs" for pressure and barrel rotation. Now you can make on-the-fly expressive adjustments to your brush even while using a mouse! Change pressure with alt+shift+(a,s) and change the "twist" with alt+shift+(d,f).

To try the barrel rotation, please try out this special brush pack to see how it works. If you have a fancy stylus like a Wacom Art Pen that supports real barrel rotation only Linux seems to have this support from the GTK libraries at the moment. Look for new preferences (in settings.json) that affect barrel rotation offsets and to disable it if necessary.

Merging layers is improved, but some work to do still for groups. If your merge a pigment layer down the result will remain as a pigment layer instead of switching to Normal additive, and vice versa.

Spectral Paint/Pigment layer and brush mode
Linear blending for non-pigment layers and brush modes
Smudge enhancements
Layer "views"
Fullscreen improvements
Python3 compatibility
Art Pen/ Barrel rotation input
Fake inputs for pressure and Barrel Rotation- use your keyboard!
A bunch of other stuff!

Please note, old files will composite layers in a linear "more physically correct" way. This might look different, better, or perhaps worse. We could add legacy modes but it is probably better to move on if possible, or render old files with an older version of MyPaint if necessary (or even Gimp/Krita).

The pigment mode is default for all brushes and new layers. If for some reason you don't like it, or it is too slow, you can slide the "Pigment" slider to off (from the tool options panel), and change the layer mode to Normal. This will go back to a linear RGB blend mode (but not non-linear like the old MyPaint).

Highly recommend my brush pack ("Dieterle", included in AppImage and Windows) to see many new features in action.

special thanks to @aferrero2707 for the appimage build setup

MyPaint v1.2.1 (2017-01-21)

30 Jan 00:40
Choose a tag to compare

“A lucky past full of shallow cunning”

This is a maintenance release that fixes several reported bugs in stable MyPaint. The Windows builds below contain new GTK3 libraries for Windows that fix a number of issues with tablet support on that platform. Several Linux-specific bugs in MyPaint that affect newer GTK libs released with various Linux distribution updates have also been fixed.


Windows users can run the installers below. Please uninstall all old versions of MyPaint before you do this, especially if you're about to install over an existing location. You shouldn't lose your settings or scraps if your old install is normal. Use “Add or Remove Programs” to do the removal(s), and make backups of your important files if you're worried.
Alternatively, please try the standalone zipfile bundles. These need to be unpacked somewhere before they can be used, for example onto a portable USB drive, and the integration with Windows is more limited.

Users of Ubuntu or its derivatives can add the MyPaint-Testing PPA as a software repository, and they'll then receive automatic updates.

For other operating systems, please contact your friendly maintainers and ask them to make fresh builds from these sources. Thanks!

Release notes and ongoing bugs

  • 2017-01-29 Build updated to fix bug #771. Files mypaint-w*-1.2.1-20170129a-*.* replace mypaint-w*-1.2.1-1-*.* (we'll use dates for the build identifiers from now on)
  • 2017-01-29 Windows techies only: slot-in debugging libs are now available, for use with GDB and (ideally) standalone builds.
  • 2017-01-29 KNOWN BUG FIXED: Windows "w32" builds would not run on 32-bit architecture. Fixed with a fresh build (bug #771).
  • (Windows only) this build contains GTK 3.22.7, a large increment which fixes a lot of graphics tablet bugs and crashes.
  • (Windows only) we have changed the installer again (sorry!). Please use “Add and Remove Programs” to remove previously installed versions of MyPaint before installing 1.2.1. Your settings and brushes will be retained.
  • (Windows only) MyPaint no longer supports floating panel windows (too many bugs upstream, sorry). They must be docked into a sidebar at all times.
  • Removing the Favourites group makes the brush menu unusable (#706, #641)

Changes since 1.2.0-beta.1

  • Make sure layer clones get selected immediately.
  • Fix hypersensitive tab drags.
  • Fix accelerator mapping sort order.
  • Fix exceptions when loading a corrupt thumbnail during thumb updates.
  • Fix GTK removing the main canvas widget.
  • BrushManager: use UUIDs for device brush names, backwards-compatibly.
  • Fix repeated pixbuflist redraws.
  • Wayland: remove references to cursors that don't exist.
  • Windows: drop support for floating windows till upstream support's OK.
  • Windows: new installer mechanism, see the note above.
  • Windows build: now includes a debug launcher, and GTK3-Demo for testing that your tablet will work.
  • Windows build: MyPaint is now usefully pinnable to the taskbar.