marxjohnson / btsyncindicator

Bittorrent Sync indicator for linux desktops
GNU Lesser General Public License v3.0
41 stars 5 forks source link

Debian Packaging detection too slow #51

Open tuxpoldo opened 10 years ago

tuxpoldo commented 10 years ago

Reported by anton@ryzhov.me

Hello Leo, Mark!

I'm using bt-sync in ubuntu you're build as PPA. Thank you for your work. But I've mentioned that daemon started too slow on my laptop (HDD, encrypted partition - slow IO). I've checked up the source and found that you were using dpkg -S to find what package contains file and later checks if it was btsync-user. dpkg -S btsyncindicator.py works too slow, it has to process lots of data to make answer. You only want to know if btsync-user is installed. I advice you to check dpkg -s btsync-user (lowercased "s") - it returns 0 exit code if package is installed, nonzero otherwise. Ant works 100 times faster on my system.

marxjohnson commented 10 years ago

The current check_btsync_user method doesn't just check whether btsync-user is installed, but also that the script itself came from the btsync-user package. The proposed solution would mean that if you've got btsync-user installed, you couldn't, for example run a standalone version of btsync and a seperate instance of the script for testing, since the script would always see and use the btsync-user scripts.

Do you think that losing this use case is going to be a problem, or is it worth the trade-off for the better performance?

tuxpoldo commented 10 years ago

I would suggest: make the change, but leave the old code commented. If nobody complains, after one year it shows that the use case is not really relevant.

marxjohnson commented 10 years ago

As it's in Git I've just removed it rather than commenting it out, the commit can be reverted down the road if needed.

Can you test it out and check that it works as expected?