diff options
Diffstat (limited to 'pkgs/by-name/pr')
48 files changed, 1097 insertions, 219 deletions
diff --git a/pkgs/by-name/pr/pragtical/package.nix b/pkgs/by-name/pr/pragtical/package.nix index 404d64790992f..5b5ee466a16cf 100644 --- a/pkgs/by-name/pr/pragtical/package.nix +++ b/pkgs/by-name/pr/pragtical/package.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "pragtical"; - version = "3.4.0"; + version = "3.4.2"; pluginManagerVersion = "1.2.9"; src = fetchFromGitHub { @@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: { find subprojects -type d -name .git -prune -execdir rm -r {} + ''; - hash = "sha256-6feS9ougTlunkIr1WRUYieR4O8vHN1++VdfX5DreWFg="; + hash = "sha256-mYLYRyyKfjTCD8mi1KrQNLqwd8QX1wgpJtpWASQCLQU="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/pr/pre2k/package.nix b/pkgs/by-name/pr/pre2k/package.nix index 4865269b55654..98b763cb011df 100644 --- a/pkgs/by-name/pr/pre2k/package.nix +++ b/pkgs/by-name/pr/pre2k/package.nix @@ -24,7 +24,6 @@ python3.pkgs.buildPythonApplication rec { nativeBuildInputs = with python3.pkgs; [ poetry-core - pythonRelaxDepsHook ]; propagatedBuildInputs = with python3.pkgs; [ diff --git a/pkgs/by-name/pr/presenterm/package.nix b/pkgs/by-name/pr/presenterm/package.nix index 5e7e767fef595..d2915f4f8a135 100644 --- a/pkgs/by-name/pr/presenterm/package.nix +++ b/pkgs/by-name/pr/presenterm/package.nix @@ -2,46 +2,47 @@ , fetchFromGitHub , rustPlatform , libsixel +, stdenv +, nix-update-script , testers , presenterm -, stdenv }: rustPlatform.buildRustPackage rec { pname = "presenterm"; - version = "0.7.0"; + version = "0.8.0"; src = fetchFromGitHub { owner = "mfontanini"; repo = "presenterm"; rev = "refs/tags/v${version}"; - hash = "sha256-I5L+Wygj9ApQu/5fm55okwNbyxOiF++7BDl765MLnjY="; + hash = "sha256-sMhowTXPzZcIOV4Ny9NzvgXGsZSPBJGDg9JvuoZoSUc="; }; buildInputs = [ libsixel ]; - cargoHash = "sha256-w1uXCH8Ybf78EPTIKrhPlPHAnNBp1iiBpFJHY98IPWY="; + cargoHash = "sha256-2aHJnGSuP0TEBMxF1zljbEyk1g6ECTpnByyH8jaj78s="; # Crashes at runtime on darwin with: # Library not loaded: .../out/lib/libsixel.1.dylib buildFeatures = lib.optionals (!stdenv.isDarwin) [ "sixel" ]; - # Skip test that currently doesn't work - checkFlags = [ "--skip=execute::test::shell_code_execution" ]; - - passthru.tests.version = testers.testVersion { - package = presenterm; - command = "presenterm --version"; + passthru = { + updateScript = nix-update-script { }; + tests.version = testers.testVersion { + package = presenterm; + command = "presenterm --version"; + }; }; - meta = with lib; { + meta = { description = "Terminal based slideshow tool"; changelog = "https://github.com/mfontanini/presenterm/releases/tag/v${version}"; homepage = "https://github.com/mfontanini/presenterm"; - license = licenses.bsd2; - maintainers = with maintainers; [ mikaelfangel ]; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ mikaelfangel ]; mainProgram = "presenterm"; }; } diff --git a/pkgs/by-name/pr/pretalx/package.nix b/pkgs/by-name/pr/pretalx/package.nix index 784976d06eaf8..94fb2357465bd 100644 --- a/pkgs/by-name/pr/pretalx/package.nix +++ b/pkgs/by-name/pr/pretalx/package.nix @@ -3,13 +3,13 @@ , gettext , python3 , fetchFromGitHub -, fetchpatch2 , plugins ? [ ] , nixosTests }: let python = python3.override { + self = python; packageOverrides = final: prev: { django-bootstrap4 = prev.django-bootstrap4.overridePythonAttrs (oldAttrs: rec { version = "3.0.0"; @@ -29,13 +29,13 @@ let }; }; - version = "2024.1.0"; + version = "2024.2.1"; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx"; rev = "v${version}"; - hash = "sha256-rFOlovybaEZnv5wBx6Dv8bVkP1D+CgYAKRXuNb6hLKQ="; + hash = "sha256-D0ju9aOVy/new9GWqyFalZYCisdmM7irWSbn2TVCJYQ="; }; meta = with lib; { @@ -54,7 +54,7 @@ let sourceRoot = "${src.name}/src/pretalx/frontend/schedule-editor"; - npmDepsHash = "sha256-B9R3Nn4tURNxzeyLDHscqHxYOQK9AcmDnyNq3k5WQQs="; + npmDepsHash = "sha256-EAdeXdcC3gHun6BOHzvqpzv9+oDl1b/VTeNkYLiD+hA="; npmBuildScript = "build"; @@ -71,15 +71,6 @@ python.pkgs.buildPythonApplication rec { "static" ]; - patches = [ - (fetchpatch2 { - # Backport support for Djangorestframework 3.15.x - name = "pretalx-drf-3.15.patch"; - url = "https://github.com/pretalx/pretalx/commit/43a0416c6968d64ea57720abdb82f482940b11f8.patch"; - hash = "sha256-Iw1xVF7j7c712kwIk1SMbQSF0ixMUZr1BJib3KAb2HY="; - }) - ]; - postPatch = '' substituteInPlace src/pretalx/common/management/commands/rebuild.py \ --replace 'subprocess.check_call(["npm", "run", "build"], cwd=frontend_dir, env=env)' "" @@ -90,28 +81,33 @@ python.pkgs.buildPythonApplication rec { nativeBuildInputs = [ gettext - ] ++ (with python.pkgs; [ - pythonRelaxDepsHook + ]; + + build-system = with python.pkgs; [ setuptools - ]); + ]; pythonRelaxDeps = [ "celery" "css-inline" "cssutils" + "defusedxml" + "django-compressor" "django-csp" "django-filter" "django-hierarkey" "djangorestframework" "markdown" "pillow" + "publicsuffixlist" "python-dateutil" "reportlab" "requests" "rules" + "whitenoise" ]; - propagatedBuildInputs = with python.pkgs; [ + dependencies = with python.pkgs; [ beautifulsoup4 bleach celery @@ -119,6 +115,7 @@ python.pkgs.buildPythonApplication rec { csscompressor cssutils defusedcsv + defusedxml django django-bootstrap4 django-compressor @@ -146,9 +143,12 @@ python.pkgs.buildPythonApplication rec { vobject whitenoise zxcvbn - ] ++ beautifulsoup4.optional-dependencies.lxml ++ plugins; + ] + ++ beautifulsoup4.optional-dependencies.lxml + ++ django.optional-dependencies.argon2 + ++ plugins; - passthru.optional-dependencies = { + optional-dependencies = { mysql = with python.pkgs; [ mysqlclient ]; @@ -201,7 +201,7 @@ python.pkgs.buildPythonApplication rec { pytest-xdist pytestCheckHook responses - ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); + ] ++ lib.flatten (lib.attrValues optional-dependencies); disabledTests = [ # tries to run npm run i18n:extract diff --git a/pkgs/by-name/pr/pretalx/plugins/downstream.nix b/pkgs/by-name/pr/pretalx/plugins/downstream.nix index 074c84a90b031..ab94b50ac767d 100644 --- a/pkgs/by-name/pr/pretalx/plugins/downstream.nix +++ b/pkgs/by-name/pr/pretalx/plugins/downstream.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pretalx-downstream"; - version = "1.2.0"; + version = "1.3.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-downstream"; rev = "v${version}"; - hash = "sha256-MzoK/tzf6ajZ/THIXyad/tfb3lsQD9k9J6aBfoP9ONo="; + hash = "sha256-xpacfU655vg6g1rD4uteeizj+Bll4fgI0AEddaGiCLE="; }; build-system = [ setuptools ]; diff --git a/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix b/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix index 91cb42f791e35..82bcf966e7d7b 100644 --- a/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix +++ b/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pretalx-media-ccc-de"; - version = "1.2.1"; + version = "1.3.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-media-ccc-de"; rev = "v${version}"; - hash = "sha256-QCnZZpYjHxj92Dl2nRd4lXapufcqRmlVH6LEq0rzQ2U="; + hash = "sha256-Cr9qbkb1VOH2EtDLSA5jmLiCnn1ICdvHnmTugCvHLc0="; }; build-system = [ setuptools ]; diff --git a/pkgs/by-name/pr/pretalx/plugins/pages.nix b/pkgs/by-name/pr/pretalx/plugins/pages.nix index 3f8d254542a7c..67310f5387e5a 100644 --- a/pkgs/by-name/pr/pretalx/plugins/pages.nix +++ b/pkgs/by-name/pr/pretalx/plugins/pages.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pretalx-pages"; - version = "1.4.0"; + version = "1.5.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-pages"; rev = "v${version}"; - hash = "sha256-Wzd3uf+mdoyeMCZ4ZYcPLGqlUWCqSL02eeKRubTiH00="; + hash = "sha256-wLMl+2hAJQksCyeBnXxMIFh1/Qkosm7PqByW6QxMsyg="; }; build-system = [ setuptools ]; diff --git a/pkgs/by-name/pr/pretalx/plugins/public-voting.nix b/pkgs/by-name/pr/pretalx/plugins/public-voting.nix index 49439ef92c51b..0d66725c72f47 100644 --- a/pkgs/by-name/pr/pretalx/plugins/public-voting.nix +++ b/pkgs/by-name/pr/pretalx/plugins/public-voting.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pretalx-public-voting"; - version = "1.5.0"; + version = "1.6.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-public-voting"; rev = "v${version}"; - hash = "sha256-0dSnUVXtWEuu+m5PyFjjM2WVYE3+cNqZYlMkRQlI+2U="; + hash = "sha256-1zxJ1b2CHfV2AVAneUJxurZ0L3QoMzuBf8c2wrj7yBA="; }; build-system = [ setuptools ]; diff --git a/pkgs/by-name/pr/pretalx/plugins/venueless.nix b/pkgs/by-name/pr/pretalx/plugins/venueless.nix index 5d082c9abd6a7..12f98f1749770 100644 --- a/pkgs/by-name/pr/pretalx/plugins/venueless.nix +++ b/pkgs/by-name/pr/pretalx/plugins/venueless.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pretalx-venueless"; - version = "1.3.0"; + version = "1.4.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-venueless"; rev = "v${version}"; - hash = "sha256-h8o5q1roFm8Bct/Qf8obIJYkkGPcz3WJ15quxZH48H8="; + hash = "sha256-llgRa18hxVoRSwU5UH6w4sE2W5ozCZm4Btbia2y0LbE="; }; nativeBuildInputs = [ gettext ]; diff --git a/pkgs/by-name/pr/pretalx/plugins/vimeo.nix b/pkgs/by-name/pr/pretalx/plugins/vimeo.nix index c823b7bce4b33..a9a3d7903f782 100644 --- a/pkgs/by-name/pr/pretalx/plugins/vimeo.nix +++ b/pkgs/by-name/pr/pretalx/plugins/vimeo.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pretalx-vimeo"; - version = "2.2.0"; + version = "2.3.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-vimeo"; rev = "v${version}"; - hash = "sha256-CVP9C2wY51p8UDnzPpjzdVv5b9CSVanGbkaJiOo+9eY="; + hash = "sha256-ZlF/wWD5FaC4CfYIYvcbykPajoCOotmmaY+rQ0sGAo8="; }; build-system = [ setuptools ]; diff --git a/pkgs/by-name/pr/pretalx/plugins/youtube.nix b/pkgs/by-name/pr/pretalx/plugins/youtube.nix index 4424225c7b091..8d9d008c98373 100644 --- a/pkgs/by-name/pr/pretalx/plugins/youtube.nix +++ b/pkgs/by-name/pr/pretalx/plugins/youtube.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pretalx-youtube"; - version = "2.1.0"; + version = "2.2.0"; pyproject = true; src = fetchFromGitHub { owner = "pretalx"; repo = "pretalx-youtube"; rev = "v${version}"; - hash = "sha256-j3NZ+5QBbdpE2bxenqq5bW/42CWvQ9FqrKMmfYIe4Lo="; + hash = "sha256-cTxkFSK84NRn7Z2uWYBJ2NvQ3pOsUbdZDg6XE5yswPg="; }; build-system = [ setuptools ]; diff --git a/pkgs/by-name/pr/pretix-banktool/package.nix b/pkgs/by-name/pr/pretix-banktool/package.nix new file mode 100644 index 0000000000000..9628e2dbda72c --- /dev/null +++ b/pkgs/by-name/pr/pretix-banktool/package.nix @@ -0,0 +1,48 @@ +{ + lib, + python3Packages, + fetchFromGitHub, + fetchpatch2, +}: + +python3Packages.buildPythonApplication rec { + pname = "pretix-banktool"; + version = "1.0.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "pretix"; + repo = "pretix-banktool"; + rev = "v${version}"; + hash = "sha256-vYHjotx1RujPV53Ei7bXAc3kL/3cwbWQB1T3sQ15MFA="; + }; + + patches = [ + (fetchpatch2 { + # migrate to pyproject.toml, relax constraints + url = "https://github.com/pretix/pretix-banktool/commit/48a8125aba86d70f62c2b1f88bcf21c783402589.patch"; + hash = "sha256-HbVzWoI5LlNyh0MZnPsLmzu7RMY8/BDfOwgDWMD+k5w="; + }) + ]; + + build-system = with python3Packages; [ setuptools ]; + + dependencies = with python3Packages; [ + click + fints + requests + mt-940 + ]; + + doCheck = false; # no tests + + pythonImportsCheck = [ "pretix_banktool" ]; + + meta = with lib; { + description = "Automatic bank data upload tool for pretix (with FinTS client)"; + homepage = "https://github.com/pretix/pretix-banktool"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ hexa ]; + mainProgram = "pretix-banktool"; + }; +} diff --git a/pkgs/by-name/pr/pretix/package.nix b/pkgs/by-name/pr/pretix/package.nix index f4e744af6748f..4ce7fb727422d 100644 --- a/pkgs/by-name/pr/pretix/package.nix +++ b/pkgs/by-name/pr/pretix/package.nix @@ -11,7 +11,18 @@ let python = python3.override { + self = python; packageOverrides = self: super: { + bleach = super.bleach.overridePythonAttrs (oldAttrs: rec { + version = "5.0.1"; + + src = fetchPypi { + pname = "bleach"; + inherit version; + hash = "sha256-DQMlXEfrm9Lyaqm7fyEHcy5+j+GVyi9kcJ/POwpKCFw="; + }; + }); + django = super.django_4; django-oauth-toolkit = super.django-oauth-toolkit.overridePythonAttrs (oldAttrs: { @@ -34,17 +45,19 @@ let }; pretix-plugin-build = self.callPackage ./plugin-build.nix { }; + + sentry-sdk = super.sentry-sdk_2; }; }; pname = "pretix"; - version = "2024.5.0"; + version = "2024.7.0"; src = fetchFromGitHub { owner = "pretix"; repo = "pretix"; rev = "refs/tags/v${version}"; - hash = "sha256-dLzCugbRQSGuOwe99a3WLMffisyvYWNRdSdcdW9knjY="; + hash = "sha256-08ykuFPcG3WvinJd9zadirXFqsMt9GbdOGU2CGbW7ls="; }; npmDeps = buildNpmPackage { @@ -52,7 +65,7 @@ let inherit version src; sourceRoot = "${src.name}/src/pretix/static/npm_dir"; - npmDepsHash = "sha256-SEgAC3dmnxG1xM9QZQ/e+6NFOwXU3tXlbfZCzrAMFO0="; + npmDepsHash = "sha256-BfvKuwB5VLX09Lxji+EpMBvZeKTIQvptVtrHSRYY+14="; dontBuild = true; @@ -74,6 +87,26 @@ python.pkgs.buildPythonApplication rec { # Discover pretix.plugin entrypoints during build and add them into # INSTALLED_APPS, so that their static files are collected. ./plugin-build.patch + + # https://github.com/pretix/pretix/pull/4362 + # Fix TOCTOU race in directory creation + ./pr4362.patch + ]; + + pythonRelaxDeps = [ + "importlib-metadata" + "kombu" + "pillow" + "protobuf" + "python-bidi" + "requests" + "sentry-sdk" + ]; + + pythonRemoveDeps = [ + "phonenumberslite" # we provide phonenumbers instead + "psycopg2-binary" # we provide psycopg2 instead + "vat-moss-forked" # we provide a patched vat-moss package ]; postPatch = '' @@ -86,19 +119,8 @@ python.pkgs.buildPythonApplication rec { sed -i "/setuptools-rust/d" pyproject.toml substituteInPlace pyproject.toml \ - --replace-fail phonenumberslite phonenumbers \ - --replace-fail psycopg2-binary psycopg2 \ - --replace-fail vat_moss_forked==2020.3.20.0.11.0 vat-moss \ - --replace-fail "bleach==5.0.*" bleach \ - --replace-fail "djangorestframework==3.15.*" djangorestframework \ - --replace-fail "dnspython==2.6.*" dnspython \ - --replace-fail "importlib_metadata==7.*" importlib_metadata \ - --replace-fail "markdown==3.6" markdown \ - --replace-fail "protobuf==5.27.*" protobuf \ - --replace-fail "pycryptodome==3.20.*" pycryptodome \ - --replace-fail "python-dateutil==2.9.*" python-dateutil \ - --replace-fail "requests==2.32.*" "requests" \ - --replace-fail "stripe==7.9.*" stripe + --replace-fail '"backend"' '"setuptools.build_meta"' \ + --replace-fail 'backend-path = ["_build"]' "" ''; build-system = with python.pkgs; [ @@ -226,6 +248,13 @@ python.pkgs.buildPythonApplication rec { disabledTests = [ # unreliable around day changes "test_order_create_invoice" + + # outdated translation files + # https://github.com/pretix/pretix/commit/c4db2a48b6ac81763fa67475d8182aee41c31376 + "test_different_dates_spanish" + "test_same_day_spanish" + "test_same_month_spanish" + "test_same_year_spanish" ]; preCheck = '' diff --git a/pkgs/by-name/pr/pretix/plugins/default.nix b/pkgs/by-name/pr/pretix/plugins/default.nix index 70e643705c008..a60316e521e48 100644 --- a/pkgs/by-name/pr/pretix/plugins/default.nix +++ b/pkgs/by-name/pr/pretix/plugins/default.nix @@ -10,4 +10,6 @@ reluctant-stripe = callPackage ./reluctant-stripe.nix { }; stretchgoals = callPackage ./stretchgoals.nix { }; + + zugferd = callPackage ./zugferd.nix { }; } diff --git a/pkgs/by-name/pr/pretix/plugins/zugferd.nix b/pkgs/by-name/pr/pretix/plugins/zugferd.nix new file mode 100644 index 0000000000000..e96193a52b50e --- /dev/null +++ b/pkgs/by-name/pr/pretix/plugins/zugferd.nix @@ -0,0 +1,53 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + pretix-plugin-build, + setuptools, + django, + drafthorse, + ghostscript_headless, +}: + +buildPythonPackage rec { + pname = "pretix-zugferd"; + version = "2.2.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "pretix"; + repo = "pretix-zugferd"; + rev = "v${version}"; + hash = "sha256-ozFDNIA+0feHrHHvxcf+6Jh4L83svmPEE/rerd4Yim8="; + }; + + postPatch = '' + substituteInPlace pretix_zugferd/invoice.py \ + --replace-fail 'fallback="gs"' 'fallback="${lib.getExe ghostscript_headless}"' + ''; + + pythonRelaxDeps = [ "drafthorse" ]; + + build-system = [ + django + pretix-plugin-build + setuptools + ]; + + postBuild = '' + make + ''; + + dependencies = [ drafthorse ]; + + doCheck = false; # no tests + + pythonImportsCheck = [ "pretix_zugferd" ]; + + meta = with lib; { + description = "Annotate pretix' invoices with ZUGFeRD data"; + homepage = "https://github.com/pretix/pretix-zugferd"; + license = licenses.asl20; + maintainers = with maintainers; [ hexa ]; + }; +} diff --git a/pkgs/by-name/pr/pretix/pr4362.patch b/pkgs/by-name/pr/pretix/pr4362.patch new file mode 100644 index 0000000000000..97d4a20c2239d --- /dev/null +++ b/pkgs/by-name/pr/pretix/pr4362.patch @@ -0,0 +1,50 @@ +From 5688f3624005d02803f2a434db025f367b4963d3 Mon Sep 17 00:00:00 2001 +From: Martin Weinelt <hexa@darmstadt.ccc.de> +Date: Thu, 1 Aug 2024 02:39:59 +0200 +Subject: [PATCH] Prevent race condition in directory creation + +Checking whether a path does not exist before trying to create it does +not follow the Python paradigm of asking for forgiveness, rather than +permission, and opens up a time-of-check to time-of-use race. +--- + src/pretix/settings.py | 17 +++++++++-------- + 1 file changed, 9 insertions(+), 8 deletions(-) + +diff --git a/src/pretix/settings.py b/src/pretix/settings.py +index 81ff644be..854187f05 100644 +--- a/src/pretix/settings.py ++++ b/src/pretix/settings.py +@@ -37,6 +37,7 @@ import configparser + import logging + import os + import sys ++from contextlib import suppress + from json import loads + from urllib.parse import urlparse + +@@ -70,14 +71,14 @@ MEDIA_ROOT = os.path.join(DATA_DIR, 'media') + PROFILE_DIR = os.path.join(DATA_DIR, 'profiles') + CACHE_DIR = config.get('pretix', 'cachedir', fallback=os.path.join(DATA_DIR, 'cache')) + +-if not os.path.exists(DATA_DIR): +- os.mkdir(DATA_DIR) +-if not os.path.exists(LOG_DIR): +- os.mkdir(LOG_DIR) +-if not os.path.exists(MEDIA_ROOT): +- os.mkdir(MEDIA_ROOT) +-if not os.path.exists(CACHE_DIR): +- os.mkdir(CACHE_DIR) ++def mkdir(path): ++ with suppress(FileExistsError): ++ os.mkdir(path) ++ ++mkdir(DATA_DIR) ++mkdir(LOG_DIR) ++mkdir(MEDIA_ROOT) ++mkdir(CACHE_DIR) + + if config.has_option('django', 'secret'): + SECRET_KEY = config.get('django', 'secret') +-- +2.45.2 + diff --git a/pkgs/by-name/pr/prettier-d-slim/package.nix b/pkgs/by-name/pr/prettier-d-slim/package.nix index 3b92503d7423b..1f3938968fb21 100644 --- a/pkgs/by-name/pr/prettier-d-slim/package.nix +++ b/pkgs/by-name/pr/prettier-d-slim/package.nix @@ -23,6 +23,6 @@ buildNpmPackage rec { homepage = "https://github.com/mikew/prettier_d_slim"; license = lib.licenses.mit; mainProgram = "prettier_d_slim"; - maintainers = with lib.maintainers; [ ]; + maintainers = [ ]; }; } diff --git a/pkgs/by-name/pr/prettier-plugin-go-template/package.nix b/pkgs/by-name/pr/prettier-plugin-go-template/package.nix new file mode 100644 index 0000000000000..79161f56c4819 --- /dev/null +++ b/pkgs/by-name/pr/prettier-plugin-go-template/package.nix @@ -0,0 +1,27 @@ +{ + lib, + buildNpmPackage, + fetchFromGitHub, +}: + +buildNpmPackage rec { + pname = "prettier-plugin-go-template"; + version = "0-unstable-2023-07-26"; + + src = fetchFromGitHub { + owner = "NiklasPor"; + repo = pname; + rev = "d91c82e1377b89592ea3365e7e5569688fbc7954"; + hash = "sha256-3Tvh+OzqDTtzoaTp5dZpgEQiNA2Y2dbyq4SV9Od499A="; + }; + + npmDepsHash = "sha256-PpJnVZFRxpUHux2jIBDtyBS4qNo6IJY4kwTAq6stEVQ="; + + meta = { + description = "Fixes prettier formatting for go templates"; + mainProgram = "prettier-plugin-go-template"; + homepage = "https://github.com/NiklasPor/prettier-plugin-go-template"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ jukremer ]; + }; +} diff --git a/pkgs/by-name/pr/prettierd/package.json b/pkgs/by-name/pr/prettierd/package.json new file mode 100644 index 0000000000000..085e4ab73f7c3 --- /dev/null +++ b/pkgs/by-name/pr/prettierd/package.json @@ -0,0 +1,45 @@ +{ + "name": "@fsouza/prettierd", + "version": "0.25.3", + "description": "prettier, as a daemon", + "bin": { + "prettierd": "./bin/prettierd" + }, + "scripts": { + "prepare": "yarn build", + "build": "tsc -b", + "run": "node bin/prettierd", + "start": "node bin/prettierd start", + "prettier:check": "prettier --check .", + "prettier:fix": "prettier --write ." + }, + "repository": { + "type": "git", + "url": "git+https://github.com/fsouza/prettierd.git" + }, + "author": "Francisco Souza", + "license": "ISC", + "bugs": { + "url": "https://github.com/fsouza/prettierd/issues" + }, + "homepage": "https://github.com/fsouza/prettierd", + "devDependencies": { + "@types/node": "^20.12.7", + "@types/prettier": "^3.0.0", + "typescript": "^5.4.5" + }, + "dependencies": { + "core_d": "^6.1.0", + "prettier": "^3.2.5" + }, + "files": [ + "bin", + "dist", + "LICENSE", + "README.md" + ], + "optionalDependencies": { + "@babel/parser": "^7.24.4", + "@typescript-eslint/typescript-estree": "^7.6.0" + } +} diff --git a/pkgs/by-name/pr/prettierd/package.nix b/pkgs/by-name/pr/prettierd/package.nix new file mode 100644 index 0000000000000..1025a90fbd377 --- /dev/null +++ b/pkgs/by-name/pr/prettierd/package.nix @@ -0,0 +1,55 @@ +{ + lib, + mkYarnPackage, + fetchFromGitHub, + makeWrapper, + nodejs, + fetchYarnDeps, +}: +mkYarnPackage rec { + pname = "prettierd"; + version = "0.25.3"; + + src = fetchFromGitHub { + owner = "fsouza"; + repo = "prettierd"; + rev = "v${version}"; + hash = "sha256-3lvFZ5/p+1kPnHIR2PlQtCY3SVo1rs8IuBigLaabxAE="; + }; + + offlineCache = fetchYarnDeps { + yarnLock = src + "/yarn.lock"; + hash = "sha256-Ti2b102pzUKB6Xy3LwZ7DlrnW0cRscgNLTUIAKz+6Us="; + }; + + packageJSON = ./package.json; + + nativeBuildInputs = [ makeWrapper ]; + + buildPhase = '' + runHook preBuild + export HOME=$(mktemp -d) + yarn --offline build + runHook postBuild + ''; + + # prettierd needs to be wrapped with nodejs so that it can be executed + postInstall = '' + wrapProgram "$out/bin/prettierd" --prefix PATH : "${nodejs}/bin" + ''; + + doDist = false; + + meta = { + mainProgram = "prettierd"; + description = "Prettier, as a daemon, for improved formatting speed"; + homepage = "https://github.com/fsouza/prettierd"; + license = lib.licenses.isc; + changelog = "https://github.com/fsouza/prettierd/blob/${src.rev}/CHANGELOG.md"; + platforms = with lib.platforms; linux ++ darwin; + maintainers = with lib.maintainers; [ + NotAShelf + n3oney + ]; + }; +} diff --git a/pkgs/by-name/pr/previewqt/package.nix b/pkgs/by-name/pr/previewqt/package.nix new file mode 100644 index 0000000000000..f493f6ec3dab3 --- /dev/null +++ b/pkgs/by-name/pr/previewqt/package.nix @@ -0,0 +1,64 @@ +{ + lib, + vips, + resvg, + mpv, + libraw, + imagemagick, + libdevil, + stdenv, + fetchFromGitLab, + cmake, + libarchive, + qt6Packages, + extra-cmake-modules, + exiv2, +}: + +stdenv.mkDerivation rec { + pname = "previewqt"; + version = "3.0"; + + src = fetchFromGitLab { + owner = "lspies"; + repo = "previewqt"; + rev = "refs/tags/v${version}"; + hash = "sha256-cDtqgezKGgSdhw8x1mM4cZ0H3SfUPEyWP6rRD+kRwXc="; + }; + + # can't find qtquick3d + strictDeps = false; + + nativeBuildInputs = [ + cmake + extra-cmake-modules + qt6Packages.wrapQtAppsHook + ]; + + buildInputs = [ + exiv2 + imagemagick + qt6Packages.poppler + qt6Packages.qtmultimedia + qt6Packages.qtquick3d + qt6Packages.qtsvg + qt6Packages.qttools + qt6Packages.qtwebengine + libarchive + libdevil + libraw + mpv + resvg + vips + ]; + + meta = { + description = "Qt-based file previewer"; + homepage = "https://photoqt.org/previewqt"; + changelog = "https://gitlab.com/lspies/previewqt/-/blob/v${version}/CHANGELOG"; + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ eclairevoyant ]; + mainProgram = "previewqt"; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/pr/primecount/package.nix b/pkgs/by-name/pr/primecount/package.nix index d2b117138e73f..7a66f379965f3 100644 --- a/pkgs/by-name/pr/primecount/package.nix +++ b/pkgs/by-name/pr/primecount/package.nix @@ -1,30 +1,33 @@ -{ lib -, cmake -, fetchFromGitHub -, primesieve -, stdenv +{ + lib, + cmake, + fetchFromGitHub, + gitUpdater, + primesieve, + stdenv, }: stdenv.mkDerivation (finalAttrs: { pname = "primecount"; - version = "7.13"; + version = "7.14"; src = fetchFromGitHub { owner = "kimwalisch"; repo = "primecount"; rev = "v${finalAttrs.version}"; - hash = "sha256-VjsJjG2pSnDMVg3lY3cmpdnASeqClPjHUGY5wqupf2w="; + hash = "sha256-N4eENwYuf8ZR1JQyFtoWl6H3ITpGZVaOMEU3gx0f9yQ="; }; - outputs = [ "out" "dev" "lib" "man" ]; - - nativeBuildInputs = [ - cmake + outputs = [ + "out" + "dev" + "lib" + "man" ]; - buildInputs = [ - primesieve - ]; + nativeBuildInputs = [ cmake ]; + + buildInputs = [ primesieve ]; strictDeps = true; @@ -36,6 +39,13 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "BUILD_TESTS" true) ]; + passthru = { + tests = { + inherit primesieve; # dependency + }; + updateScript = gitUpdater { rev-prefix = "v"; }; + }; + meta = { homepage = "https://github.com/kimwalisch/primecount"; description = "Fast prime counting function implementations"; diff --git a/pkgs/by-name/pr/primesieve/package.nix b/pkgs/by-name/pr/primesieve/package.nix index b5e2da37022d7..16b7bfe8801c9 100644 --- a/pkgs/by-name/pr/primesieve/package.nix +++ b/pkgs/by-name/pr/primesieve/package.nix @@ -1,22 +1,29 @@ -{ lib -, cmake -, fetchFromGitHub -, stdenv -, primecount +{ + lib, + cmake, + fetchFromGitHub, + gitUpdater, + stdenv, + primecount, }: stdenv.mkDerivation (finalAttrs: { pname = "primesieve"; - version = "12.3"; + version = "12.4"; src = fetchFromGitHub { owner = "kimwalisch"; repo = "primesieve"; rev = "v${finalAttrs.version}"; - hash = "sha256-jULYLJK3iwPKgWpdTEetmSz1Nv2md1XUfR9A9mTQu9M="; + hash = "sha256-3iVQsksnyw9KFBTYsmyZ6YxYICVq1GzOzemDBpqpU3M="; }; - outputs = [ "out" "dev" "lib" "man" ]; + outputs = [ + "out" + "dev" + "lib" + "man" + ]; nativeBuildInputs = [ cmake ]; @@ -26,6 +33,7 @@ stdenv.mkDerivation (finalAttrs: { tests = { inherit primecount; # dependent }; + updateScript = gitUpdater { rev-prefix = "v"; }; }; meta = { @@ -42,8 +50,7 @@ stdenv.mkDerivation (finalAttrs: { changelog = "https://github.com/kimwalisch/primesieve/blob/${finalAttrs.src.rev}/ChangeLog"; license = lib.licenses.bsd2; mainProgram = "primesieve"; - maintainers = lib.teams.sage.members ++ - (with lib.maintainers; [ abbradar AndersonTorres ]); + maintainers = lib.teams.sage.members; platforms = lib.platforms.unix; }; }) diff --git a/pkgs/by-name/pr/prismlauncher/package.nix b/pkgs/by-name/pr/prismlauncher/package.nix index c6ff6894389d5..bb08a19de3704 100644 --- a/pkgs/by-name/pr/prismlauncher/package.nix +++ b/pkgs/by-name/pr/prismlauncher/package.nix @@ -3,7 +3,8 @@ stdenv, symlinkJoin, prismlauncher-unwrapped, - addOpenGLRunpath, + addDriverRunpath, + alsa-lib, flite, gamemode, glfw, @@ -14,11 +15,13 @@ jdk21, kdePackages, libGL, + libjack2, libpulseaudio, libusb1, makeWrapper, openal, pciutils, + pipewire, udev, vulkan-loader, xorg, @@ -102,21 +105,28 @@ symlinkJoin { runtimeLibs = [ # lwjgl + stdenv.cc.cc.lib + ## native versions glfw - libpulseaudio - libGL openal - stdenv.cc.cc.lib - vulkan-loader # VulkanMod's lwjgl - - udev # oshi + ## openal + alsa-lib + libjack2 + libpulseaudio + pipewire + ## glfw + libGL xorg.libX11 xorg.libXext xorg.libXcursor xorg.libXrandr xorg.libXxf86vm + + udev # oshi + + vulkan-loader # VulkanMod's lwjgl ] ++ lib.optional textToSpeechSupport flite ++ lib.optional gamemodeSupport gamemode.lib @@ -132,7 +142,7 @@ symlinkJoin { in [ "--prefix PRISMLAUNCHER_JAVA_PATHS : ${lib.makeSearchPath "bin/java" jdks}" ] ++ lib.optionals stdenv.isLinux [ - "--set LD_LIBRARY_PATH ${addOpenGLRunpath.driverLink}/lib:${lib.makeLibraryPath runtimeLibs}" + "--set LD_LIBRARY_PATH ${addDriverRunpath.driverLink}/lib:${lib.makeLibraryPath runtimeLibs}" "--prefix PATH : ${lib.makeBinPath runtimePrograms}" ]; diff --git a/pkgs/by-name/pr/private-gpt/package.nix b/pkgs/by-name/pr/private-gpt/package.nix index 1b717cc2bfb83..4912c42212c86 100644 --- a/pkgs/by-name/pr/private-gpt/package.nix +++ b/pkgs/by-name/pr/private-gpt/package.nix @@ -5,8 +5,10 @@ python3Packages.toPythonApplication (python3Packages.private-gpt.overrideAttrs (oldAttrs: { nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeBinaryWrapper ]; - passthru.cl100k_base = { - inherit (python3Packages.private-gpt.cl100k_base) tiktoken; + passthru = (oldAttrs.passthru or {}) // { + cl100k_base = { + inherit (python3Packages.private-gpt.cl100k_base) tiktoken; + }; }; postInstall = '' diff --git a/pkgs/by-name/pr/process-cpp/package.nix b/pkgs/by-name/pr/process-cpp/package.nix index 2a04e385c3254..eb9638e74ab1b 100644 --- a/pkgs/by-name/pr/process-cpp/package.nix +++ b/pkgs/by-name/pr/process-cpp/package.nix @@ -1,27 +1,28 @@ -{ lib -, stdenv -, fetchFromGitLab -, testers -, unstableGitUpdater -, cmake -, coreutils -, boost -, gtest -, lomiri -, properties-cpp -, pkg-config +{ + lib, + stdenv, + fetchFromGitLab, + testers, + gitUpdater, + cmake, + coreutils, + boost, + gtest, + lomiri, + properties-cpp, + pkg-config, }: stdenv.mkDerivation (finalAttrs: { pname = "process-cpp"; - version = "3.0.1-unstable-2024-03-14"; + version = "3.0.2"; src = fetchFromGitLab { domain = "gitlab.com"; owner = "ubports"; repo = "development/core/lib-cpp/process-cpp"; - rev = "7b0a829abcbcdd25d949e5f9e2c26bb985a58b31"; - hash = "sha256-Az+lSJ7uVR4pAWvOeah5vFtIPb12eKp0nAFF1qsHZXA="; + rev = finalAttrs.version; + hash = "sha256-UCNmD5Ea2wnEwG9gkt88TaX0vfS4SCaIOPRMeNFx80Y="; }; outputs = [ @@ -52,27 +53,29 @@ stdenv.mkDerivation (finalAttrs: { properties-cpp ]; - checkInputs = [ - gtest - ]; + checkInputs = [ gtest ]; - cmakeFlags = [ - (lib.cmakeBool "BUILD_TESTING" finalAttrs.finalPackage.doCheck) - ]; + cmakeFlags = [ (lib.cmakeBool "BUILD_TESTING" finalAttrs.finalPackage.doCheck) ]; doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; passthru = { tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; - updateScript = unstableGitUpdater { }; + updateScript = gitUpdater { }; }; - meta = with lib; { + meta = { description = "Simple convenience library for handling processes in C++11"; homepage = "https://gitlab.com/ubports/development/core/lib-cpp/process-cpp"; - license = with licenses; [ gpl3Only lgpl3Only ]; - maintainers = with maintainers; [ onny OPNA2608 ]; - platforms = platforms.linux; + license = with lib.licenses; [ + gpl3Only + lgpl3Only + ]; + maintainers = with lib.maintainers; [ + onny + OPNA2608 + ]; + platforms = lib.platforms.linux; pkgConfigModules = [ "process-cpp" ]; }; }) diff --git a/pkgs/by-name/pr/progress-tracker/package.nix b/pkgs/by-name/pr/progress-tracker/package.nix new file mode 100644 index 0000000000000..f67d334d54406 --- /dev/null +++ b/pkgs/by-name/pr/progress-tracker/package.nix @@ -0,0 +1,58 @@ +{ + lib, + catch2_3, + cmake, + fetchFromGitHub, + gtkmm4, + libadwaita, + pcre2, + pkg-config, + stdenv, + tinyxml-2, + wrapGAppsHook4, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "progress-tracker"; + version = "1.6"; + + src = fetchFromGitHub { + owner = "smolBlackCat"; + repo = "progress-tracker"; + rev = "v${finalAttrs.version}"; + hash = "sha256-uUw3+BJWRoCT1VH27SZBEBRsEbbpaP4IahKonfSOyeM="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + wrapGAppsHook4 + ]; + + buildInputs = [ + catch2_3 + gtkmm4 + libadwaita + pcre2 + tinyxml-2 + ]; + + postPatch = '' + substituteInPlace src/CMakeLists.txt \ + --replace-fail "/usr/bin/" "${placeholder "out"}/bin/" + + substituteInPlace po/CMakeLists.txt \ + --replace-fail "/usr/share/" "${placeholder "out"}/share/" + + substituteInPlace data/CMakeLists.txt \ + --replace-fail "/usr/share/" "${placeholder "out"}/share/" + ''; + + meta = { + description = "Simple kanban-style task organiser"; + homepage = "https://github.com/smolBlackCat/progress-tracker"; + license = lib.licenses.mit; + mainProgram = "progress"; + maintainers = with lib.maintainers; [ Guanran928 ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/by-name/pr/prometheus-borgmatic-exporter/package.nix b/pkgs/by-name/pr/prometheus-borgmatic-exporter/package.nix new file mode 100644 index 0000000000000..ad02307ffa0e2 --- /dev/null +++ b/pkgs/by-name/pr/prometheus-borgmatic-exporter/package.nix @@ -0,0 +1,47 @@ +{ + lib, + fetchFromGitHub, + python3Packages, + borgmatic, +}: +python3Packages.buildPythonApplication rec { + pname = "prometheus-borgmatic-exporter"; + version = "0.2.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "maxim-mityutko"; + repo = "borgmatic-exporter"; + rev = "v${version}"; + hash = "sha256-SgP1utu4Eqs9214pYOT9wP0Ms7AUQH1A3czQF8+qBRo="; + }; + + nativeCheckInputs = with python3Packages; [ + pytestCheckHook + pytest-mock + ]; + + buildInputs = [python3Packages.poetry-core]; + + propagatedBuildInputs = + [ borgmatic ] + ++ (with python3Packages; [ + flask + arrow + click + loguru + pretty-errors + prometheus-client + timy + waitress + ]); + + meta = with lib; { + description = "Prometheus exporter for Borgmatic"; + homepage = "https://github.com/maxim-mityutko/borgmatic-exporter"; + license = licenses.mit; + maintainers = with maintainers; [ flandweber ]; + mainProgram = "borgmatic-exporter"; + platforms = platforms.unix; + }; +} diff --git a/pkgs/by-name/pr/prometheus-deluge-exporter/package.nix b/pkgs/by-name/pr/prometheus-deluge-exporter/package.nix new file mode 100644 index 0000000000000..4adcaf0a747d6 --- /dev/null +++ b/pkgs/by-name/pr/prometheus-deluge-exporter/package.nix @@ -0,0 +1,34 @@ +{ lib +, python3 +, fetchFromGitHub +}: + +python3.pkgs.buildPythonApplication rec { + pname = "deluge-exporter"; + version = "2.4.0-unstable-2024-06-02"; + + src = fetchFromGitHub { + owner = "ibizaman"; + repo = "deluge_exporter"; + rev = "8d446c8cba4a324aa052e66c115121b23adc970f"; + hash = "sha256-1brLWx6IEGffcvHPCkz10k9GCNQIXXJ9PYZuEzlKHTA="; + }; + + propagatedBuildInputs = with python3.pkgs; [ + deluge-client + loguru + prometheus-client + ]; + + pythonImportsCheck = [ + "deluge_exporter" + ]; + + meta = with lib; { + description = "Prometheus exporter for Deluge"; + homepage = "https://github.com/ibizaman/deluge_exporter"; + license = licenses.isc; + maintainers = with maintainers; [ ibizaman ]; + mainProgram = "deluge-exporter"; + }; +} diff --git a/pkgs/by-name/pr/prometheus-jmx-javaagent/package.nix b/pkgs/by-name/pr/prometheus-jmx-javaagent/package.nix index 179acfe520ace..49ca4c9d6d840 100644 --- a/pkgs/by-name/pr/prometheus-jmx-javaagent/package.nix +++ b/pkgs/by-name/pr/prometheus-jmx-javaagent/package.nix @@ -10,10 +10,10 @@ stdenv.mkDerivation ( in { pname = "jmx-prometheus-javaagent"; - version = "0.20.0"; + version = "1.0.1"; src = fetchurl { url = "mirror://maven/io/prometheus/jmx/jmx_prometheus_javaagent/${finalAttrs.version}/${jarName}"; - sha256 = "sha256-i2ftQEhdR1ZIw20R0hRktIRAb4X6+RKzNj9xpqeGEyA="; + sha256 = "sha256-fWH3N/1mFhDMwUrqeXZPqh6pSjQMvI8AKbPS7eo9gME="; }; dontUnpack = true; diff --git a/pkgs/by-name/pr/prometheus-node-exporter/package.nix b/pkgs/by-name/pr/prometheus-node-exporter/package.nix new file mode 100644 index 0000000000000..7ddf75a893aab --- /dev/null +++ b/pkgs/by-name/pr/prometheus-node-exporter/package.nix @@ -0,0 +1,44 @@ +{ lib, stdenv, buildGoModule, fetchFromGitHub, nixosTests, darwin }: + +buildGoModule rec { + pname = "node_exporter"; + version = "1.8.2"; + rev = "v${version}"; + + src = fetchFromGitHub { + inherit rev; + owner = "prometheus"; + repo = "node_exporter"; + hash = "sha256-b2uior67RcCCpUE+qx55G1eWiT2wWDVsnosSH9fd3/I="; + }; + + vendorHash = "sha256-sly8AJk+jNZG8ijTBF1Pd5AOOUJJxIG8jHwBUdlt8fM="; + + # FIXME: tests fail due to read-only nix store + doCheck = false; + + buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation IOKit ]); + + excludedPackages = [ "docs/node-mixin" ]; + + ldflags = [ + "-s" + "-w" + "-X github.com/prometheus/common/version.Version=${version}" + "-X github.com/prometheus/common/version.Revision=${rev}" + "-X github.com/prometheus/common/version.Branch=unknown" + "-X github.com/prometheus/common/version.BuildUser=nix@nixpkgs" + "-X github.com/prometheus/common/version.BuildDate=unknown" + ]; + + passthru.tests = { inherit (nixosTests.prometheus-exporters) node; }; + + meta = with lib; { + description = "Prometheus exporter for machine metrics"; + mainProgram = "node_exporter"; + homepage = "https://github.com/prometheus/node_exporter"; + changelog = "https://github.com/prometheus/node_exporter/blob/v${version}/CHANGELOG.md"; + license = licenses.asl20; + maintainers = with maintainers; [ benley fpletz globin Frostman ]; + }; +} diff --git a/pkgs/by-name/pr/prometheus-restic-exporter/package.nix b/pkgs/by-name/pr/prometheus-restic-exporter/package.nix index 603650a66ab63..d2dc4875282f0 100644 --- a/pkgs/by-name/pr/prometheus-restic-exporter/package.nix +++ b/pkgs/by-name/pr/prometheus-restic-exporter/package.nix @@ -8,13 +8,13 @@ stdenvNoCC.mkDerivation rec { pname = "prometheus-restic-exporter"; - version = "1.5.0"; + version = "1.6.0"; src = fetchFromGitHub { owner = "ngosang"; repo = "restic-exporter"; rev = version; - hash = "sha256-SC2ZCIQ33RaFI9+l/WI6edNzGEtsxJ2bBdeGNMHuyqY="; + hash = "sha256-gXiEts0EY9H01+rs+2o+cbVENotM33uhcQiGDtroSU4="; }; buildInputs = [ diff --git a/pkgs/by-name/pr/prometheus-squid-exporter/package.nix b/pkgs/by-name/pr/prometheus-squid-exporter/package.nix index 1c9098997010c..217449b85bb40 100644 --- a/pkgs/by-name/pr/prometheus-squid-exporter/package.nix +++ b/pkgs/by-name/pr/prometheus-squid-exporter/package.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "squid-exporter"; - version = "1.11.0"; + version = "1.12.0"; src = fetchFromGitHub { owner = "boynux"; repo = "squid-exporter"; rev = "v${version}"; - sha256 = "sha256-43f6952IqUHoB5CN0p5R5J/sMKbTe2msF9FGqykwMBo="; + sha256 = "sha256-low1nIL7FbIYfIP7KWPskAQ50Hh+d7JI+ryYoR+mP10="; }; - vendorHash = null; + vendorHash = "sha256-0BNhjNveUDd0+X0do4Md58zJjXe3+KN27MPEviNuF3g="; meta = { description = "Squid Prometheus exporter"; diff --git a/pkgs/by-name/pr/promql-cli/package.nix b/pkgs/by-name/pr/promql-cli/package.nix new file mode 100644 index 0000000000000..d5188e83f2935 --- /dev/null +++ b/pkgs/by-name/pr/promql-cli/package.nix @@ -0,0 +1,32 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: + +buildGoModule rec { + pname = "promql-cli"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "nalbury"; + repo = pname; + rev = "v${version}"; + hash = "sha256-EV63fdG+GF+kVLH2TxHPhRcUU5xBvkW5bhHC1lEoj84="; + }; + + vendorHash = "sha256-jhNll04xGaxS6NJTh4spSW9zPrff8jk5OEQiRevPQwU="; + + ldflags = [ "-s" "-w" ]; + + postInstall = '' + mv -v $out/bin/promql-cli $out/bin/promql + ''; + + meta = with lib; { + description = "Command-line tool to query a Prometheus server with PromQL and visualize the output"; + homepage = "https://github.com/nalbury/promql-cli"; + license = licenses.asl20; + maintainers = with maintainers; [ arikgrahl ]; + mainProgram = "promql"; + }; +} diff --git a/pkgs/by-name/pr/protege/package.nix b/pkgs/by-name/pr/protege/package.nix index f6d22a08e2f57..efb34e4def488 100644 --- a/pkgs/by-name/pr/protege/package.nix +++ b/pkgs/by-name/pr/protege/package.nix @@ -8,10 +8,7 @@ , maven }: -let - mvn = maven.override { jdk = jdk11; }; -in -mvn.buildMavenPackage rec { +maven.buildMavenPackage rec { pname = "protege"; version = "5.6.4"; @@ -22,6 +19,7 @@ mvn.buildMavenPackage rec { hash = "sha256-Q3MHa7nCeF31n7JPltcemFBc/sJwGA9Ev0ymjQhY/U0="; }; + mvnJdk = jdk11; mvnHash = "sha256-kemP2gDv1CYuaoK0fwzBxdLTusarPasf2jCDQj/HPYE="; patches = [ diff --git a/pkgs/by-name/pr/proto/package.nix b/pkgs/by-name/pr/proto/package.nix index 3afa04ec788a7..d108ed652b101 100644 --- a/pkgs/by-name/pr/proto/package.nix +++ b/pkgs/by-name/pr/proto/package.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "proto"; - version = "0.37.1"; + version = "0.38.3"; src = fetchFromGitHub { owner = "moonrepo"; - repo = pname; + repo = "proto"; rev = "v${version}"; - hash = "sha256-IqXxjR+M1OCRKUA2HCT6WQvdBMOa0efT8m+drhyQCoE="; + hash = "sha256-o/du9XmiS7U5ypm6osQtVTjrJY60iLCkJ4DWCYOeIoY="; }; - cargoHash = "sha256-NnTiT1jLMo9EfYau+U0FiAC+V67GnoI90vSsotwniio="; + cargoHash = "sha256-Z0XPouvv6eR9eKLQurI/UGSiRZyGUo/x1c/XbcJlO5A="; buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.SystemConfiguration @@ -33,7 +33,7 @@ rustPlatform.buildRustPackage rec { postInstall = '' # proto looks up a proto-shim executable file in $PROTO_LOOKUP_DIR - wrapProgram $out/bin/${pname} \ + wrapProgram $out/bin/proto \ --set PROTO_LOOKUP_DIR $out/bin ''; diff --git a/pkgs/by-name/pr/protoc-gen-elixir/package.nix b/pkgs/by-name/pr/protoc-gen-elixir/package.nix new file mode 100644 index 0000000000000..8e38f3317646d --- /dev/null +++ b/pkgs/by-name/pr/protoc-gen-elixir/package.nix @@ -0,0 +1,44 @@ +{ + beamPackages, + fetchFromGitHub, + lib, +}: +beamPackages.mixRelease rec { + pname = "protoc-gen-elixir"; + version = "0.12.0"; + + src = fetchFromGitHub { + owner = "elixir-protobuf"; + repo = "protobuf"; + rev = "refs/tags/v${version}"; + hash = "sha256-wLU3iM9jI/Zc96/HfPUjNvjteGryWos6IobIb/4zqpw="; + }; + + mixFodDeps = beamPackages.fetchMixDeps { + inherit version src; + pname = "protoc-gen-elixir-deps"; + + hash = "sha256-H7yiBHoxuiqWcNbWwPU5X0Nnv8f6nM8z/ZAfZAGPZjE="; + }; + + postBuild = '' + mix do escript.build + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + cp protoc-gen-elixir $out/bin + + runHook postInstall + ''; + + meta = { + description = "A protoc plugin to generate Elixir code"; + mainProgram = "protoc-gen-elixir"; + homepage = "https://github.com/elixir-protobuf/protobuf"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ mattpolzin ]; + }; +} diff --git a/pkgs/by-name/pr/protoc-gen-es/package.nix b/pkgs/by-name/pr/protoc-gen-es/package.nix index 4b357e4705503..fe36c239a8a7e 100644 --- a/pkgs/by-name/pr/protoc-gen-es/package.nix +++ b/pkgs/by-name/pr/protoc-gen-es/package.nix @@ -7,20 +7,20 @@ buildNpmPackage rec { pname = "protoc-gen-es"; - version = "1.10.0"; + version = "2.0.0"; src = fetchFromGitHub { owner = "bufbuild"; repo = "protobuf-es"; rev = "refs/tags/v${version}"; - hash = "sha256-bHl8gqNrTm1+Cnj43RWmrLDUz+G11C4gprEiNOpyOdQ="; + hash = "sha256-foPt++AZjBfqKepzi2mKXB7zbpCqjmPftN9wyk5Yk8g="; postFetch = '' ${lib.getExe npm-lockfile-fix} $out/package-lock.json ''; }; - npmDepsHash = "sha256-ozkkakfSBycu83gTs8Orhm5Tg8kRSrF/vMJxVnPjhIw="; + npmDepsHash = "sha256-4m3xeiid+Ag9l1qNoBH08hu3wawWfNw1aqeniFK0Byc="; npmWorkspace = "packages/protoc-gen-es"; diff --git a/pkgs/by-name/pr/protoc-gen-js/package.nix b/pkgs/by-name/pr/protoc-gen-js/package.nix index 08fb3345fedca..78d03e9b2b7be 100644 --- a/pkgs/by-name/pr/protoc-gen-js/package.nix +++ b/pkgs/by-name/pr/protoc-gen-js/package.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, buildBazelPackage, bazel_6, fetchFromGitHub, darwin }: +{ stdenv, lib, buildBazelPackage, bazel_6, fetchFromGitHub, cctools }: buildBazelPackage rec { pname = "protoc-gen-js"; @@ -17,7 +17,7 @@ buildBazelPackage rec { removeRulesCC = false; removeLocalConfigCC = false; - LIBTOOL = lib.optionalString stdenv.isDarwin "${darwin.cctools}/bin/libtool"; + LIBTOOL = lib.optionalString stdenv.isDarwin "${cctools}/bin/libtool"; fetchAttrs.sha256 = "sha256-WOBlZ0XNrl5UxIaSDxZeOfzS2a8ZkrKdTLKHBDC9UNQ="; diff --git a/pkgs/by-name/pr/proton-ge-bin/package.nix b/pkgs/by-name/pr/proton-ge-bin/package.nix index 186943dd9dca1..1d31e09525995 100644 --- a/pkgs/by-name/pr/proton-ge-bin/package.nix +++ b/pkgs/by-name/pr/proton-ge-bin/package.nix @@ -1,18 +1,22 @@ -{ lib -, stdenvNoCC -, fetchzip -, writeScript +{ + lib, + stdenvNoCC, + fetchzip, + writeScript, }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "proton-ge-bin"; - version = "GE-Proton9-7"; + version = "GE-Proton9-11"; src = fetchzip { url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${finalAttrs.version}/${finalAttrs.version}.tar.gz"; - hash = "sha256-/FXdyPuCe6rD5HoMOHPVlwRXu3DMJ3lEOnRloYZMA8s="; + hash = "sha256-OGsgR56R/MaFxahsb/42kA9CEexGDF/aTZlyf6v8tXo="; }; - outputs = [ "out" "steamcompattool" ]; + outputs = [ + "out" + "steamcompattool" + ]; buildCommand = '' runHook preBuild @@ -50,7 +54,10 @@ stdenvNoCC.mkDerivation (finalAttrs: { ''; homepage = "https://github.com/GloriousEggroll/proton-ge-custom"; license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ NotAShelf shawn8901 ]; + maintainers = with lib.maintainers; [ + NotAShelf + shawn8901 + ]; platforms = [ "x86_64-linux" ]; sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; }; diff --git a/pkgs/by-name/pr/proton-pass/package.nix b/pkgs/by-name/pr/proton-pass/package.nix index 1d22e7a5d5ba8..58d26335599a9 100644 --- a/pkgs/by-name/pr/proton-pass/package.nix +++ b/pkgs/by-name/pr/proton-pass/package.nix @@ -8,11 +8,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "proton-pass"; - version = "1.18.0"; + version = "1.20.2"; src = fetchurl { url = "https://proton.me/download/PassDesktop/linux/x64/ProtonPass_${finalAttrs.version}.deb"; - hash = "sha256-dP6mXa5KOK35T3LCL/51/wi/dScqNj6bNYFOl4lCbcY="; + hash = "sha256-4QSBKVnEH7yDXwqY+29/a+yWv89i/TVCYO26V95KA4s="; }; dontConfigure = true; diff --git a/pkgs/by-name/pr/protonmail-desktop/package.nix b/pkgs/by-name/pr/protonmail-desktop/package.nix index 3a500fe0c7698..2d937677045d6 100644 --- a/pkgs/by-name/pr/protonmail-desktop/package.nix +++ b/pkgs/by-name/pr/protonmail-desktop/package.nix @@ -10,27 +10,33 @@ let mainProgram = "proton-mail"; + srcHashes = { + # Upstream info: It's intended to stay like this in further releases + # https://github.com/NixOS/nixpkgs/pull/326152#discussion_r1679558135 + universal-darwin = "sha256-6b+CNCvrkIA1CvSohSJZq/veZZNsA3lyhVv5SsBlJlw="; + x86_64-linux = "sha256-v8ufnQQEqTT5cr7fq8Fozje/NDlBzaCeKIzE6yU/biE="; + }; + in stdenv.mkDerivation rec { pname = "protonmail-desktop"; - version = "1.0.4"; + # Upstream info: "v"-prefix got dropped + version = "1.0.6"; - src = - { - "x86_64-linux" = fetchurl { - url = "https://github.com/ProtonMail/inbox-desktop/releases/download/v${version}/proton-mail_${version}_amd64.deb"; - hash = "sha256-KY/rjiJozOQW27FYljy5N1VKuKroJz3V485DPaH01JY="; - }; - "x86_64-darwin" = fetchurl { - url = "https://github.com/ProtonMail/inbox-desktop/releases/download/v${version}/Proton.Mail-darwin-x64-${version}.zip"; - hash = "sha256-I5Yj1JR3DaAmC6WKI4X/d/q9rvmsck9SE3Mx3AY6yvU="; - }; - "aarch64-darwin" = fetchurl { - url = "https://github.com/ProtonMail/inbox-desktop/releases/download/v${version}/Proton.Mail-darwin-arm64-${version}.zip"; - hash = "sha256-j1F8hhLSq/C1WQXGrYnvFK8nNz4qwoA1ohNzPsS3tiY="; - }; - } - .${stdenv.hostPlatform.system}; + src = fetchurl { + url = + if stdenv.isDarwin then + "https://github.com/ProtonMail/inbox-desktop/releases/download/${version}/Proton.Mail-darwin-universal-${version}.zip" + else + "https://github.com/ProtonMail/inbox-desktop/releases/download/${version}/proton-mail_${version}_amd64.deb"; + sha256 = + { + x86_64-linux = srcHashes.x86_64-linux; + x86_64-darwin = srcHashes.universal-darwin; + aarch64-darwin = srcHashes.universal-darwin; + } + .${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}"); + }; sourceRoot = lib.optionalString stdenv.isDarwin "."; @@ -42,18 +48,25 @@ stdenv.mkDerivation rec { ] ++ lib.optional stdenv.isLinux dpkg ++ lib.optional stdenv.isDarwin unzip; installPhase = - lib.optionalString stdenv.isLinux '' - runHook preInstall - mkdir -p $out - cp -r usr/share/ $out/ - cp -r usr/lib/proton-mail/resources/app.asar $out/share/ - runHook postInstall + let + darwin = '' + mkdir -p $out/{Applications,bin} + cp -r "Proton Mail.app" $out/Applications/ + makeWrapper $out/Applications/"Proton Mail.app"/Contents/MacOS/Proton\ Mail $out/bin/protonmail-desktop + ''; + linux = '' + runHook preInstall + mkdir -p $out + cp -r usr/share/ $out/ + cp -r usr/lib/proton-mail/resources/app.asar $out/share/ + ''; + + in '' - + lib.optionalString stdenv.isDarwin '' runHook preInstall - mkdir -p $out/{Applications,bin} - cp -r "Proton Mail.app" $out/Applications/ - makeWrapper $out/Applications/"Proton Mail.app"/Contents/MacOS/Proton\ Mail $out/bin/protonmail-desktop + + ${if stdenv.isDarwin then darwin else linux} + runHook postInstall ''; @@ -66,17 +79,23 @@ stdenv.mkDerivation rec { --inherit-argv0 ''; - meta = with lib; { + passthru.updateScript = ./update.sh; + + meta = { description = "Desktop application for Mail and Calendar, made with Electron"; homepage = "https://github.com/ProtonMail/inbox-desktop"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ rsniezek sebtm matteopacini ]; - platforms = [ "x86_64-linux" ] ++ platforms.darwin; - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + platforms = [ + "x86_64-linux" + "x86_64-darwin" + "aarch64-darwin" + ]; + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; inherit mainProgram; }; } diff --git a/pkgs/by-name/pr/protonmail-desktop/update.sh b/pkgs/by-name/pr/protonmail-desktop/update.sh new file mode 100755 index 0000000000000..4b1a10f177386 --- /dev/null +++ b/pkgs/by-name/pr/protonmail-desktop/update.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p common-updater-scripts jq + +# shellcheck disable=SC1008 + +set -eu -o pipefail + +latestVersion=$(curl https://api.github.com/repos/ProtonMail/inbox-desktop/releases/latest | jq -r '.tag_name') + +declare -A platforms +platforms[x86_64-linux]="amd64" +platforms[x86_64-darwin]="universal" + +for platform in "${!platforms[@]}" +do + arch=${platforms[$platform]} + os=$(echo "$platform" | cut -d "-" -f2) + + if [[ "$os" == "linux" ]]; then + downloadUrl="https://github.com/ProtonMail/inbox-desktop/releases/download/${latestVersion}/proton-mail_${latestVersion}_${arch}.deb" + else + downloadUrl="https://github.com/ProtonMail/inbox-desktop/releases/download/${latestVersion}/Proton.Mail-${os}-${arch}-${latestVersion}.zip" + fi + echo "$downloadUrl" + + latestSha=$(nix store prefetch-file "$downloadUrl" --json | jq -r '.hash') + + update-source-version "protonmail-desktop" "$latestVersion" "$latestSha" --system="$platform" --ignore-same-version --file=./pkgs/by-name/pr/protonmail-desktop/package.nix +done diff --git a/pkgs/by-name/pr/protonplus/package.nix b/pkgs/by-name/pr/protonplus/package.nix index ed74777fedecc..b6754c63a4265 100644 --- a/pkgs/by-name/pr/protonplus/package.nix +++ b/pkgs/by-name/pr/protonplus/package.nix @@ -20,13 +20,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "protonplus"; - version = "0.4.10"; + version = "0.4.13"; src = fetchFromGitHub { owner = "Vysp3r"; repo = "protonplus"; rev = "v${finalAttrs.version}"; - hash = "sha256-dKhGXpsBCZBNNJRAjzSvP0B/3DbS9wRdhTS4WL2NZjE="; + hash = "sha256-eIW30Tl/vOLXlUXiN3lAcww7Ipkfshzilb9ntxjF8C0="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/pr/prowler/package.nix b/pkgs/by-name/pr/prowler/package.nix index cf843d8ab1c75..98c1ddfd34f71 100644 --- a/pkgs/by-name/pr/prowler/package.nix +++ b/pkgs/by-name/pr/prowler/package.nix @@ -6,41 +6,19 @@ python3.pkgs.buildPythonApplication rec { pname = "prowler"; - version = "3.15.0"; + version = "3.16.11"; pyproject = true; src = fetchFromGitHub { owner = "prowler-cloud"; repo = "prowler"; rev = "refs/tags/${version}"; - hash = "sha256-7aWWaGdHTveFwXsFNj4+tjX5g83/nD77jLAOrDOw8JE="; + hash = "sha256-cBqPD5lOhaMXh4OKo7+mERU3YjRU1NiRzSbnKFR6+1I="; }; - pythonRelaxDeps = [ - "azure-identity" - "azure-keyvault-keys" - "azure-mgmt-compute" - "azure-mgmt-containerservice" - "azure-mgmt-network" - "azure-mgmt-security" - "azure-mgmt-storage" - "azure-storage-blob" - "boto3" - "botocore" - "google-api-python-client" - "jsonschema" - "pydantic" - "pydantic" - "slack-sdk" - ]; - - nativeBuildInputs = with python3.pkgs; [ - pythonRelaxDepsHook - ]; + pythonRelaxDeps = true; - build-system = with python3.pkgs; [ - poetry-core - ]; + build-system = with python3.pkgs; [ poetry-core ]; dependencies = with python3.pkgs; [ alive-progress @@ -73,10 +51,12 @@ python3.pkgs.buildPythonApplication rec { msgraph-sdk msrestazure pydantic_1 + pytz schema shodan slack-sdk tabulate + tzlocal ]; pythonImportsCheck = [ "prowler" ]; diff --git a/pkgs/by-name/pr/prox/package.nix b/pkgs/by-name/pr/prox/package.nix index ef7b588ea51fe..7a92dc2ab56db 100644 --- a/pkgs/by-name/pr/prox/package.nix +++ b/pkgs/by-name/pr/prox/package.nix @@ -24,7 +24,7 @@ buildGoModule rec { meta = with lib; { homepage = "https://github.com/fgrosse/prox"; - description = "Process runner for Procfile-based applications "; + description = "Process runner for Procfile-based applications"; mainProgram = "prox"; license = licenses.bsd2; maintainers = with maintainers; [ lucperkins ]; diff --git a/pkgs/by-name/pr/proxsuite/package.nix b/pkgs/by-name/pr/proxsuite/package.nix new file mode 100644 index 0000000000000..dcaf8bc6f7f23 --- /dev/null +++ b/pkgs/by-name/pr/proxsuite/package.nix @@ -0,0 +1,101 @@ +{ + lib, + stdenv, + fetchFromGitHub, + fetchpatch, + cereal, + cmake, + doxygen, + eigen, + jrl-cmakemodules, + simde, + matio, + pythonSupport ? false, + python3Packages, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "proxsuite"; + version = "0.6.6"; + + src = fetchFromGitHub { + owner = "simple-robotics"; + repo = "proxsuite"; + rev = "v${finalAttrs.version}"; + hash = "sha256-3kzFYADk3sCMU827KowilPlmOqgv69DJ3mOb7623Qdg="; + }; + + patches = [ + # Allow use of system jrl-cmakemodules + # This was merged upstream, and can be removed on next release + (fetchpatch { + url = "https://github.com/Simple-Robotics/proxsuite/pull/334/commits/2bcadd4993a9940c545136faa71bf1e97a972735.patch"; + hash = "sha256-BPtwogSwSXcEd5FM4eTTCq6LpGWvQ1SOCFmv/GVhl18="; + }) + # Allow use of system cereal + # This was merged upstream, and can be removed on next release + (fetchpatch { + url = "https://github.com/Simple-Robotics/proxsuite/pull/334/commits/878337c6284c9fd73b19f1f80d5fa802def8cdc6.patch"; + hash = "sha256-+HWYHLGtygjlvjM+FSD9WFDIwO+qPLlzci+7q42bo0I="; + }) + # Allow use of system pybind11 + # upstream will move to nanobind for next release, so this can be dismissed + (fetchpatch { + url = "https://github.com/Simple-Robotics/proxsuite/pull/337/commits/bbed9bdfb214da7c6c6909582971bd8b877f87c2.patch"; + hash = "sha256-pYikPZinjmk7gsagiaIcQspmGFYwlhdiKdZPnqo7pcQ="; + }) + ]; + + postPatch = '' + # discard failing tests for now + substituteInPlace test/CMakeLists.txt \ + --replace-fail "proxsuite_test(dense_maros_meszaros src/dense_maros_meszaros.cpp)" "" \ + --replace-fail "proxsuite_test(sparse_maros_meszaros src/sparse_maros_meszaros.cpp)" "" + + # fix CMake syntax + substituteInPlace bindings/python/CMakeLists.txt \ + --replace-fail "SYSTEM PRIVATE" "PRIVATE" + ''; + + outputs = [ + "doc" + "out" + ]; + + cmakeFlags = + [ + (lib.cmakeBool "BUILD_DOCUMENTATION" true) + (lib.cmakeBool "INSTALL_DOCUMENTATION" true) + (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) + ] + ++ lib.optionals (stdenv.hostPlatform.system == "aarch64-linux") [ + "-DCMAKE_CTEST_ARGUMENTS=--exclude-regex;ProxQP::dense: test primal infeasibility solving" + ]; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + doxygen + ]; + propagatedBuildInputs = [ + cereal + eigen + jrl-cmakemodules + simde + ] ++ lib.optionals pythonSupport [ python3Packages.pybind11 ]; + checkInputs = + [ matio ] + ++ lib.optionals pythonSupport [ + python3Packages.numpy + python3Packages.scipy + ]; + + doCheck = true; + + meta = { + description = "The Advanced Proximal Optimization Toolbox"; + homepage = "https://github.com/Simple-Robotics/proxsuite"; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ nim65s ]; + }; +}) diff --git a/pkgs/by-name/pr/prrte/package.nix b/pkgs/by-name/pr/prrte/package.nix new file mode 100644 index 0000000000000..de604217cc942 --- /dev/null +++ b/pkgs/by-name/pr/prrte/package.nix @@ -0,0 +1,80 @@ +{ + lib, + stdenv, + removeReferencesTo, + fetchFromGitHub, + autoconf, + automake, + libtool, + gitMinimal, + perl, + python3, + flex, + hwloc, + libevent, + zlib, + pmix, +}: + +stdenv.mkDerivation rec { + pname = "prrte"; + version = "3.0.6"; + + src = fetchFromGitHub { + owner = "openpmix"; + repo = "prrte"; + rev = "v${version}"; + sha256 = "sha256-0JHtUpGFdPKmgUk0+MNxTfZIUDz/vY/CV+Mqbmv0JFw="; + fetchSubmodules = true; + }; + + outputs = [ + "out" + "dev" + ]; + + postPatch = '' + patchShebangs ./autogen.pl ./config + ''; + + preConfigure = '' + ./autogen.pl + ''; + + postInstall = '' + moveToOutput "bin/prte_info" "''${!outputDev}" + # Fix a broken symlink, created due to FHS assumptions + rm "$out/bin/pcc" + ln -s ${lib.getDev pmix}/bin/pmixcc "''${!outputDev}"/bin/pcc + + remove-references-to -t "''${!outputDev}" $(readlink -f $out/lib/libprrte${stdenv.hostPlatform.extensions.library}) + ''; + + nativeBuildInputs = [ + removeReferencesTo + perl + python3 + autoconf + automake + libtool + flex + gitMinimal + ]; + + buildInputs = [ + libevent + hwloc + zlib + pmix + ]; + + enableParallelBuilding = true; + + meta = { + description = "PMIx Reference Runtime Environment"; + homepage = "https://docs.prrte.org/"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ markuskowa ]; + platforms = lib.platforms.linux; + }; +} |