mirror of
https://github.com/arsenetar/dupeguru.git
synced 2025-03-11 14:14:37 +00:00
Added bootstrap script for easy build setup
This commit is contained in:
parent
b9124a497c
commit
d11ec557e7
22
README.md
22
README.md
@ -21,11 +21,22 @@ git subtrees:
|
|||||||
|
|
||||||
# How to build dupeGuru from source
|
# How to build dupeGuru from source
|
||||||
|
|
||||||
|
## The very, very, very easy way
|
||||||
|
|
||||||
|
If you're on Linux or Mac, there's a bootstrap script that will make building very, very easy. There
|
||||||
|
might be some things that you need to install manually on your system, but the bootstrap script will
|
||||||
|
tell you when what you need to install. You can run the bootstrap with:
|
||||||
|
|
||||||
|
./bootstrap.sh
|
||||||
|
|
||||||
|
and follow instructions from the script. You can then ignore the rest of the build documentation.
|
||||||
|
|
||||||
## Prerequisites installation
|
## Prerequisites installation
|
||||||
|
|
||||||
Then, you have to make sure that your system has to "non-pip-installable" prerequisites installed:
|
Prerequisites are installed through `pip`. However, some of them are not "pip installable" and have
|
||||||
|
to be installed manually.
|
||||||
|
|
||||||
* All systems: [Python 3.2+][python] and [distribute][distribute]
|
* All systems: [Python 3.2+][python] and [setuptools][setuptools]
|
||||||
* Mac OS X: The last XCode to have the 10.6 SDK included.
|
* Mac OS X: The last XCode to have the 10.6 SDK included.
|
||||||
* Windows: Visual Studio 2008, [PyQt 4.7+][pyqt], [cx_Freeze][cxfreeze] and
|
* Windows: Visual Studio 2008, [PyQt 4.7+][pyqt], [cx_Freeze][cxfreeze] and
|
||||||
[Advanced Installer][advinst] (you only need the last two if you want to create an installer)
|
[Advanced Installer][advinst] (you only need the last two if you want to create an installer)
|
||||||
@ -55,13 +66,12 @@ Then, you can install pip requirements in your virtualenv:
|
|||||||
## Alternative: pyvenv
|
## Alternative: pyvenv
|
||||||
|
|
||||||
If you're on Python 3.3+, you can use the built-in `pyvenv` instead of `virtualenv`. `pyvenv` is
|
If you're on Python 3.3+, you can use the built-in `pyvenv` instead of `virtualenv`. `pyvenv` is
|
||||||
pretty much the same thing as `virtualenv`, except that it doesn't install distribute and pip, so it
|
pretty much the same thing as `virtualenv`, except that it doesn't install setuptools and pip, so it
|
||||||
has to be installed manually:
|
has to be installed manually:
|
||||||
|
|
||||||
$ pyvenv --system-site-packages env
|
$ pyvenv --system-site-packages env
|
||||||
$ source env/bin/activate
|
$ source env/bin/activate
|
||||||
$ curl -O http://python-distribute.org/distribute_setup.py
|
$ wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python
|
||||||
$ python distribute_setup.py
|
|
||||||
$ easy_install pip
|
$ easy_install pip
|
||||||
|
|
||||||
## Actual building and running
|
## Actual building and running
|
||||||
@ -78,7 +88,7 @@ You can also package dupeGuru into an installable package with:
|
|||||||
|
|
||||||
[documentation]: http://www.hardcoded.net/dupeguru/help/en/
|
[documentation]: http://www.hardcoded.net/dupeguru/help/en/
|
||||||
[python]: http://www.python.org/
|
[python]: http://www.python.org/
|
||||||
[distribute]: https://pypi.python.org/pypi/distribute
|
[setuptools]: https://pypi.python.org/pypi/setuptools
|
||||||
[pyqt]: http://www.riverbankcomputing.com
|
[pyqt]: http://www.riverbankcomputing.com
|
||||||
[cxfreeze]: http://cx-freeze.sourceforge.net/
|
[cxfreeze]: http://cx-freeze.sourceforge.net/
|
||||||
[advinst]: http://www.advancedinstaller.com
|
[advinst]: http://www.advancedinstaller.com
|
||||||
|
25
bootstrap.sh
Executable file
25
bootstrap.sh
Executable file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
command -v pyvenv >/dev/null 2>&1 || { echo >&2 "Python 3.3 required. Install it and try again. Aborting"; exit 1; }
|
||||||
|
|
||||||
|
if [ ! -d "env" ]; then
|
||||||
|
echo "No virtualenv. Creating one"
|
||||||
|
pyvenv --system-site-packages env
|
||||||
|
source env/bin/activate
|
||||||
|
wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python
|
||||||
|
easy_install pip
|
||||||
|
else
|
||||||
|
echo "There's already an env. Activating it"
|
||||||
|
source env/bin/activate
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Installing pip requirements"
|
||||||
|
if [ "$(uname)" == "Darwin" ]; then
|
||||||
|
pip install -r requirements-osx.txt
|
||||||
|
else
|
||||||
|
python3 -c "import PyQt4" >/dev/null 2>&1 || { echo >&2 "PyQt 4.8+ required. Install it and try again. Aborting"; exit 1; }
|
||||||
|
pip install -r requirements.txt
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Bootstrapping complete! You can now configure, build and run dupeGuru with:"
|
||||||
|
echo ". env/bin/activate && python configure.py && python build.py && python run.py"
|
2
requirements-extra.txt
Normal file
2
requirements-extra.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
pytest>=2.0.0
|
||||||
|
pytest-monkeyplus>=1.0.0
|
@ -3,5 +3,3 @@ Send2Trash>=1.3.0
|
|||||||
sphinx>=1.1.3
|
sphinx>=1.1.3
|
||||||
polib>=0.7.0
|
polib>=0.7.0
|
||||||
hsaudiotag3k>=1.1.3
|
hsaudiotag3k>=1.1.3
|
||||||
pytest>=2.0.0
|
|
||||||
pytest-monkeyplus>=1.0.0
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user