media/vimeo.lua: Rewrite for can_parse_url
[libquvi-scripts.git] / README
blobb775f364ad4c9374ffcdfcf29df69f61f4fce75d
1 General
2 =======
4 libquvi-scripts contains the Lua scripts for libquvi that it uses to parse
5 the media properties.
7 gitweb: <http://repo.or.cz/w/libquvi-scripts.git>
8 Home  : <http://quvi.sourceforge.net/>
11 Installation
12 ============
14 Notes
15 -----
17   * This document does not cover how to use GNU Autotools for building
18 and installing software, instead, refer to the GNU Autotools documentation,
19 the INSTALL file and the "configure --help" output for more information.
21   * If you're not familiar with GNU Autotools and/or installing software
22 from the source code, you may prefer to install libquvi-scripts using a
23 binary package, instead. You can find libquvi-scripts packaged for many
24 distros already.
26   * If you have previously installed libquvi-scripts from the source code
27 to your system, the recommended practice is to uninstall the previous
28 installation first, before you continue with the new one. You would,
29 typically, run "make uninstall" (as root if necessary) from the same
30 directory you ran "make install" from.
32   * If you are building libquvi-scripts from the git repository code, run
33 the `autogen.sh' first. This generates the configuration files. See also
34 the -h output for any additional info.
37 Simple install procedure
38 ------------------------
40   % ./configure && make
42   [ Become root if necessary ]
43   % make install
45 The configure script supports also the following options which are
46 relevant to the installation:
48   --with(out)-geoblocked (default: yes)
50     Install the scripts written for websites that are known to geoblock
51     IP addresses outside of their definition of the accepted IP ranges.
53     These are usually websites that block IPs from countries, sometimes
54     even cities, based on the registered geological location of the IP
55     address.
57   --with(out)-fixme (default: no)
59     Install the scripts that have been marked as "FIXME". These are
60     known to be broken and need to be fixed. Patches welcome.
62   --with(out)-nsfw (default: no)
64     Install the scripts written for websites that host NSFW media.
66   --with(out)-manual (default:yes)
68     Install the manual page for libquvi-scripts.
70   --with(out)-tests (default: no)
72     Install with the tests. This enables the testsuite, see "Tests"
73     for more information.
75     Note that the --with(out)-* options are ignored by the testsuite.
76     If you need more control over which of the tests should be run,
77     see the "Tests: Environment variables" for more information.
80 Requirements
81 ------------
83 * LuaExpat 1.2.0
84   http://matthewwild.co.uk/projects/luaexpat/
86 * pkg-config for tracking the compilation flags needed for libraries
87   http://www.freedesktop.org/software/pkgconfig/
89 * GNU make is recommended
90   http://www.gnu.org/software/make
92 When the configure script is run with the `--with-tests':
94   * libquvi 0.9
95     http://quvi.sf.net/
97   * GLib 2.24.2
98     http://library.gnome.org/devel/glib/
100   * libcurl 7.21.0
101     http://curl.haxx.se/
104 Installation directories
105 ------------------------
107 The location of the installed files is determined by the --prefix
108 and the --exec-prefix options given to the configure script.
110 The .pc file for libquvi-scripts is installed in $exec_prefix/lib/pkgconfig
111 to provide information when compiling packages that depend on libquvi-scripts.
114 Tests
115 =====
117 The tests use the GLib framework for testing. All of these tests require
118 the presence of the libquvi and a working internet connection. The tests
119 reside in the tests/ directory.
121 When building with GNU Autotools,
123   'make check'  will run the test programs listed in the TEST_PROGS
124   variable in the tests/Makefile.am . It will fail if any of the
125   tests fail. This is identical to running 'make test'.
127     NOTE: You must run `configure --with-tests' to enable the tests,
128           they are not enabled by default.
130   'make distcheck'  will fail if any of the tests fail. Note that this
131   would, typically, require:
132     env DISTCHECK_CONFIGURE_FLAGS=--with-tests  make distcheck
134 The tests use the gtester(1) and gtester-report(1) commands to produce
135 the logs. These programs are part of GLib. The test programs produce:
136   $(top_builddir)/tests/$test_program.html  # gtester-report
137   $(top_builddir)/tests/$test_program.xml   # gtester
140 Tests: Environment variables
141 ----------------------------
143 The testsuite supports the following environment variables:
145   TEST_VERBOSE  will enable verbose libcurl(3) output.
147   TEST_SKIP  will disable the specified tests. This list is a comma-separated
148   list of test names. The comma-separated values are treated as regular
149   expression patterns.
151   TEST_GEOBLOCKED  will enable the tests for the scripts that have been
152   marked as "geoblocked". These are skipped by default.
154   TEST_FIXME  will enable the tests for the scripts that have been marked
155   as "FIXME". These are skipped by default.
157   TEST_NSFW  will enable the tests for the scripts that have been marked
158   as "NSFW". These are skipped by default.
160   TEST_LEVEL  will set the level ('basic', 'complete') of the tests.
161     'complete'  - additional and mandatory script tests
162     'basic'     - mandatory script tests only (default)
164 Example:
166   % env TEST_SKIP=test_media_,test_scan_  make test
168   % env TEST_VERBOSE=1 TEST_FIXME=1 TEST_GEOBLOCKED=1 TEST_LEVEL=complete \
169       TEST_SKIP=test_media_vimeo,test_playlist_youtube  make test
172 Tests: Scripts
173 --------------
175 The tests/ directory contains:
177   'find_tests.sh'   will dump a list of available tests.
179   'run_tests.sh'  is a convenience script that wraps many of the
180   testsuite features making them available via GUI. Note that
181   this script requires zenity(1).
183 For more info, run these scripts with the '-h' switch.
186 Tests: Proxy
187 ------------
189 If you need to use a proxy, refer to the curl(1) manual page for a
190 complete list of the supported environment variables (e.g. http_proxy).
192   libquvi (and libquvi-scripts) uses libcurl to connect to the internet.
195 How to report bugs
196 ==================
198 Please see: http://quvi.sourceforge.net/#bugs
201 Patches
202 =======
204 Please see: http://quvi.sourceforge.net/#contrib
207 License
208 =======
210 libquvi-scripts is Free Software, licensed under the LGPLv2.1+, with the
211 exception of:
212   share/common/quvi/url.lua, which is licensed under the MIT license