Oscam is an Open Source Conditional Access Module software used for descrambling DVB transmissions using smart cards. It's both a server and a client.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
1.7 KiB

  1. FROM lsiobase/alpine
  2. MAINTAINER saarg
  3. # set version label
  4. ARG BUILD_DATE
  5. ARG VERSION
  6. LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
  7. # install runtime packages
  8. RUN \
  9. apk add --no-cache \
  10. libcrypto1.0 \
  11. libssl1.0 \
  12. libusb \
  13. pcsc-lite \
  14. pcsc-lite-libs && \
  15. # install build packages
  16. apk add --no-cache --virtual=build-dependencies \
  17. curl \
  18. gcc \
  19. g++ \
  20. libusb-dev \
  21. linux-headers \
  22. make \
  23. openssl-dev \
  24. pcsc-lite-dev \
  25. subversion \
  26. tar && \
  27. # compile oscam from source
  28. svn checkout http://www.streamboard.tv/svn/oscam/trunk /tmp/oscam-svn && \
  29. cd /tmp/oscam-svn && \
  30. ./config.sh \
  31. --enable all \
  32. --disable \
  33. CARDREADER_DB2COM \
  34. CARDREADER_INTERNAL \
  35. CARDREADER_STINGER \
  36. CARDREADER_STAPI \
  37. CARDREADER_STAPI5 \
  38. IPV6SUPPORT \
  39. LCDSUPPORT \
  40. LEDSUPPORT \
  41. READ_SDT_CHARSETS && \
  42. make \
  43. OSCAM_BIN=/usr/bin/oscam \
  44. NO_PLUS_TARGET=1 \
  45. CONF_DIR=/config \
  46. DEFAULT_PCSC_FLAGS="-I/usr/include/PCSC" \
  47. pcsc-libusb && \
  48. # fix broken permissions from pcscd install.
  49. chown root:root \
  50. /usr/sbin/pcscd && \
  51. chmod 755 \
  52. /usr/sbin/pcscd && \
  53. # install PCSC drivers for OmniKey devices
  54. mkdir -p \
  55. /tmp/omnikey && \
  56. curl -o \
  57. /tmp/omnikey.tar.gz -L \
  58. https://www.hidglobal.com/sites/default/files/drivers/ifdokccid_linux_x86_64-v4.2.8.tar.gz && \
  59. tar xzf /tmp/omnikey.tar.gz -C \
  60. /tmp/omnikey --strip-components=2 && \
  61. cd /tmp/omnikey && \
  62. ./install && \
  63. # fix group for card readers and add abc to dialout group
  64. groupmod -g 24 cron && \
  65. groupmod -g 16 dialout && \
  66. usermod -a -G 16 abc && \
  67. # cleanup
  68. apk del --purge \
  69. build-dependencies && \
  70. rm -rf \
  71. /tmp/*
  72. # copy local files
  73. COPY root/ /
  74. # Ports and volumes
  75. EXPOSE 8888
  76. VOLUME /config