LinuxMCE Forums

General => Developers => Topic started by: robwoodward75 on July 30, 2013, 04:46:33 pm

Title: Transmission torrent on LinuxMCE
Post by: robwoodward75 on July 30, 2013, 04:46:33 pm
All,

Not sure if this is the right place to put this, but I have recently spent a lot of time including transmission-daemon and some download management tools into the Linux MCE web admin site.  I have tried best I can to keep the theme as per the rest of the site, apart from the Transmission-daemon server connection, which is as per the transmission daemon installation.  There are pages on there to create symbolic links from either file or directory level to another folder (in my case, I was fed up with all the Sample.avi etc etc etc) appearing on Media Tomb, hence the symbolic links to just the movie!!  There is also built in an unrar, which most of the downloads appear to be.

The installation tool checks for transmission-daemon, and unrar, offering to add them in if they are not installed, adds a new database into MySQL called "transmission_links", and adds the menu option into Advanced > Configuration, then copies all the necessary web and scripting files into the relevant places.

In my set-up, I have put transmission-daemon's setting (/etc/transmission-daemon/settings.json) to use /home/public/torrents folder in my set-up, and my mediatomb only looks at /home/public/data.


WARNING!!!
Due to the new web pages, index.php will be replaced, as will include/config/database.inc.php and include/config/globalconfig.inc.php, so, if you have made any changes to these files, please be careful!!!  Back-up copies will however remain in their location with the date and time stamp after the file name so you can return to "normal" afterwards, similar to: index.php-20130729165423.bak.

Disclaimer
I accept no responsibility for loss of data, so please be sure to read through the install script prior to running, if you feel happier, then create the database and user, and copy the files manually.



Hope you like the layout, I will continue to try to work on advancing the layout and interface, and would appreciate any input from the outside world!
Title: Re: Transmission torrent on LinuxMCE
Post by: Marie.O on July 30, 2013, 04:57:52 pm
Do you think it makes sense to provide an svn diff of what you did and create a trac ticket?
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on July 30, 2013, 05:00:48 pm
Hi Posde,

If I had the slightest idea how to do that, then I would!!  If you can point me to a suitable set of destructions to follow, I'de be glad to do that, if that's the preferred method.

Thanks for taking the time to look.
Title: Re: Transmission torrent on LinuxMCE
Post by: WhateverFits on July 30, 2013, 08:42:46 pm
Get the source tree for the website:
http://wiki.linuxmce.org/index.php/Source_Code

It will be under the web folder in the subversion tree.

Unpack your file over the top of the stuff there. Then do:

svn diff > patchfile

and make sure it actually worked and then create a ticket here:
http://svn.linuxmce.org/

and attach the file. Don't forget to post your ticket number back here so people know about it quicker.  ;D
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on July 30, 2013, 11:23:29 pm
OK, did up to the raising of the Trac ticket, but the svn diff left me a little worried, in that it appears that there have been changes since my install, and I don't want to put something in which shows new changes being replaced with old stuff, effectively undoing other peoples work.  Here is the output of the svn diff, and it shows replacing lines, which I hadn't replaced.  Also, it doesn't include the new files I created?!  Any Suggestions?!  or is this what you expected to see?!  Sorry, first time doing this!!

Code: [Select]
Index: lmce-admin/include/config/database.inc.php
===================================================================
--- lmce-admin/include/config/database.inc.php (revision 27776)
+++ lmce-admin/include/config/database.inc.php (working copy)
@@ -26,6 +26,10 @@
   $securityADO = &ADONewConnection($dbPlutoSecurityType);
   $securityADO->NConnect($dbPlutoSecurityServer,urlencode($dbPlutoSecurityUser),urlencode($dbPlutoSecurityPass),urlencode($dbPlutoSecurityDatabase));
 
+ // TransmissionADO connection
+ $transmissionADO = &ADONewConnection($dbTransmissionType);
+ $transmissionADO->NConnect($dbTransmissionServer,urlencode($dbTransmissionUser),urlencode($dbTransmissionPass),urlencode($dbTransmissionDatabase));
+
   //for sqlite
   //$db = &ADONewConnection('sqlite');
   //$db->NConnect($GLOBALS['appRoot'].'sqlite.db'); # sqlite will create if does not exist
Index: lmce-admin/include/config/globalconfig.inc.php
===================================================================
--- lmce-admin/include/config/globalconfig.inc.php (revision 27776)
+++ lmce-admin/include/config/globalconfig.inc.php (working copy)
@@ -32,6 +32,13 @@
  $dbPlutoSecurityServer = $DB_HOST;
  $dbPlutoSecurityDatabase = "pluto_security";
 
+ // Transmission
+ $dbTransmissionType = "mysql";
+ $dbTransmissionUser = "transmission";
+ $dbTransmissionPass = "";
+ $dbTransmissionServer = $DB_HOST;
+ $dbTransmissionDatabase = "transmission_links";
+
 function LoadConfig($configFile,$configKey) {
  //LoadConfig()
  //Looks for the assigned value of $configKey within $configFile,
Index: lmce-admin/index.php
===================================================================
--- lmce-admin/index.php (revision 27776)
+++ lmce-admin/index.php (working copy)
@@ -1078,10 +1078,9 @@
  $output = new Template($dbADO);
  $output->setTemplateFileType('large');
  @include($GLOBALS['globalConfigPath'].'asteriskDB.inc.php');
- @include($GLOBALS['globalConfigPath'].'telecom.inc.php');
      include_once('operations/phones/phoneLines.php');
      $output->setHelpSrc('/wiki/index.php/Phone_Lines');
-     phoneLines($output,$asteriskADO,$dbADO,$telecomADO);
+     phoneLines($output,$asteriskADO,$dbADO);
  break;
  case 'fax';
  $output = new Template($dbADO);
@@ -1801,6 +1800,20 @@
      include_once('operations/deviceTemplate/commMethod.php');
      commMethod($output,$dbADO);    
  break;
+ case 'transmission-daemon':
+ $output = new Template($dbADO);
+ $output->setTemplateFileType('large');
+     include_once('operations/others/transmissionDaemon.php');
+     transmissionDaemon($output,$dbADO,$transmissionADO);    
+     //transmissionDaemon($output,$dbADO,"");    
+ break;
+ case 'transmissionLink':
+ $output = new Template($dbADO);
+ $output->setTemplateFileType('small');
+     include_once('operations/others/transmissionLink.php');
+     transmissionLink($output,$dbADO,$transmissionADO);    
+     //transmissionLink($output,$dbADO,"");    
+ break;
  case 'upnpServer':
  $output = new Template($dbADO);
  $output->setTemplateFileType('large');

Title: Re: Transmission torrent on LinuxMCE
Post by: WhateverFits on July 30, 2013, 11:29:21 pm
OK, well, working with version control systems is a bit of a paradigm shift if you haven't worked with them before.

Normal practice is, of course, to always work with the latest version. In this situation, you cannot as you already started. So, if there are files that you overlaid that you didn't make changes to but somebody else did, simply delete that file and run "svn update" and it will bring back the latest version of the file instead of the version that you changed inadvertently. Run "svn status" to get a list of all modified files. Then you can go through that list and do some basic sanity checks to be sure you are only checking in what is necessary.

I hope that helps!
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on July 31, 2013, 10:20:25 am
I guess this is a lesson in read all the instructions before heading off inventing new things on the site then!

Right,

svn update:
Code: [Select]
At revision 27777
svn status:
Code: [Select]
?       lmce-admin/operations/others/transmissionEditLinks.php
?       lmce-admin/operations/others/transmissionValidatelinks.php
?       lmce-admin/operations/others/transmissionLink.php
?       lmce-admin/operations/others/transmissionDaemon.php
?       lmce-admin/operations/others/transmissionCreatelinks.php
?       lmce-admin/operations/others/transmissionCheckfilename.php
M       lmce-admin/include/config/database.inc.php
M       lmce-admin/include/config/globalconfig.inc.php
M       lmce-admin/index.php
?       lmce-admin/languages/en/transmissiondaemon.lang.php

svn diff:
Code: [Select]
Index: lmce-admin/include/config/database.inc.php
===================================================================
--- lmce-admin/include/config/database.inc.php  (revision 27777)
+++ lmce-admin/include/config/database.inc.php  (working copy)
@@ -26,6 +26,10 @@
   $securityADO = &ADONewConnection($dbPlutoSecurityType);
   $securityADO->NConnect($dbPlutoSecurityServer,urlencode($dbPlutoSecurityUser),urlencode($dbPlutoSecurityPass),urlencode($dbPlutoSecurityDatabase));

+       // TransmissionADO connection
+       $transmissionADO = &ADONewConnection($dbTransmissionType);
+       $transmissionADO->NConnect($dbTransmissionServer,urlencode($dbTransmissionUser),urlencode($dbTransmissionPass),urlencode($dbTransmissionDatabase));
+
   //for sqlite
   //$db = &ADONewConnection('sqlite');
   //$db->NConnect($GLOBALS['appRoot'].'sqlite.db'); # sqlite will create if does not exist
Index: lmce-admin/include/config/globalconfig.inc.php
===================================================================
--- lmce-admin/include/config/globalconfig.inc.php      (revision 27777)
+++ lmce-admin/include/config/globalconfig.inc.php      (working copy)
@@ -32,6 +32,13 @@
        $dbPlutoSecurityServer = $DB_HOST;
        $dbPlutoSecurityDatabase = "pluto_security";

+       // Transmission
+       $dbTransmissionType = "mysql";
+       $dbTransmissionUser = "transmission";
+       $dbTransmissionPass = "";
+       $dbTransmissionServer = $DB_HOST;
+       $dbTransmissionDatabase = "transmission_links";
+
 function LoadConfig($configFile,$configKey) {
        //LoadConfig()
        //Looks for the assigned value of $configKey within $configFile,
Index: lmce-admin/index.php
===================================================================
--- lmce-admin/index.php        (revision 27777)
+++ lmce-admin/index.php        (working copy)
@@ -1801,6 +1801,20 @@
            include_once('operations/deviceTemplate/commMethod.php');
            commMethod($output,$dbADO);
        break;
+       case 'transmission-daemon':
+               $output = new Template($dbADO);
+               $output->setTemplateFileType('large');
+           include_once('operations/others/transmissionDaemon.php');
+           transmissionDaemon($output,$dbADO,$transmissionADO);
+           //transmissionDaemon($output,$dbADO,"");
+       break;
+       case 'transmissionLink':
+               $output = new Template($dbADO);
+               $output->setTemplateFileType('small');
+           include_once('operations/others/transmissionLink.php');
+           transmissionLink($output,$dbADO,$transmissionADO);
+           //transmissionLink($output,$dbADO,"");
+       break;
        case 'upnpServer':
                $output = new Template($dbADO);
                $output->setTemplateFileType('large');


Which I'm a lot happier with, with the exception that I still don't understand how the new files are included, I can see all the mods to the existing files, but not the additional bits, despite svn status recognising they're in there?!

I've then copied the latest of each of the modified files back into my live web area, and all appears to be working OK.  So, of all the work done, the remaining new file, which is not in the web directory is:
/usr/pluto/bin/transmission-settings.sh

do I have to do a similar svn on that area?  if so, where is it, I did look last night, but couldn't find it easily!

Thanks again for all your help and guidance, with any luck I'll do this a bit better in future!!
Title: Re: Transmission torrent on LinuxMCE
Post by: Marie.O on July 31, 2013, 02:04:02 pm
If you have new files that you would want in svn, you need to svn add the file. After that, they will be included in an svn diff.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on July 31, 2013, 02:35:00 pm
Excellent, thank you, that's completed the patch for the web admin area (attached), but could you direct me to the correct place to get the /usr/pluto/bin scripts, as I have one to update that area too.

Also, how do I go about the database?  There's a new database added, which I do using the install script in the initial download, create the database, tables and a the new user to access this database?!

Sorry, lots of questions, and I've no idea how many people actually use this, or would even want it?!

Thanks.
Title: Re: Transmission torrent on LinuxMCE
Post by: davegravy on August 01, 2013, 08:15:34 am
Excellent, thank you, that's completed the patch for the web admin area (attached), but could you direct me to the correct place to get the /usr/pluto/bin scripts, as I have one to update that area too.

Also, how do I go about the database?  There's a new database added, which I do using the install script in the initial download, create the database, tables and a the new user to access this database?!

Sorry, lots of questions, and I've no idea how many people actually use this, or would even want it?!

Thanks.

I've got my own duct-taped transmission setup going alongside LMCE, so I'm looking forward to checking your work out.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on August 01, 2013, 01:23:23 pm
Hi Davegravy,

Hope it doesn't end up to be disappointing then!  If you want to try it, with the previously posted transmission.patch, which should sort out the web stuff, and the attached transmission-settings.sh copied into /usr/pluto/bin/ and then finally, the following commands to set-up the database and add the transmission user:

Code: [Select]
DBName='transmission_links'

#Set up the database
mysql -e "CREATE DATABASE $DBName;"
mysql -e "CREATE TABLE Torrent_Links (Link_ID int NOT NULL AUTO_INCREMENT, Torrent_Location TEXT NOT NULL, Rar_File VARCHAR(250) NULL, Link_Location TEXT NOT NULL, Link_Name VARCHAR(100), Link_Type VARCHAR(10) NOT NULL, Link_Status VARCHAR(10) NULL, PRIMARY KEY (Link_ID));" $DBName

#Adding the user
mysql -e "CREATE USER 'transmission'@'localhost';"
mysql -e "CREATE USER 'transmission'@'127.0.0.1';"
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'localhost';"
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'127.0.0.1';"
mysql -e "FLUSH PRIVILEGES;"


#Add the new Menu Option
ParentID=`mysql -e "SELECT PK_PageSetup FROM PageSetup WHERE Description='Configuration';" pluto_main |tail -1`

if [ $ParentID -eq 0 ]
then
ParentID=174
fi

OrderNum=`mysql -e "SELECT MAX(OrderNum) + 10 FROM PageSetup WHERE FK_PageSetup_Parent=$ParentID;" pluto_main |tail -1`

#For Safety in case is doesn't correctly identify the outputs
if [ $OrderNum -eq 0 ]
then
OrderNum=999
fi

mysql -e "INSERT INTO PageSetup (FK_PageSetup_Parent, Website, OrderNum, Description, pageURL, showInTopMenu) VALUES ("$ParentID",1,"$OrderNum",'Transmission Daemon','index.php?section=transmission-daemon',1);"

Could do with one of the Guru's or Gods letting me know the preferred method for added these parts in?  Is it just on a track ticket, as I've done here, or is there another way?!
Title: Re: Transmission torrent on LinuxMCE
Post by: Marie.O on August 01, 2013, 04:29:23 pm
If you have modified files in /usr/pluto/bin you should checkout the src/BootScripts directory. If you only added files to it, it is okay to add those files to a trac ticket. And try to find someone in IRC chat #linuxmce-devel to take care of it. I am sure there are people in there who love torrents... ;)
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on August 01, 2013, 05:01:27 pm
All,

Ticket raised:
#1861
Title: Re: Transmission torrent on LinuxMCE
Post by: tschak909 on August 01, 2013, 07:55:35 pm
What we should probably do is add a Torrent package to the install wizard_* tables, which inside this package includes the setup scripts, etc.. this way, we can add a row to PageSetup and reference by FK_Package #, so when the torrent package is installed (by selecting it on the CORE software page), it will show the menu item.

-Thom
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on August 02, 2013, 12:38:32 pm
And that is why you're a LinuxMCE God, and I am but a mere mortal!!!

I will definitely need some help and guidance on setting that up, unless your statement was more of a offer to do, rather than an instruction to me?!!

Either way, I'm happy to do my part to include Transmission into LinuxMCE as hopefully a permanent feature, I make good use of it myself as it integrates well with Android, with the free Transmission Remote app allowing me to add, pause etc torrents from anywhere to be available when I get home (speed dependant obviously!).

I am aware that my pages are fairly selfish at the moment, written by me, for me!!  What I could do with is some fresh eyes, and other peoples perspectives on it to see how we can improve, add other features (i.e. I've put unrar in, but made no scope as yet for zip, tar etc etc)  Simply because, of the torrents I've downloaded, I've only come across rar files, mainly multi-part ones at that!!

I can see further scope myself when I have more time, i.e. to incorporate the /etc/transmission-daemon/settings.json file into the DB, and therefore a web page, and therefore controlling the settings as well as starting and stopping the service etc from there.
Title: Re: Transmission torrent on LinuxMCE
Post by: davegravy on August 14, 2013, 08:10:38 pm
Still haven't had a chance to check out your work, but one thing that I did with my setup that you might consider adding in the future is: use Transmission's on-complete events to trigger notifications through LMCE.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on August 21, 2013, 04:07:00 pm
robwoodward75:
After setting up according to the included instructions I get a 403 IP Address Forbidden error trying to access the transmission status page.

Code: [Select]
403: Forbidden
Unauthorized IP Address.
Either disable the IP address whitelist or add your address to it.

So I edited /etc/default/transmission-daemon and added "-a 192.168.80.*" to the OPTIONS= line.  That gets past the 403 error.  Now it asks for a username and password.  Which appears to be "transmission"/"transmission".

It appears as though the interface is working.  I'm going to test a couple of torrents.

If you can fix up an install script that includes the edit to the config file then we can put a package together.  Then we can add it to the Add Software page, and work on more integration.

davegravy:
What is your level of transmission integration into lmce?  Are you currently using transmission events to trigger notifications?

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: davegravy on August 21, 2013, 04:44:15 pm
davegravy:
What is your level of transmission integration into lmce?  Are you currently using transmission events to trigger notifications?
J.

It's mostly not integrated, except that i have an on-complete script that Tranmission executes when a torrent completes. This on-complete script calls MessageSend which posts a pop-up notification to my orbiters. I started looking into having it also use email notification via LMCE.

Unrelated to LMCE is that I have the on-complete script calling Notify My Android to send push notices to my mobile devices.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on August 21, 2013, 04:47:19 pm
It's mostly not integrated, except that i have an on-complete script that Tranmission executes when a torrent completes. This on-complete script calls MessageSend which posts a pop-up notification to my orbiters. I started looking into having it also use email notification via LMCE.

Unrelated to LMCE is that I have the on-complete script calling Notify My Android to send push notices to my mobile devices.

Would you mind sharing your scripts?  I'd really appreciate it.  Feel free to add them to the ticket.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on August 28, 2013, 10:44:05 am
Apologies all, been on holiday, and for some reason, no email notifications of your posts?!

I have updated the ticket with some new scripts and pages, including service management of transmission-daemon, the ability to change username and password, or disable login, and some way of connecting via SSL, which requires a mod to the Apache config (also on the ticket)

I'll try to go through the questions / statements you've added!!
Quote
Would you mind sharing your scripts?  I'd really appreciate it.  Feel free to add them to the ticket.
No problem, I added the following lines to the transmission-daemon settings.json, however, I use version 1.93, which does not support on complete scripts (I found this out later!) but reading the LinuxMCE Wiki, I believe it should work!!
Code: [Select]
   "script-torrent-done-enabled": true,
    "script-torrent-done-filename": "/usr/pluto/bin/MessageSend dcerouter -r 0 20 1 809 9 \"Transmission Torrent Download completed\n$TR_TORRENT_NAME\" 70 \"alert\" 182 \"30\" 251 \"??\"",

Quote
What is your level of transmission integration into lmce?
1.93 (The torrent site I use is quite strict on this, I had to roll it back from the updated one, apparently, they reckon higher versions give false stats?!  Not entirely sure myself, but it's a good site, and I don't want to be kicked off!!)

Quote
If you can fix up an install script that includes the edit to the config file then we can put a package together.
OK, I'll get to work on it now, I had posted a few comments on the ticket, but I guess here's better for chatting, the ticket is for updates and facts I guess!!

Thanks all for your interest!

UPDATE:
More humble apologies!  On reading the posts properly, realised you weren't actually talking to me on these!  Sorry Davegravy, hope I haven't stolen your thunder!

Further Update!:
For the install script, which I had previously created something at the beginning of this post, which includes the copying of the web pages from the location of the unpacked tar file, and the extra menu item addition in the  MCE database.  Excuse me for being a bit of a nube, but.... do I assume the copying of the web pages will be unnecessary, if it is incorperated, would I just need the apt-get install of transmission-daemon, the new database, /usr/pluto/bin script, settings.json changes and the update to apache and it's LinuxMCE-ssl update?

Sorry, I know you're busy with other stuff too, but I need some guidance to give you what you need to have a complete install.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on August 28, 2013, 10:20:55 pm
Hi Rob,

I hadn't been checking the ticket.  :)  The forum does send a single e-mail notification of new posts in topics, you may have to configure/enable it in the profile setup (I don't remember if it is automatic).  Trac I'm not so sure about.  I think those notifications are hitting my junk mail box, I'll check that.

I'll have a look at the items you've added and test them on my dev system.  Looking good so far.  Once there is an install-able package then further integration can be investigated as well.

Thanks for the work you are doing here!  It is really appreciated!

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on August 29, 2013, 03:50:59 pm
Hi J,

I have hit a brick wall on the install script, basically, I have reached the limit of my bash scripting knowledge / ability, and after spending the last day or so googling around to try to find out what I'm doing wrong, I'm still drawing a blank!  Any help would be very gratefully received!!

Here's the scenario!

This is the line I'm trying to push into the /etc/transmission-daemon/settings.json:
   "script-torrent-done-filename": "/usr/pluto/bin/transmission-settings.sh torrentComplete $TR_TORRENT_NAME",

using the following function (and public declared variable for the settings file location):
Code: [Select]
transmissionSettings="/etc/transmission-daemon/settings.json"

changeSetting()
{
        #create a back-up of the current settings file
        backup="_"`date '+%Y%m%d%k%M%S'`".bak"
        oldSetting=$(grep "\"$1\":" $transmissionSettings|awk -F\: '{print $2}'|sed -e 's|\,||g' -e 's|^ *||g' -e 's| *$||g')

        if [ `echo ${oldSetting:0:1}`=='"' ]
        then
                sed -i$backup 's|"'$1'": '$oldSetting',|"'$1'": "'$2'",|' $transmissionSettings
        else
                sed -i$backup 's|"'$1'": '$oldSetting',|"'$1'": '$2',|' $transmissionSettings
        fi

        echo $transmissionSettings$backup
}

triggered by the following command:
Code: [Select]
changeSetting "script-torrent-done-filename" "/usr/pluto/bin/transmission-settings.sh torrentComplete \$TR_TORRENT_NAME"
However..........
Everytime I run it, in the debug console I get the following output:
++ sed -i_20130829144312.bak 's|"script-torrent-done-filename": "",|"script-torrent-done-filename": "/usr/pluto/bin/transmission-settings.sh' torrentComplete '$TR_TORRENT_NAME",|' /etc/transmission-daemon/settings.json
sed: -e expression #1, char 110: unterminated `s' command


Notice the really annoying extra single quotes now appearing in the sed line, making bash think the sed instruction is over, before I've finished it!!!! >:(

Can anyone help me please?!?!?! This is literally the last line(s) in the installer, so is really frustrating me now!! >:( ???
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on August 30, 2013, 07:09:03 am
Ouch.  I'll be able to have a closer look tomorrow.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on August 30, 2013, 04:56:19 pm
Hi Jason,

Stand down!!  Sanity and will-to-live has been restored!!  Asked a colleague of mine at work, Unix server guy, he managed to sort it out!!  Ticket is now updated with the package install script, which assumes the Web admin area is downloaded with an update from LinuxMCE, not part of the install.

There is also a final (....for the moment anyway!) update of the svn patch, and the settings script.

Let me know if the install script isn't quite what you expected / wanted!
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on September 02, 2013, 09:31:20 am
:)  Alright.  I'll work on installing this again and creating a device template and package for easy installation.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on September 02, 2013, 11:26:41 am
Thanks Jason,

I've added a new revision of the installer to the ticket, on realising I'd forgotten to add the following lines:
Code: [Select]
a2enmod proxy
a2enmod proxy_http

Which would stop the https proxy redirect to internal http port 9091 from working properly.  May show up as an error on the Apache restart if you've tried already.  Sorry about that!

Rob.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on September 02, 2013, 09:04:09 pm
Okay, I hope to get to a little of this today.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on September 19, 2013, 11:16:34 am
Hi Jason,

Sounds like you've done the work to include the transmission pages into the LinuxMCE, if only my "Add Software" section worked, I could add the "official" version in!!  (my "Add Software" is completely empty, so haven't been able to add anything from there since I built the damn thing!!)

Thanks for all your support and advice, I'll leave you in peace for a while before looking at the next steps for transmission integration!!  Though perhaps of making it separate transmission daemons per user?! (Modifying the user page to allow admin to permit / deny transmission daemons for each user)  So each user could only see their own downloads, and link whatever they wanted to wherever they wanted!!!!  I'll see how people get on with this first though!

Also had some thoughts on how to make the initial index.php of LinuxMCE's admin site a little easier to add new sections in, instead of keep adding lines like:

Code: [Select]
        case 'transmission-daemon':
                $output = new Template($dbADO);
                $output->setTemplateFileType('large');
                include_once('operations/others/transmissionDaemon.php');
                transmissionDaemon($output,$dbADO,$transmissionADO);
        break;

And having to get that put in through svn.  Put that section of code into the pluto_main database in a new field, and simply recall the contents of it if the menu selection is correct?!  Would make index.php a fair bit shorter too!!!  As above however, I'll leave you in peace for a while before trying to tackle anything like this!!

Cheers,
Rob.
Title: Re: Transmission torrent on LinuxMCE
Post by: Marie.O on September 19, 2013, 02:52:52 pm
Rob,

the changes done will work within web admin. That's where you select the transmission tool. After you do, the web admin will automatically install the software and the menus will be amended.
Title: Re: Transmission torrent on LinuxMCE
Post by: gbutters on September 23, 2013, 06:40:38 am
Install fails on 1204.

Setting up lmce-transmission-client (2.0.0.46.13091728061) ...
ERROR 1133 (42000) at line 1: Can't find any matching row in the user table
dpkg: error processing lmce-transmission-client (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 lmce-transmission-client
E: Sub-process /usr/bin/dpkg returned an error code (1)
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on September 25, 2013, 12:17:08 pm
Hi gbutters,

I'm still on 10.04, and haven't got any way of testing and developing for 12.04 at the moment, can anyone else help with what this error is, as I don't know what's changed between the two releases.

"Can't find any matching row in the user table" sounds like a MySQL error, but the first user based MySQL query in the post install script Jason has posted is on line 45, not line 1?!
Code: [Select]
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'localhost' IDENTIFIED BY '';"
That aside, a quick google turned up that it is to do with the user table and privileges bit, which means the following lines may give issues:
Code: [Select]
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'localhost' IDENTIFIED BY '';"
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'127.0.0.1' IDENTIFIED BY '';"
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'192.168.80.*' IDENTIFIED BY '';"

Only trouble is, I've no idea which one!!  You could try running each of these lines as root in a terminal to see which ones fails?! 

Have you got your Core set to static:192.168.80.1?  Just thinking aloud, if this is a test box, and I've unfortunately hard-coded in 192.168.80.*, then there's an opportunity to improve the script by grabbing the internal address from the machine and inserting that instead of assuming no-one will change it?!  Not sure this would cause a fail in the user grants however?!!

Sorry I can't be of more help?!
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on September 25, 2013, 11:03:07 pm
Sounds like you've done the work to include the transmission pages into the LinuxMCE, if only my "Add Software" section worked, I could add the "official" version in!!  (my "Add Software" is completely empty, so haven't been able to add anything from there since I built the damn thing!!)

I still need to test installing, but the initial commits are made.  Thank you so much for doing the initial leg work!

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on September 25, 2013, 11:03:56 pm
Install fails on 1204.

Setting up lmce-transmission-client (2.0.0.46.13091728061) ...
ERROR 1133 (42000) at line 1: Can't find any matching row in the user table
dpkg: error processing lmce-transmission-client (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 lmce-transmission-client
E: Sub-process /usr/bin/dpkg returned an error code (1)

Okay, I'll look into this.  I apologize that I hadn't done any install testing yet.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on September 25, 2013, 11:07:30 pm
"Can't find any matching row in the user table" sounds like a MySQL error, but the first user based MySQL query in the post install script Jason has posted is on line 45, not line 1?!
Code: [Select]
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'transmission'@'localhost' IDENTIFIED BY '';"

I'll check these lines for proper syntax.  As I've indicated, I haven't done an install test on the package yet.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: gbutters on September 26, 2013, 01:03:46 am
Okay, I'll look into this.  I apologize that I hadn't done any install testing yet.

J.


Also looks like it needs a predepends on transmission-daemon package.
Title: Re: Re: Transmission torrent on LinuxMCE
Post by: phenigma on September 26, 2013, 01:34:40 am
The pre depends should be there.  I'll double check the package definition.

Sent from my SGH-I927 using Tapatalk 2
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on September 26, 2013, 09:50:12 am
I'll check these lines for proper syntax.  As I've indicated, I haven't done an install test on the package yet.

J.

I ran the following lines (substituting transmission user with test user) on my installation, all of which executed OK, so I believe the syntax on those lines are correct?!
Code: [Select]
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'test'@'localhost' IDENTIFIED BY '';"
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'test'@'127.0.0.1' IDENTIFIED BY '';"
mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON transmission_links.* TO 'test'@'192.168.80.*' IDENTIFIED BY '';"

Could we do with someone on 10.04 testing it too, see if the issues are related only to 12.04, or if it's a generic issue?!

Thank you so much for doing the initial leg work!

You're welcome, but it was as much for myself as anyone else!!!  Save's me a lot of bother when upgrading to 12.04 when it's stable!!!  Just need to convince you LinuxMCE Gods of other tweaks I've made now to save me doing anything at all after the upgrade!!!!

Rob.
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on October 05, 2013, 08:39:21 pm
So I've fixed a bunch of errors in the postinst script and fixed the predepends (transmission-daemon instead of transmission, my bad).  Things will likely work after the repo is updated.  The proper installation method is to choose Core from the Wizard in webadmin, select transmission and press Save.  This will ensure the appropriate webadmin pages are activated along with the package installation.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on October 21, 2013, 01:50:35 pm
Hi J,

I've had a couple of updates now on the Web admin, and each one wipes out all of my transmission work?!  Should this not be part of the install now, or, have I missed the point?!!!  I was expecting at some point the transmission stuff to stop disappearing, or, is this only available in the Alpha / Beta testing of the new release?

Sorry mate, don't want to bug you about it too much, I know you're busy on more than just this "Nice to have"!!
Title: Re: Transmission torrent on LinuxMCE
Post by: mkbrown69 on October 21, 2013, 04:11:28 pm
Rob,

More than likely, your changes were committed only to the 12.04 or trunk branches, and not to the 10.04 (which you're probably running).  The wiki shows what changes were committed where...

http://wiki.linuxmce.org/index.php/LinuxMCE-1004_-_Changesets
http://wiki.linuxmce.org/index.php/LinuxMCE-1204_pre-alpha

I see listings of the transmission additions on the 1204 alpha page, but not on the 1004 changesets.

Hope that helps!

/Mike
Title: Re: Transmission torrent on LinuxMCE
Post by: robwoodward75 on October 21, 2013, 04:17:09 pm
Ahr!!  OK, cheers Mike, Thanks for the info.  I'll keep doing the manual re-set thing until I feel brave enough to update to 12.04 then!!  That  probably also explains why others were having problems, and J had to fix it, if I'd written and tested the initial package install on 10.04, and it's rolling out on 12.04!!

Rob.
Title: Re:
Post by: phenigma on October 22, 2013, 11:46:29 pm
Hey Rob,  mkbrown is correct.  1004 is not receiving new features anymore.  The additions are in, and functioning, on 1204.  We're working on stability and a DVD installer.  J.

Sent from my SGH-I927 using Tapatalk
Title: Re: Transmission torrent on LinuxMCE
Post by: huh on January 12, 2014, 06:44:21 pm
This is working great OOTB on my recent 1204 installation.  From here, I was able to get a username and password to connect from Win boxes:  http://forum.linuxmce.org/index.php/topic,12739.0.html

Is there a trick to getting LMCE to pick up the files and display them?  h.264 file is not being found.
Title: Re:
Post by: phenigma on January 13, 2014, 02:29:35 am
Not yet.  There has been no additional glue added.  We would really appreciate patches to extend the functionality though.  Thanks for testing!

Sent from my SGH-I927 using Tapatalk
Title: Re: Transmission torrent on LinuxMCE
Post by: huh on January 13, 2014, 03:14:59 am
Something like this has been on my list of items to try to tackle for a while.  Like to have something the continually scrubs whatever folders you specify looking for particular media.  Originally this came from someone wanting to setup a photo-booth that automatically added pictures to the screensaver as they were taken.  Seems like a similar approach could be used?!?  Is there a better/preferred method?
Title: Re:
Post by: phenigma on January 13, 2014, 06:29:40 am
We have update media.  The best thing to do would be to have the files copied to a known location within lmce.  I think there are functions for this but I have not used them.  Tschak may know more about that specifically.

Sent from my SGH-I927 using Tapatalk
Title: Re: Transmission torrent on LinuxMCE
Post by: SBCC on February 01, 2015, 05:21:56 pm
Install fails on 1204.

Setting up lmce-transmission-client (2.0.0.46.13091728061) ...
ERROR 1133 (42000) at line 1: Can't find any matching row in the user table
dpkg: error processing lmce-transmission-client (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 lmce-transmission-client
E: Sub-process /usr/bin/dpkg returned an error code (1)

There is a typo in postinst line 38
Code: [Select]
apachesettings="/etc/apache2/sites-available/LinuxMCE-ssl"Should be;
Code: [Select]
apachesettings="/etc/apache2/sites-available/LinuxMCE-ssl.conf"
Rebuild deb with change and runs fine.

Thanks for your work Jason. I did not do anything with your trac ticket

Jim
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on February 02, 2015, 04:08:18 pm
Is this a new issue?  Transmission had been installing properly for me.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: SBCC on February 02, 2015, 04:21:39 pm
I updated yesterday and the downloaded package had the typo in it. Relates to your Trac ticket 2292. This did break what was working before.

Thanks
Title: Re: Transmission torrent on LinuxMCE
Post by: phenigma on February 02, 2015, 05:44:11 pm
Thanks, I'll have a look.

J.
Title: Re: Transmission torrent on LinuxMCE
Post by: SBCC on February 02, 2015, 06:05:59 pm
Thanks again for all your effort.