nanobox-io / nanobox-pkgsrc-base

base pkgsrc packages for /data prefix
MIT License
6 stars 4 forks source link

package request: libfreeimage3 and libfreeimage-dev #36

Open ianheggie opened 6 years ago

ianheggie commented 6 years ago

Used by ruby gem: https://github.com/seattlerb/image_science

"ImageScience is a clean and happy Ruby library that generates thumbnails -- and kicks the living crap out of RMagick. Oh, and it doesn't leak memory like a sieve. :)"

ianheggie commented 6 years ago

RE:

braxton [Wed 15th 5:10 AM (Aussie time)] 
@jjkester `freeimage` should be available now. the gem will probably need some sort of config thing to tell it to find the header in `/data/include`
...
braxton 
[5:12 AM] 
oh, oops it was @unixman

I have just tried to add those packages, and had no success: with boxfile.yml:

run.config:
  engine: ruby
  engine.config:
    runtime: ruby-1.9

  # Extra Packages (in addition to what the engine installs)
  extra_packages:
    - libfreeimage3 
    - libfreeimage-dev

  # Build Triggers - Changes to these files automatically
  # trigger a new build the next time a build is required.
  build_triggers:
    - Gemfile
    - Gemfile.lock

  # Enable filesystem watcher
  fs_watch: true

data.db:
  image: nanobox/mysql:5.5

I get:

$ nanobox run
Preparing environment :

Building runtime :
  ✓ Starting docker container
  ! Preparing environment for build
    - Copying ssh keys into the build environment...
    - Setting up directories and permissions...
    - Cloning engine :
      Cloning into 'engine'...
      remote: Counting objects: 869, done.
      remote: Total 869 (delta 0), reused 0 (delta 0), pack-reused 869
      Receiving objects: 100% (869/869), 134.60 KiB | 99.00 KiB/s, done.
      Resolving deltas: 100% (416/416), done.
      Checking connectivity... done.

    - Cleaning up any previous builds...
    - Extracting home cache...
    - Extracting pkg cache...
    - Updating pkg database...
    - Installing user-requested packages :
      calculating dependencies... done.
      nothing to do.

    ! FAILED TO INSTALL PACKAGES !

    Exit
     1

    Command
     su - gonano -c "export PATH=\"/data/sbin:/data/bin:/opt/gonano/sbin:/opt/gonano/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\";       stdbuf -o0         siphon --prefix '  ' --           bash -c \"/data/bin/pkgin -y in libfreeimage3 libfreeimage-dev\"
     "

    Output
      calculating dependencies... done.
       nothing to do.

Error   : failed to execute hook (setup) on 77a9258e6430e672c6bb213fe348a21c2b0159e0882d464d3bcbe745b8585835: util:Exec:/opt/nanobox/hooks/setup: bad exit code(1): 
Context : failed to build the code -> failed to run the (build)setup hook

$

Also tried imploding and rerunning without success:

$ nanobox implode
Imploding Nanobox :
  website (local) :
    Removing components :
      data.db :
        ✓ Destroying docker container
        ✓ Releasing IPs
    ✓ Releasing IPs
  ✓ website
  ✓ apps
  nanobox-ruby (local) :
    Removing components :
      data.db1 :
        ! Destroying docker container
        ✓ Releasing IPs
    ✓ Releasing IPs
  ✓ nanobox-ruby
  ✓ Removing custom docker network...
Root privileges are required to remove the server. Your system password may be requested...
[sudo] password for ianh: 
  ✓ Purging configuration
$ nanobox run

CONFIGURE NANOBOX
---------------------------------------------------------------
Please answer the following questions so we can customize your
nanobox configuration. Feel free to update your config at any
time by running: 'nanobox configure'

(Learn more at : https://docs.nanobox.io/local-config/configure-nanobox/)

How would you like to run nanobox?
  a) Inside a lightweight VM
  b) Via Docker Native

  Note : Mac users, we strongly recommend choosing (a) until Docker Native
         resolves an issue causing slow speeds : http://bit.ly/2jYFfWQ

Answer: b

      **
   *********
***************   [√] Nanobox successfully Configured!
:: ********* ::   ------------------------------------------------------------
" ::: *** ::: "   Change these settings at any time via : 'nanobox configure'
  ""  :::  ""
    "" " ""
       "

It appears you are running Nanobox for the first time.
Login to your Nanobox account:
Nanobox Username: ian@heggie.biz
Nanobox Password: 
! The username/password was incorrect, but we're continuing on.
  To reattempt authentication, run 'nanobox login'.

Root privileges are required to start the server. Your system password may be requested...
Starting Nanobox :
  ✓ Setting up custom docker network...
  ✓ Joining virtual network

Preparing environment :

--------------------------------------------------------------------------------
+ HEADS UP:
+ This is the first build for this project and will take longer than usual.
+ Future builds will pull from the cache and will be much faster.
--------------------------------------------------------------------------------

Building runtime :
  ✓ Starting docker container
  ! Preparing environment for build
    - Copying ssh keys into the build environment...
    - Setting up directories and permissions...
    - Cloning engine :
      Cloning into 'engine'...
      remote: Counting objects: 869, done.
      remote: Total 869 (delta 0), reused 0 (delta 0), pack-reused 869
      Receiving objects: 100% (869/869), 134.60 KiB | 123.00 KiB/s, done.
      Resolving deltas: 100% (416/416), done.
      Checking connectivity... done.

    - Cleaning up any previous builds...
    - Extracting home cache...
    - Extracting pkg cache...
    - Updating pkg database...
    - Installing user-requested packages :
      calculating dependencies... done.
      nothing to do.

    ! FAILED TO INSTALL PACKAGES !

    Exit
     1

    Command
     su - gonano -c "export PATH=\"/data/sbin:/data/bin:/opt/gonano/sbin:/opt/gonano/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\";       stdbuf -o0         siphon --prefix '  ' --           bash -c \"/data/bin/pkgin -y in libfreeimage3 libfreeimage-dev\"
     "

    Output
      calculating dependencies... done.
       nothing to do.

Error   : failed to execute hook (setup) on 570dc5ca410ff7106c910a0d42de2c27661acfaf12d4d91f839472d472de5c31: util:Exec:/opt/nanobox/hooks/setup: bad exit code(1): 
Context : failed to build the code -> failed to run the (build)setup hook

$ 
notxarb commented 6 years ago

extra_packages are not packages from Ubuntu's apt repo. They are packages from pkgsrc, you can view available packages here: http://packages.nanobox.io/2017/11/base/index.html

There's a package for freeimage. The image_science gem should work if you put freeimage in the list of extra_packages instead of the Ubuntu package names.