32 lines
1.2 KiB
Docker
32 lines
1.2 KiB
Docker
|
ARG targetBuildImage
|
||
|
FROM ${targetBuildImage}
|
||
|
ARG version
|
||
|
|
||
|
RUN apt-get update -qq
|
||
|
RUN apt-get -y -qq install \
|
||
|
dput \
|
||
|
devscripts
|
||
|
|
||
|
RUN mkdir /package && mkdir /package/bin && mkdir /package/DEBIAN && mkdir /package/dist
|
||
|
# @TODO: make the binary path configurable
|
||
|
RUN cp /home/opam/.opam/4.07/bin/ligo /package/bin/ligo
|
||
|
|
||
|
# @TODO: inherit version (and other details) from the ligo opam package definition
|
||
|
# In our case we're using the version field to name our package accordingly,
|
||
|
# however this is most likely not ideal
|
||
|
# Also, the architecture field should not be 'all' but rather specific instead.
|
||
|
RUN echo "Package: ligo\n\
|
||
|
Version: $version\n\
|
||
|
Architecture: all\n\
|
||
|
Maintainer: info@ligolang.org\n\
|
||
|
Depends: libev-dev, perl, pkg-config, libgmp-dev, libhidapi-dev, m4, libcap-dev, bubblewrap, rsync\n\
|
||
|
Homepage: http://ligolang.org\n\
|
||
|
Description: LIGO is a statically typed high-level smart-contract language that compiles down to Michelson." >> /package/DEBIAN/control
|
||
|
|
||
|
RUN cd /package/dist && dpkg-deb --build /package .
|
||
|
|
||
|
# Test the package
|
||
|
# Optionally this could/should be done in a more pristine docker environment - in a separate image
|
||
|
RUN apt-get update -qq
|
||
|
RUN apt-get -y -f install "/package/dist/$(ls /package/dist)"
|
||
|
RUN ligo --help
|