Act Version 0.9
Released under GNU General Public License 2. See file COPYING.
Exception for the files ServerTcp*, ClientTcp*, Ssl* which are a future part of POE, the author is Rocco Caputo <troc at netrus.net>, and they are released under the Perl licence.
One of its core parts was extracted and refunded into a stand-alone server. Its starting point is patternServer.pl. You need to invoke that one at some point and let it run. All the other parts revolve around that server.
Unpack the archive somewhere (or fetch it from the CVS) and change into it. To run the different parts, you need to edit among others the file settings.pm (copy over the *.sample files over to a ~/.goanseech directory) to adjust it to your needs. The settings file is commented.
The README in the distro is most up to date concerning the install information, since i don't even know if a single person tried to use this, i wont put up much effort in the docu for the moment, you might change that by sending tons of mails requesting info ;)
Some global settings affecting most of the utilities that you might want to change:
This thing will read an actual list of definitions from a file (leve.series, defined in settings.pm) which consist of a pattern describing the textual part of some series (.e.g. archetype.*?force, the .*? being a Perl regexp meaning any char of any quantity in between those 2 words), the actually seeking episode number and the maximum episode number.
This server works with SSL, thus a valid certificate is needed. In case you don't have one, don't want to buy one, you can install the open-SSL software and generate one:
create a private RSA key: openssl genrsa -out
plain-rsa.pem 2048
create a certificate: openssl req -new -key
privkey.pem -out cert.csr
sign ourselves that certificate: openssl req
-new -x509 -key privkey.pem -out plain-cert.pem -days
1095
There should be a try at a makefile to install this whole thing, its a try, there's some strange stuff happening, and since my copy is already installed, feel free to fix it and send the patch...
Next utilities, which ease the update of the series, their names all hold somewhere the sequence GUI in them, the first part beeing usually the widget set they use (as e.g. gtkGUI.pl): they fire up a Perl-GTK/gnome interface which displays a listing of the patterns with their boundaries, with spin boxes to increase/decrease those boundaries. The Gnome and Gtk-clients are quite basic, actually its not possible to add intermediary episodes nor new series with those. A migration to Gtk2 now integrates a GUI with support of most of the abilities of the curses-client, you need some extra libs to run this client (. Averells Gtk2-POE adaptation and Jodrells FormFactory).
This script watches a given number of directories for files and matches them against the patterns, if a new episode appeared an update on the server is made. This is either a one shot script, thought to be launched by cron or a standalone daemon (depending on the setting dirscan.
sample crontab line to activate this: 1/15 * * * * (cd
~/leverloda/goanseech; ./dirWatcher.pl )
The directories are stored inside of a configuration file, the actually already checked files stored in a temporary file.
This one fetches from rootdir specified in the settings-file and url.conf the URL's to some index pages with torrent links. After fetching those pages, they are parsed, the URLS are extracted, if, after consultation with the server, some link descriptions match, they are checked, if its a HTML-URL its added to the pages to parse, if its a torrent-URL its added to the URL's to fetch. Once the whole stack of pages to parse is worked through the list of found torrent files are pushed into a stack of bit-torrent calls and worked through by the client..
Several settings in settings.pm regulate this script
Goanseech hasn't been verified by formal methods. It might (and probably will) perform badly in situations not foreseen.
Goanseech can handle multiple connections the scripts are still in alpha stage.
We encourage you to tweak. Please send us all the useful results. ;)
Make sure all the libs may be reached from the scripts
Even if i tried to work location independend, this might fail on some situations, so safest is to start the different parts from within the distribution directory.
Is your computer connected to the electric socket?
If you still can't start the script, make sure that you have
all the necessary Perl modules installed on your system. (See
lines "use ;" in *.pl and *.pm).
If you use the torrent extractor you need somewhere in your path the btdownloadheadless script
Read the README and if you still don't get it working drop me a mail.
B. Boettcher went through this in lots of sleepless nights, driven by the never-ending frustration of having to work himself and not having a subdued avid leech slave fetching for him Tera-bytes of anime.
You want to be here too?! Of course! Everyone wants. Just send us some useful patch and your name will be immortalized here forever.
Ideas and bug reports, etc. are all appreciated. Even better, if you can make the code function better on one topic without making it function worse somewhere else, that'd be superb.
Send mail to: goanseech-user at nongnu.org. Its completely ok to post without subscribing.