diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 650f80fe4d..46a9b2f5ff 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -1,5 +1,5 @@ on: - pull_request_target: + pull_request: types: [opened, synchronize, reopened] name: Mypy @@ -29,14 +29,3 @@ jobs: run: | mypy --version mypy bottles - sonar: - name: Sonar - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis - - uses: sonarsource/sonarqube-scan-action@master - env: - SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml new file mode 100644 index 0000000000..dfdf9b4007 --- /dev/null +++ b/.github/workflows/sonar.yml @@ -0,0 +1,24 @@ +on: + pull_request_target: + types: [opened, synchronize, reopened] + +name: Sonar +jobs: + sonar: + name: Checker + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + ref: ${{ github.event.pull_request.head.sha }} + fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis + - uses: sonarsource/sonarqube-scan-action@master + with: + args: > + -Dsonar.pullrequest.key=${{ github.event.pull_request.number }} + -Dsonar.pullrequest.branch=${{ github.head_ref }} + -Dsonar.pullrequest.base=${{ github.base_ref }} + -Dsonar.scm.revision=${{ github.event.pull_request.head.sha }} + env: + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} diff --git a/.github/workflows/update-manifest.yml b/.github/workflows/update-manifest.yml new file mode 100644 index 0000000000..9cc508e71b --- /dev/null +++ b/.github/workflows/update-manifest.yml @@ -0,0 +1,70 @@ +name: Update manifest + +on: + schedule: + # Check for update every day at 07:11 + - cron: '11 7 * * *' + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + + +env: + PR_BRANCH: pr/ci-manifest/${{ github.ref_name }} + +jobs: + update-manifest: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + path: "bottles-repository" + ref: ${{ github.ref_name }} + + - uses: actions/setup-python@v4 + with: + python-version: '3.x' + cache: 'pip' + + - run: pip install pur req2flatpak pyyaml + + - name: Update requirements + working-directory: "bottles-repository" + shell: bash {0} + run: | + git config user.email "github-actions[bot]@users.noreply.github.com" + git config user.name "github-actions[bot]" + pur -r requirements.txt + pur -r requirements.dev.txt + req2flatpak --requirements-file requirements.txt --yaml --target-platforms 310-x86_64 -o com.usebottles.bottles.pypi-deps.yaml + git diff ${{ github.ref_name }} --exit-code requirements.txt requirements.dev.txt com.usebottles.bottles.pypi-deps.yaml + updated=$? + if [ $updated -ne 0 ]; then + git add requirements.txt requirements.dev.txt com.usebottles.bottles.pypi-deps.yaml + git commit -m "Update PyPI dependencies" + fi + + - uses: docker://ghcr.io/flathub/flatpak-external-data-checker:latest + env: + GIT_AUTHOR_NAME: github-actions[bot] + GIT_COMMITTER_NAME: github-actions[bot] + GIT_AUTHOR_EMAIL: github-actions[bot]@users.noreply.github.com + GIT_COMMITTER_EMAIL: github-actions[bot]@users.noreply.github.com + EMAIL: github-actions[bot]@users.noreply.github.com + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + args: --update --require-important-update --commit-only --never-fork "bottles-repository/com.usebottles.bottles.yml" + + - name: Create PR if necessary + working-directory: "bottles-repository" + shell: bash {0} + run: | + git checkout -B ${{ env.PR_BRANCH }} + git push -f --set-upstream origin ${{ env.PR_BRANCH }} + git diff ${{ github.ref_name }} --exit-code com.usebottles.bottles.yml + updated=$? + if [ $updated -ne 0 ]; then + gh pr create --title ":robot:: Update manifest (important)" --body ":wrench: One or more modules marked as 'important' have been updated." --head ${{ env.PR_BRANCH }} --base ${{ github.ref_name }} + exit 0 + fi + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/bottles/backend/managers/steam.py b/bottles/backend/managers/steam.py index ba59147bbb..28ea0f704e 100644 --- a/bottles/backend/managers/steam.py +++ b/bottles/backend/managers/steam.py @@ -288,7 +288,7 @@ def list_prefixes(self) -> Dict[str, BottleConfig]: logging.warning(f"A Steam prefix was found, but there is no ACF for it: {_dir_name}, skipping…") continue - if SteamUtils.is_proton(os.path.join(_library_path, "steamapps/common", _acf["AppState"]["installdir"])): + if SteamUtils.is_proton(os.path.join(_library_path, "steamapps/common", _acf["AppState"].get("installdir", ""))): # skip Proton default prefix logging.warning(f"A Steam prefix was found, but it is a Proton one: {_dir_name}, skipping…") continue diff --git a/bottles/backend/wine/winecommand.py b/bottles/backend/wine/winecommand.py index 53070c0000..5a11fcd9d3 100644 --- a/bottles/backend/wine/winecommand.py +++ b/bottles/backend/wine/winecommand.py @@ -406,7 +406,7 @@ def get_env(self, environment: Optional[dict] = None, return_steam_env: bool = F return env.get()["envs"] - def _get_runner_info(self) -> (str, str): + def _get_runner_info(self) -> tuple[str, str]: config = self.config runner = ManagerUtils.get_runner_path(config.Runner) arch = config.Arch @@ -416,7 +416,7 @@ def _get_runner_info(self) -> (str, str): runner = config.RunnerPath if runner in [None, ""]: - return "" + return "", "" if SteamUtils.is_proton(runner): ''' diff --git a/bottles/frontend/views/bottle_preferences.py b/bottles/frontend/views/bottle_preferences.py index f3d91b8c25..7f5e9cb96f 100644 --- a/bottles/frontend/views/bottle_preferences.py +++ b/bottles/frontend/views/bottle_preferences.py @@ -195,7 +195,7 @@ def __init__(self, details, config, **kwargs): _not_available = _("This feature is unavailable on your system.") _flatpak_not_available = _("{} To add this feature, please run flatpak install").format(_not_available) _flatpak_pkg_name = { - "gamescope": "com.valvesoftware.Steam.Utility.gamescope", + "gamescope": "org.freedesktop.Platform.VulkanLayer.gamescope", "vkbasalt": "org.freedesktop.Platform.VulkanLayer.vkBasalt//22.08", "mangohud": "org.freedesktop.Platform.VulkanLayer.MangoHud//22.08", "obsvkc": "com.obsproject.Studio.Plugin.OBSVkCapture" diff --git a/com.usebottles.bottles.pypi-deps.yaml b/com.usebottles.bottles.pypi-deps.yaml index 185e86af73..073d0b8fc1 100644 --- a/com.usebottles.bottles.pypi-deps.yaml +++ b/com.usebottles.bottles.pypi-deps.yaml @@ -1,98 +1,69 @@ -# Generated with flatpak-pip-generator --runtime org.gnome.Sdk -r requirements.txt -o com.usebottles.bottles.pypi-deps --yaml -build-commands: [] +# Generated by req2flatpak.py --requirements-file requirements.txt --yaml --target-platforms 310-x86_64 -o com.usebottles.bottles.pypi-deps.yaml +name: python3-package-installation buildsystem: simple -modules: - - name: python3-PyYAML - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "PyYAML==6.0" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/02/25/6ba9f6bb50a3d4fbe22c1a02554dc670682a07c8701d1716d19ddea2c940/PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl - sha256: f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5 - - name: python3-pycurl - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "pycurl==7.45.1" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/09/ca/0b6da1d0f391acb8991ac6fdf8823ed9cf4c19680d4f378ab1727f90bd5c/pycurl-7.45.1.tar.gz - sha256: a863ad18ff478f5545924057887cdae422e1b2746e41674615f687498ea5b88a - - name: python3-requests - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "requests[use_chardet_on_py3]==2.28.1" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/71/4c/3db2b8021bd6f2f0ceb0e088d6b2d49147671f25832fb17970e9b583d742/certifi-2022.12.7-py3-none-any.whl - sha256: 4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18 - - type: file - url: https://files.pythonhosted.org/packages/74/8f/8fc49109009e8d2169d94d72e6b1f4cd45c13d147ba7d6170fb41f22b08f/chardet-5.1.0-py3-none-any.whl - sha256: 362777fb014af596ad31334fde1e8c327dfdb076e1960d1694662d46a6917ab9 - - type: file - url: https://files.pythonhosted.org/packages/db/51/a507c856293ab05cdc1db77ff4bc1268ddd39f29e7dc4919aa497f0adbec/charset_normalizer-2.1.1-py3-none-any.whl - sha256: 83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f - - type: file - url: https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl - sha256: 90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2 - - type: file - url: https://files.pythonhosted.org/packages/ca/91/6d9b8ccacd0412c08820f72cebaa4f0c0441b5cda699c90f618b6f8a1b42/requests-2.28.1-py3-none-any.whl - sha256: 8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349 - - type: file - url: https://files.pythonhosted.org/packages/7b/f5/890a0baca17a61c1f92f72b81d3c31523c99bec609e60c292ea55b387ae8/urllib3-1.26.15-py2.py3-none-any.whl - sha256: aa751d169e23c7479ce47a0cb0da579e3ede798f994f5816a74e4f4500dcea42 - - name: python3-Markdown - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "Markdown==3.3.7" --ignore-installed --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/f3/df/ca72f352e15b6f8ce32b74af029f1189abffb906f7c137501ffe69c98a65/Markdown-3.3.7-py3-none-any.whl - sha256: f5da449a6e1c989a4cea2631aa8ee67caa5a2ef855d551c88f9e309f4634c621 - - name: python3-icoextract - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "icoextract==0.1.2" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/c4/c9/4dcdb3a3e325a441bbf293a4bce8a9b247f88d9c9671b4a360d52dac499c/icoextract-0.1.2.tar.gz - sha256: 7695d0379ba672e075fc3a7c9d366a77a876840a18cd4bda7080a5314494580c - - type: file - url: https://files.pythonhosted.org/packages/55/26/d0ad8b448476d0a1e8d3ea5622dc77b916db84c6aa3cb1e1c0965af948fc/pefile-2023.2.7-py3-none-any.whl - sha256: da185cd2af68c08a6cd4481f7325ed600a88f6a813bad9dea07ab3ef73d8d8d6 - - name: python3-patool - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "patool==1.12" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/43/94/52243ddff508780dd2d8110964320ab4851134a55ab102285b46e740f76a/patool-1.12-py2.py3-none-any.whl - sha256: 3f642549c9a78f5b8bef1af92df385b521d360520d1f34e4dba3fd1dee2a21bc - - name: python3-pathvalidate - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "pathvalidate==2.5.2" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/9b/62/925646456f0d72356cbef5549ff85e9b538c55ff44eb74046e37541b344a/pathvalidate-2.5.2-py3-none-any.whl - sha256: e39a4dfacdba70e3a96d3e4c6ff617a39e991cf242e6e1f2017f1f67c3408d33 - - name: python3-FVS - buildsystem: simple - build-commands: - - pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" - --prefix=${FLATPAK_DEST} "FVS==0.3.4" --no-build-isolation - sources: - - type: file - url: https://files.pythonhosted.org/packages/f7/2f/cc09899755f94b36e7f570b9f9ca19a5fdff536e2614fd3ac1c28bb777f6/FVS-0.3.4.tar.gz - sha256: c987741f37706ea07d91ec498c145162676ca16b59b5c8c2351cf464954ce422 - - type: file - url: https://files.pythonhosted.org/packages/1a/29/977982fcbce6fbcf0da925133561e28c82a6e9f32bfe0b66645a96d0654d/orjson-3.8.9-cp310-cp310-manylinux_2_28_x86_64.whl - sha256: c02ece4f36a160c83efe74adfba5f189c7c7702361f02b809ab73744923ee139 -name: com.usebottles.bottles.pypi-deps +build-commands: +- pip3 install --verbose --exists-action=i --no-index --find-links="file://${PWD}" + --prefix=${FLATPAK_DEST} --no-build-isolation wheel PyYAML pycurl chardet requests + Markdown icoextract patool pathvalidate FVS orjson pycairo PyGObject charset-normalizer + idna urllib3 certifi pefile +sources: +- type: file + url: https://files.pythonhosted.org/packages/f7/2f/cc09899755f94b36e7f570b9f9ca19a5fdff536e2614fd3ac1c28bb777f6/FVS-0.3.4.tar.gz + sha256: c987741f37706ea07d91ec498c145162676ca16b59b5c8c2351cf464954ce422 +- type: file + url: https://files.pythonhosted.org/packages/1a/b5/228c1cdcfe138f1a8e01ab1b54284c8b83735476cb22b6ba251656ed13ad/Markdown-3.4.4-py3-none-any.whl + sha256: a4c1b65c0957b4bd9e7d86ddc7b3c9868fb9670660f6f99f6d1bca8954d5a941 +- type: file + url: https://files.pythonhosted.org/packages/44/80/96d6317a15a13a4f80ffa61118dc144a70756135fbc6ace30f9b033f51f7/PyGObject-3.44.1.tar.gz + sha256: 665fbe980c91e8b31ad78ed3f66879946948200864002d193f67eccc1d7d5d83 +- type: file + url: https://files.pythonhosted.org/packages/29/61/bf33c6c85c55bc45a29eee3195848ff2d518d84735eb0e2d8cb42e0d285e/PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + sha256: ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515 + only-arches: + - x86_64 +- type: file + url: https://files.pythonhosted.org/packages/4c/dd/2234eab22353ffc7d94e8d13177aaa050113286e93e7b40eae01fbf7c3d9/certifi-2023.7.22-py3-none-any.whl + sha256: 92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9 +- type: file + url: https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl + sha256: e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +- type: file + url: https://files.pythonhosted.org/packages/a4/65/057bf29660aae6ade0816457f8db4e749e5c0bfa2366eb5f67db9912fa4c/charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + sha256: 193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad + only-arches: + - x86_64 +- type: file + url: https://files.pythonhosted.org/packages/93/3f/da0ed756fb207a8685f5ff452569ffc287297cf24d6d7e7d9a0354a896ba/icoextract-0.1.4.tar.gz + sha256: c741845743d46e4033a1426002aba9f5b1ddee262db46cb321935da3c2ac172a +- type: file + url: https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl + sha256: 90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2 +- type: file + url: https://files.pythonhosted.org/packages/34/7a/9ec6142fdab1749eacbab23c8a502cccb57f1985d764a5cfacad1d55a2de/orjson-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + sha256: f13d61c0c7414ddee1ef4d0f303e2222f8cced5a2e26d9774751aecd72324c9e + only-arches: + - x86_64 +- type: file + url: https://files.pythonhosted.org/packages/c8/98/e6c836ea547236fffab67503ff691d302f2366fbe3a1e37bfe611e352b3c/pathvalidate-3.1.0-py3-none-any.whl + sha256: 912fd1d2e1a2a6a6f98da36a91f21ed86746473810ff625b9c34f3d06c0caa1d +- type: file + url: https://files.pythonhosted.org/packages/43/94/52243ddff508780dd2d8110964320ab4851134a55ab102285b46e740f76a/patool-1.12-py2.py3-none-any.whl + sha256: 3f642549c9a78f5b8bef1af92df385b521d360520d1f34e4dba3fd1dee2a21bc +- type: file + url: https://files.pythonhosted.org/packages/55/26/d0ad8b448476d0a1e8d3ea5622dc77b916db84c6aa3cb1e1c0965af948fc/pefile-2023.2.7-py3-none-any.whl + sha256: da185cd2af68c08a6cd4481f7325ed600a88f6a813bad9dea07ab3ef73d8d8d6 +- type: file + url: https://files.pythonhosted.org/packages/a2/dd/bc2c9ee9485308a29c18b1241329e677917af25c60b127857f0fb23d0c6e/pycairo-1.24.0.tar.gz + sha256: 1444d52f1bb4cc79a4a0c0fe2ccec4bd78ff885ab01ebe1c0f637d8392bcafb6 +- type: file + url: https://files.pythonhosted.org/packages/a8/af/24d3acfa76b867dbd8f1166853c18eefc890fc5da03a48672b38ea77ddae/pycurl-7.45.2.tar.gz + sha256: 5730590be0271364a5bddd9e245c9cc0fb710c4cbacbdd95264a3122d23224ca +- type: file + url: https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl + sha256: 58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f +- type: file + url: https://files.pythonhosted.org/packages/9b/81/62fd61001fa4b9d0df6e31d47ff49cfa9de4af03adecf339c7bc30656b37/urllib3-2.0.4-py3-none-any.whl + sha256: de7df1803967d2c2a98e4b11bb7d6bd9210474c46e8a0401514e3a42a75ebde4 +- type: file + url: https://files.pythonhosted.org/packages/28/f5/6955d7b3a5d71ce6bac104f9cf98c1b0513ad656cdaca8ea7d579196f771/wheel-0.41.1-py3-none-any.whl + sha256: 473219bd4cbedc62cea0cb309089b593e47c15c4a2531015f94e4e3b9a0f6981 diff --git a/com.usebottles.bottles.src.yaml b/com.usebottles.bottles.src.yaml new file mode 100644 index 0000000000..77aa835e80 --- /dev/null +++ b/com.usebottles.bottles.src.yaml @@ -0,0 +1,8 @@ +name: com.usebottles.bottles.src +builddir: true +buildsystem: meson +config-opts: + - -Ddevel=true +sources: + - type: dir + path: . diff --git a/com.usebottles.bottles.yml b/com.usebottles.bottles.yml index 976ad74964..6f9e379ec9 100644 --- a/com.usebottles.bottles.yml +++ b/com.usebottles.bottles.yml @@ -3,7 +3,7 @@ sdk: org.gnome.Sdk runtime: org.gnome.Platform base: org.winehq.Wine base-version: stable-22.08 -runtime-version: "44" +runtime-version: &runtime-version '44' command: bottles finish-args: @@ -19,7 +19,7 @@ finish-args: - --filesystem=xdg-download - --system-talk-name=org.freedesktop.UDisks2 - --env=LD_LIBRARY_PATH=/app/lib:/app/lib32 - - --env=PATH=/app/bin:/app/utils/bin:/usr/bin:/usr/lib/extensions/vulkan/MangoHud/bin/:/usr/bin:/usr/lib/extensions/vulkan/OBSVkCapture/bin/ + - --env=PATH=/app/bin:/app/utils/bin:/usr/bin:/usr/lib/extensions/vulkan/MangoHud/bin/:/usr/bin:/usr/lib/extensions/vulkan/OBSVkCapture/bin/:/usr/lib/extensions/vulkan/gamescope/bin/ - --env=GST_PLUGIN_SYSTEM_PATH=/app/lib/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:/app/lib32/gstreamer-1.0:/usr/lib/i386-linux-gnu/gstreamer-1.0 - --require-version=1.1.2 @@ -34,11 +34,11 @@ inherit-extensions: add-extensions: org.gnome.Platform.Compat.i386: directory: lib/i386-linux-gnu - version: "43" + version: *runtime-version org.gnome.Platform.Compat.i386.Debug: directory: lib/debug/lib/i386-linux-gnu - version: "43" + version: *runtime-version no-autodownload: true com.valvesoftware.Steam.CompatibilityTool: @@ -80,8 +80,8 @@ cleanup: - /share/gtk-doc - /share/man - /share/pkgconfig - - "*.la" - - "*.a" + - '*.la' + - '*.a' cleanup-commands: - mkdir -p /app/utils @@ -100,6 +100,11 @@ modules: - type: git url: https://github.com/hoytech/vmtouch commit: 8f6898e3c027f445962e223ca7a7b33d40395fc6 + x-checker-data: + type: json + url: https://api.github.com/repos/hoytech/vmtouch/commits + commit-query: first( .[].sha ) + timestamp-query: first( .[].commit.committer.date ) build-commands: - make - make install PREFIX=/app @@ -112,8 +117,22 @@ modules: sources: - type: git url: https://github.com/KhronosGroup/Vulkan-Tools.git - tag: sdk-1.3.224.1 - commit: 497f232680b046db34ba9e9da065e6303a125851 + tag: sdk-1.3.250.1 + commit: 695887a994ef9cc00a7aa3f9c00b31a56ea79534 + x-checker-data: + type: git + tag-pattern: ^sdk-([\d.]+)$ + modules: + - name: vulkan-tools + buildsystem: cmake-ninja + sources: + - type: git + url: https://github.com/KhronosGroup/Vulkan-Headers.git + tag: sdk-1.3.250.1 + commit: 9e61870ecbd32514113b467e0a0c46f60ed222c7 + x-checker-data: + type: git + tag-pattern: ^sdk-([\d.]+)$ - name: gamemode buildsystem: meson @@ -122,9 +141,14 @@ modules: - -Dwith-util=false - -Dwith-sd-bus-provider=no-daemon sources: &gamemode_sources - - type: archive - url: https://github.com/FeralInteractive/gamemode/releases/download/1.6.1/gamemode-1.6.1.tar.xz - sha256: 10c2a3f142eae472f5a09e42616e38c666c05b25ca3e61e562a543bb3fda66c5 + - type: git + url: https://github.com/FeralInteractive/gamemode + tag: '1.7' + commit: 4dc99dff76218718763a6b07fc1900fa6d1dafd9 + x-checker-data: + type: git + is-important: true + tag-pattern: ^([\d.]+)$ - name: gamemode-32bit build-options: @@ -139,41 +163,21 @@ modules: build-commands: - install -Dm755 data/gamemoderun -t /app/bin sources: *gamemode_sources + - name: xdpyinfo buildsystem: autotools sources: - type: git url: https://gitlab.freedesktop.org/xorg/app/xdpyinfo.git - tag: "xdpyinfo-1.3.3" - commit: 61bc4b764030bdc9a731ee74c7c56bf2b2a4bddf - + tag: xdpyinfo-1.3.4 + commit: ea4083ccb2a5ce4252acabeb2eb7bf49f7be25e0 + x-checker-data: + type: git + tag-pattern: ^xdpyinfo-([\d.]+)$ # Libraries # ---------------------------------------------------------------------------- - - name: rpcsvc-proto - buildsystem: autotools - sources: - - type: archive - url: https://github.com/thkukuk/rpcsvc-proto/archive/v1.4.3.tar.gz - sha256: 6906e0f81bb016bd0216460fc879d3d9f2f6d743be7dfb0d8b32d140226d5ef8 - - - name: parse-yapp - buildsystem: simple - build-commands: - - perl Makefile.PL - - make install - build-options: - env: - PERL5LIB: /app/lib/perl5/ - PERL_MM_OPT: INSTALL_BASE=/app - cleanup: - - "*" - sources: - - type: archive - url: https://cpan.metacpan.org/authors/id/W/WB/WBRASWELL/Parse-Yapp-1.21.tar.gz - sha256: 3810e998308fba2e0f4f26043035032b027ce51ce5c8a52a8b8e340ca65f13e5 - - name: LatencyFleX buildsystem: simple build-commands: @@ -183,8 +187,15 @@ modules: - cp layer/usr/share/vulkan/implicit_layer.d/latencyflex.json /app/share/vulkan/implicit_layer.d/latencyflex.json sources: - type: archive - url: https://github.com/ishitatsuyuki/LatencyFleX/releases/download/v0.1.0/latencyflex-v0.1.0.tar.xz - sha256: 9862c7608b85ac6bff018d5926c4692490ff84ca3e649119b7fc53680e64dd1a + url: https://github.com/ishitatsuyuki/LatencyFleX/releases/download/v0.1.1/latencyflex-v0.1.1.tar.xz + sha256: c992ebd2f43c99ab4a84a6ffce692d9aae4cc2571536a5854ae2e79b6951e78a + x-checker-data: + type: json + is-important: true + url: https://api.github.com/repos/ishitatsuyuki/LatencyFleX/releases/latest + version-query: .tag_name + url-query: '"https://github.com/ishitatsuyuki/LatencyFleX/releases/download/" + + $version + "/latencyflex-" + $version + ".tar.xz"' - name: ImageMagick config-opts: @@ -193,9 +204,13 @@ modules: - --with-hdri - --with-pic sources: - - type: archive - url: https://github.com/ImageMagick/ImageMagick/archive/7.1.0-37.tar.gz - sha256: a54888a1a46dbb808705a3e6c6b5ecb93ee30189a8ae6ea0f02300a0ab0d0996 + - type: git + url: https://github.com/ImageMagick/ImageMagick + tag: 7.1.1-15 + commit: a0a5f3da4cd07919dd2d1bbae121e590b5f105e2 + x-checker-data: + type: git + tag-pattern: ^([\d.]+-[\d]+)$ - name: libportal buildsystem: meson @@ -203,17 +218,24 @@ modules: - -Ddocs=false - -Dbackends=gtk4 sources: - - type: archive - url: https://github.com/flatpak/libportal/archive/refs/tags/0.6.tar.gz - sha256: 8ad326c4f53b7433645dc86d994fef0292bee8adda0fe67db9288ace19250a9c + - type: git + url: https://github.com/flatpak/libportal + tag: '0.6' + commit: 13df0b887a7eb7b0f9b14069561a41f62e813155 + x-checker-data: + type: git + tag-pattern: ^([\d.]+)$ - name: blueprint-compiler buildsystem: meson sources: - type: git url: https://gitlab.gnome.org/jwestman/blueprint-compiler - tag: 'v0.4.0' - commit: 75a6d95988736ec0471d22ceb07579c0cedac2ad + tag: v0.10.0 + commit: 2a39a16391122af2f3d812e478c1c1398c98b972 + x-checker-data: + type: git + tag-pattern: ^v([\d.]+)$ - name: vkbasalt-cli buildsystem: simple @@ -222,8 +244,12 @@ modules: sources: - type: git url: https://gitlab.com/TheEvilSkeleton/vkbasalt-cli - tag: v3.0 - commit: 68d37866d7e732923fb628b81dcb0a808e9ccfe6 + tag: v3.1.1 + commit: bba740f77357cfa3558f02f6b8decd8f5a8eaf4e + x-checker-data: + type: git + is-important: true + tag-pattern: ^v([\d.]+)$ # Bottles components # ---------------------------------------------------------------------------- @@ -237,11 +263,8 @@ modules: tag: 0.2.0 commit: 6fbeab0470df55aeab141a45763147440b2f0290 x-checker-data: - type: json - url: https://api.github.com/repos/bottlesdevs/EasyTerm/releases/latest - tag-query: .tag_name - version-query: .tag_name - timestamp-query: .published_at + type: git + tag-pattern: ^([\d.]+)$ modules: - name: vte buildsystem: meson @@ -249,34 +272,13 @@ modules: - -Ddocs=false - -Dvapi=false sources: - - type: archive - url: https://gitlab.gnome.org/GNOME/vte/-/archive/0.66.2/vte-0.66.2.tar.gz - sha256: a486e389e3d16f903ed6f27d9513c2a44bff5945a12af4fcfe48ce00992c42ab - - - name: FVS - buildsystem: simple - build-commands: - - python3 setup.py install --prefix=/app --root=/ - sources: - - type: git - url: https://github.com/mirkobrombin/FVS - tag: "0.3.4" - commit: 4e76dc54028a88099c72ec3a925b5f059f442d05 - x-checker-data: - type: json - url: https://api.github.com/repos/mirkobrombin/FVS/releases/latest - tag-query: .tag_name - version-query: .tag_name - timestamp-query: .published_at - modules: - - name: orjson - buildsystem: simple - build-commands: - - pip3 install --prefix /app --no-deps orjson-*.whl - sources: - - type: file - url: https://files.pythonhosted.org/packages/ea/a2/e6c94631bd5117c9cf9453bc90cfe44db17cec13046c7f2df10020705d16/orjson-3.8.0-cp310-cp310-manylinux_2_28_x86_64.whl - sha256: 6a23b40c98889e9abac084ce5a1fb251664b41da9f6bdb40a4729e2288ed2ed4 + - type: git + url: https://gitlab.gnome.org/GNOME/vte + tag: 0.73.93 + commit: f13f4d6cd83ba01315ac62755d70736705c40c99 + x-checker-data: + type: git + tag-pattern: ^([\d.]+)$ - name: runtime buildsystem: simple @@ -285,14 +287,16 @@ modules: - cp -a * /app/etc/runtime/ sources: - type: archive - url: https://github.com/bottlesdevs/runtime/releases/download/0.6/runtime.tar.gz - sha256: f2b47012cde0a7e9c65ca4d793d19a2f9d3fe68b76dd457839e62ec34f214528 + url: https://github.com/bottlesdevs/runtime/releases/download/0.6.3/runtime-0.6.3.tar.gz + sha256: d7749b48927bd782e128e372a1d7085133fbe300eb9193134eb821f61bc5fad6 + x-checker-data: + type: json + is-important: true + url: https://api.github.com/repos/bottlesdevs/runtime/releases/latest + version-query: .tag_name + url-query: '"https://github.com/bottlesdevs/runtime/releases/download/" + + $version + "/runtime-" + $version + ".tar.gz"' - - name: bottles - builddir: true - buildsystem: meson - config-opts: - - -Ddevel=true - sources: - - type: dir - path: . + # Bottles source directory + # ---------------------------------------------------------------------------- + - com.usebottles.bottles.src.yaml diff --git a/requirements.dev.txt b/requirements.dev.txt index db46ebbeb5..1fe53caa01 100644 --- a/requirements.dev.txt +++ b/requirements.dev.txt @@ -1,6 +1,7 @@ -pytest==7.2.1 +# Updated using pur -r requirements.txt +pytest==7.4.0 requirements-parser==0.5.0 -mypy==1.2.0 +mypy==1.5.1 types_Markdown types-PyYAML types-Pygments diff --git a/requirements.txt b/requirements.txt index 5ce188bcfa..9f8a64f6ba 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,11 +1,19 @@ -wheel==0.40.0 -PyYAML==6.0 -pycurl==7.45.1 -requests[use_chardet_on_py3]==2.28.1 -Markdown==3.3.7 -icoextract==0.1.2 +# Updated using pur -r requirements.txt +wheel==0.41.1 +PyYAML==6.0.1 +pycurl==7.45.2 +chardet==5.2.0 +requests[use_chardet_on_py3]==2.31.0 +Markdown==3.4.4 +icoextract==0.1.4 patool==1.12 -pathvalidate==2.5.2 +pathvalidate==3.1.0 FVS==0.3.4 -pycairo==1.23.0 +orjson==3.9.5 +pycairo==1.24.0 PyGObject==3.44.1 +charset-normalizer==3.2.0 +idna==3.4 +urllib3==2.0.4 +certifi==2023.7.22 +pefile==2023.2.7