Try to import gi before gimpfu. However gimpfu itself requires GTK2.
* digs in the Gimp source code *
In fact you don't need gimpfu. gimpfu is just a convenience layer to build the GUI for you and manage a few things (such as saving parameters between uses, etc). You don't absolutely need it to build your Python plugin and there are lower-level imports that won't drag GTK2 in and let you use GTK3(*). I'll let you pore over the doc from the source code.
I may be able to answer a few questions, even though you are quickly leaving my comfort zone
(*) But you have to be aware that using GTK3 makes your plugin Linux-only, on other platforms you will only find a GTK2 port available with Gimp.
* digs in the Gimp source code *
In fact you don't need gimpfu. gimpfu is just a convenience layer to build the GUI for you and manage a few things (such as saving parameters between uses, etc). You don't absolutely need it to build your Python plugin and there are lower-level imports that won't drag GTK2 in and let you use GTK3(*). I'll let you pore over the doc from the source code.
I may be able to answer a few questions, even though you are quickly leaving my comfort zone
(*) But you have to be aware that using GTK3 makes your plugin Linux-only, on other platforms you will only find a GTK2 port available with Gimp.