Git Product home page Git Product logo

heroku-buildpack-apt's Introduction

Deprecated

This project is deprecated and is no longer being maintained.

Please check out my current project Convox for all of your deployment needs!

heroku-buildpack-apt's People

Contributors

ddollar avatar evadne avatar gjtorikian avatar sjansen avatar sobrinho avatar tokafish 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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

heroku-buildpack-apt's Issues

Problem installing libgd2-xpm-dev

Hi
I try to install node-gd https://www.npmjs.com/package/node-gd package
It needs libgd library
I use heroku-buildpack-multi with heroku-buildpack-apt

cat .buildpacks
https://github.com/ddollar/heroku-buildpack-apt
https://github.com/heroku/heroku-buildpack-nodejs

cat Aptfile
libgd2-xpm-dev

And when deploying I have

usr/bin/ld: /tmp/build_fa2bb26f8b6349e151cc62491a86b973/.apt/usr/lib/x86_64-linux-gnu/libgd.a(gd.o): relocation R_X86_64_PC32 against symbol `gdImageColorClosestAlpha' can not be used when making a shared object; recompile with -fPIC

error
May be somebody has any ideas about this?

remote: -----> Fetching custom git buildpack... done
remote: -----> Multipack app detected
remote: =====> Downloading Buildpack: https://github.com/ddollar/heroku-buildpack-apt
remote: =====> Detected Framework: Apt
remote: -----> Updating apt caches
remote:        Ign http://archive.ubuntu.com trusty InRelease
remote:        Ign http://archive.ubuntu.com trusty-security InRelease
remote:        Ign http://archive.ubuntu.com trusty-updates InRelease
remote:        Hit http://archive.ubuntu.com trusty Release.gpg
remote:        Get:1 http://archive.ubuntu.com trusty-security Release.gpg [933 B]
remote:        Get:2 http://archive.ubuntu.com trusty-updates Release.gpg [933 B]
remote:        Hit http://archive.ubuntu.com trusty Release
remote:        Get:3 http://archive.ubuntu.com trusty-security Release [63.5 kB]
remote:        Get:4 http://archive.ubuntu.com trusty-updates Release [63.5 kB]
remote:        Hit http://archive.ubuntu.com trusty/main amd64 Packages
remote:        Hit http://archive.ubuntu.com trusty/universe amd64 Packages
remote:        Hit http://archive.ubuntu.com trusty/main Translation-en
remote:        Hit http://archive.ubuntu.com trusty/universe Translation-en
remote:        Get:5 http://archive.ubuntu.com trusty-security/main amd64 Packages [320 kB]
remote:        Get:6 http://archive.ubuntu.com trusty-security/main Translation-en [172 kB]
remote:        Get:7 http://archive.ubuntu.com trusty-updates/main amd64 Packages [594 kB]
remote:        Get:8 http://archive.ubuntu.com trusty-updates/main Translation-en [286 kB]
remote:        Ign http://archive.ubuntu.com trusty/main Translation-en_US
remote:        Ign http://archive.ubuntu.com trusty/universe Translation-en_US
remote:        Fetched 1,501 kB in 2s (612 kB/s)
remote:        Reading package lists...
remote: -----> Fetching .debs for libgd-dev
remote:        Reading package lists...
remote:        Building dependency tree...
remote:        The following extra packages will be installed:
remote:          libvpx-dev libxpm-dev
remote:        The following NEW packages will be installed:
remote:          libgd-dev libvpx-dev libxpm-dev
remote:        0 upgraded, 3 newly installed, 0 to remove and 90 not upgraded.
remote:        Need to get 0 B/1,021 kB of archives.
remote:        After this operation, 3,829 kB of additional disk space will be used.
remote:        Download complete and in download only mode
remote: -----> Fetching .debs for libgif-dev
remote:        Reading package lists...
remote:        Building dependency tree...
remote:        The following NEW packages will be installed:
remote:          libgif-dev
remote:        0 upgraded, 1 newly installed, 0 to remove and 90 not upgraded.
remote:        Need to get 20.3 kB of archives.
remote:        After this operation, 119 kB of additional disk space will be used.
remote:        Get:1 http://archive.ubuntu.com/ubuntu/ trusty/main libgif-dev amd64 4.1.6-11 [20.3 kB]
remote:        Fetched 20.3 kB in 0s (87.7 kB/s)
remote:        Download complete and in download only mode
remote: -----> Installing libgd2-xpm-dev_2.1.0-3_all.deb
remote: -----> Installing libgd-dev_2.1.0-3_amd64.deb
remote: -----> Installing libgif-dev_4.1.6-11_amd64.deb
remote: -----> Installing libvpx-dev_1.3.0-2_amd64.deb
remote: -----> Installing libxpm-dev_1%3a3.5.10-1_amd64.deb
remote: -----> Writing profile script
remote: =====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-nodejs
remote: =====> Detected Framework: Node.js
remote: 
remote: -----> Creating runtime environment
remote:        
remote:        NPM_CONFIG_LOGLEVEL=error
remote:        NPM_CONFIG_PRODUCTION=true
remote:        NODE_ENV=production
remote:        NODE_MODULES_CACHE=true
remote: 
remote: -----> Installing binaries
remote:        engines.node (package.json):  0.12.7
remote:        engines.npm (package.json):   2.13.2
remote:        
remote:        Downloading and installing node 0.12.7...
remote:        Downloading and installing npm 2.13.2 (replacing version 2.11.3)...
remote: 
remote: -----> Restoring cache
remote:        Skipping cache (new runtime signature)
remote: 
remote: -----> Building dependencies
remote:        Pruning any extraneous modules
remote:        Installing node modules (package.json)
remote:        
remote:        > [email protected] install /tmp/build_fa2bb26f8b6349e151cc62491a86b973/node_modules/node-gd
remote:        > node-gyp rebuild
remote:        
remote:        make: Entering directory `/tmp/build_fa2bb26f8b6349e151cc62491a86b973/node_modules/node-gd/build'
remote:          CXX(target) Release/obj.target/node_gd/cpp/node-gd.o
remote:          SOLINK_MODULE(target) Release/obj.target/node_gd.node
remote:        /usr/bin/ld: /tmp/build_fa2bb26f8b6349e151cc62491a86b973/.apt/usr/lib/x86_64-linux-gnu/libgd.a(gd.o): relocation R_X86_64_PC32 against symbol `gdImageColorClosestAlpha' can not be used when making a shared object; recompile with -fPIC
remote:        /usr/bin/ld: final link failed: Bad value
remote:        collect2: error: ld returned 1 exit status
remote:        make: *** [Release/obj.target/node_gd.node] Error 1
remote:        make: Leaving directory `/tmp/build_fa2bb26f8b6349e151cc62491a86b973/node_modules/node-gd/build'
remote:        gyp ERR! build error 
remote:        gyp ERR! stack Error: `make` failed with exit code: 2
remote:        gyp ERR! stack     at ChildProcess.onExit (/tmp/build_fa2bb26f8b6349e151cc62491a86b973/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
remote:        gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
remote:        gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
remote:        gyp ERR! System Linux 3.13.0-49-generic
remote:        gyp ERR! command "node" "/tmp/build_fa2bb26f8b6349e151cc62491a86b973/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
remote:        gyp ERR! cwd /tmp/build_fa2bb26f8b6349e151cc62491a86b973/node_modules/node-gd
remote:        gyp ERR! node -v v0.12.7
remote:        gyp ERR! node-gyp -v v2.0.2
remote:        gyp ERR! not ok 

use updated URL for wkhtmltopdf downloads

Hello,

wkhtmltopdf has moved the downloads provider from SourceForge to gna.org. As mentioned in the linked message, all earlier downloads have been removed from SourceForge and you are strongly advised to migrate to the new URLs. The following files in your repository will need to be updated:

  • README.md

It is recommended to either subscribe to the mailing list or Twitter feed to receive updates on new releases and further changes.

Thanks,
wkhtmltopdf maintainer

"ImportError: No module named 'botocore'" but python3-botocore is installed

I have awscli in the Aptfile, which depends on botocore.

The install returns:

-----> Installing python3-botocore_0.29.0+repack-2_all.deb

but later steps (which use the aws command) fail with:

remote: Traceback (most recent call last):
remote:   File "/tmp/build/.apt/usr/bin/aws", line 15, in <module>
remote:     import awscli.clidriver
remote:   File "/tmp/build/.apt/usr/share/awscli/awscli/clidriver.py", line 16, in <module>
remote:     import botocore.session
remote: ImportError: No module named 'botocore'

NPM can't find package installed by buildpack-apt

I'm trying to install the package libphash0-dev and while it seems to install fine, I get the following error when the NPM package that depends on that library attempts to install I get:

remote:        Package pHash was not found in the pkg-config search path.
remote:        Perhaps you should add the directory containing `pHash.pc'
remote:        to the PKG_CONFIG_PATH environment variable
remote:        No package 'pHash' found

After setting the PKG_CONFIG_PATH as suggested to where I found the package installed by the buildpack /app/.apt/usr/lib/pkgconfig/ the results are the same.

So the thing is I can't get it to install during build... But if I do it after the build process via

$ heroku run bash
Running `bash` attached to terminal... up, run.6308
~ $ npm install phash-image

it installs correctly.
I'm unsure whether this is a bug or I'm missing something. The packages just don't seem to be available at build time.

Allow deb packages to be installed

Hi,

wkhtmltopdf is available as deb package instead of apt repository.

Would be great to have a way to specify packages like this:

libpq-dev
http://downloads.sourceforge.net/project/wkhtmltopdf/0.12.1/wkhtmltox-0.12.1_linux-precise-amd64.deb

Or maybe another file? Wdyt?

the binaries are not exposed to the cli interface?

Hey,

I was trying to install cMake with this buildpack and use it, but it seems as if it cannot run the command. Is it because is not available until all buildpacks are done installing?

I created this small buildpack: heroku-buildpack-mosquitto; which relies on the cmake command, but when it gets to execute it it tells me that it does not exist.

Could it be because of this buildpack, since I use the Aptfile to install cMake, or could it be because of heroku-buildpack-multi which I use to install multiple buildpacks?

Can't find where libmcrypt4 and libmcrypt-dev are installed?

trying to get this to work but these libs aren't recognised by my app on heroku.

-----> Installing libmcrypt4_2.5.8-3.1ubuntu1_amd64.deb
-----> Installing libmcrypt-dev_2.5.8-3.1ubuntu1_amd64.deb

Seems to install fine, but I can't find them anywhere, any ideas?

pkg config path error

i'm trying to install with the following Aptfile:

cimg-dev
libphash0-dev
libmagickcore-dev

everything seems to be installed correctly. however, when i try to compile my nodejs phash addon, i get:

       Package pHash was not found in the pkg-config search path.
       Perhaps you should add the directory containing `pHash.pc'
       to the PKG_CONFIG_PATH environment variable
       No package 'pHash' found
       gyp: Call to 'pkg-config --libs-only-L --libs-only-other pHash' returned exit status 1. while trying to load binding.gyp

do you know what this could mean? it works on my circleci instance out of the box, so i think it's a config issue

failed to compile Multipack app

I'm getting compilation errors when trying to install this buildpack. Can you please help diagnose? I'm using ruby 2.2.2 on an ubuntu 14.04 system.

Here are my environment logs:
2015-09-08T15:26:06.092697+00:00 heroku[slug-compiler]: Slug compilation started
2015-09-08T15:26:06.092705+00:00 heroku[slug-compiler]: Slug compilation failed: failed to compile Multipack app

Here is the output from from the installation:
remote: =====> Downloading Buildpack: https://github.com/ddollar/heroku-buildpack-apt
remote:
remote: ! Push rejected, failed to compile Multipack app
remote:
remote: Verifying deploy...
remote:
remote: ! Push rejected to avant-ocr-staging-crm.

Please let me know if you need anything else from me. It worked for me the first few time I installed and then suddenly stopped working.

Validate against cedar-14 stack

Heroku is now rolling out the new Ubuntu 14.04 based stack, can we make sure this works on that stack as well? Possibly make a note in the readme that it is compatible if it is currently

/usr/bin/ld: final link failed: Bad value

An attempt to compile certain libraries that rely on packages fetched by apt end up with /usr/bin/ld: final link failed: Bad value error.

It can be easily demonstrated on ffi gem if libffi is fetched by apt.

Steps to reproduce:

  • Create new heroku app with cedar-14 stack
  • Create new Rails 4.2 app
  • Set https://github.com/ddollar/heroku-buildpack-multi as buildpack on heroku
  • Add ffi gem to Gemfile
  • Replace sqlite3 with pg to maintain compatibility with heroku
  • Bundle gems
  • Create .buildpacks with two buildpacks: https://github.com/ddollar/heroku-buildpack-apt, https://github.com/heroku/heroku-buildpack-ruby
  • Add any library that relies on libffi to the Aptfile, e.g. libgirepository-1.0-1 and libgirepository1.0-dev
  • Push the app to heroku
  • See how the build fails

Log:

https://gist.github.com/mspanc/8907747d7a85d3b6aa72

Test app:

https://www.sendspace.com/file/byenws

Adding sourcelist directive to apt options

Thanks for the buildpack, it is very useful.

I forked your repo and added Dir::Etc::sourcelist=$BUILD_DIR/repolist to the options list. This allows me to add a file repolist in my repo directory in order to download from no standard sources.

Is this something that might be added to the buildpack or is this already handled in the Aptfile?

How i can install and use traceroute in rails app on heroku

Hi,

I have below rake task on heroku.

   task :traceroute_ip => :environment do
      puts "start.........................."

      ip = IpAddress.first
      ip_address_output =  `traceroute -q 1 -n google.com`
      ip.update_attributes(traceroute_output: ip_address_output)      

  end

i follow this answer

http://stackoverflow.com/questions/28176616/how-can-i-run-command-line-commands-on-heroku

here is my output and you can see traceroute installed

Then push to heroku below is my all output when deploying .
Fetching repository, done.
Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (7/7), 700 bytes, done.
Total 7 (delta 2), reused 0 (delta 0)
-----> Fetching custom git buildpack... done
-----> Multipack app detected
=====> Downloading Buildpack: https://github.com/ddollar/heroku-buildpack-apt
=====> Detected Framework: Apt
-----> Updating apt caches
Ign http://archive.ubuntu.com trusty InRelease
Ign http://archive.ubuntu.com trusty-security InRelease
Ign http://archive.ubuntu.com trusty-updates InRelease
Get:1 http://archive.ubuntu.com trusty Release.gpg [933 B]
Get:2 http://archive.ubuntu.com trusty-security Release.gpg [933 B]
Get:3 http://archive.ubuntu.com trusty-updates Release.gpg [933 B]
Get:4 http://archive.ubuntu.com trusty Release [58.5 kB]
Get:5 http://archive.ubuntu.com trusty-security Release [62.0 kB]
Get:6 http://archive.ubuntu.com trusty-updates Release [62.0 kB]
Get:7 http://archive.ubuntu.com trusty/main amd64 Packages [1350 kB]
Get:8 http://archive.ubuntu.com trusty/universe amd64 Packages [5859 kB]
Get:9 http://archive.ubuntu.com trusty/main Translation-en [762 kB]
Get:10 http://archive.ubuntu.com trusty/universe Translation-en [4089 kB]
Get:11 http://archive.ubuntu.com trusty-security/main amd64 Packages [200 kB]
Get:12 http://archive.ubuntu.com trusty-security/main Translation-en [101 kB]
Get:13 http://archive.ubuntu.com trusty-updates/main amd64 Packages [407 kB]
Get:14 http://archive.ubuntu.com trusty-updates/main Translation-en [194 kB]
Fetched 13.1 MB in 5s (2308 kB/s)
Reading package lists...
-----> Fetching .debs for traceroute
Reading package lists...
Building dependency tree...
The following NEW packages will be installed:
traceroute
0 upgraded, 1 newly installed, 0 to remove and 37 not upgraded.
Need to get 44.6 kB of archives.
After this operation, 176 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu/ trusty/universe traceroute amd64 1:2.0.19-3 [44.6 kB]
Fetched 44.6 kB in 0s (658 kB/s)
Download complete and in download only mode
-----> Installing traceroute_1%3a2.0.19-3_amd64.deb
-----> Writing profile script
=====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-ruby
=====> Detected Framework: Ruby
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.0.0
-----> Installing dependencies using 1.7.12
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
Using json 1.8.1
Using i18n 0.7.0
Using minitest 5.5.0
Using thread_safe 0.3.4
Using rake 10.4.2
Using erubis 2.7.0
Using builder 3.2.2
Using mini_portile 0.6.2
Using rack 1.6.0
Using mime-types 2.4.3
Using arel 6.0.0
Using coffee-script-source 1.8.0
Using execjs 2.2.2
Using multipart-post 2.0.0
Using hashie 3.3.2
Using thor 0.19.1
Using hike 1.2.3
Using jwt 1.2.0
Using multi_json 1.10.1
Using kgio 2.9.2
Using libv8 3.16.14.7
Using multi_xml 0.5.5
Using pg 0.17.1
Using bundler 1.7.12
Using tilt 1.4.1
Using rack-timeout 0.1.1
Using rails_serve_static_assets 0.0.3
Using rails_stdout_logging 0.0.3
Using raindrops 0.13.0
Using sass 3.4.9
Using ref 1.0.5
Using spring 1.2.0
Using will_paginate 3.0.7
Using rdoc 4.2.0
Using nokogiri 1.6.5
Using mail 2.6.3
Using rack-test 0.6.2
Using uglifier 2.6.1
Using tzinfo 1.2.2
Using coffee-script 2.3.0
Using omniauth 1.2.2
Using faraday 0.9.1
Using sprockets 2.12.3
Using rails_12factor 0.0.3
Using therubyracer 0.12.1
Using unicorn 4.8.3
Using loofah 2.0.1
Using activesupport 4.2.0
Using sdoc 0.4.1
Using oauth2 1.0.0
Using rails-deprecated_sanitizer 1.0.3
Using globalid 0.3.0
Using rails-html-sanitizer 1.0.1
Using activemodel 4.2.0
Using jbuilder 2.2.6
Using omniauth-oauth2 1.2.0
Using activejob 4.2.0
Using activerecord 4.2.0
Using rails-dom-testing 1.0.5
Using omniauth-auth0 1.2.0
Using actionview 4.2.0
Using actionpack 4.2.0
Using actionmailer 4.2.0
Using railties 4.2.0
Using sprockets-rails 2.2.2
Using coffee-rails 4.1.0
Using rails 4.2.0
Using sass-rails 5.0.1
Using turbolinks 2.5.3
Using jquery-rails 4.0.3
Using twitter-bootstrap-rails 3.2.0 from git://github.com/seyhunak/twitter-bootstrap-rails.git (at master)
Your bundle is complete!
Gems in the groups development and test were not installed.
It was installed into ./vendor/bundle
Bundle completed (0.80s)
Cleaning up the bundler cache.
-----> Preparing app for Rails asset pipeline
Running: rake assets:precompile
Asset precompilation completed (2.28s)
Cleaning assets
Running: rake assets:clean
Using release configuration from last framework (Ruby).
-----> Discovering process types
Procfile declares types -> web
Default types for Multipack -> console, rake, worker
-----> Compressing... done, 45.6MB
-----> Launching... done, v27
https://openreverseip.herokuapp.com/ deployed to Heroku
To [email protected]:openreverseip.git
be2586b..fc4dbdb master -> master

But i have same error again on this line

  ip_address_output =  `traceroute -q 1 -n google.com`

The error is

 /app/vendor/bundle/ruby/2.0.0/bin/rake: No such file or directory - traceroute

Any help?

what about files installed in /app/.apt/usr/share ?

I understand that all programs are installed under /app/.apt and while this is fine for programs and library files, the newly installed programs expect shared files to lie under /usr.

Any way to get around this?

apt's cache is not being clean

A dirty cache may result in the installation of unwanted packages, namely ones that were once in the Aptfile but were later removed.

.so locations

Hi,

I'm having trouble with the locations of shared libraries. Here is an example from this morning where I was installing libcairo2-dev. The static library and .so link is being created but the link source is not in the /app/.apt/usr/lib location. It's in the standard /usr/lib location. Because of this, the link can't find the shared library, falls back to the static library and fails.

~ $ ls -lah .apt/usr/lib/libcairo*
-rw------- 1 u7292 7292 989K Feb 25  2010 .apt/usr/lib/libcairo.a
-rw------- 1 u7292 7292  951 Feb 25  2010 .apt/usr/lib/libcairo.la
lrwxrwxrwx 1 u7292 7292   22 Jan 14 22:31 .apt/usr/lib/libcairo.so -> libcairo.so.2.10800.10
~ $ ls -lah /usr/lib/libcairo*
lrwxrwxrwx 1 root root   22 Jan 14 09:26 /usr/lib/libcairo.so.2 -> libcairo.so.2.10800.10
-rw-r--r-- 1 root root 521K Feb 25  2010 /usr/lib/libcairo.so.2.10800.10

I'm a bit new to apt-get and trying to do as much research as I can. I've looked in the pkgconfig:

~/.apt/usr/lib/pkgconfig $ more cairo-xlib.pc 
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: cairo-xlib
Description: Xlib surface backend for cairo graphics library
Version: 1.8.10

Requires: cairo x11
Libs: 
Cflags: -I${includedir}/cairo 

Is the 'prefix' variable what's preventing the .so files from being made available in the .apt?

Thanks,
mauricio

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.