install-patch-install cycles & install without activate
Ryan Schmidt
ryandesign at macports.org
Tue May 29 18:41:27 UTC 2018
On May 29, 2018, at 13:31, macports at parvis.nl wrote:
> I'm trying to work as much as possible with scripted procedures.
>
> After an initial install of a new/modified port, I need to apply/change patches.
>
> My workflow is:
>
> port install munin
>
> #- cycle start
> port clean --work munin
> create patches against the unmodified tarball
> port clean --work munin
> port install munin
> test
> #- cycle end
>
> Problem here is that if Portfile isn't changed, install will skip all phases, including checksum, extract, patch, configure, build, destroot, "install", activate.
> I can port clean --all munin but then I need to fetch again, and that is not needed.
Then don't use "sudo port clean --all". Just use "sudo port clean".
Or, sometimes it's helpful to edit the state file. (The file named .macports.${subport}.state inside the directory identified by the command `port work`.) You can delete the lines for the phases that you want MacPorts to run again.
> Q1) What is the port command to execute all needed phases, starting with patch?
>
> Somewhere it says something like install creates a tarball from destroot, activate unpackes that tarball.
> Above I wrote "install" because I'm looking for the port verb that does exactly this.
> I would like to be able to do the complete installation process without activate.
>
> My experience is this:
> port install does
> - if activated: nothing
> - else: do all steps from $(port work munin)/.macportsmunin.state
> Is this correct? If this is true, port deactivate munin && port install munin would be enough.
>
> Q2) What is the port command to execute all needed phases, except activate?
I don't think any such command exists. Why do you want this?
> Possible solutions:
> - using this unknown port "install" verb
> - rm $(port location munin)*
> is this safe?
> - somehow manipulating the registry
> doesn't sound safe
More information about the macports-dev
mailing list