MyPaint is a simple drawing and painting program that works well with Wacom-style graphics tablets.
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.
The smaller AppImage bundles have been confirmed to run on clean installs of the following systems:
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.
See Changelog.md 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.
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).
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.
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.
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.
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.
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 BUILDING.md
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).
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.
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):
When in 2.x mode (default, configurable):
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
* 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).
We've switched the standalone archives from ordinary zip to 7z, so you'll need some archiving program to decompress them (I would recommend https://www.7-zip.org/).
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.
This pre-release adds some really cool flood-fill enhancements from @jplloyd Please give the features a try!
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.
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
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
“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!
mypaint-w*-1.2.1-20170129a-*.*
replace mypaint-w*-1.2.1-1-*.*
(we'll use dates for the build identifiers from now on)