question on building option

Asked by xzy3186

Hi Peter,

Thank you very much for your excellent app which makes my desktop much more colorful than usual. I have one question on the building option of this app.

I install Variety on my archlinux laptop with gnome-shell enviroment by using command "python2 setup.py install". Everything is fine but I want to know if it is possible to change the dependencies of this app. For example, I obtained the dependencies list from the deb package file which need libappindicator3 be installed. However this package is not an official package of archlinux. If there is a way to get rid of libappindicator3 (just an example) as dependency while compiling? I don't know if my English is good enough to explain my question, thank you in advance.

Best regards,
Zhengyu

Question information

Language:
English Edit question
Status:
Solved
For:
Variety Edit question
Assignee:
No assignee Edit question
Solved by:
xzy3186
Solved:
Last query:
Last reply:
Revision history for this message
Peter Levi (peterlevi) said :
#1

To be fair, I am no expert in building and packaging, I just rely on Quickly to package the application.

However, specifically libappindicator3 is there to provide the indicator menu functionality of Variety, which is central - this is the only way to control Variety which does not show any GUI windows most of the time. So it is not only a build-time dependency, it is also a critical runtime dependency.

How did you manage to run it on your machine and use it if you don't have this library?
What exactly is the problem with libappindicator3 on Arch (please note I have no experience with Arch)? What happens with other applications that rely on indicators, e.g. Tomboy? What is the way in Arch (using official packages) to have an icon+menu in the status area?

Revision history for this message
Peter Levi (peterlevi) said :
#2

Okay, I got somewhat more educated on the problem - indicators seem to be too Ubuntu-specific. So I'll probably make a fallback variant in the code to use Gtk StatusIcon or whatever is appropriate for Gnome 3 when indicators are not available and package maintainers will be able to remove the libappindicator dependency.

What does exactly "out of date" mean for libappindicator3 in Arch - does it mean it is immediately not available and people cannot install Variety on Arch using the AUR package or there is some time to fix things?

Revision history for this message
xzy3186 (xzy3186) said :
#3

Thank you very much for your reply. Excuse me but I do not know exactly how system tray icon work under archlinux neither as I have very few experience on programing:( I know some apps that offers similar status-icon in gnome-shell under archlinux such as nuvola-player, synapse, and pidgin. They do not depend on libappindicator3, which I think is quite a Unity stuff.

Out-of-date under archlinux means the package may not work properly for the present environment, or may not be compilable, or there is a new version for the package. If one package is not installed from official repo (like ppa for ubuntu), it is less reliable. That's why I think it would be better if all the dependencies of Variety come from official repository.

 I will try your new fallback variety and give you feedback. Thanks again for your great job on variety.

PS: please forgive me that I post an installation script of variety for archlinux to AUR without informing you.

Revision history for this message
Peter Levi (peterlevi) said :
#4

It's okay, I am actually grateful to everybody who provides a package for a distribution I haven't tested on.

Revision history for this message
Peter Levi (peterlevi) said :
#5

Variety now fallbacks to Gtk StatusIcon if appindicator import fails. However, I am yet to find a way how to remove the appindicator dependency from the Quickly-generated debian control file (or actually move it to Suggests section instead of Depends).
Packagers for distributions that don't have appindicator support can safely remove this dependency and Variety will use a standard GTK status icon instead.

Zhengyu, can you please test if Variety will run on an Arch system that does not have appindicator and then update the Arch package to not depend on the appindicator library. Thank you.

Revision history for this message
Peter Levi (peterlevi) said :
#6

The fix is in the latest committed version, not the latest release (which is still 0.4.11) - it will be released later on with Variety 0.4.12.

Revision history for this message
xzy3186 (xzy3186) said :
#7

Hi Peter,

I tried your latest commited version and everything work out of box. Right now libappindicator3 can be safely removed from my system. Thank you very much for your work. I am looking forward your next official release of Variety and then I will update installation scripts for ARCHLINUX :)

Revision history for this message
Peter Levi (peterlevi) said :
#8

To be fair, next official release might not be too soon... :-) Not enough time to work on Variety and I have scheduled some more complex features than usual. If you need a deb file or anything else for the current committed version, please tell me and I will mail it to you.

Revision history for this message
xzy3186 (xzy3186) said :
#9

Thanks so much, Peter. It does not matter because I can very easily change the archlinux packaging script to make it work with committed version (that is why I like archlinux very much). OK, although I can wait for the official release of 0.4.12, I will update AUR script later for the installation of the freshest Variety :-)