fix(applications): add ghostscript to print service packages

Selecting the print service installs cups, system-config-printer and
cups-pk-helper, but not ghostscript. cups relies on ghostscript for the
PDF/PostScript rendering filter, so driverless (IPP Everywhere) print
jobs fail out of the box with:

  cfFilterGhostscript: Unable to launch Ghostscript: gs: No such file or directory

Add ghostscript to the package list and cover it with a regression test.

Closes #4595
This commit is contained in:
Sanjay Santhanam 2026-07-25 07:12:56 -07:00
parent fe16238983
commit 7fc6e9be59
2 changed files with 8 additions and 1 deletions

View File

@ -9,7 +9,7 @@ if TYPE_CHECKING:
class PrintServiceApp:
@property
def packages(self) -> list[str]:
return ['cups', 'system-config-printer', 'cups-pk-helper']
return ['cups', 'system-config-printer', 'cups-pk-helper', 'ghostscript']
@property
def services(self) -> list[str]:

View File

@ -0,0 +1,7 @@
from archinstall.applications.print_service import PrintServiceApp
def test_print_service_includes_ghostscript() -> None:
# cups only ships the PDF/PostScript rendering filter through ghostscript,
# so driverless (IPP Everywhere) printing fails without it.
assert 'ghostscript' in PrintServiceApp().packages