tuxpoldo / btsync-deb Goto Github PK
View Code? Open in Web Editor NEWBitTorrent Sync Packaging Project
BitTorrent Sync Packaging Project
The default configuration file ~/.btsync.conf
created for every user does not define a username and password for the web interface. This is a potential security issue, since other users logged in on the computer may access the web interface of a user, if they know the port number on which the agent is listening.
The script should always secure the web interface of a user with a randomly generated password and the personal desktop shortcuts should pass username and password in the URL.
This change can only be implemented, if btsyncindicator.py
will be able to read username and password from the config file and use it when creating the Token and invoking the web interface (See marxjohnson/btsyncindicator#22 )
Reported by user alexball
See forum message http://forum.bittorrent.com/topic/19560-debian-and-ubuntu-desktop-packages-for-bittorrent-sync/page-7#entry73071
I have found that on faster computers the indicator gets loaded twice, once as a child of init and once as a child of btsync-starter.
It took me a while to work out what was wrong (I had wondered if it was an issue with KDE's session management, for example) but what seems to have solved it for me is to introduce an extra delay in the btsync-starter script.
In the definition of agent_runner(), I inserted a 'sleep 1' line just before 'start_frontend', and that seems to have done the trick.
erenoglu, on 13 Nov 2013 - 12:35 PM, said:
Note that I had to install a python binding for gtk2 (python-gtk2) to have the indicator appear in the tray area.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
Package fails to build on native arm builder
In addition to the well known alignment problem, an additional problem was reported on some ARM based systems that prevented the btsync executable to be started. Additionally this may result in a failure during the installation of btsync-common
since the btsync executable is called during the configure
phase in order to generate the sample configuration file /usr/share/doc/btsync-common/btsync.conf.sample
Since BitTorrent Inc releases btsync also for powerpc, the packages should support also this architecture.
btsync fails to start on some ARM based systems. It is documented in the official FAQ, that this can be solved by issuing the following command:
echo 2 > /proc/cpu/alignment
If a system is not able to execute by default the btsync executable, it should perform automatically all needed steps in order to run btsync.
Starting from version 1.2.x BitTorrent Sync exposes an API that will be only activated, if an API key is specified. This shall be also supported in the default instance maintained by debconf.
The package btsync shall be dependent upon btsync-common and contain only the components provided by tuxpoldo
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
The default instance of btsync runs with root privileges, which is never
recommendable. The user should have the possibility to configure the default instance to run also under a dedicated account (btsync) that will be created if not already available.
There should be a desktop icon allowing the user to (re)start BitTorrent Sync (including the indicator) if it is not running.
I think also, that this is a good idea for the package btsync
and because of this, I have already implemented it. It will be release with the next version of the btsync
server package (today). See #44 more more details.
In btsync-user
this is not really needed, since the included btsyncindicator applet already offers the possibility to enable/disable debug logging in the menu.
I will close this issue as soon as the packages are released.
See http://forum.bittorrent.com/topic/24890-where-does-bittorrent-12xxx-store-its-log-files/
vadimt, on 13 Nov 2013 - 10:09 AM, said:
You run btsync with "no-daemon" flag. In this case logs will be written to stdout only in 1.2 version.
Thanks!
sergey@bt, on 13 Nov 2013 - 2:44 PM, said:
The reason why we switched to stdout in no-daemon mode is to be compatible with runsv and to allow log rotation. We didn't expect to break anything. Is there any easy way to redirect stdout to file in start-stop-daemon? If not, we will provide an option to force logging into file.
Several users reported that the update to the next version of the BitTorrent Sync executable did not result in a restart of the installed application (either btsync or btsync-user).
Since debconf 1.2.x has been released, it would be nice to add debconf support for the new advanced configuration parameters.
The strings in the templates still create lintian warnings:
W: btsync: malformed-prompt-in-templates btsync/bind-port
W: btsync: malformed-prompt-in-templates btsync/limit-download
W: btsync: malformed-prompt-in-templates btsync/limit-upload
W: btsync: malformed-prompt-in-templates btsync/webgui-bindaddr
W: btsync: malformed-prompt-in-templates btsync/webgui-bindport
W: btsync: malformed-question-in-templates btsync/disk_low_priority
W: btsync: malformed-question-in-templates btsync/lan_encrypt_data
W: btsync: malformed-question-in-templates btsync/lan_use_tcp
W: btsync: malformed-question-in-templates btsync/rate_limit_local_peers
W: btsync: spelling-error-in-readme-debian allows to allows one to
W: btsync: missing-debconf-dependency-for-preinst
There are several issues related to update and remove operations. In particular the processes are not really killed when the packages are removed.
btsync fails to start on some ARM based systems. It is documented in the official FAQ, that this can be solved by issuing the following command:
echo 2 > /proc/cpu/alignment
If a system is not able to execute by default the btsync executable, it should perform automatically all needed steps in order to run btsync.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
The btsync-user package should depend on python-appindicator
When updating btsync-user, the agent will be stopped but the indicator not.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
See http://forum.bittorrent.com/topic/24890-where-does-bittorrent-12xxx-store-its-log-files/
vadimt, on 13 Nov 2013 - 10:09 AM, said:
You run btsync with "no-daemon" flag. In this case logs will be written to stdout only in 1.2 version.
Thanks!
sergey@bt, on 13 Nov 2013 - 2:44 PM, said:
The reason why we switched to stdout in no-daemon mode is to be compatible with runsv and to allow log rotation. We didn't expect to break anything. Is there any easy way to redirect stdout to file in start-stop-daemon? If not, we will provide an option to force logging into file.
Currently all btsync packages specify very strict dependency version constraints with the consequence that a specific btsync package is needed for every distribution release (lucid, precise, quantal, raring, saucy and squeeze, wheezy, sid).
Since the real requirements of btsync are very low, and the constraints are only computed by the automatic dependency detector of debhelper, it is unnecessarily hard for several people to install btsync on some distributions because the package refuses to install also if the software would work for sure.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
The separation of btsync
from btsync-user
will permit to release these fundamental different packages separately in order to have a more transparent communication towards users.
The package btsync-user shall be dependent upon btsync-common and contain only the components provided by tuxpoldo
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
The binary of BitTorrent btsync installed by both the packages are not identical to the packages distributed by BitTorrent. This seems not to affect the functionality but causes discussions and may lower the confidence into the packaging.
The handling of the ominous ${storage_path}/debug.txt
file should be simplified by managing this setting directly from the configuration file using the comment parameter DAEMON_DEBUG=
that should specify the debug mask.
The user shall be able to manage btsync using a unique command (/usr/bin/btsync). The following functions should be supported:
On a fresh installation btsyncindicator fails to start because the config file is still not created (Reported by Martin Wimmer)
btsync --help does not show all available commands
I think the indicator code uses version specific functionality of some libraries.
Traceback (most recent call last):
File "/usr/lib/btsync-user/btsyncindicator.py", line 96, in setup_session
html = tokenresponse.text
AttributeError: 'Response' object has no attribute 'text'
BTW: I have python-requests 0.8.2-1
Reported by User fogbav in BitTorrent Sync Forum
Unpacking btsync (from .../btsync_1.1.70-4~wheezy_armhf.deb) ...
Setting up btsync (1.1.70-4~wheezy) ...
[....] Autostarting btsync instance 'debconf-default':invoke-rc.d: initscript btsync, action "start" failed.
dpkg: error processing btsync (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
btsync
E: Sub-process /usr/bin/dpkg returned an error code (1)
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
I installed btsync on Debian-wheezy,
run btsync start with verbose on,
No icon appears, but the core program is running.
This is the only message I could find:
$ BitTorrent Sync forked to background. pid = 17941
/usr/lib/btsync-user/btsyncindicator.py:106: Warning: /tmp/buildd/glib2.0-2.33.12+really2.32.4/./gobject/gsignal.c:2459: signal child-added' is invalid for instance
0x179b010'
self.ind.set_menu(self.menu)
EDIT: I guessed the port number and loaded the webpage.
I added a folder to sync, and THEN the icon appeared.
However, it has no colour, only a shadow, so its hard to see.
EDIT 2: I then tried out the icon.
I opened the web interface (that worked),
then I paused it (that worked)
then I resumed it -- now the icon has vanished again, with this message on the command line:
WARNING:requests.packages.urllib3.connectionpool:Retrying (0 attempts remain) after connection broken by 'BadStatusLine("''",)': /gui/?action=getsyncfolders&token=RNhHUjTy6GnbIzDOi4kK2kJP1yhsiMF3NmC4cLHLOqfoM0B4WWXOuGYEhFIAAAAA
WARNING:root:Status request failed, attempting to re-initialise session
BitTorrent Sync forked to background. pid = 20579
EDIT 3: and then after about 30-60 seconds, the icon appeared again.
When the btsync-agent is suspended by the user, after reboot the agent is started again.
The native component package should be able to generate the upstream source archive by downloading the distributed binaries from the vendor. In order to make this process more reliable, an alternate archiving and distribution point may be created since BitTorrent Inc. currently has no versioned repository except the direct links communicated through the forum that makes it impossible to write a reliable debian/watch file.
In order to improve the interaction between our applications and all future developments, Iain Lowe proposed to carve out the distribution of the native components from BitTorrent Inc. and make all other projects dependant upon this package. This is a very good idea, since it would reduce the complexity and make things easier for everybody willing to develop additional components for btsync.
This package will be named btsync-common and will be versioned based on the original btsync version number.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
There should be a possibility to suspend the btsync agent and to query the state of it.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
The btsync-user 1.1.82-1 packages do not install the man page.
Translation can be done on POEditor.
If you want to join the efforts: https://poeditor.com/join/project?hash=021de7da0c2a0562da16dfcefcb26cc1
Reported by florentm - See forum message http://forum.bittorrent.com/topic/18974-debian-and-ubuntu-server-packages-for-bittorrent-sync/page-19#entry72801
"The issue is that the duplicate instance check at startup is matching user100 with user10 or user1 (longer config file name seems to be launched first)"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.