Guida all'installazione e alla compilazione di Logitech Media Server su FreeBSD (e derivate)

Visualizzazione dei risultati da 1 a 10 su 43

Hybrid View

Messaggio precedente Messaggio precedente   Prossimo messaggio Prossimo messaggio
  1. #1
    kibibyte
    Registrato
    Nov 2016
    Messaggi
    217
    configurazione

    Predefinito Guida all'installazione e alla compilazione di Logitech Media Server su FreeBSD (e derivate)

    Scrivo questa guida per dare istruzioni quanto più complete possibile a tutti coloro che hanno scelto di usare come sistema operativo FreeBSD (o derivate) per il computer "server" sul quale installare Logitech Media Server.

    Ci sono tre modi per raggiungere il medesimo fine:

    • Utilizzare i ports
    • Utilizzare i pacchetti
    • Compilarsi tutto quanto da soli


    Partiamo dal primo

    1) PORTS

    Assicuratevi di aver installato portmaster:
    codice:
    pkg install portmaster
    quindi:
    codice:
    portmaster audio/logitechmediaserver
    IMPORTANTE: Inizieranno a comparirvi varie finestre di dialogo in cui impostare le varie opzioni di compilazione delle dipendenze, quando comparirà quella di logitechmediaserver assicuratevi che nella casella "TEST" non ci sia alcuna spunta!

    N.B. L'ultimo aggiornamento della versione di LMS di questo port risale al 30 Settembre 2016.

    2) PACCHETTI - NON PIù SUPPORTATO, LEGGERE POST #6

    Purtroppo non è presente alcun pacchetto facilmente installabile di Logitech Media Server delle repository ufficiali, ed è qui che vi vengo incontro io creando una repository con i tutti i pacchetti necessari pre-compilati:

    Modificate il file di configurazione del package manager:

    codice:
    ee /etc/pkg/FreeBSD.conf
    aggiungendo:

    codice:
    audiodigitale: {
    url: "http://audiodigitale.eu/repo/freebsd/pkgs",
    mirror_type: "http",
    enabled: yes
    }
    Quindi:

    codice:
    pkg update
    pkg install logitechmediaserver
    Avendo compilato tutto partendo dai ports l'ultimo aggiornamento della versione di LMS risale al 30 Settembre 2016.

    3) DIY: diamoci al Fai-Da-TE

    Prima di iniziare è necessario:
    1. libtime.a
    2. libpatience.a
    3. Conoscenze minime su cosa siano le Jail. Userò CBSD per gestirle.


    Utilizzeremo due jails: una per compilare il tutto e un'altra per testare ed eseguire LMS.
    Iniziamo creando la prima:

    codice:
    cbsd jconstruct-tui


    In "pkglist" inserite manualmente:
    unzip bash gmake rsync nasm wget libgd gcc perl5-5.24.1 automake libtool

    Entrate nella jail:

    codice:
    cbsd jstart build
    cbsd jlogin build
    Userò la cartella /tmp per scaricare i sorgenti e compilare il tutto:

    codice:
    cd /tmp
    wget http://downloads.slimdevices.com/nightly/7.9/sc/3adb1b4/logitechmediaserver-7.9.1-1489743085.tgz
    wget https://github.com/Logitech/slimserver-vendor/archive/public/7.9.zip
    unzip 7*
    tar xjf l*
    Iniziamo a compilare:

    codice:
    cd slimserver-vendor-public-7.9/CPAN
    ./buildme.sh -t | tee /tmp/build.log
    cd /tmp/logitechmediaserver-7.9.1-1489743085/CPAN/arch/5.24
    rm -rf 5.1* && rm -rf 5.8 && rm -rf 5.22 && rm -rf 5.20
    cp -Rp /tmp/slimserver-vendor-public-7.9/CPAN/build/arch/5.24/amd64-freebsd-thread-multi .
    rm -rf x*
    
    cd /tmp
    tar cf FreeBSD-lms-7.9.1.tar logitechmediaserver-7.9.1-1489743085
    
    wget http://downloads.xiph.org/releases/flac/flac-1.3.2.tar.xz
    tar xf f*
    cd flac-1.3.2
    autoreconf -i
    ./configure --enable-static --disable-shared
    make
    
    cd /tmp
    wget http://downloads.sourceforge.net/faac/faad2-2.7.zip
    unzip faad2-2.7.zip
    cd faad2-2.7
    ./configure --enable-static --disable-shared
    make
    
    cd /tmp
    wget http://www.wavpack.com/wavpack-5.1.0.tar.bz2
    tar xf wavpack-5.1.0.tar.bz2
    cd wavpack-5.1.0
    autoreconf -i
    ./configure --enable-static --disable-shared
    make
    Ora usciamo dalla jail "build", creiamo la jail "lms" e trasferiamoci tutto ciò che abbiamo compilato:

    codice:
    exit
    Per uscire.

    codice:
    cbsd jconstruct-tui


    In "pkglist" inserite manualmente:
    wget perl5-5.24.1 libiconv

    codice:
    cbsd jstart lms
    mv /usr/jails/jails-data/build-data/tmp/FreeBSD-lms-7.9.1.tar /usr/jails/jails-data/lms-data/tmp
    cbsd jlogin lms
    Ora copierò LMS compilato e includerò una versione di SoX modificata compatibile con la conversione PCM->DSD (Per maggiori info -> Logitechmediaserver, C-3PO and PCM to DSD conversion)

    codice:
    cd /tmp
    tar xf F*
    pw groupadd -n lms -g 20000
    pw useradd -n lms -u 20000 -g lms -s /usr/sbin/nologin -c "Logitech Media Server" -d /nonexistent
    mkdir /usr/local/lms
    mv logitechmediaserver-7.9.1-1489743085 /usr/local/lms/
    cd /usr/local/lms
    mv logitechmediaserver-7.9.1-1489743085/* /usr/local/lms
    rmdir logitechmediaserver-7.9.1-1489743085
    rm -rf Bin/a* && rm -rf Bin/i* && rm -rf Bin/p* && rm -rf Bin/s* && rm -rf Bin/x*
    cd Bin
    wget https://audiodigitale.eu/repo/sox/sox-FreeBSD
    mv sox-FreeBSD sox
    
    exit
    Copiamo i binari di flac, faad, wavpack e rientriamo nella jail lms:

    codice:
    mv /usr/jails/jails-data/build-data/tmp/flac-1.3.2/src/flac/flac /usr/jails/jails-data/lms-data/usr/local/lms/Bin/
    mv /usr/jails/jails-data/build-data/tmp/faad2-2.7/frontend/faad /usr/jails/jails-data/lms-data/usr/local/lms/Bin/
    mv /usr/jails/jails-data/build-data/tmp/wavpack-5.1.0/cli/wvunpack /usr/jails/jails-data/lms-data/usr/local/lms/Bin/
    Dentro alla jail lms ora:

    codice:
    cbsd jlogin lms
    chown -R lms:lms /usr/local/lms
    chmod -R 755 /usr/local/lms/Bin
    mkdir /var/log/lms
    mkdir /var/db/lms
    mkdir /var/db/lms/cache
    mkdir /var/db/lms/prefs
    mkdir /var/db/lms/playlists
    chown -R lms:lms /var/db/lms
    chown -R lms:lms /var/log/lms
    cd /etc/rc.d
    wget https://audiodigitale.eu/repo/freebsd/lms
    chmod 555 lms
    echo 'lms_enable="YES"' >> /etc/rc.conf && echo 'lms_logdir="/var/log/lms"' >> /etc/rc.conf && echo 'lms_cachedir="/var/db/lms/cache"' >> /etc/rc.conf && echo 'lms_prefsdir="/var/db/lms/prefs"' >> /etc/rc.conf && echo 'lms_playlistdir="/var/db/lms/playlists"' >> /etc/rc.conf
    
    exit
    Ora se abbiamo fatto tutto correttamente, con un pizzico di fortuna, riavviando la jail Logitech Media Server partirà all'avvio:

    codice:
    cbsd jstop lms
    cbsd jstart lms
    Concludiamo rimuovendo la jail utilizzata per la compilazione:

    codice:
    cbsd jremove build
    Scrivete pure se ho fatto errori e/o se qualcosa non funziona a dovere. Spero possa essere utile a qualcuno.

    English version: Logitech Media Server and FreeBSD
    Ultima modifica di SimoneFil : 19-10-2019 a 00:25

  2. #2
    pebibyte L'avatar di marcoc1712
    Registrato
    Jan 2013
    Messaggi
    5,254
    configurazione

    Predefinito

    Ottimo!

    ma mi sfuggono due cose:

    a. http://downloads.slimdevices.com/nig...85-FreeBSD.tgz

    non va bene?

    b. é scritto in Perl, perchè deve essere compilato?

    comunque, ottimo lavoro.
    Ciao, Marco.

    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
    — E. F. Schumacher (mis-attributed to A. Einstein)
    ________________________________________________________________________________
    Autore della patch R2 per Squeezelite e del plugin C-3PO. note libere
    Logitech media Server 7.9 > miniPc + squeezelite-R2 / SB+ > "Lu Scalmentu" NOS R2R DAC by TubeOne/ AudioResearch DAC 1-20 >
    Klimo Merlino Gold TPS > DIS Interconnect > Kent Gold > Reference > Monitor Audio Studio 20 SE

  3. #3
    kibibyte
    Registrato
    Nov 2016
    Messaggi
    217
    configurazione

    Predefinito

    Originariamente inviato da marcoc1712
    Ottimo!

    ma mi sfuggono due cose:

    a. http://downloads.slimdevices.com/nig...85-FreeBSD.tgz

    non va bene?

    b. é scritto in Perl, perchè deve essere compilato?

    comunque, ottimo lavoro.
    a. No, quella è per FreeBSD 7.2 a 32 bit (versione di 9 anni fa e nemmeno più supportata), non funziona su FreeBSD 11-12. E non capisco perchè continuino a pubblicarla per la 7.2, ormai obsoleta e in disuso.

    b. Verissimo, Non è LMS a dover essere compilato quanto tutti i suoi moduli (il contenuto della cartella CPAN in slimserver-vendor), che sono essenziali per il suo funzionamento

  4. #4
    kibibyte
    Registrato
    Nov 2016
    Messaggi
    217
    configurazione

    Predefinito

    Guida aggiornata su https://audiodigitale.eu/?p=87

    Ho ricompilato LMS aggiornato al commit 2433703 e creato uno script shell per l'installazione, Testato su freebsd 13.0-CURRENT, mi servirebbe qualche feedback per versioni inferiori e FreeNAS

  5. #5

    Predefinito

    interessante...era da un po che volevo installare LMS su NAS4FREE o FREENAS (freenas perchè forse passo a lui) ma siccome non ho molte competenze allora boh ...
    Mi dovrei levare ancora un po di dubbi, poi torno qui e ci provo.

    Ps ho in prova freenas su una macchina virtuale ma non sono riuscito ad installare LMS. Quindi si, potrò darti un feedback.

    A presto.

    E visto che ci siamo una domandina, secondo te passando da nas4free a freenas, è possibile reimportare i dischi, il pool ed i dataset ?
    Ultima modifica di Kumaras : 15-10-2019 a 15:08

  6. #6
    kibibyte
    Registrato
    Nov 2016
    Messaggi
    217
    configurazione

    Predefinito

    Originariamente inviato da Kumaras
    interessante...era da un po che volevo installare LMS su NAS4FREE o FREENAS (freenas perchè forse passo a lui) ma siccome non ho molte competenze allora boh ...
    Mi dovrei levare ancora un po di dubbi, poi torno qui e ci provo.

    Ps ho in prova freenas su una macchina virtuale ma non sono riuscito ad installare LMS. Quindi si, potrò darti un feedback.

    A presto.

    E visto che ci siamo una domandina, secondo te passando da nas4free a freenas, è possibile reimportare i dischi, il pool ed i dataset ?
    UPDATE:

    Per rendermi più semplice la vita non manterrò più la creazione di pacchetti e quindi di una repository. Ho invece creato uno script sh che permette di scaricare e installare LMS su ogni versione di Freebsd/freenas >11. Ciò mi consente di poter aggiornare più frequentemente LMS staccandomi dai lentissimi aggiornamenti che vengono rilasciati nei ports.
    è uno script grezzo, ma funziona. In futuro lo migliorerò aggiungendo più opzioni e rendendolo più user-friendly

    Per maggiori informazioni riferirsi a https://audiodigitale.eu/?p=87

    Per il funzionamento:

    codice:
    pkg install wget ca_root_nss
    wget -P /usr/local/bin/ https://audiodigitale.eu/repo/freebsd/lms_installer
    chmod +x /usr/local/bin/lms_installer
    lms_installer
    Kumaras prova quando puoi e dammi un feedback!

    Per il passaggio da nas4free a freenas al momento non so risponderti, se entrambi gli o.s. utilizzano ZFS in teoria dovrebbe essere possibile ma è un'operazione che non ho mai svolto
    Ultima modifica di SimoneFil : 09-01-2020 a 09:58

  7. #7
    kibibyte
    Registrato
    Nov 2016
    Messaggi
    217
    configurazione

    Predefinito

    Originariamente inviato da Kumaras
    interessante...era da un po che volevo installare LMS su NAS4FREE o FREENAS (freenas perchè forse passo a lui) ma siccome non ho molte competenze allora boh ...
    Mi dovrei levare ancora un po di dubbi, poi torno qui e ci provo.

    Ps ho in prova freenas su una macchina virtuale ma non sono riuscito ad installare LMS. Quindi si, potrò darti un feedback.

    A presto.

    E visto che ci siamo una domandina, secondo te passando da nas4free a freenas, è possibile reimportare i dischi, il pool ed i dataset ?
    Aggiungo che in teoria per LMS anche stando con nas4free non dovrebbero esserci problemi. Male che vada modifico lo script e lo si fa andare

Informazioni Thread

Users Browsing this Thread

Ci sono attualmente 1 utenti che stanno visualizzando questa discussione. (0 utenti e 1 ospiti)

Regole d'invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
nexthardware.com - © 2002-2022