[pitivi] build: Move the development dependencies in the sandbox



commit a2cec533992a0cfec11fcc66ff0403037c9f89fe
Author: Alexandru Băluț <alexandru balut gmail com>
Date:   Tue Dec 3 01:59:24 2019 +0100

    build: Move the development dependencies in the sandbox
    
    The production sandbox is at flathub.
    
    The sandbox we use is for development and master builds.

 .pre-commit-config.yaml               |   7 +
 bin/pitivi-env                        |  16 +--
 build/flatpak/ninja-configure         |  12 --
 build/flatpak/org.pitivi.Pitivi.json  |  62 +++-----
 build/flatpak/pitivi-flatpak          |  38 +----
 build/flatpak/py-configure            |  26 ----
 build/flatpak/python3-hotdoc.json     | 262 ++++++++++++++++++++++++++++++++++
 build/flatpak/python3-ipdb.json       |  84 +++++++++++
 build/flatpak/python3-nose2.json      |  24 ++++
 build/flatpak/python3-pre-commit.json |  69 +++++++++
 build/flatpak/python3-pylint.json     |  64 +++++++++
 pre-commit.hook                       |  24 +---
 12 files changed, 545 insertions(+), 143 deletions(-)
---
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index e53fedcd..16030f07 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -25,3 +25,10 @@ repos:
         args:
         # http://www.pydocstyle.org/en/latest/error_codes.html
         -   --ignore=D1,D203,D213,D401,D406,D407,D413
+-   repo: local
+    hooks:
+    -   id: pylint
+        name: pylint
+        entry: python3 -m pylint.__main__ --rcfile=pylint.rc
+        language: system
+        types: [python]
diff --git a/bin/pitivi-env b/bin/pitivi-env
index b53083b2..7fa70c85 100755
--- a/bin/pitivi-env
+++ b/bin/pitivi-env
@@ -7,7 +7,7 @@ SCRIPT=${BASH_SOURCE[0]:-$0}
 
 [[ "${BASH_SOURCE[0]}" == "$0" ]] \
     && echo "This script should not be executed but sourced like:" \
-    && echo "    $ source $0" \
+    && echo "    $ . $0" \
     && echo \
     && exit 1
 
@@ -23,11 +23,11 @@ alias ptvenv="$PITIVI_REPO_DIR/build/flatpak/pitivi-flatpak"
 echo "-> Setting up the prefix for the sandbox..."
 # This builds the local flatpak repo if it is not yet built.
 ptvenv --init
-if [ "$?" = "0" ];
+if [ "$?" = "0" ]
 then
-    echo Sandbox ready.
+    echo "Sandbox ready."
 
-    echo Setting up aliases etc. so configuring, building takes place in the sandbox...
+    echo "Setting up aliases etc. so configuring, building takes place in the sandbox..."
 
     # Meson sets up the build directory where ninja works.
     # Consider using `setup` instead of `meson`, see below.
@@ -51,18 +51,14 @@ then
     alias ptvtests="ptvenv gst-validate-launcher $PITIVI_REPO_DIR/tests/ptv_testsuite.py"
 
     # Prefer to run some binaries in the sandbox. For example "python3".
-    for i in `$PITIVI_REPO_DIR/build/flatpak/pitivi-flatpak -q ls /app/bin/`;
+    for i in `$PITIVI_REPO_DIR/build/flatpak/pitivi-flatpak -q ls /app/bin/`
     do
         alias $i="ptvenv $i"
     done
 
     alias pitivi="ptvenv $PITIVI_REPO_DIR/bin/pitivi"
 
-    # Enter the Python virtual env to have specific dev tools,
-    # such as git-phab, pre-commit, etc.
-    source $PITIVI_REPO_DIR/build/flatpak/pyvenv/bin/activate
-
-    # Install our pre-commit git hook, for doing clean commits.
+    echo "Installing our pre-commit git hook, for doing clean commits..."
     rm -f .git/hooks/pre-commit
     ln -s ../../pre-commit.hook .git/hooks/pre-commit
 
diff --git a/build/flatpak/org.pitivi.Pitivi.json b/build/flatpak/org.pitivi.Pitivi.json
index 4fe77efd..cbdf9c2a 100644
--- a/build/flatpak/org.pitivi.Pitivi.json
+++ b/build/flatpak/org.pitivi.Pitivi.json
@@ -167,42 +167,6 @@
                 }
             ]
         },
-        {
-            "name": "ipdb",
-            "build-options": {
-                "build-args": [
-                    "--share=network"
-                ]
-            },
-            "config-opts": [
-                "--module=ipdb==0.11"
-            ],
-            "sources": [
-                {
-                    "type": "file",
-                    "path": "py-configure",
-                    "dest-filename": "configure"
-                }
-            ]
-        },
-        {
-            "name": "nose2",
-            "build-options": {
-                "build-args": [
-                    "--share=network"
-                ]
-            },
-            "config-opts": [
-                "--module=nose2==0.8.0"
-            ],
-            "sources": [
-                {
-                    "type": "file",
-                    "path": "py-configure",
-                    "dest-filename": "configure"
-                }
-            ]
-        },
         {
             "name": "gsound",
             "ensure-writable": [
@@ -254,7 +218,9 @@
                 {
                     "type": "archive",
                     "url": "https://downloads.sourceforge.net/project/gmerlin/gavl/1.4.0/gavl-1.4.0.tar.gz";,
-                    "mirror-urls": ["http://http.debian.net/debian/pool/main/g/gavl/gavl_1.4.0.orig.tar.gz";],
+                    "mirror-urls": [
+                        "http://http.debian.net/debian/pool/main/g/gavl/gavl_1.4.0.orig.tar.gz";
+                    ],
                     "sha256": "51aaac41391a915bd9bad07710957424b046410a276e7deaff24a870929d33ce"
                 },
                 {
@@ -263,12 +229,17 @@
                 },
                 {
                     "type": "shell",
-                    "commands": ["pwd", "cp -p /usr/share/automake-*/config.{sub,guess} ."]
+                    "commands": [
+                        "pwd",
+                        "cp -p /usr/share/automake-*/config.{sub,guess} ."
+                    ]
                 },
                 {
                     "type": "script",
                     "dest-filename": "autogen.sh",
-                    "commands": ["autoreconf -vfi"]
+                    "commands": [
+                        "autoreconf -vfi"
+                    ]
                 }
             ]
         },
@@ -303,7 +274,9 @@
                 {
                     "type": "archive",
                     "url": "https://downloads.sourceforge.net/lame/lame-3.100.tar.gz";,
-                    "mirror-urls": ["http://http.debian.net/debian/pool/main/l/lame/lame_3.100.orig.tar.gz";],
+                    "mirror-urls": [
+                        "http://http.debian.net/debian/pool/main/l/lame/lame_3.100.orig.tar.gz";
+                    ],
                     "sha256": "ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e"
                 }
             ]
@@ -314,7 +287,9 @@
                 {
                     "type": "archive",
                     "url": "https://downloads.sourceforge.net/opencore-amr/vo-aacenc/vo-aacenc-0.1.3.tar.gz";,
-                    "mirror-urls": 
["http://ftp.debian.org/debian/pool/main/v/vo-aacenc/vo-aacenc_0.1.3.orig.tar.gz";],
+                    "mirror-urls": [
+                        "http://ftp.debian.org/debian/pool/main/v/vo-aacenc/vo-aacenc_0.1.3.orig.tar.gz";
+                    ],
                     "sha256": "e51a7477a359f18df7c4f82d195dab4e14e7414cbd48cf79cc195fc446850f36"
                 }
             ]
@@ -600,6 +575,11 @@
                 }
             ]
         },
+        "python3-ipdb.json",
+        "python3-nose2.json",
+        "python3-pre-commit.json",
+        "python3-hotdoc.json",
+        "python3-pylint.json",
         {
             "name": "pitivi",
             "buildsystem": "meson",
diff --git a/build/flatpak/pitivi-flatpak b/build/flatpak/pitivi-flatpak
index 8dcd0482..65635ce0 100755
--- a/build/flatpak/pitivi-flatpak
+++ b/build/flatpak/pitivi-flatpak
@@ -28,7 +28,6 @@ import shutil
 import subprocess
 import sys
 import tempfile
-import venv
 from urllib.error import URLError
 from urllib.parse import urlparse
 from urllib.request import urlretrieve
@@ -120,6 +119,10 @@ def expand_manifest(manifest_path, outfile, basedir, gst_version, branchname):
                     outfile, gst_version)
 
     for module in template["modules"]:
+        if isinstance(module, str):
+            # This is the name of a file to be included containing modules.
+            continue
+
         if module["sources"][0]["type"] != "git":
             continue
 
@@ -509,7 +512,6 @@ class PitiviFlatpak:
             self.install_flatpak_runtimes()
             if missing_prefix or self.update:
                 self.setup_sandbox()
-            self.install_development_tools()
         else:
             if missing_prefix:
                 Console.message("%sPrefix missing, create it with: %s --init%s",
@@ -615,8 +617,8 @@ class PitiviFlatpak:
         # We need access to the host from the sandbox to run.
         with tempfile.NamedTemporaryFile() as coredump:
             with tempfile.NamedTemporaryFile() as stderr:
-                subprocess.check_call(["coredumpctl", "dump"] + shlex.split(self.coredumpctl_matches),
-                                      stdout=coredump, stderr=stderr)
+                command = ["coredumpctl", "dump"] + shlex.split(self.coredumpctl_matches)
+                subprocess.check_call(command, stdout=coredump, stderr=stderr)
 
                 with open(stderr.name, 'r') as stderrf:
                     stderr = stderrf.read()
@@ -629,32 +631,6 @@ class PitiviFlatpak:
 
                 self.run_in_sandbox(*args, mount_tmp=True)
 
-    def install_development_tools(self):
-        venv_path = os.path.join(self.scriptdir, "pyvenv")
-        Console.message(
-            "Setting up a Python virtual env for development: %s", venv_path)
-        if not os.path.isdir(venv_path):
-            venv.create(venv_path, with_pip=True)
-
-        activate_script = os.path.join(venv_path, "bin", "activate")
-        pip_modules = "git-pylint-commit-hook pre-commit pylint"
-        Console.message(
-            "Installing development tools in the Python virtual env: %s", pip_modules)
-        subprocess.check_call(
-            ". %s && pip install -q -U %s" % (activate_script, pip_modules),
-            shell=True)
-
-        # git-pylint-commit-hook must run pylint in the sandbox so it uses
-        # the gi Python modules in there. At the same time it also has to be
-        # installed in the development pyvenv which is outside the sandbox
-        # because git-pylint-commit-hook needs to import pylint.config.
-        pip_modules = ["pylint"]
-        Console.message(
-            "Installing development tools in the sandbox: %s", pip_modules)
-        self.run_in_sandbox("pip3", "install", "-q", "-U", "--user",
-                            "--no-warn-script-location", *pip_modules,
-                            exit_on_failure=True)
-
     def run_in_sandbox(self, *args, exit_on_failure=False, cwd=None, mount_tmp=False):
         if not args:
             return
@@ -673,7 +649,7 @@ class PitiviFlatpak:
         forwarded = {}
         for envvar, value in os.environ.items():
             if envvar.split("_")[0] in ("G", "GDK", "GST", "GTK", "LC", "PITIVI") or \
-                    envvar in ["DISPLAY", "LANG"]:
+                    envvar in ["DISPLAY", "GIT_INDEX_FILE", "LANG", "PYTHONPATH"]:
                 forwarded[envvar] = value
 
         prefixes = {
diff --git a/build/flatpak/python3-hotdoc.json b/build/flatpak/python3-hotdoc.json
new file mode 100644
index 00000000..24a97914
--- /dev/null
+++ b/build/flatpak/python3-hotdoc.json
@@ -0,0 +1,262 @@
+{
+    "name": "python3-hotdoc-and-requirements",
+    "buildsystem": "simple",
+    "build-commands": [],
+    "modules": [
+        {
+            "name": "python3-sphinx",
+            "buildsystem": "simple",
+            "build-commands": [
+                "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} sphinx"
+            ],
+            "sources": [
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/b9/2e/64db92e53b86efccfaea71321f597fa2e1b2bd3853d8ce658568f7a13094/MarkupSafe-1.1.1.tar.gz";,
+                    "sha256": "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/e7/f9/f0b53f88060247251bf481fa6ea62cd0d25bf1b11a87888e53ce5b7c8ad2/pytz-2019.3-py2.py3-none-any.whl";,
+                    "sha256": "1c557d7d0e871de1f5ccd5833f60fb2550652da6be2693c1e02300743d21500d"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl";,
+                    "sha256": "a8a318824cc77d1fd4b2bec2ded92646630d7fe8619497b142c84a9e6f5a7293"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl";,
+                    "sha256": "ea8b7f6188e6fa117537c3df7da9fc686d485087abf6ac197f9c46432f7e4a3c"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl";,
+                    "sha256": "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl";,
+                    "sha256": "017c25db2a153ce562900032d5bc68e9f191e44e9a0f762f373977de9df1fbb3"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl";,
+                    "sha256": "1f1b7d42e254082a9db6279deae68afb421ceba6158efa6131de7b3003ee93fd"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/c0/0c/fc2e007d9a992d997f04a80125b0f183da7fb554f1de701bbb70a8e7d479/pyparsing-2.4.5-py2.py3-none-any.whl";,
+                    "sha256": "20f995ecd72f2a1f4bf6b072b63b22e2eb457836601e76d6e5dfcd75436acc1f"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/be/39/32da3184734730c0e4d3fa3b2b5872104668ad6dc1b5a73d8e477e5fe967/Pygments-2.5.2-py2.py3-none-any.whl";,
+                    "sha256": "2a3fe295e54a20164a9df49c75fa58526d3be48e14aceba6d6b1e8ac0bfd6f1b"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/65/e0/eb35e762802015cab1ccee04e8a277b03f1d8e53da3ec3106882ec42558b/Jinja2-2.10.3-py2.py3-none-any.whl";,
+                    "sha256": "74320bb91f31270f9551d46522e33af46a80c3d619f4a4bf42b3164d30b5911f"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/2c/60/f2af68eb046c5de5b1fe6dd4743bf42c074f7141fe7b2737d3061533b093/Babel-2.7.0-py2.py3-none-any.whl";,
+                    "sha256": "af92e6106cb7c55286b25b38ad7695f8b4efb36a90ba483d7f7a6628c46158ab"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/10/ad/00b090d23a222943eb0eda509720a404f531a439e803f6538f35136cae9e/alabaster-0.7.12-py2.py3-none-any.whl";,
+                    "sha256": "446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/e4/35/80a67cc493f4a8a9634ab203a77aaa1b84d79ccb1c02eca72cb084d2c7f7/sphinxcontrib_htmlhelp-1.0.2-py2.py3-none-any.whl";,
+                    "sha256": "d4fd39a65a625c9df86d7fa8a2d9f3cd8299a3a4b15db63b50aac9e161d8eff7"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/b0/a3/fea98741f0b2f2902fbf6c35c8e91b22cd0dd13387291e81d457f9a93066/sphinxcontrib_devhelp-1.0.1-py2.py3-none-any.whl";,
+                    "sha256": "9512ecb00a2b0821a146736b39f7aeb90759834b07e81e8cc23a9c70bacb9981"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/22/cd/a6aa959dca619918ccb55023b4cb151949c64d4d5d55b3f4ffd7eee0c6e8/docutils-0.15.2-py3-none-any.whl";,
+                    "sha256": "6c4f696463b79f1fb8ba0c594b63840ebd41f059e92b31957c46b74a4599b6d0"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl";,
+                    "sha256": "9cf5292fcd0f598c671cfc1e0d7d1a7f13bb8085e9a590f48c010551dc6c4b31"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/7d/4b/cdf1113a0e88b641893b814e9c36f69a6fda28cd88b62c7f0d858cde3166/snowballstemmer-2.0.0-py2.py3-none-any.whl";,
+                    "sha256": "209f257d7533fdb3cb73bdbd24f436239ca3b2fa67d56f6ff88e86be08cc5ef0"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl";,
+                    "sha256": "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/57/b3/3648e48fa5682e61e9839d62de4e23af1795ceb738d68d73bd974257a95c/sphinxcontrib_serializinghtml-1.1.3-py2.py3-none-any.whl";,
+                    "sha256": "db6615af393650bf1151a6cd39120c29abaf93cc60db8c48eb2dddbfdc3a9768"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/fc/b6/aef66b4c52a6ad6ac18cf6ebc5731ed06d8c9ae4d3b2d9951f261150be67/imagesize-1.1.0-py2.py3-none-any.whl";,
+                    "sha256": "3f349de3eb99145973fefb7dbe38554414e5c30abd0c8e4b970a7c9d09f3a1d8"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/cf/94/9672c2d4b126e74c4496c6b3c58a8b51d6419267be9e70660ba23374c875/packaging-19.2-py2.py3-none-any.whl";,
+                    "sha256": "d9551545c6d761f3def1677baf08ab2a3ca17c56879e70fecba2fc4dde4ed108"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/13/9a/4428b3114d654cb1cd34d90d5e6fab938d5436f94a571155187ea1dd78b4/sphinxcontrib_applehelp-1.0.1-py2.py3-none-any.whl";,
+                    "sha256": "fb8dee85af95e5c30c91f10e7eb3c8967308518e0f7488a2828ef7bc191d0d5d"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/ce/5b/4747c3ba98b3a3e21a66faa183d8f79b9ded70e74212a7988d236a6eb78a/sphinxcontrib_qthelp-1.0.2-py2.py3-none-any.whl";,
+                    "sha256": "513049b93031beb1f57d4daea74068a4feb77aa5630f856fcff2e50de14e9a20"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/be/a4/f42463e18bb36a47325d43004ab6f4afb5c863e6ffdb936104acc15cfc11/Sphinx-2.2.2-py3-none-any.whl";,
+                    "sha256": "3b16e48e791a322d584489ab28d8800652123d1fbfdd173e2965a31d40bf22d7"
+                }
+            ]
+        },
+        {
+            "name": "python3-setuptools_git",
+            "buildsystem": "simple",
+            "build-commands": [
+                "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} 
setuptools_git"
+            ],
+            "sources": [
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/05/97/dd99fa9c0d9627a7b3c103a00f1566d8193aca8d473884ed258cca82b06f/setuptools_git-1.2-py2.py3-none-any.whl";,
+                    "sha256": "e7764dccce7d97b4b5a330d7b966aac6f9ac026385743fd6cedad553f2494cfa"
+                }
+            ]
+        },
+        {
+            "name": "python3-setuptools_pep8",
+            "buildsystem": "simple",
+            "build-commands": [
+                "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} 
setuptools_pep8"
+            ],
+            "sources": [
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl";,
+                    "sha256": "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/20/8a/f75f0126e3809a98b8bd850b93389b35f04958653c3bb5d1b2de5f33c349/setuptools-pep8-0.9.0.tar.gz";,
+                    "sha256": "f620cd7494015729249bda7260c9b94900d6e6ab27df46051fb144c32627080c"
+                }
+            ]
+        },
+        {
+            "name": "python3-nose",
+            "buildsystem": "simple",
+            "build-commands": [
+                "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} nose"
+            ],
+            "sources": [
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/15/d8/dd071918c040f50fa1cf80da16423af51ff8ce4a0f2399b7bf8de45ac3d9/nose-1.3.7-py3-none-any.whl";,
+                    "sha256": "9ff7c6cc443f8c51994b34a667bbcf45afd6d945be7477b52e97516fd17c53ac"
+                }
+            ]
+        },
+        {
+            "name": "python3-hotdoc",
+            "buildsystem": "simple",
+            "build-commands": [
+                "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} hotdoc"
+            ],
+            "sources": [
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/e4/19/8dfeef50623892577dc05245093e090bb2bab4c8aed5cad5b03208959563/lxml-4.4.2.tar.gz";,
+                    "sha256": "eff69ddbf3ad86375c344339371168640951c302450c5d3e9936e98d6459db06"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/73/25/73649708a30aa97124631bd088a22f1bf721d05d4e72fb9cc9bedb97de51/cchardet-2.1.5.tar.gz";,
+                    "sha256": "240efe3f255f916769458343840b9c6403cf3192720bc5129792cbcb88bf72fb"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/8f/b7/f329cfdc75f3d28d12c65980e4469e2fa373f1953f5df6e370e84ea2e875/decorator-4.4.1-py2.py3-none-any.whl";,
+                    "sha256": "5d19b92a3c8f7f101c8dd86afd86b0f061a8ce4540ab8cd401fa2542756bce6d"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/a2/71/8273a7eeed0aff6a854237ab5453bc9aa67deb49df4832801c21f0ff3782/contextlib2-0.5.5-py2.py3-none-any.whl";,
+                    "sha256": "f5260a6e679d2ff42ec91ec5252f4eeffdcf21053db9113bd0a8e4d953769c00"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/d3/2c/e473e54afc9fae58dfa97066ef6709a7e35a1dd1c28c5a3842989322be00/networkx-1.11-py2.py3-none-any.whl";,
+                    "sha256": "1b229b54fe9ccb009cee4de02a88552191497a542a7d5d34adab216b9f15c1ff"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/87/35/4af9634270c00e3411cf951b7e0ea796c262922357cfc7609a86d31f072b/pkgconfig-1.1.0.tar.gz";,
+                    "sha256": "709daaf077aa2b33bedac12706373412c3683576a43013bbaa529fc2769d80df"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/1f/c3/0b4ea31404ff0e22e37ae3675687575061836b85bf18866a4a61f181e52f/dbus-deviation-0.6.0.tar.gz";,
+                    "sha256": "cfbb3c906807d8376ae598bbc889b3a71992cdecc0637091d97ffcbcb69b7408"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/cd/7b/6ad85311fd715df37ef9bb17ad1b26e26b4cdd69c7e1e7e285422b83a7e1/xdg-4.0.1-py3-none-any.whl";,
+                    "sha256": "bf9032b027e3061d38c362a21b14dcf057a5b5a4906956f8e8278cefdf73f38b"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/e9/8a/321cd8ea5f4a22a06e3ba30ef31ec33bea11a3443eeb1d89807640ee6ed4/toposort-1.5-py2.py3-none-any.whl";,
+                    "sha256": "d80128b83b411d503b0cdb4a8f172998bc1d3b434b6402a349b8ebd734d51a80"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/b1/67/7f0a14a4cc9bd949b8d22383c26fec83a00e7bd428e15c697f998e3e37ba/wheezy.template-0.1.167.tar.gz";,
+                    "sha256": "a2ee933452f0352fb8587d79bf6fc66dbf3a14779ef7d17b9fa75e80c0003f19"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/56/eb/810e700ed1349edde4cbdc1b2a21e28cdf115f9faf263f6bbf8447c1abf3/appdirs-1.4.3-py2.py3-none-any.whl";,
+                    "sha256": "d8b24664561d0d34ddfaec54636d502d7cea6e29c3eaf68f3df6180863e2166e"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/45/ae/a7e3cc8b885e681cbfee89d8d43dbc0168dbd033e2b2745eda6223477467/schema-0.7.1-py2.py3-none-any.whl";,
+                    "sha256": "10b550886f5ff402e1fdef85bd7be761b0e09a35a43633311807a57a5bc4db50"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/8d/c9/e5be955a117a1ac548cdd31e37e8fd7b02ce987f9655f5c7563c656d5dcb/PyYAML-5.2.tar.gz";,
+                    "sha256": "c0ee8eca2c582d29c3c2ec6e2c4f703d1b7f1fb10bc72317355a746057e7346c"
+                },
+                {
+                    "type": "file",
+                    "url": 
"https://files.pythonhosted.org/packages/c7/bf/5f243e2d2deeeea8a192694825b3fccc3d960acc4ee55b37c85dd2b22a8c/hotdoc-0.10.0.tar.gz";,
+                    "sha256": "f918683c2b9dfe616e9c054fececb2f5609b7ee1900faf36f4c9e58e80b97d99"
+                }
+            ]
+        }
+    ]
+}
diff --git a/build/flatpak/python3-ipdb.json b/build/flatpak/python3-ipdb.json
new file mode 100644
index 00000000..5812556c
--- /dev/null
+++ b/build/flatpak/python3-ipdb.json
@@ -0,0 +1,84 @@
+{
+    "name": "python3-ipdb",
+    "buildsystem": "simple",
+    "build-commands": [
+        "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} ipdb"
+    ],
+    "sources": [
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/7e/9f/526a6947247599b084ee5232e4f9190a38f398d7300d866af3ab571a5bfe/wcwidth-0.1.7-py2.py3-none-any.whl";,
+            "sha256": "f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/d1/29/605c2cc68a9992d18dada28206eeada56ea4bd07a239669da41674648b6f/ptyprocess-0.6.0-py2.py3-none-any.whl";,
+            "sha256": "d7cc528d76e76342423ca640335bd3633420dc1366f258cb31d05e865ef5ca1f"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl";,
+            "sha256": "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl";,
+            "sha256": "1f1b7d42e254082a9db6279deae68afb421ceba6158efa6131de7b3003ee93fd"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/a3/bd/bf4e5bd01d79906e5b945a7af033154da49fd2b0d5b5c705a21330323305/parso-0.5.1-py2.py3-none-any.whl";,
+            "sha256": "63854233e1fadb5da97f2744b6b24346d2750b85965e7e399bec1620232797dc"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/7f/1f/e145dd467dc9b0e6f1e64232c03119498dfec497e383f1e8be9f83eaa97e/prompt_toolkit-3.0.2-py3-none-any.whl";,
+            "sha256": "0278d2f51b5ceba6ea8da39f76d15684e84c996b325475f6e5720edc584326a7"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/0e/3e/377007e3f36ec42f1b84ec322ee12141a9e10d808312e5738f52f80a232c/pexpect-4.7.0-py2.py3-none-any.whl";,
+            "sha256": "2094eefdfcf37a1fdbfb9aa090862c1a4878e5c7e0e7e7088bdb511c558e5cd1"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/be/39/32da3184734730c0e4d3fa3b2b5872104668ad6dc1b5a73d8e477e5fe967/Pygments-2.5.2-py2.py3-none-any.whl";,
+            "sha256": "2a3fe295e54a20164a9df49c75fa58526d3be48e14aceba6d6b1e8ac0bfd6f1b"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/ca/ab/872a23e29cec3cf2594af7e857f18b687ad21039c1f9b922fac5b9b142d5/traitlets-4.3.3-py2.py3-none-any.whl";,
+            "sha256": "70b4c6a1d9019d7b4f6846832288f86998aa3b9207c6821f3578a6a6a467fe44"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/55/54/da994f359e4e7da4776a200e76dbc85ba5fc319eefc22e33d55296d95a1d/jedi-0.15.1-py2.py3-none-any.whl";,
+            "sha256": "786b6c3d80e2f06fd77162a07fed81b8baa22dde5d62896a790a331d6ac21a27"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/8f/b7/f329cfdc75f3d28d12c65980e4469e2fa373f1953f5df6e370e84ea2e875/decorator-4.4.1-py2.py3-none-any.whl";,
+            "sha256": "5d19b92a3c8f7f101c8dd86afd86b0f061a8ce4540ab8cd401fa2542756bce6d"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl";,
+            "sha256": "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/84/71/c8ca4f5bb1e08401b916c68003acf0a0655df935d74d93bf3f3364b310e0/backcall-0.1.0.tar.gz";,
+            "sha256": "38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/00/17/c3e3dd337cc601b47c599441786fd4e888b587a2a512d38ac752274fd0bc/ipython-7.10.1-py3-none-any.whl";,
+            "sha256": "c66c7e27239855828a764b1e8fc72c24a6f4498a2637572094a78c5551fb9d51"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/df/78/3d0d7253dc85549db182cbe4b43b30c506c84008fcd39898122c9b6306a9/ipdb-0.12.2.tar.gz";,
+            "sha256": "473fdd798a099765f093231a8b1fabfa95b0b682fce12de0c74b61a4b4d8ee57"
+        }
+    ]
+}
diff --git a/build/flatpak/python3-nose2.json b/build/flatpak/python3-nose2.json
new file mode 100644
index 00000000..4e06e7cd
--- /dev/null
+++ b/build/flatpak/python3-nose2.json
@@ -0,0 +1,24 @@
+{
+    "name": "python3-nose2",
+    "buildsystem": "simple",
+    "build-commands": [
+        "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} nose2"
+    ],
+    "sources": [
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/85/d5/818d0e603685c4a613d56f065a721013e942088047ff1027a632948bdae6/coverage-4.5.4.tar.gz";,
+            "sha256": "e07d9f1a23e9e93ab5c62902833bf3e4b1f65502927379148b6622686223125c"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl";,
+            "sha256": "1f1b7d42e254082a9db6279deae68afb421ceba6158efa6131de7b3003ee93fd"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/2a/c6/f1941e6af8e97cb5cf7405283d5240ba3fb0ce9ace68403904436d6fff65/nose2-0.9.1-py2.py3-none-any.whl";,
+            "sha256": "31d8beb00aed3ccc6efb1742bb90227d883e471715188249f594310676e0ef0e"
+        }
+    ]
+}
diff --git a/build/flatpak/python3-pre-commit.json b/build/flatpak/python3-pre-commit.json
new file mode 100644
index 00000000..6ca01178
--- /dev/null
+++ b/build/flatpak/python3-pre-commit.json
@@ -0,0 +1,69 @@
+{
+    "name": "python3-pre-commit",
+    "buildsystem": "simple",
+    "build-commands": [
+        "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} pre-commit"
+    ],
+    "sources": [
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/5c/1d/3df99de956abb96305956e09e6a1fa955883295e1f28808f9c97b3d5364d/more_itertools-8.0.0-py3-none-any.whl";,
+            "sha256": "a0ea684c39bc4315ba7aae406596ef191fd84f873d2d2751f84d64e81a7a2d45"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/74/3d/1ee25a26411ba0401b43c6376d2316a71addcc72ef8690b101b4ea56d76a/zipp-0.6.0-py2.py3-none-any.whl";,
+            "sha256": "f06903e9f1f43b12d371004b4ac7b06ab39a44adc747266928ae6debfa7b3335"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/6e/ff/2e6bcaff26058200717c469a0910da96c89bb00e9cc31b68aa0bfc9b1b0d/cfgv-2.0.1-py2.py3-none-any.whl";,
+            "sha256": "fbd93c9ab0a523bf7daec408f3be2ed99a980e20b2d19b50fc184ca6b820d289"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl";,
+            "sha256": "1f1b7d42e254082a9db6279deae68afb421ceba6158efa6131de7b3003ee93fd"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/87/e4/66e3c82550017d3ee03c9f216e0c3dbf1c8c580c567777537adce8823597/identify-1.4.7-py2.py3-none-any.whl";,
+            "sha256": "4f1fe9a59df4e80fcb0213086fcf502bc1765a01ea4fe8be48da3b65afd2a017"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/a2/12/ced7105d2de62fa7c8fb5fce92cc4ce66b57c95fb875e9318dba7f8c5db0/toml-0.10.0-py2.py3-none-any.whl";,
+            "sha256": "235682dd292d5899d361a811df37e04a8828a5b1da3115886b73cf81ebc9100e"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/ed/82/ebece33bc20b9097683d09e47563d487e411e2cf3a37789d7ec0a88c4ce4/importlib_metadata-1.1.0-py2.py3-none-any.whl";,
+            "sha256": "e6ac600a142cf2db707b1998382cc7fc3b02befb7273876e01b8ad10b9652742"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/99/ce/78be097b00817ccf02deaf481eb7a603eecee6fa216e82fa7848cd265449/aspy.yaml-1.3.0-py2.py3-none-any.whl";,
+            "sha256": "463372c043f70160a9ec950c3f1e4c3a82db5fca01d334b6bc89c7164d744bdc"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/8d/c9/e5be955a117a1ac548cdd31e37e8fd7b02ce987f9655f5c7563c656d5dcb/PyYAML-5.2.tar.gz";,
+            "sha256": "c0ee8eca2c582d29c3c2ec6e2c4f703d1b7f1fb10bc72317355a746057e7346c"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/00/6e/ed417bd1ed417ab3feada52d0c89ab0ed87d150f91590badf84273e047c9/nodeenv-1.3.3.tar.gz";,
+            "sha256": "ad8259494cf1c9034539f6cced78a1da4840a4b157e23640bc4a0c0546b0cb7a"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/62/77/6a86ef945ad39aae34aed4cc1ae4a2f941b9870917a974ed7c5b6f137188/virtualenv-16.7.8-py2.py3-none-any.whl";,
+            "sha256": "b57776b44f91511866594e477dd10e76a6eb44439cdd7f06dcd30ba4c5bd854f"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/89/97/fe584f47dc43332ac254ed3940d2a3401877be73e3150a557641c9f812a6/pre_commit-1.20.0-py2.py3-none-any.whl";,
+            "sha256": "c2e4810d2d3102d354947907514a78c5d30424d299dc0fe48f5aa049826e9b50"
+        }
+    ]
+}
diff --git a/build/flatpak/python3-pylint.json b/build/flatpak/python3-pylint.json
new file mode 100644
index 00000000..7418d560
--- /dev/null
+++ b/build/flatpak/python3-pylint.json
@@ -0,0 +1,64 @@
+{
+    "name": "python3-pylint",
+    "buildsystem": "simple",
+    "build-commands": [
+        "pip3 install --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} pylint"
+    ],
+    "sources": [
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/59/b0/11710a598e1e148fb7cbf9220fd2a0b82c98e94efbdecb299cb25e7f0b39/wheel-0.33.6.tar.gz";,
+            "sha256": "10c9da68765315ed98850f8e048347c3eb06dd81822dc2ab1d4fde9dc9702646"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/f7/b6/5b98441b6749ea1db1e41e5e6e7a93cbdd7ffd45e11fe1b22d45884bc777/setuptools-42.0.2.zip";,
+            "sha256": "c5b372090d7c8709ce79a6a66872a91e518f7d65af97fca78135e1cb10d4b940"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/83/44/53cad68ce686585d12222e6769682c4bdb9686808d2739671f9175e2938b/setuptools_scm-3.3.3.tar.gz";,
+            "sha256": "bd25e1fb5e4d603dcf490f1fde40fb4c595b357795674c3e5cb7f6217ab39ea5"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/34/de/d0cfe2ea7ddfd8b2b8374ed2e04eeb08b6ee6e1e84081d151341bba596e5/typed_ast-1.4.0.tar.gz";,
+            "sha256": "66480f95b8167c9c5c5c87f32cf437d585937970f3fc24386f313a4c97b44e34"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/07/3f/a3d687f83c7d44970f70ff0400677746c8860b11f0c08f6b4e07205f0cdc/lazy-object-proxy-1.4.3.tar.gz";,
+            "sha256": "f3900e8a5de27447acbf900b4750b0ddfd7ec1ea7fbaf11dfa911141bc522af0"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/23/84/323c2415280bc4fc880ac5050dddfb3c8062c2552b34c2e512eb4aa68f79/wrapt-1.11.2.tar.gz";,
+            "sha256": "565a021fd19419476b9362b05eeaa094178de64f8361e44468f9e9d7843901e1"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl";,
+            "sha256": "1f1b7d42e254082a9db6279deae68afb421ceba6158efa6131de7b3003ee93fd"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/87/89/479dc97e18549e21354893e4ee4ef36db1d237534982482c3681ee6e7b57/mccabe-0.6.1-py2.py3-none-any.whl";,
+            "sha256": "ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/e5/b0/c121fd1fa3419ea9bfd55c7f9c4fedfec5143208d8c7ad3ce3db6c623c21/isort-4.3.21-py2.py3-none-any.whl";,
+            "sha256": "6e811fcb295968434526407adb8796944f1988c5b65e8139058f2014cbe100fd"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/ad/ae/86734823047962e7b8c8529186a1ac4a7ca19aaf1aa0c7713c022ef593fd/astroid-2.3.3-py3-none-any.whl";,
+            "sha256": "840947ebfa8b58f318d42301cf8c0a20fd794a33b61cc4638e28e9e61ba32f42"
+        },
+        {
+            "type": "file",
+            "url": 
"https://files.pythonhosted.org/packages/e9/59/43fc36c5ee316bb9aeb7cf5329cdbdca89e5749c34d5602753827c0aa2dc/pylint-2.4.4-py3-none-any.whl";,
+            "sha256": "886e6afc935ea2590b462664b161ca9a5e40168ea99e5300935f6591ad467df4"
+        }
+    ]
+}
diff --git a/pre-commit.hook b/pre-commit.hook
index c605a319..71da257d 100755
--- a/pre-commit.hook
+++ b/pre-commit.hook
@@ -17,26 +17,4 @@ fi
 TOPLEVEL=$(git rev-parse --show-toplevel)
 export PYTHONPATH=$TOPLEVEL/pitivi/coptimizations/.libs:$PYTHONPATH
 
-PYLINT_IGNORED_FILES="
-bin/pitivi.in
-pitivi/autoaligner.py
-pitivi/utils/extract.py
-"
-
-PYLINT_IGNORE_ARGS=""
-for f in $PYLINT_IGNORED_FILES; do
-    PYLINT_IGNORE_ARGS="$PYLINT_IGNORE_ARGS --ignore=$f"
-done
-
-# Print the commands being executed so we have a clue what's going on.
-set -x
-
-# Lightweight pre-commit.com checks.
-pre-commit run --config .pre-commit-config.yaml || exit 1
-
-# We keep pylint separate from the pre-commit.com hooks
-# because we have to run it in the sandbox. This is done
-# through git-pylint-commit-hook and pitivi-flatpak.
-git-pylint-commit-hook --pylint="$TOPLEVEL/build/flatpak/pitivi-flatpak" \
-  --pylint-params="pylint" --pylintrc="$TOPLEVEL/pylint.rc" \
-  --limit=10.0 $PYLINT_IGNORE_ARGS --suppress-report || exit 1
+$TOPLEVEL/build/flatpak/pitivi-flatpak pre-commit run --config .pre-commit-config.yaml || exit 1



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]