Name: python-mozbase Version: 0 Release: 0.3.gitb077641%{?dist} Summary: The Mozilla suite of Python utilities License: MPLv1.1 or GPLv2+ or LGPLv2+ URL: https://wiki.mozilla.org/Auto-tools/Projects/MozBase # https://nodeload.github.com/mozilla/mozbase/zipball/b0776416a9560f191934fb119bd97805985c1604 Source0: mozilla-mozbase-mozilla-central-25-gb077641.zip Patch0: python-mozbase-firefox-version.patch BuildRequires: python-devel python-setuptools BuildArch: noarch Requires: python-manifestdestiny = %{version}-%{release} Requires: python-mozdevice = %{version}-%{release} Requires: python-mozhttpd = %{version}-%{release} Requires: python-mozinfo = %{version}-%{release} Requires: python-mozinstall = %{version}-%{release} Requires: python-mozlog = %{version}-%{release} Requires: python-mozprocess = %{version}-%{release} Requires: python-mozprofile = %{version}-%{release} Requires: python-mozrunner = %{version}-%{release} %description Mozbase is the Mozilla suite of Python utilities. This package installs all utilities and Python libraries from Mozbase. %package -n python-manifestdestiny Summary: Universal manifests for Mozilla test harnesses Group: Development/Languages %description -n python-manifestdestiny Universal manifests for Mozilla test harnesses %package -n python-mozdevice Summary: Mozilla-authored device management Group: Development/Languages %description -n python-mozdevice Mozdevice provides an interface to interact with a remote device such as an Android phone connected to a workstation. Currently there are two implementations of the interface: one uses a TCP-based protocol to communicate with a server running on the device, another uses Android's adb utility. %package -n python-mozhttpd Summary: Basic Python webserver Group: Development/Languages %description -n python-mozhttpd Basic Python webserver. %package -n python-mozinfo Summary: Interface to transform system information to a format palatable to Mozilla Group: Development/Languages %description -n python-mozinfo Throughout Mozilla Python code, checking the underlying platform is done in many different ways. The various checks needed lead to a lot of copy and pasting, leaving the reader to wonder....is this specific check necessary for (e.g.) an operating system? Because information is not consolidated, checks are not done consistently, nor is it defined what we are checking for. MozInfo proposes to solve this problem. MozInfo is a bridge interface, making the underlying (complex) plethora of OS and architecture combinations conform to a subset of values of relevance to Mozilla software. The current implementation exposes relevant key, values: `os`, `version`, `bits`, and `processor`. %package -n python-mozinstall Summary: A utility package for installing Mozilla applications on various platforms Group: Development/Languages Requires: python-mozinfo = %{version}-%{release} %description -n python-mozinstall Mozinstall is a Python package for installing Mozilla applications on various platforms. For example, depending on the platform, Firefox can be distributed as a zip, tar.bz2, exe or dmg file or cloned from a repository. Mozinstall takes the hassle out of extracting and/or running these files and for convenience returns the full path to the application's binary in the install directory. In the case that mozinstall is invoked from the command line, the binary path will be printed to standard output. %package -n python-mozlog Summary: Robust log handling specialized for logging in the Mozilla universe Group: Development/Languages %description -n python-mozlog Mozlog is a Python package intended to simplify and standardize logs in the Mozilla universe. It wraps around Python's logging module and provides some additional functionality. %package -n python-mozprocess Summary: Mozilla-authored process handling Group: Development/Languages Requires: python-mozinfo = %{version}-%{release} %description -n python-mozprocess Mozprocess provides Python process management via an operating system and platform transparent interface to Mozilla platforms of interest. Mozprocess aims to provide the ability to robustly terminate a process (by timeout or otherwise), along with any child processes, on Windows, OS X, and Linux. Mozprocess utilizes and extends `subprocess.Popen` to these ends. %package -n python-mozprofile Summary: Handling of Mozilla XUL app profiles Group: Development/Languages Requires: python-manifestdestiny = %{version}-%{release} %description -n python-mozprofile Mozprofile is a Python tool for creating and managing profiles for Mozilla's applications (Firefox, Thunderbird, etc.). In addition to creating profiles, mozprofile can install addons and set preferences. Mozprofile can be utilized from the command line or as an API. %package -n python-mozrunner Summary: Reliable start/stop/configuration of Mozilla Applications (Firefox, Thunderbird) Group: Development/Languages Requires: python-mozinfo = %{version}-%{release} Requires: python-mozprocess = %{version}-%{release} Requires: python-mozprofile = %{version}-%{release} %description -n python-mozrunner Mozrunner is a Python package which handles running of Mozilla applications. Mozrunner utilizes mozprofile for managing application profiles and mozprocess for robust process control. Mozrunner may be used from the command line or programmatically as an API. %prep %setup -q -n mozilla-mozbase-b077641 %patch0 -p1 -b .firefox-version %build # empty %check for PROJECT in manifestdestiny mozdevice mozhttpd mozinfo mozinstall mozlog mozprocess mozprofile mozrunner do pushd $PROJECT PYTHONPATH=%{buildroot}%{python_sitelib} %{__python} setup.py test popd done %install for PROJECT in manifestdestiny mozdevice mozhttpd mozinfo mozinstall mozlog mozprocess mozprofile mozrunner do pushd $PROJECT %{__python} setup.py install -O1 --root %{buildroot} popd done chmod +x %{buildroot}%{python_sitelib}/mozprocess/{pid,wpk}.py chmod +x %{buildroot}%{python_sitelib}/mozinfo/mozinfo.py chmod +x %{buildroot}%{python_sitelib}/mozprofile/prefs.py chmod +x %{buildroot}%{python_sitelib}/mozhttpd/mozhttpd.py chmod +x %{buildroot}%{python_sitelib}/manifestparser/manifestparser.py chmod +x %{buildroot}%{python_sitelib}/mozrunner/utils.py %files %doc README %files -n python-manifestdestiny %{_bindir}/manifestparser %{python_sitelib}/manifestparser %{python_sitelib}/ManifestDestiny* %doc manifestdestiny/README.md %files -n python-mozdevice %{python_sitelib}/mozdevice* %doc mozdevice/README.md %files -n python-mozhttpd %{_bindir}/mozhttpd %{python_sitelib}/mozhttpd* %doc mozhttpd/README.md %files -n python-mozinfo %{_bindir}/mozinfo %{python_sitelib}/mozinfo* %doc mozinfo/README.md %files -n python-mozinstall %{_bindir}/mozinstall %{python_sitelib}/mozinstall %{python_sitelib}/mozInstall* %doc mozinstall/README.md %files -n python-mozlog %{python_sitelib}/mozlog* %doc mozlog/README.md %files -n python-mozprocess %{python_sitelib}/mozprocess* %doc mozprocess/README.md %files -n python-mozprofile %{_bindir}/mozprofile %{python_sitelib}/mozprofile* %doc mozprofile/README.md %files -n python-mozrunner %{_bindir}/mozrunner %{python_sitelib}/mozrunner* %doc mozrunner/README.md %changelog * Mon Feb 27 2012 Karel Klíč - 0-0.3.gitb077641 - Setup check to use libraries from the build root * Tue Jan 31 2012 Karel Klíč - 0-0.2.gitb077641 - Added patch firefox-version to fix the browser version check on Linux * Wed Jan 25 2012 Karel Klíč - 0-0.1.gitb077641 - Initial packaging