Home of the Squeezebox™ & Transporter® network music players.
Results 1 to 6 of 6
  1. #1
    Junior Member
    Join Date
    Aug 2017
    Posts
    2

    Updating Dependencies & Minimum Build Specs

    Good day, all,

    I have working on updating various LMS dependencies, ffmpeg to 3.4, icu to 60.1, Image::Scale, etc, in the slimserver-vendor github repository. As I have been making progress (or not), it dawned on me that I am currently operating as somewhat of a rogue agent.

    This raised the following questions:
    1. Are there minimum versions of the external build tools envisioned?
    2. Is the intention that LMS 7.9 work on every platform that has every gotten perl to run?
    3. Will support for old versions of perl ever be deprecated?


    There are a few issues afoot:
    Really old versions of Perl are only available on really old versions of OS's.
    Really old OS's have really old compilers.
    Really old compilers can't do some of the stuff required to keep pace with newer software.
    Really old software has has vulnerabilities.

    A few examples are that ffmpeg has hundreds of security issues addressed since 0.8.4, ffmpeg has known problems building with gcc 4.2.x, and icu versions higher than 59.1 require c++11 (in addition to gcc 4.8 and up). The C++11 standard has been around since 2011. Perl stops security fixes for major releases (5.x) 3 years after release. Perl 5.8 has been end of life since 2008, 5.10 since 2009, etc. Perl 5.20.x and earlier are out of support.

    Tactically, should I just test for compiler version(s), and then retain the capability to build all the old stuff? Or if an update (like the one to ICU 58.2) can be built on really old stuff, can it supplant the SUPER old version completely? What approach most aligns with other developer approaches, and thus is most likely to get my git PR's merged?

  2. #2
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    15,319
    AFAIK ffmpeg is not a required part of LMS - it may be used by 3rd party plugins.

  3. #3
    jvromans@squirrel.nl
    Guest

    Updating Dependencies & Minimum Build Specs

    On Thu, 2 Nov 2017 15:23:59 +0000, fsbruva
    <fsbruva.87c95z (AT) no-mx (DOT) forums.slimdevices.com> wrote:

    > I have working on updating various LMS dependencies, ffmpeg to 3.4, icu
    > to 60.1, Image::Scale, etc, in the slimserver-vendor github repository.
    > As I have been making progress (or not), it dawned on me that I am
    > currently operating as somewhat of a rogue agent.


    Nevertheless your work is appreciated.

    Some ideas about the LMS and building and platforms...

    LMS has Perl requirements (which are quite low). But is should not matter
    much, as long as they are capable of running LMS. I think 5.26 is the
    first version that may cause problems for LMS, due to no longer including
    "." in @INC.

    LMS has requirements on CPAN modules. These are generally also low, but
    there should be no reason why a newer module would break LMS. DBIx::Class
    is an unfortunate exception, IIRC.

    LMS has requirements on 3rd perty tools, e.g. ffmpeg. The way LMS uses
    ffmpeg should not cause problems with newer versions.

    While a number of years ago Linux systems were assembled manually, nowadays
    everyone uses prebuilt distributions. Fedora, Debian, Ubuntu, Raspbian and
    so on. It is important to fit LMS into these distributions. As we did
    with the RPM-based distributions, most (preferrably all) LMS-included CPAN
    modules were removed in favour of the official distro version of the
    modules. This also eliminates many of the gcc compile issues, since LMS
    itself does not have C code.

    -- Johan

  4. #4
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    649
    Quote Originally Posted by fsbruva View Post
    I have working on updating various LMS dependencies, ffmpeg to 3.4, icu to 60.1, Image::Scale, etc, in the slimserver-vendor github repository. As I have been making progress (or not), it dawned on me that I am currently operating as somewhat of a rogue agent.
    This post may be of interest.

  5. #5
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    649
    Quote Originally Posted by bpa View Post
    AFAIK ffmpeg is not a required part of LMS - it may be used by 3rd party plugins.
    Media::Scan (libmediascan) depends on ffmpeg and is part of the standard LMS package (used for videos only iirc)

  6. #6
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    15,319
    Quote Originally Posted by Roland0 View Post
    Media::Scan (libmediascan) depends on ffmpeg and is part of the standard LMS package (used for videos only iirc)
    Forgot about the 3rd party stuff in CPAN and video support wasn't really followed up after Logitech dropped the Revue product development which was the point of adding video support to LMS.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •