From b47ee350af73c7a1c6148eca78973446bdc3f9ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Bori?= Date: Sat, 2 Aug 2025 14:52:31 +0200 Subject: [PATCH 1/2] python3Packages.rendercv-fonts: init at 0.4.0 --- .../python-modules/rendercv-fonts/default.nix | 45 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/python-modules/rendercv-fonts/default.nix diff --git a/pkgs/development/python-modules/rendercv-fonts/default.nix b/pkgs/development/python-modules/rendercv-fonts/default.nix new file mode 100644 index 000000000000..570aeb766933 --- /dev/null +++ b/pkgs/development/python-modules/rendercv-fonts/default.nix @@ -0,0 +1,45 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + pytestCheckHook, + pythonOlder, + hatchling, +}: + +buildPythonPackage rec { + pname = "rendercv-fonts"; + version = "0.4.0"; + pyproject = true; + + disabled = pythonOlder "3.10"; + + src = fetchFromGitHub { + owner = "rendercv"; + repo = "rendercv-fonts"; + tag = "v${version}"; + hash = "sha256-fQ9iNN3hRCrhut+1F6q3dJEWoKUQyPol0/SyTPUPK1c="; + }; + + build-system = [ hatchling ]; + + # pythonRelaxDeps seems not taking effect for the build-system dependencies + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail 'hatchling==1.26.3' 'hatchling' \ + ''; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "rendercv_fonts" ]; + + meta = { + description = "Python package with some fonts for the rendercv package"; + homepage = "https://github.com/rendercv/rendercv-fonts"; + changelog = "https://github.com/rendercv/rendercv-fonts/releases/tag/v${version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ theobori ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e159aab5557c..6149ba8e3452 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15509,6 +15509,8 @@ self: super: with self; { rencode = callPackage ../development/python-modules/rencode { }; + rendercv-fonts = callPackage ../development/python-modules/rendercv-fonts { }; + reno = callPackage ../development/python-modules/reno { }; renson-endura-delta = callPackage ../development/python-modules/renson-endura-delta { }; From b318c694c9a01b5c0ee78d135e3c8811d5979a15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Bori?= Date: Sat, 2 Aug 2025 15:26:31 +0200 Subject: [PATCH 2/2] rendercv: init at 2.2 --- pkgs/by-name/re/rendercv/package.nix | 75 ++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 pkgs/by-name/re/rendercv/package.nix diff --git a/pkgs/by-name/re/rendercv/package.nix b/pkgs/by-name/re/rendercv/package.nix new file mode 100644 index 000000000000..01c7872ff46c --- /dev/null +++ b/pkgs/by-name/re/rendercv/package.nix @@ -0,0 +1,75 @@ +{ + lib, + python3Packages, + fetchFromGitHub, +}: + +python3Packages.buildPythonApplication rec { + pname = "rendercv"; + version = "2.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "rendercv"; + repo = "rendercv"; + tag = "v${version}"; + hash = "sha256-bIEuzMGV/l8Cunc4W04ESFYTKhNH+ffkA6eXGbyu3A0="; + }; + + build-system = with python3Packages; [ hatchling ]; + + dependencies = with python3Packages; [ + jinja2 + phonenumbers + email-validator + pydantic + pycountry + pydantic-extra-types + ruamel-yaml + # full + typer + markdown + watchdog + typst + rendercv-fonts + packaging + ]; + + pythonRelaxDeps = [ + "phonenumbers" + "pydantic-extra-types" + "pydantic" + "ruamel-yaml" + ]; + + pythonImportsCheck = [ "rendercv" ]; + + nativeCheckInputs = with python3Packages; [ + pypdf + pytestCheckHook + ]; + + disabledTests = [ + "test_are_all_the_theme_files_the_same" + # It needs internet to download resources + "test_render_a_pdf_from_typst" + "test_render_pngs_from_typst" + "test_render_command_overriding_input_file_settings" + ]; + + disabledTestPaths = [ + # It fails due to missing internet resources + "tests/test_cli.py" + ]; + + doCheck = true; + + meta = { + description = "Typst-based CV/resume generator"; + homepage = "https://rendercv.com"; + changelog = "https://docs.rendercv.com/changelog/#22-january-25-2025"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ theobori ]; + mainProgram = "rendercv"; + }; +}