codebrainz / geanypy

Python bindings for the Geany plugin API.
http://codebrainz.github.com/geanypy
GNU General Public License v2.0
45 stars 17 forks source link

install geany python plugins for all users #50

Closed moocan closed 4 years ago

moocan commented 4 years ago

Hello,

How to install a geanypy python plugin for all users ?

geany --print-prefix
/usr
/usr/share
/usr/lib/x86_64-linux-gnu
/usr/share/locale

I tried to install git_branches.py in many locations but none works

/usr/share/geany/plugins/git_branches.py
/usr/share/geany/plugins/geanypy/plugins/git_branches.py
/usr/lib/x86_64-linux-gnu//geany/geanypy/geany/git_branches.py
/usr/share/geany/git_branches.py
/usr/share/geany-plugins/git_branches.py
/usr/share/geany-plugins/geanypy/git_branches.py

The git_branches.py is working in .config/geany/plugins/git_branches.py.

What is the path to install py plugins for all users in /usr/share ?

Kind Regards

codebrainz commented 4 years ago

According to the README:

Currently two locations are search for plugins. The first is PREFIX/lib/geany ...

So if Geany is installed into prefix /usr like yours, it should be /usr/lib/geany. It's possible some distros (like the one you are using apparently) that have different architecture-specific directories, that it maybe end up actually being /usr/lib/x86_64-linux-gnu/geany, depending whether you use a package, how it was packaged up.

moocan commented 4 years ago

Hello,

Thanks you for your answer. Yes, I have read the doc and then found geany --print-prefix command. I'm on Ubuntu and I don't have any /usr/lib/geany folder. I tried to use the /usr/lib/x86_64-linux-gnu/geany folder because I have seen that inside /usr/lib/x86_64-linux-gnu/geany/geanypy/geany/ folder there are some python scripts that are included with geanypy plugin and listed by geany Plugin Manager as the Console.py, HelloWorld ... But none works.

find /usr/ -type d -iname "geany" give these results

/usr/share/geany
/usr/share/doc/geany
/usr/include/geany
/usr/lib/x86_64-linux-gnu/geany
/usr/lib/x86_64-linux-gnu/geany/geanypy/geany

Kind Regards

codebrainz commented 4 years ago

If you look at Help->Debug Messages it might show some useful info like where it looks for plugins or problems loading/running the plugin. You could paste it here when you have your plugin in the directories I mentioned and restart Geany and try to open the Tools->Plugin Manager menu item, to see what kind of debug messages are printed.

elextr commented 4 years ago

Also, are you on Ubuntu 20.04 without Python 2?

moocan commented 4 years ago

Hello,

Thanks for your answers @elextr ... I have not yet migrated to Ubuntu 20.04 ... but as soon as possible because I need time to reinstall everything. Should I expect problems? I know that the absence of python2 on Ubuntu 20.04 seems to cause problems with some applications (I had trouble with hplip on my first attempt on Ubuntu 20.04).

@codebrainz ... I never seen the Help->Debug Messages. I never had troubles with geany too. I have made many test keeping the python script in all the previous folders that I have already listed and now with the python script inside /usr/lib/geany/git_branches.py as you said and tried too in /usr/lib/geany/plugins/git_branches.py Results are just after.

Geany seems to use /usr/share/geany 22:18:11: Geany INFO : System data dir: /usr/share/geany but now I have the python script inside many folders under /usr/share/geany but it is not loaded nor listed in the Plugin Manager.

I forgot to mention that I already added some additional materials in /usr/share/geany as templates, colorschemes, tags, ... which was not installed with the package and all are seen by geany.

Here is the list of folder in /usr/share/geany/

ls /usr/share/geany/
colorschemes  filetype_extensions.conf  geany.gtkrc      plugins        tags       ui_toolbar.xml
filedefs      geany.glade               git_branches.py  snippets.conf  templates

Results:

Results with /usr/lib/geany/git_branches.py

22:18:11: Geany INFO        : Geany 1.31, en_US.UTF-8
22:18:11: Geany INFO        : GTK 2.24.31, GLib 2.54.1
22:18:11: Geany INFO        : System data dir: /usr/share/geany
22:18:11: Geany INFO        : User config dir: /home/sysadmin/.config/geany
22:18:12: Geany INFO        : System plugin path: /usr/lib/x86_64-linux-gnu/geany
22:18:12: Geany INFO        : Added filetype Cython (61).
22:18:12: Geany INFO        : Added filetype Clojure (62).
22:18:12: Geany INFO        : Added filetype JSON (63).
22:18:12: Geany INFO        : Added filetype Genie (64).
22:18:12: Geany INFO        : Added filetype Arduino (65).
22:18:12: Geany INFO        : Added filetype Scala (66).
22:18:12: Geany INFO        : Added filetype CUDA (67).
22:18:12: Geany INFO        : Added filetype Graphviz (68).
22:18:12: Geany INFO        : Loaded libvte from libvte.so.9
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/addons.so (Addons)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/autoclose.so (Auto-close)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/automark.so (Auto-mark)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/commander.so (Commander)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanydoc.so (Doc)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanyextrasel.so (Extra Selection)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/filebrowser.so (File Browser)
22:18:12: GeanyPG MESSAGE   : Using libgpgme version: 1.8.0
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanypg.so (GeanyPG)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanypy.so (GeanyPy)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanyvc.so (GeanyVC)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/git-changebar.so (Git Change Bar)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/lineoperations.so (Line Operations)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanymacro.so (Macros)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanyminiscript.so (Mini Script)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/multiterm.so (MultiTerm)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanynumberedbookmarks.so (Numbered Bookmarks)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/overview.so (Overview)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/projectorganizer.so (Project Organizer)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/spellcheck.so (Spell Check)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/splitwindow.so (Split Window)
22:18:12: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/treebrowser.so (TreeBrowser)
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/addons.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/autoclose.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/automark.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/commander.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanydoc.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanyextrasel.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/filebrowser.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanypg.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanypy.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanyvc.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/git-changebar.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/lineoperations.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanymacro.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanyminiscript.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/multiterm.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanynumberedbookmarks.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/overview.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/projectorganizer.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/spellcheck.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/splitwindow.so" already loaded.
22:18:12: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/treebrowser.so" already loaded.
22:18:12: Geany INFO        : /media/sysadmin/DATA/dev/config/_master/.lib/defaults : Sh (UTF-8)
22:18:12: Geany INFO        : /media/sysadmin/DATA/dev/config/_master/.lib/functions : Sh (UTF-8)

/usr/lib/geany/plugins/git_branches.py

22:22:40: Geany INFO        : Geany 1.31, en_US.UTF-8
22:22:40: Geany INFO        : GTK 2.24.31, GLib 2.54.1
22:22:40: Geany INFO        : System data dir: /usr/share/geany
22:22:40: Geany INFO        : User config dir: /home/sysadmin/.config/geany
22:22:41: Geany INFO        : System plugin path: /usr/lib/x86_64-linux-gnu/geany
22:22:41: Geany INFO        : Added filetype Cython (61).
22:22:41: Geany INFO        : Added filetype Clojure (62).
22:22:41: Geany INFO        : Added filetype JSON (63).
22:22:41: Geany INFO        : Added filetype Genie (64).
22:22:41: Geany INFO        : Added filetype Arduino (65).
22:22:41: Geany INFO        : Added filetype Scala (66).
22:22:41: Geany INFO        : Added filetype CUDA (67).
22:22:41: Geany INFO        : Added filetype Graphviz (68).
22:22:41: Geany INFO        : Loaded libvte from libvte.so.9
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/addons.so (Addons)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/autoclose.so (Auto-close)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/automark.so (Auto-mark)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/commander.so (Commander)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanydoc.so (Doc)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanyextrasel.so (Extra Selection)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/filebrowser.so (File Browser)
22:22:41: GeanyPG MESSAGE   : Using libgpgme version: 1.8.0
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanypg.so (GeanyPG)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanypy.so (GeanyPy)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanyvc.so (GeanyVC)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/git-changebar.so (Git Change Bar)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/lineoperations.so (Line Operations)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanymacro.so (Macros)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanyminiscript.so (Mini Script)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/multiterm.so (MultiTerm)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/geanynumberedbookmarks.so (Numbered Bookmarks)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/overview.so (Overview)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/projectorganizer.so (Project Organizer)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/spellcheck.so (Spell Check)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/splitwindow.so (Split Window)
22:22:41: Geany INFO        : Loaded:   /usr/lib/x86_64-linux-gnu/geany/treebrowser.so (TreeBrowser)
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/addons.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/autoclose.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/automark.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/commander.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanydoc.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanyextrasel.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/filebrowser.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanypg.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanypy.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanyvc.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/git-changebar.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/lineoperations.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanymacro.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanyminiscript.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/multiterm.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/geanynumberedbookmarks.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/overview.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/projectorganizer.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/spellcheck.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/splitwindow.so" already loaded.
22:22:41: Geany INFO        : Plugin "/usr/lib/x86_64-linux-gnu/geany/treebrowser.so" already loaded.
22:22:41: Geany INFO        : /media/sysadmin/DATA/dev/config/_master/.lib/defaults : Sh (UTF-8)
22:22:41: Geany INFO        : /media/sysadmin/DATA/dev/config/_master/.lib/functions : Sh (UTF-8)
codebrainz commented 4 years ago

It tells you were it's looking (same place I mentioned):

22:18:12: Geany INFO : System plugin path: /usr/lib/x86_64-linux-gnu/geany

If for some reason you don't want to use the default location, Geany allows to set an "Extra plugin path" in Edit->Preferences->General->Startup.

moocan commented 4 years ago

Hello,

I copied the python script everywhere ... except directly inside /usr/lib/x86_64-linux-gnu/geany. Now it is working.

So many thanks. Now I know where to search.

Kind Regards