mcollina / heroku-buildpack-graphicsmagick

67 stars 77 forks source link

GM can't be updated using `package_graphicsmagick` due to deprecated Vulcan #8

Closed RobbinHabermehl closed 9 years ago

RobbinHabermehl commented 10 years ago

Vulcan has been deprecated, which disables the possibility of packaging a more recent version of GraphicsMagick as ./support/package_graphicsmagick relies heavily on Vulcan.

While deprecated, Vulcan could still be used in fact. However, it does require the Heroku add-on "Cloudant" that isn't available anymore.

Heroku recommends using heroku run like described by SendGrid. Another approach would be to use Docker.


mcollina commented 10 years ago

This is completely known for more than an year. Something useful will be the porting of what it's here and https://github.com/mcollina/heroku-buildpack-imagemagick to whatever new system.

https://github.com/mcollina/heroku-buildpack-imagemagick/issues/2 https://github.com/mcollina/heroku-buildpack-imagemagick/issues/9

I have no time and no budget to dedicate to this project. @paolochiodi might help (if given some budget).

Also some support from Heroku folks might be helpful.

RobbinHabermehl commented 10 years ago

@mcollina; The referenced issues don't specifically mention Vulcan being deprecated and alternative approaches, also considering those regard another repository it made more sense to create a new issue report.

@paolochiodi; I could post this issue on Bountysource, I suppose everyone involved with mcollina/heroku-buildpack-imagemagick#2 and mcollina/heroku-buildpack-imagemagick#3 might be interested as well. What would be sufficient budget if you're willing to take care of this?

mcollina commented 10 years ago

Let's try bountysource, maybe something good will come out of that.

Sorry for being rude, but I'm not so happy at this point in time with people asking for a feature on OSS projects that are not willing to contribute back :/. This is not your case, but it's hard to keep it rolling if there is little community helping maintaining a project, but the project is used and useful :/.

paolochiodi commented 10 years ago

Hi all. Building graphicsmagick on heroku with heroku run shouldn't be too hard. Honestly I spent some time trying to build imagemagick for https://github.com/mcollina/heroku-buildpack-imagemagick/issues/2 and failed, but here we don't need librsvg.

@RobbinHabermehl What's your desired outcome, an updated buildpack with a newer GraphicsMagick version or a new way to (semi-)automate the process and being able to reproduce it whenever a new version of GraphicsMagick arise?

RobbinHabermehl commented 10 years ago

@mcollina; No problem, and I'm more than happy to contribute, I'll post post a bounty as proposed.

@paolochiodi; Ideally I'd like to be able to restore the original functionality of the script, so I can package any (future) version of GraphicsMagick.


Update: I just posted a bounty!

benalavi commented 9 years ago

@mcollina @paolochiodi I removed the vulcan dependency and re-built/packaged everything for cedar-14 on my fork here: https://github.com/mcollina/heroku-buildpack-graphicsmagick/compare/master...benalavi:master

I can send a pull request but had some questions/explanation first:

The packages for cedar-14 don't work on cedar. To fix that I guess would either have to figure out how to make packages that work for both (sounds difficult) or maintain 2 sets of packages. Heroku always sets STACK on the environment while building so could use that to switch between which set to download, but maintaining 2 builds is obviously less fun. Any ideas?

I actually built this using a Vagrant VM provisioned w/ Heroku's cedar-14 script, that's what that Vagrantfile is doing in there. It's not totally necessary -- the package script also works on Heroku itself, but I thought it might be useful.

My bash isn't fantastic so my changes to the package script might be dumb, but they work.

Finally, I'm using this for work currently so will continue to maintain it for the time being.

mcollina commented 9 years ago

@benalavi THIS IS AWESOME I am adding you to the list of contributors!

I will discuss the double build in the PR.

RobbinHabermehl commented 9 years ago

Great @benalavi! I'm looking forward to implementing the final result.

And good for you, the bounty can finally be paid then! ;)

benalavi commented 9 years ago

@RobbinHabermehl merged in #12 adding the cedar-14 support so going to close this issue, but feel free to re-open if it doesn't work for you.

I would feel bad taking a bounty as I did this for work! :)

RobbinHabermehl commented 9 years ago

@benalavi, I'll update my buildpack tonight and testing is planned for tomorrow, I'll provide my feedback anyway.

And you shouldn't feel bad about taking the bounty, it's praiseworthy that something developed in work time is being open sourced. Just buy your colleagues beer, or if you feel really bad about it you can always donate it to charity!