Summary: | [patch] print/cups-base may fail to build package when PAM enabled. | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Adrian Waters <draenan> | ||||||||||||
Component: | Individual Port(s) | Assignee: | John Marino <marino> | ||||||||||||
Status: | Closed FIXED | ||||||||||||||
Severity: | Affects Only Me | CC: | marino, takefu | ||||||||||||
Priority: | --- | Keywords: | patch-ready | ||||||||||||
Version: | Latest | ||||||||||||||
Hardware: | Any | ||||||||||||||
OS: | Any | ||||||||||||||
Attachments: |
|
Created attachment 149276 [details]
cups-base.patch2
@sample rewrite
No maintainer so I will use takefu's version and promote the PR. takefu's version of the patch renames cups.default to cups.sample and places it in /etc/pam.d, whereas everything else is installed into /usr/local. Is it standard to install port configuration files outside /usr/local/etc? Apologies, that "is it standard" question of mine doesn't look right now I've re-read it. What I mean to ask is, given that the port installs all its files into /usr/local, is it considered okay to put that one file outside of /usr/local/ into /etc? Created attachment 149579 [details]
cups-base.patch3
sample /etc/pam.d this description was a mistake.
pam.d be present in both /etc /usr/local/etc,
ports skeleton should be installed in the /usr/local/etc
Other, the OptionsNG only a little rewriting.
Created attachment 149663 [details]
cups-base.patch4
OptionsNG-enable, because was broken, cancel.
.default -> .sample valid.
Makefile slight change.
Created attachment 149923 [details]
cups-base.patch5
Still, there is reported to be installed in the / etc / pam.d *1
*1 Samuel Chow <cyschow_shaw.ca>
This patch is missing a PORTREVISION bump for cups-base, but I'll bump it myself. A commit references this bug: Author: marino Date: Fri Nov 28 11:51:31 UTC 2014 New revision: 373559 URL: https://svnweb.freebsd.org/changeset/ports/373559 Log: print/cups-base: Fix build when PAM option is enabled The @sample keyword fixes the config file based error. While here, clean refactor the port a bit. PR: 194854 Submitted by: Adrian Waters Final fix by: Takefu (airport.fm) Changes: head/print/cups-base/Makefile head/print/cups-base/pkg-plist it built fine. Thanks guys! |
Created attachment 149110 [details] Patch to Makefile to ensure ${LOCALBASE}/etc/pam.d is present. During the configure stage of print/cups-base, if PAM is enabled the cups.default PAM config file will be put into /etc/pam.d if the system does not have /usr/local/etc/pam.d present (for example, a poudriere jail.) This leads to a failure to build the package as pkg-plist references a non-existent /usr/local/etc/pam.d/cups.default file. This bug was encountered with poudriere 3.0.19 in a 9.3-RELEASE jail on a 9.3-RELEASE system (amd64.)