Small usefull app for painting, mtPaint

Hallo,

can someone make port this to Haiku? Its small app for painting, support pixel painting and layers.

Suported are GTK 1 2 3

https://mtpaint.sourceforge.net/

mtPaint builds pretty straight forward on x86_64 builds. There are two files that need slight edits (font.c and fpick.c). Here’s a screenshot of the edit of those files (look at the “if Win32”) to see quick edit.

4 Likes

Nice for a quick hack, anyway. Let me see if I can do something less hacky.

wov this is great, lot of thanks

I got it to build now, but if I can get the configure script updated, I may even be able to submit a pull request upstream!

Is there a lot missing in artpaint compared to it?

I doubt it but it gives me somthing to work on for now. :slight_smile:

OK. I’ve got the configure script recognizing Haiku and almost have it ready to send upstream. Instead of commenting out the directory check completely, I replaced the #ifdef WIN32s in those two places with #if defined(WIN32) || defined(_HAIKU_) and made sure the configure script generated the _HAIKU_ macro in the build configuration when Haiku was detected. That way the directory check isn’t completely gone, just not Linux-specific.

One thing that I haven’t got working is that the XPM icons don’t load. Is my path set wrong? I’ve been loading them into /home/config/non-packaged/data/mtpaint/graphics/ and I tried without the graphics directory. LibXPM_devel is loaded from HaikuPorts as are most of the others requested by the build instructions. (Only JPEG 2000 is still inaccessible.)

What am I missing? I’m also on Haiku x86_64 Beta4 with all the updates. The source is in the https://github.com/SamuraiCrow/mtPaint repo fork in master.

You’re welcome to fix issues in ArtPaint! :wink:

I just did a build using your source files. I had no issues with the build. What I did find interesting though in your source files, the icons1 folder has the images all dated Aug 17 10:39pm.

The build I did yesterday, the same folder has different dates.

4 Likes

Checked out the source and aside from the 2 files there shouldn’t be any changes needed to build and install this.
Steps:

  • patch the 2 files mentioned earlier
  • ./configure --prefix=/boot/home/config/non-packaged gtk3
  • make
  • make install

You can launch mtpaint from anywhere in the Terminal, no need to switch to the containing directory.

PS @SamuraiCrow in the patch it should be 2 underscores before and after HAIKU (__ HAIKU __) (without the spaces).
Aside from that I don’t see a real need for the other changes you made in your fork?

Things like “-I/packages/libjpeg_turbo-2.1.4-2/.self/develop/headers” will break on 32bit because you need to support secondary architecture for some of those libraries. :slight_smile:

1 Like

Thanks for the macro name. That’ll save 3 lines in the configure script. I’m trying to make this work without command-line intervention so configure will just find what it needs.

That’s just how configure works? You just pass the options provided in the script (runConfigure already automates that with haikuporter), so there shouldn’t be a need to hardcode paths?

thats mean that the windows port use Gtk library and not native win32 too? it looks that yes and is gtk1, better than gimp :smiley:

The Windows version uses GTK+2.

Out of curiosity what does that “gk3” at the end do? i’ve never seen that before? or is it specific to mtPaint

gtk3 refers to the version of Gimp ToolKit used for the user interface. Otherwise the configure mini-script will assume incorrectly that it is an unsupported version 1.x.

Just as @SamuraiCrow mentioned, if you run ./configure --help (or open configure with any editor), it will show you the available option to use. :slight_smile:

1 Like

hello, little OT, I see the “Balsa” application, it is not in the repositories, right?

1 Like

Balsa is not in the repositories. I made a quick hpkg of Balsa and the required gmime libary on Beta4 using hpkg creator. Unfortunately, for some reason it will not allow me to list the dependencies. Previously on Beta3 and nightly builds I could add dependencies.

2 Likes