decent-im / gentoo-overlay

2 stars 0 forks source link

Gajim Build #1

Open lovetox opened 7 years ago

lovetox commented 7 years ago

Hi,

some feedback on your Gajim build

Gajim for Linux does not need and use following packages:

dev-python/cx_Freeze[${PYTHON_USEDEP}]
dev-python/certifi[${PYTHON_USEDEP}]
dev-python/keyring[${PYTHON_USEDEP}]
kde? ( kde-apps/kwalletmanager )
gnome-keyring? ( dev-python/gnome-keyring-python[${PYTHON_USEDEP}] )

also you might be careful with this dependency as it is a dropin for pycrypto, both together installed will not work

dev-python/pycryptodome[${PYTHON_USEDEP}]

maybe you should use pycrypto instead of this.

also please make sure you put the plugin_installer from https://dev.gajim.org/gajim/gajim-plugins (branch gtk3) into the plugins folder, or else people will not be able to install plugins

andrey-utkin commented 7 years ago

Thanks a lot @lovetox . I have updated dependencies as you advised. I will address plugin installation point later. Probably it will be a separate package, gajim-plugins. As plugin installer is essential part of that repo, it will be installed unconditionally. By the way, does it make sense to provide possibility to install other plugins system-wide? Does that work at all?

lovetox commented 7 years ago

plugins are part of the userdata, so i dont see a easy possibility to make them systemwide.

i would advise against a package gajim-plugins. If you mean that you package all plugins into that.

  1. not all plugins are in a working state
  2. many plugins need dependencys that you would have to gather and install
  3. the user probably needs in most cases 2 or 3 plugins not 20.

It makes sense to make a package for the most used plugins that have many dependencys. like OMEMO or httpupload.

andrey-utkin commented 7 years ago

plugins are part of the userdata, so i dont see a easy possibility to make them systemwide.

You mean, Gajim doesn't look for plugins data in "system-global" paths?

many plugins need dependencys that you would have to gather and install

This is something Gentoo package manager can cope with. Packages can have conditional dependencies (USE flag activated -> dependency activated).

the user probably needs in most cases 2 or 3 plugins not 20.

Also not a problem, user can select what they want with USE flags.

Still, thanks a lot for insight into how Gajim works. Some criticism about Gajim code structure below, hope it is legible and not offensive.

My plugin installer packaging suggestion probably looked silly to you, but I was trying to make as much as possible from traditional packaging approach without diving into quirks. If it (gajim-plugin-installer package) doesn't make sense, then it seems like Gajim is developed without serious consideration of the way things are distributed/packaged and even of the way users install stuff from source. If plugin installer is important part of usable Gajim setup, then why is it not in Gajim repository and why is it not installed at once with Gajim in single step?