pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Another macOS 11 fallout



Jan Danielsson <jan.m.danielsson%gmail.com@localhost> writes:

>> 2) Do you have PKGSRC_RCD_SCRIPTS=yes turned on?  That is a request to
>> put the rc.d sripts from $PREFIX/share/examples/rc.d also in /etc/rc.d.
>> On older macOS, this works, and if you enable the rc.d scheme via
>> launchd in a way I no longer remember, those scripts are run at boot
>> time.
>
>    I do not set PKGSRC_RCD_SCRIPTS explicitly:
>
>    $ bmake show-var VARNAME=PKGSRC_RCD_SCRIPTS
>
>    ^ (It doesn't print anything)

Sorry, it's "PKG_RCD_SCRIPTS".  I should know better than to trust my memory.

The pkgsrc norm is that if you don't set that variable, it will only
write within $PREFIX.  So without that, writing /etc/rc.d is a bug.

>> 3) If you do approve it, and add the launchd magic, does it work?
>
>    Denying it causes the operation to fail (obviously).  Allowing it
> causes the operation to fail as well (In addition to being unprivileged,
> I have SIP enabled as well).  But it doesn't abort the installation,
> which I why I suspect that it is a "fail by design" situation.

On 10.13 with SIP, I find that writing /etc/rc.d works.

>    The main issue though is that we already have a subversion server, I
> just need the client to access that server.  It's unfortunate that
> upstream decided that the server and client go hand in hand, imho.

I don't think it's a problem that the client and server are in the same
package.  It's always an arguable call about how much to split, as there
is benefit and also extra work.  The only problem is the rc.d
strangenesss.

>    My counter-argument to that is that I don't expect a package to
> install /etc/rc.d content on a non-/etc/rc.d system, just as I would not
> expect the subversion package try to install launchd files on a NetBSD
> system.

The pkgsrc notion is to install rc.d on mac, and there is a package
rc.d-boot that causes the rc.d scripts to run, controlled by rc.conf, on
macs.  That way you can e.g. install tor and have tor=YES in rc.conf and
have that work.

>    But your point is taken -- there's another issue one encounters when
> installing pkgsrc packages on a fresh macOS system.  Some packages which
> don't even use javac, probe the system for one.  macOS intercepts that
> and shows a helpful "you seem to want to use javac, but it isn't
> installed, click here to install one".  It was a while ago since I saw
> that, but I have a vague recollection that that one at least doesn't
> block the installation .. but I might be wrong.  So yeah, Apple has put
> development time into making unattended processes more difficult.  :/

Arguably it's a bug for a package that does not declare a java
dependency to try to run javac.  Patches welcome, especially to upstream
packages.

>    The reason this is a little annoying is that I have a mac mini which
> typically takes around 12 hours to rebuild all my packages, and I
> usually start a rebuild and leave for the office, expecting it to be
> almost done when I get back home.
>
>    Anyway; it's no big issue -- I'll simply remove subversion-base from
> my build script and install it manually when I'm at the computer and can
> click past that dialog window.

Sure, I do not dispute that something is wrong.   But it really feels
like you have the PKG_RCD_SCRIPTS variable on somehow.   If not there is
some bug and it would be good to find it.

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index