Closed jsoref closed 6 years ago
Are you saying it's incompatible with BSD date
command? That sounds like an upstream porting issue to me.
It requires gnu date. That's an upstream choice. And since it requires it, the brew formula needs to make gnu date available.
Please create an issue upstream about this as I'm not comfortable resorting to a coreutils dependency unless there's some reason the BSD date command cannot do what's needed, which is unlikely.
the brew formula needs to make gnu date available.
We could simply remove the faketime
command as the library is still useful without it.
@ilovezfs: in https://github.com/wolfcw/libfaketime/issues/158#issuecomment-381385252 @wolfcw indicates that a distinct package for faketime
that depended on either a gdate
or coreutils
package seems reasonable.
How does that sound to you?
@jsoref we'll just depend on coreutils
. This is now fixed.
brew install
a single, official formula (not cask)?brew update
and can still reproduce the problem?brew doctor
, fixed all issues and can still reproduce the problem?brew gist-logs <formula>
(where<formula>
is the name of the formula that failed) and included the output link?brew gist-logs
didn't work: ranbrew config
andbrew doctor
and included their output with your issue?To help us debug your issue please explain:
What you were trying to do (and why) install and use
faketime
(libfaketime
)What happened (include command output)
What you expected to happen The
libfaketime
package should depend oncoreutils
Step-by-step reproduction instructions (by running
brew install
commands)Note: on my system,
coreutils
was installed and linked, and thusfaketime
worked for me. When I had a colleague installlibfaketime
,faketime
didn't work, because he hadn't installedcoreutils
. But, essentiallylibfaketime
isn't functional withoutcoreutils
, and thus it should depend on it. For lack of a better reference: https://github.com/wolfcw/libfaketime/blob/c9a681c3e36c453affb7ff393458478a953d886c/src/faketime.c#L174Manually "fixing" libfaketime can be achieved by:
brew install coreutils
as:After which, this works:
Note: while my sample includes copying
date
to.
, that's coincidental. Because of macOS's System Integrity Protection, one can't shim system programs. For our actual use case, we aren't shimmingdate
, although we do copy the program we are shimming to a non protected directory in order to shim it.