psutils: update to version 3.3.11. (#13352)

This is the newest version that doesn't requires Python >= 3.12.

To simplify build requirements, just repackage the upstream .whl file.
This commit is contained in:
OscarL
2025-12-18 15:31:36 -03:00
committed by GitHub
parent d80a1730c3
commit 7d1f96ab45
2 changed files with 60 additions and 87 deletions

View File

@@ -0,0 +1,60 @@
SUMMARY="Utilities for manipulating PostScript documents"
DESCRIPTION="PSUtils is a suite of utilities for manipulating PDF and PostScript documents. You \
can select and rearrange pages, including arrangement into signatures for booklet printing, \
combine multple pages into a single page for n-up printing, and resize, flip and rotate pages.
PostScript files should conform to the PostScript Document Structuring Conventions (DSC); \
however, PSUtils intentionally does not check this, as some programs produce non-conforming \
output that can be successfully processed anyway. If PSUtils does not work for you, check whether \
your software needs to be configured to produce DSC-conformant PostScript."
HOMEPAGE="https://github.com/rrthomas/psutils"
COPYRIGHT="2023-2025 Reuben Thomas"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://files.pythonhosted.org/packages/py3/${portName:0:1}/$portName/$portName-$portVersion-py3-none-any.whl#noarchive"
CHECKSUM_SHA256="218c7045ce93c9e5306cc176fbe99213d3d0ca07e3dc1f5ba60c80d3790da746"
DISABLE_SOURCE_PACKAGE="yes"
pythonVersion=3.10
pythonPackage=python${pythonVersion//.}
ARCHITECTURES="any"
PROVIDES="
psutils = $portVersion
cmd:epsffit
cmd:extractres
cmd:includeres
cmd:psbook
cmd:psjoin
cmd:psnup
cmd:psresize
cmd:psselect
cmd:pstops
"
REQUIRES="
haiku
cmd:paper
cmd:python$pythonVersion
puremagic_$pythonPackage
pypdf_$pythonPackage
"
BUILD_REQUIRES="
haiku_devel
installer_$pythonPackage
"
BUILD_PREREQUIRES="
cmd:python$pythonVersion
"
INSTALL()
{
python=python$pythonVersion
$python -m installer -p $prefix $portName-$portVersion-py3-none-any.whl
# relocate man pages to the correct place:
mkdir -p $manDir
mv $prefix/share/man/* $manDir
rm -rf $prefix/share
}

View File

@@ -1,87 +0,0 @@
SUMMARY="Utilities for manipulating PostScript documents"
DESCRIPTION="PSUtils is a suite of utilities for manipulating PDF and PostScript documents. You \
can select and rearrange pages, including arrangement into signatures for booklet printing, \
combine multple pages into a single page for n-up printing, and resize, flip and rotate pages.
PostScript files should conform to the PostScript Document Structuring Conventions (DSC); \
however, PSUtils intentionally does not check this, as some programs produce non-conforming \
output that can be successfully processed anyway. If PSUtils does not work for you, check whether \
your software needs to be configured to produce DSC-conformant PostScript."
HOMEPAGE="https://github.com/rrthomas/psutils"
COPYRIGHT="2023-2024 Reuben Thomas"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://github.com/rrthomas/psutils/releases/download/v$portVersion/psutils-$portVersion.tar.gz"
CHECKSUM_SHA256="12bfde60145846e6aaae9eead8c5f0c4a959528cd171727b6ff7044da5d7e57c"
ARCHITECTURES="any"
PROVIDES="
psutils = $portVersion
cmd:epsffit
cmd:extractres
cmd:includeres
cmd:psbook
cmd:psjoin
cmd:psnup
cmd:psresize
cmd:psselect
cmd:pstops
"
REQUIRES="
haiku
cmd:paper
cmd:python3
puremagic_python310
pypdf_python310
"
BUILD_REQUIRES="
haiku_devel
argparse_manpage_python310
build_python310
installer_python310
puremagic_python310
pypdf_python310
pytest_datafiles_python310
setuptools_python310
wand_python310
wheel_python310
"
BUILD_PREREQUIRES="
cmd:paper
cmd:python3
"
TEST_REQUIRES="
cmd:gs
"
BUILD()
{
# workaround for missing paperspecs config file in haikuporter chroot
echo A4,210,297,mm > $(finddir B_SYSTEM_SETTINGS_DIRECTORY)/paperspecs
rm -rf build
python3 -m build --wheel --no-isolation
}
INSTALL()
{
python3 -m installer -p $prefix dist/*.whl
}
TEST()
{
# workaround for missing paperspecs config file in haikuporter chroot
# these are the paper formats that are used in tests
cat <<- EOF > $(finddir B_SYSTEM_SETTINGS_DIRECTORY)/paperspecs
A4,210,297,mm
Letter,8.5,11,in
A5,148,210,mm
A3,297,420,mm
Tabloid,11,17,in
EOF
python3 -m pytest
}