summaryrefslogtreecommitdiff
path: root/README
blob: 012839e421f4c01c839eb1ed57bc84de7abcbbfb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Tool to download Humble Indie Bundle binaries by file name
Author: Eric Anderson <ejona86@gmail.com>
Contributor: Thomas Riccardi <riccardi.thomas@gmail.com>
Contributor: Devin J. Pohly <djpohly@gmail.com>
Contributor: Yaohan Chen <yaohan.chen@gmail.com>

Description
===========

Primarily for use as a DLAGENT in makepkg.conf in Arch Linux, but generally
useful when needing to download a particular Humble Bundle file via a script.

It also manages a storage directory where already downloaded file can be found.

Installation and Usage
======================

This utility currently requires PhantomJS in order to extract links on Humble
Bundle's dynamically generated webpages. It also uses 'display', part of
ImageMagick, to handle any captchas. (It does not solve captchas for you, but
only displays a screenshot of the web page and asks you to enter the answers.)
It uses curl to download the file, or can simply provide the URL needed to
download the file so a different HTTP downloader such a Wget can be used.

To run hib-dlagent without installating it, add parameters '-S. -c.', which
tells it to look for scripts and the configuration file in the current
directory.

By default hib-dlagent assumes the .coffee scripts are installed in
/usr/share/hib-dlagent, and the .json configuration file is installed in
/etc/hib-dlagent. The provided install.sh will install files into these
locations. If they are installed elsewhere, it is necessary to either run
hib-dlagent with the corresponding -S and -c parameters, or edit the variables
SCRIPT_PATH and CONFIG_PATH in hib-dlagent.

To use as a DLAGENT for the 'hib' scheme, you can modify makepkg.conf:
DLAGENTS=(...
    'hib::/usr/bin/hib-dlagent -k 1a2b3c -o %o %u'
    ...)

Run with the -h argument for more information.

Troubleshooting
===============

Extracting URLs from Humble Bundle's mostly dynamically-generated website can be
error-prone, and time consuming. Currently it can take about 20 seconds for the
script to run. If the script fails or gets stuck, it may help to turn on logging
by setting the LOG environment variable to a non-empty value.

It is also possible to turn on PhantomJS's debug output with '-j --debug=true',
but note that this output is very verbose and targeted to developers, and it may
contain your Humble Bundle login information in plain text.