Opened 11 years ago
Last modified 9 months ago
#42344 new request
new composer port request
Reported by: | p.perroud@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | moderndeveloperllc (Mark Garrett), pdvnl | |
Port: | composer |
Description
composer is a depencies manager that works fine for zend frameworks applications and the like.
On the mac it can be installed as homebrew package.
As a macports user I would like to install it with macports instead.
The composer project is available from here: https://getcomposer.org/
Change History (8)
comment:1 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Milestone: | MacPorts Future |
---|---|
Port: | composer added |
Version: | 2.2.1 |
comment:2 follow-up: 7 Changed 11 years ago by moderndeveloperllc (Mark Garrett)
comment:4 Changed 10 years ago by info@…
I realize there may be benefits to running it through MacPorts, but for folks who want a quick install without Homebrew, this worked for me to install Composer in the MacPorts /opt/local/bin directory:
$ curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/opt/local/bin $ sudo ln -s composer.phar /opt/local/bin/composer
comment:5 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | pdvnl added |
---|---|
Keywords: | php removed |
Duplicate #55580 mentions that ports for composer have been developed at https://github.com/sjorek/MacPorts-PHP. I have not evaluated them.
comment:6 Changed 18 months ago by brandung-sjorek (Stephan Jorek)
@ryandesign I'm the developer of https://github.com/sjorek/MacPorts-PHP
In this comment https://github.com/sjorek/macports-php/issues/2#issuecomment-1544344271 I collected my (selfish) arguments, why I'm still struggling with the idea of submitting this port-definitions to the MacPorts-base. To save you some time, I'll quote them here:
… one must consider the tight integration of my composer-ports with the historically evolved bash-completion (variant), which in turn is provided as separate port here and implemented in https://github.com/sjorek/composer-bash-completion.
The difficulty I see (at least for me) is that I don't want to loose the features of this bash-completion implementation. I'm aware of the “new” builtin (symfony-driven) bash-completion support in composer itself: https://getcomposer.org/doc/03-cli.md#bash-completions And I invested some time to enhance parts of the new bash completion, but still the new bash-completion lacks features from my implementation (which I really use a lot). To make it short - a shift of the (plain) composer-port to the macports-base would be much easier (for me), if composer's builtin bash-completion would be a little bit more sophisticated, because then I could get rid of my implementation, and I would only have to transfer the plain composer-Ports to macports and use its builtin bash-completion only.
See how selfish I am? 😄
This bothers me since quite a lot of time (years) and has nothing to do with my will to contribute (and even maintain) the composer port-definition.
comment:7 follow-up: 8 Changed 10 months ago by ryandesign (Ryan Carsten Schmidt)
Replying to moderndeveloperllc:
The only question I would have is how macports handles self-updating apps like this
Any self-updating functionality must be disabled in ports. MacPorts is the way ports are updated. Files installed by ports should not attempt to replace themselves with newer versions.
A PR for composer was submitted here: https://github.com/macports/macports-ports/pull/19471
comment:8 Changed 9 months ago by sjorek (Stephan Jorek)
Replying to ryandesign:
Replying to moderndeveloperllc:
The only question I would have is how macports handles self-updating apps like this
Any self-updating functionality must be disabled in ports. MacPorts is the way ports are updated. Files installed by ports should not attempt to replace themselves with newer versions.
A PR for composer was submitted here: https://github.com/macports/macports-ports/pull/19471
Just for the record: I have created a follow up regarding this policy: https://github.com/macports/macports-ports/pull/19471#issuecomment-1948977342
+1 from me for this. The only question I would have is how macports handles self-updating apps like this especially as it's still technically in alpha (for the past two years). Perhaps install the latest "official" build with displayed instructions to optionally run
composer selfupdate
?