May 6, 201115 yr So got a little time to work on the guide............hope this works! I've tried to make it as complete and fool proof as possible with some explanation. If(when!) it goes wrong let me know what errors you get and i'll try to fix them. 1. Log into your unRAID server, I would recommend you do this remotely using puTTY or similar so you can copy and paste the commands. Logging in locally is fine but you'll have to type the commands 2. We need to download 12 packages to get pyload working. The packages are downloaded using wget and saved to the 'packages' folder on your flash drive. wget --directory-prefix=/boot/packages/ http://slackware.cs.utah.edu/pub/slackware/slackware-current/slackware/d/python-2.6.6-i486-1.txz wget --directory-prefix=/boot/packages/ http://scxd.info/pub/packages/lib/pycurl-7.19.0-i686-2X.tgz wget --directory-prefix=/boot/packages/ http://connie.slackware.com/~alien/slackbuilds/sqlite/pkg/12.1/sqlite-3.5.9-i486-1alien.tgz wget --directory-prefix=/boot/packages/ http://get.gnomeslackbuild.org/gsb/gsb-2.30_slackware-13.1/gsb/l/pycrypto-2.0.1-i486-2gsb.txz wget --directory-prefix=/boot/packages/ http://repository.slacky.eu/slackware-13.1/graphic/tesseract/3.00/tesseract-3.00-i486-1sl.txz wget --directory-prefix=/boot/packages/ http://mirrors.dotsrc.org/slackware/slackware-current/slackware/n/curl-7.21.4-i486-1.txz wget --directory-prefix=/boot/packages/ http://distro.ibiblio.org/pub/linux/distributions/zenwalk/i486/snapshot/l/libidn-1.19-i486-1.txz wget --directory-prefix=/boot/packages/ http://slackware.cs.utah.edu/pub/slackware/slackware-13.1/slackware/n/openldap-client-2.4.21-i486-1.txz wget --directory-prefix=/boot/packages/ http://ftp.belnet.be/packages/slackware//slackware-13.1/slackware/l/pil-1.1.7-i486-1.txz wget --directory-prefix=/boot/packages/ http://repository.slacky.eu/slackware-12.1/libraries/spidermonkey/1.7.0/spidermonkey-1.7.0-i486-1ng.tgz wget --directory-prefix=/boot/packages/ http://slackware.cs.utah.edu/pub/slackware/slackware-12.2/slackware/a/infozip-5.52-i486-2.tgz wget --directory-prefix=/boot/packages/ http://connie.slackware.com/~alien/slackbuilds/unrar/pkg/13.1/unrar-3.9.10-i486-2alien.tgz 3. Once they've downloaded we need to install them. The 'installpkg' command looks in the 'packages' folder and installs the necessary files installpkg /boot/packages/python-2.6.6-i486-1.txz installpkg /boot/packages/pycurl-7.19.0-i686-2X.tgz installpkg /boot/packages/sqlite-3.5.9-i486-1alien.tgz installpkg /boot/packages/pycrypto-2.0.1-i486-2gsb.txz installpkg /boot/packages/tesseract-3.00-i486-1sl.txz installpkg /boot/packages/curl-7.21.4-i486-1.txz installpkg /boot/packages/libidn-1.19-i486-1.txz installpkg /boot/packages/openldap-client-2.4.21-i486-1.txz installpkg /boot/packages/pil-1.1.7-i486-1.txz installpkg /boot/packages/spidermonkey-1.7.0-i486-1ng.tgz installpkg /boot/packages/infozip-5.52-i486-2.tgz installpkg /boot/packages/unrar-3.9.10-i486-2alien.tgz If you get any errors at this point please post them. 4. Assuming all of the above installed without a problem we can now download pyload. The code below once again uses wget to grab the file and will save it in a folder called 'temp' on your flash drive. wget --directory-prefix=/boot/temp/ http://get.pyload.org/get/src/0.4.5/ 5. We're now going to use the unzip package installed earlier to decompress the zip file. Here's where you need to know a little about your setup. If you have a cache drive and would like to install pyload there use the first line of code. If you don't have a cache drive you can still install pyload on a hard drive (to avoid excessive writes to your flash drive) you'll have to use the code in the second box........or beter still modify it to your liking. The code I've posted will install pyload to 'disk1' but there's no reason why you couldn't change that to 'disk2' 'disk3' (for example I use /mnt/disk2/ for all programs I don't want on my flash drive). CACHE DRIVE unzip /boot/temp/pyload-src-v0.4.5.zip -d /mnt/cache/ NON-CACHE DRIVE unzip /boot/temp/pyload-src-v0.4.5.zip -d /mnt/disk1/ 6. So the command above unzipped the pyload zip to a folder called 'pyload'. Just to tidy things up a little we're going to make this folder hidden by prefixing it with (fullstop/period). This is standard linux command line stuff I've kept the non-cache drive example as 'disk1' but remember to change it to 'disk2', 'disk3' etc if you installed to a different drive. CACHE DRIVE mv /mnt/cache/pyload /mnt/cache/.pyload NON-CACHE DRIVE mv /mnt/disk1/pyload /mnt/disk1/.pyload 7. Almost there now! So we've got all the required packages installed and downloaded and unzipped the pyload installation to the server. All that's left is to set up pyload and away we go (hopefully!). The command below will start pyload. Pyload will detect that its not been run before and launch the configuration tool. If you've not installed on disk1.....you know what to do CACHE DRIVE python /mnt/cache/.pyload/pyLoadCore.py NON-CACHE DRIVE python /mnt/disk1/.pyload/pyLoadCore.py 8. Some tips on the setup. a. After selecting your language (english is default) pyload will run a system check. It should return a result like this ## System Check ## Python Version: OK pycurl: OK sqlite3: OK pycrypto: OK OpenSSL: OK py-imaging: missing tesseract: OK PyQt4: missing jinja2: OK beaker: OK JS engine: OK b. py-imaging is required for captcha. The package installs fine but for some reason pyload isn't happy. Its a work in progress at this stage. Now working. Don't worry about pyQT4, its for the gui and not required for the web-interface. c. Change the config path if its incorrect (it should be fine). d. Create a basic login, something like 'root' or 'admin' with a strong password. Once the webinterface is up and running you can tweak things from there. e. The downloads folder is fairly user specific. If you have a user share called 'downloads' the path will be /mnt/user/downloads but you'll have to modify this to suit your exact system. f. The number of parallel downloads is fine as the default 3 but again this can be changed in the web-interface. g. Reconnect tries to get a new IP after each download completes to avoid limits on free accounts. I'd recommend you leave it off. h. If you want to configure SSL you're on your own for now. I will set it up at some stage but right now its off. i. Web-interface config - Add the network IP address of your server ie. 192.168.1.101 rather than the default 0.0.0.0. Chose a port greater than 8000, it can be anything just remember it. I'd go for 8083 (since sickbeard and sabnzbd use 8081 and 8082 respectively). Once you've done that the config is complete and you'll be asked to restart pyload. Just run the code in step 7 again 9. If everything went to plan pyload will fetch the latest plugins and install them automatically. You'll have to restart pyload once more. Kill it with ctrl+c then run the code in step 7. 10. If by some complete fluke everything has worked up to this point you should have a line in the output which says Starting builtin webserver: 192.168.1.101:8083 .....or whatever IP address and port you used. All that's left is to point your favorite web browser at http://<your ip address>:<your port> and log in. 11. If you log out of unraid or close your ssh session, pyload will quit so once you've verified it runs and you can log in to the webinterface, kill it with ctrl+c then run the code below. CACHE DRIVE nohup python /mnt/cache/.pyload/pyLoadCore.py & NON-CACHE DRIVE nohup python /mnt/disk1/.pyload/pyLoadCore.py & 'nohup' writes all the outputs to a file (in case you need to troubleshoot) and the '&' (ampersand) runs pyload in the background so you can log out and it will still run. ****One final thing to note**** If you reboot you will probably have to install all the 'packages' again. The pyload folder and setup will be fine. Once we've got a guide that works I'll post up a modification for your 'go' script that will make the installation permanent. Thanks to Choque for the updated packages
May 8, 201115 yr I got this error at step 7... Help? root@tower:~# python /mnt/cache/.pyload/pyLoadCore.py Traceback (most recent call last): File "/mnt/cache/.pyload/pyLoadCore.py", line 46, in <module> from module.HookManager import HookManager File "/mnt/cache/.pyload/module/HookManager.py", line 23, in <module> from module.PluginThread import HookThread File "/mnt/cache/.pyload/module/PluginThread.py", line 32, in <module> from pycurl import error ImportError: libcurl.so.4: cannot open shared object file: No such file or directory root@tow
May 8, 201115 yr If you run the system check what do you get? python /mnt/cache/.pyload/systemCheck.py
May 8, 201115 yr root@tower:~# python /mnt/cache/.pyload/systemCheck.py ##### System Information ##### ('Platform:', 'linux2') ('Operating System:', 'posix') ('Python:', '2.6.6 (r266:84292, Nov 27 2010, 19:47:39) [GCC 4.5.1]\n') ('pycurl:', 'missing') ('py-crypto:', '2.0.1') ('OpenSSL:', '0.10') ('image libary:', 'missing') ('pyqt:', 'missing') ##### System Status ##### ## pyLoadCore ## The system check has detected some errors: Please install py-curl to use pyLoad. Your py-curl version is to old, please upgrade! Please install py-imaging/pil to use Hoster, which uses captchas. ## pyLoadGui ## The system check has detected some errors: GUI won't work without pyqt4 !! ## Webinterface ## No Problems detected, Webinterface should work fine. Possible improvements for webinterface: Install Flup to use FastCGI or optional webservers. Press Enter to Exit.
May 8, 201115 yr If you run the system check what do you get? python /mnt/cache/.pyload/systemCheck.py any thoughts?
May 8, 201115 yr pycurl is missing. Its vital to running pyload. Looks as if my package didn't install properly. Are you running unRAID 4.7 or 5.xx beta? Could you run each of the commands below and post the output. wget --directory-prefix=/boot/packages/ http://dl.dropbox.com/u/48364/unMENU/pycurl-7.19.0-i486-1_SBo.tgz installpkg /boot/packages/pycurl-7.19.0-i486-1_SBo.tgz Thanks for your help fixing these bugs
May 8, 201115 yr I will run them soon. No problem with helping. It'd be sweet to get this working. Sent from my captivate using tapatalk
May 8, 201115 yr I will run them soon. No problem with helping. It'd be sweet to get this working. Sent from my captivate using tapatalk Here they are... root@tower:~# wget --directory-prefix=/boot/packages/ http://dl.dropbox.com/u/48364/unMENU/pycurl-7.19.0-i486-1_SBo.tgz --2011-05-08 09:06:12-- http://dl.dropbox.com/u/48364/unMENU/pycurl-7.19.0-i486-1_SBo.tgz Resolving dl.dropbox.com (dl.dropbox.com)... 50.17.217.121 Connecting to dl.dropbox.com (dl.dropbox.com)|50.17.217.121|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 117810 (115K) [application/x-tar] Saving to: `/boot/packages/pycurl-7.19.0-i486-1_SBo.tgz.1' 100%[======================================>] 117,810 432K/s in 0.3s 2011-05-08 09:06:12 (432 KB/s) - `/boot/packages/pycurl-7.19.0-i486-1_SBo.tgz.1' saved [117810/117810] root@tower:~# installpkg /boot/packages/pycurl-7.19.0-i486-1_SBo.tgz Verifying package pycurl-7.19.0-i486-1_SBo.tgz. Installing package pycurl-7.19.0-i486-1_SBo.tgz: PACKAGE DESCRIPTION: # PycURL (Python interface to libcurl). # # libcurl is a free and easy-to-use client-side URL transfer library, # supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and # LDAP. libcurl supports HTTPS certificates, HTTP POST, HTTP PUT, # FTP uploading, kerberos, HTTP form based upload, proxies, cookies, # user+password authentication, file transfer resume, http proxy # tunneling and more! # # Homepage:http://pycurl.sourceforge.net/ # Package pycurl-7.19.0-i486-1_SBo.tgz installed. EDIT: I still get the same error as above when running python /mnt/cache/.pyload/pyLoadCore.py
May 8, 201115 yr Just looking through my setup and there are a few references to curl and libcurl. They were installed with the 'unRAID-Web' package from unmenu. Could you try installing that and see if it fixes the problem.
May 8, 201115 yr Just looking through my setup and there are a few references to curl and libcurl. They were installed with the 'unRAID-Web' package from unmenu. Could you try installing that and see if it fixes the problem. I installed this... Now I get this: root@tower:~# python /mnt/cache/.pyload/pyLoadCore.py Fatal Python error: pycurl: libcurl link-time version is older than compile-time version Aborted
May 8, 201115 yr Installing unraid-web screws up my webgui?! So I uninstalled it...I wasn't able to access anything through the GUI with it installed.
May 8, 201115 yr Installing unraid-web screws up my webgui?! So I uninstalled it...I wasn't able to access anything through the GUI with it installed. You just need to set the option to use the short "php" tags. http://lime-technology.com/forum/index.php?topic=10840.msg103297#msg103297
May 8, 201115 yr Installing unraid-web screws up my webgui?! So I uninstalled it...I wasn't able to access anything through the GUI with it installed. You just need to set the option to use the short "php" tags. http://lime-technology.com/forum/index.php?topic=10840.msg103297#msg103297 Thanks Joe, This works perfect...hadn't gotten the time to search for an answer yet, but you found it first... Now...just to figure out why python is not working properly...
May 8, 201115 yr Actually, I just noticed... I've been running speeding_ant's webgui (http://lime-technology.com/forum/index.php?topic=12606.0) But after running this cmd and adding it to my go script, I tried before and after the theme install, the theme doesn't actually show up? Edit: Interesting enough...after STARTING the array, the webgui showed up as the new one, but still not perfectly. so I cleared the cache and cookies, and now it's up
May 8, 201115 yr Am I right in thinking you're running unRAID 5 then? The version of pycurl I packaged is for Slackware12/unRAID4.xx. BriT packaged up pycurl on his unRAID5 box. Could do with him hosting it EDIT: Just re-read his posts and his system is 64-bit
May 8, 201115 yr I'm running unRAID 5 yes. So is there nothing that works for me yet? What about this link http://slackbuilds.org/repository/13.1/libraries/pycurl/ from post 17?
May 8, 201115 yr You'll have to make your own package using that .SlackBuild file. You'll probably run in to a whole bunch of missing dependencies but I can help you with that..........probably
May 8, 201115 yr Alright lets do it...I'm willing to test it, as long as my system is safe! I tried installing the package that I linked right above, but here's what I got... root@tower:~# root@tower:~# python /mnt/cache/.pyload/pyLoadCore.py -bash: root@tower:~#: command not found root@tower:~# Fatal Python error: pycurl: libcurl link-time version is older than compile-time version -bash: Fatal: command not found root@tower:~# Aborted -bash: Aborted: command not found
May 8, 201115 yr The 'package' above is just the source code. You need to use the .slackbuild file to build that code into a package. Put the source code and the .slackbuild file in the same folder then start the build by entering 'pycurl.SlackBuild' The build will probably fail. If you post the error I can help you with the missing bits.
May 9, 201115 yr The 'package' above is just the source code. You need to use the .slackbuild file to build that code into a package. Put the source code and the .slackbuild file in the same folder then start the build by entering 'pycurl.SlackBuild' The build will probably fail. If you post the error I can help you with the missing bits. I'm not sure that I completly understand this...can you walk me through a little more? Is the pycurl.tar.gz considered the .slackbuild file you are talking about? Edit...I see it's under individual files, let me try it
May 9, 201115 yr Here's what I get... EDIT: this was with only the two files listed right below this...I will try with the method you just stated... root@tower:/boot/packages/SlackBuild# ls pycurl-7.19.0.tar.gz* pycurl.SlackBuild* root@tower:/boot/packages/SlackBuild# pycurl.SlackBuild pycurl-7.19.0/ pycurl-7.19.0/doc/ pycurl-7.19.0/doc/callbacks.html pycurl-7.19.0/doc/curlmultiobject.html pycurl-7.19.0/doc/curlobject.html pycurl-7.19.0/doc/curlshareobject.html pycurl-7.19.0/doc/pycurl.html pycurl-7.19.0/examples/ pycurl-7.19.0/examples/basicfirst.py pycurl-7.19.0/examples/file_upload.py pycurl-7.19.0/examples/linksys.py pycurl-7.19.0/examples/retriever-multi.py pycurl-7.19.0/examples/retriever.py pycurl-7.19.0/examples/sfquery.py pycurl-7.19.0/examples/xmlrpc_curl.py pycurl-7.19.0/python/ pycurl-7.19.0/python/curl/ pycurl-7.19.0/python/curl/__init__.py pycurl-7.19.0/src/ pycurl-7.19.0/src/Makefile pycurl-7.19.0/src/pycurl.c pycurl-7.19.0/tests/ pycurl-7.19.0/tests/test.py pycurl-7.19.0/tests/test_cb.py pycurl-7.19.0/tests/test_debug.py pycurl-7.19.0/tests/test_ftp.py pycurl-7.19.0/tests/test_getinfo.py pycurl-7.19.0/tests/test_gtk.py pycurl-7.19.0/tests/test_internals.py pycurl-7.19.0/tests/test_memleak.py pycurl-7.19.0/tests/test_multi.py pycurl-7.19.0/tests/test_multi2.py pycurl-7.19.0/tests/test_multi3.py pycurl-7.19.0/tests/test_multi4.py pycurl-7.19.0/tests/test_multi5.py pycurl-7.19.0/tests/test_multi6.py pycurl-7.19.0/tests/test_multi_socket.py pycurl-7.19.0/tests/test_multi_socket_select.py pycurl-7.19.0/tests/test_multi_timer.py pycurl-7.19.0/tests/test_multi_vs_thread.py pycurl-7.19.0/tests/test_post.py pycurl-7.19.0/tests/test_post2.py pycurl-7.19.0/tests/test_post3.py pycurl-7.19.0/tests/test_share.py pycurl-7.19.0/tests/test_socketopen.py pycurl-7.19.0/tests/test_stringio.py pycurl-7.19.0/tests/test_xmlrpc.py pycurl-7.19.0/tests/util.py pycurl-7.19.0/COPYING pycurl-7.19.0/COPYING2 pycurl-7.19.0/ChangeLog pycurl-7.19.0/INSTALL pycurl-7.19.0/MANIFEST.in pycurl-7.19.0/Makefile pycurl-7.19.0/README pycurl-7.19.0/TODO pycurl-7.19.0/setup.py pycurl-7.19.0/setup_win32_ssl.py pycurl-7.19.0/PKG-INFO Using curl-config (libcurl 7.19.0) running install running build running build_py creating build creating build/lib.linux-i686-2.6 creating build/lib.linux-i686-2.6/curl copying python/curl/__init__.py -> build/lib.linux-i686-2.6/curl running build_ext building 'pycurl' extension creating build/temp.linux-i686-2.6 creating build/temp.linux-i686-2.6/src gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DHAVE_CURL_OPENSSL=1 -DHAVE_CURL_OPENSSL=1 -DHAVE_CURL_SSL=1 -I/usr/include/python2.6 -c src/pycurl.c -o build/temp.linux-i686-2.6/src/pycurl.o src/pycurl.c:79:31: error: openssl/crypto.h: No such file or directory src/pycurl.c: In function 'pycurl_ssl_lock': src/pycurl.c:393: error: 'CRYPTO_LOCK' undeclared (first use in this function) src/pycurl.c:393: error: (Each undeclared identifier is reported only once src/pycurl.c:393: error: for each function it appears in.) src/pycurl.c: In function 'pycurl_ssl_init': src/pycurl.c:407: warning: implicit declaration of function 'CRYPTO_num_locks' src/pycurl.c:415: warning: implicit declaration of function 'CRYPTO_set_id_callback' src/pycurl.c:416: warning: implicit declaration of function 'CRYPTO_set_locking_callback' error: command 'gcc' failed with exit status 1
May 9, 201115 yr Source Code: pycurl-7.19.0.tar.gz SlackBuild: pycurl.tar.gz Download the above files. If you untar 'pycurl.tar.gz' you'll find the following inside • README • pycurl.SlackBuild • pycurl.info • slack-desc Put pycurl-7.19.0.tar.gz and the above files in a folder then enter 'pycurl.SlackBuild'
May 9, 201115 yr OK looks like you'll need to install a couple of packages from unmenu "C" compiler & development tools and openssl-solibs (OpenSSL shared libraries) Then try the build again
Archived
This topic is now archived and is closed to further replies.