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