Giter Club home page Giter Club logo

heroku-buildpack-imagemagick's Introduction

heroku-buildpack-imagemagick

Use the latest version of ImageMagick inside Heroku Cedar. At the moment it is bundled the version 6.8.1-10.

DO NOT USE, THIS BUILDPACK IS DEPRECATED and does not work on Cedar 14, the current Heroku stack.

Usage

This buildpack is built to be used through heroku-buildpack-multi, so in your app you need to:

heroku config:set BUILDPACK_URL=https://github.com/ddollar/heroku-buildpack-multi

Then, create a .buildpacks file inside your app:

https://github.com/mcollina/heroku-buildpack-imagemagick
https://github.com/heroku/heroku-buildpack-nodejs

This example was based on the nodejs buildpack, but it can be used with any other. If it is not working with yours, please report a bug.

Hacking

To change this buildpack, fork it on Github. Push up changes to your fork, then create a test app with --buildpack <your-github-url> and push to it.

To change the vendored binaries for ImageMagick, use the helper scripts in the support/ subdirectory. You'll need an S3-enabled AWS account and a bucket to store your binaries in. The bucket name and imagemagick version are stored in the configs.sh file, so update it there (if you plan to contribute back to this repo, do this in a separate commit).

To rebuild the ImageMagick package, you can:

$ export AWS_ID=xxx AWS_SECRET=yyy
$ s3 create $S3_BUCKET
$ support/package_imagemagick

Commit and push the changes to your buildpack to your Github fork, then push your sample app to Heroku to test. You should see:

-----> Downloading imagemagick YOUR_IMAGE_MAGICK_VERSION_HERE

Contributing to heroku-buildpack-imagemagick

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution
  • Please try not to mess with the configs.sh. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

LICENSE - "MIT License"

Copyright (c) 2013 Matteo Collina, http://matteocollina.com Copyright (C) 2012 Heroku, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

heroku-buildpack-imagemagick's People

Contributors

mcollina avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

heroku-buildpack-imagemagick's Issues

Having issue setting this up

it does not work the build packs show in the vendor and bin lib but calling an imagemagick method keeps failing and it works locally...

feature request: combine this and the graphicsmagick buildpacks

i noticed that the graphicsmagick buildpack is more up to date than this package. why not just combined these two buildpacks into a single buildpack that has both packages and other packages like libpng and zlib? the overhead wouldn't be much, and it'll be easier to maintain.

another option is just to have one be the fork of the other.

gzip: stdin: not in gzip format

.buildpacks file

https://github.com/nrj/heroku-buildpack-imagemagick-webp
https://github.com/heroku/heroku-buildpack-ruby

When push to heroku its show the following error:

remote: -----> Downloading ImageMagick from http://www.imagemagick.org/download/releases/ImageMagick-6.9.1-1.tar.gz
remote:
remote: gzip: stdin: not in gzip format
remote: tar: Child returned status 1
remote: tar: Error is not recoverable: exiting now
remote: -----> Building ImageMagick
remote: /tmp/buildpack5SUBD/bin/compile: 79: cd: can't cd to ImageMagick-6.9.1-1
remote: /tmp/buildpack5SUBD/bin/compile: 82: /tmp/buildpack5SUBD/bin/compile: ./configure: not found
remote: make: *** No targets specified and no makefile found. Stop.
remote: -----> Caching ImageMagick and libwebp installation
remote: -----> Updating environment variables

Imagemagick version still shows as 6.5.7-8

If I push using git push heroku master I get

-----> Fetching custom git buildpack... done
-----> Multipack app detected
=====> Downloading Buildpack: https://github.com/mcollina/heroku-buildpack-imagemagick.git
=====> Detected Framework: 
-----> Installing libpng 1.5.14
       Download completed
       Installation completed
-----> Installing imagemagick 6.8.2-3
       Download completed
       Installation completed
-----> Building runtime environment for imagemagick
=====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-python.git
=====> Detected Framework: Python
-----> Installing dependencies with pip
       Cleaning up...

Using release configuration from last framework (Python).
-----> Discovering process types
       Procfile declares types -> web

-----> Compressing... done, 35.1MB

But if I run heroku run bash directly afterwards...

~ $ convert -version
Version: ImageMagick 6.5.7-8 2012-08-17 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2009 ImageMagick Studio LLC
Features: OpenMP 

It seems like the buildpack isn't actually applying anything. My .buildpack looks like

https://github.com/mcollina/heroku-buildpack-graphicsmagick.git
https://github.com/heroku/heroku-buildpack-python.git

Include librsvg [enhancement]

Imagemagick's base svg -> image conversion is terrible, doesn't implement most of the svg standard, there is a library called librsvg but the dependencies are a bit hairy.

I will try to see what I can do to make this compatible with the existing buildpack, but I'm new to creating buildpacks, so whatever guidance you might have would be amazing!

UnableToOpenConfigureFile `colors.xml'

When I run convert on some images I get this error:
convert: UnableToOpenConfigureFile `colors.xml' @ warning/configure.c/GetConfigureOptions/616.

Any config file missing?

Error liblcms.so.1 missing

I am getting the following error when using the build pack on heroku

convert: error while loading shared libraries: liblcms.so.1: cannot open shared object file: No such file or directory

I am using imagemagick-stream and it looks like the buildpack is installed correctly.

Here is my .buildpacks:

https://github.com/stomita/heroku-buildpack-phantomjs
https://github.com/mcollina/heroku-buildpack-imagemagick
https://github.com/heroku/heroku-buildpack-nodejs

Extract from heroku output:

remote: 
remote: -----> Fetching custom git buildpack... done
remote: -----> Multipack app detected
remote: =====> Downloading Buildpack: https://github.com/stomita/heroku-buildpack-phantomjs
remote: =====> Detected Framework: PhantomJS
remote: -----> Extracting PhantomJS 1.9.8 binaries to /tmp/build_8cdde3b6af3afe15b6f011c6c39402fe/vendor/phantomjs
remote: -----> exporting PATH and LIBRARY_PATH
remote: =====> Downloading Buildpack: https://github.com/mcollina/heroku-buildpack-imagemagick
remote: =====> Detected Framework: 
remote: -----> Installing libpng 1.5.14
remote:        Download completed
remote:        Installation completed
remote: -----> Installing imagemagick 6.8.2-3
remote:        Download completed
remote:        Installation completed
remote: -----> Building runtime environment for imagemagick

cedar-14 support

It seems like this breaks on the new cedar-14 stack. Has anyone gotten it working successfully there?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.