Pagina 2 di 2

Re: segfault di atom su current 64

Inviato: mar set 25, 2018 12:34
da lennynero
Mi aggancio al thread, forse un pochino OT, per segnalare un problema (anche) con la versione di SBo (1.30.0 x64) su una slack 14.2 con qualche extra e le multilib (di Alien).
Quando provo ad installare un pacchetto all'interno di Atom ho il seguente errore:

Codice: Seleziona tutto

Fetching featured packages failed.Hide output…
module.js:471
    throw err;
    ^

Error: Cannot find module './lib/_stream_duplex.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/readable-stream/readable.js:10:18)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)

La versione di nodejs che uso è la 8.9.4, anche se mi pare di capire che ne usa una sua...
Qualcuno ha lo stesso problema? Devo rinunciare ad installare pacchetti esterni?

Re: segfault di atom su current 64

Inviato: mar set 25, 2018 12:42
da conraid
Prova con

Codice: Seleziona tutto

atom --safe

poi se da ugualmente errore cancella la directory .atom, o meglio rinominala.

E poi

Codice: Seleziona tutto

npm cache clean
rm -rf ~/.npm


E riprova.

Prova anche la versione loro già compilata.

Re: segfault di atom su current 64

Inviato: mar set 25, 2018 14:22
da lennynero
Nulla di fatto.

Il file _stream_duplex.js si trova (oltre che in altri progetti di react-native e nuxt) si trova nei path:

/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/request/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js
/usr/share/atom/resources/app/apm/node_modules/readable-stream/lib/_stream_duplex.js
/usr/share/atom/resources/app/apm/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js

Possibile che debba aggiungerli in qualche PATH(anche se mi sembra stupido)?

Re: segfault di atom su current 64

Inviato: mar set 25, 2018 14:31
da conraid
Per un problema simile qualcuno su github consigli di fare a mano
https://github.com/Glavin001/atom-beautify/issues/1308
oppure di cancellare tutti i moduli npm e reinstallarli, ma a quel punto ti conviene ricompilarti atom.

Re: segfault di atom su current 64

Inviato: mar set 25, 2018 17:38
da lennynero
Il link che mi hai postato si riferisce al file ./_stream_duplex', e pare causato dal modulo beautify, mentre nel mio caso il file è ./lib/_stream_duplex.js' e l'errore sembra dovuto al modulo readable-stream.
In ogni caso l'errore riportato capita anche banalmente con l'esecuzione del comando apm. A questo punto mi viene il sospetto che potrebbe esserci qualche conflitto tra i files installati da atom e quelli di npm(usato per altro, come detto in precedenza). :cry:

Re: segfault di atom su current 64

Inviato: mar set 25, 2018 20:22
da lennynero
Credo di aver trovato la causa del problema del package manager di atom(apm). In sostanza il file ./lib/_stream_duplex.js' effettivamente non esiste. Oltre a trovarsi nei 3 path precedentemente segnalati dovrebbe trovarsi anche in:

Codice: Seleziona tutto

/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/readable-stream/lib/_stream_duplex.js

Stranamente in quella directory trovo un file chiamato _stream_duplex.j. Così ho provato a farne una copia in .js e lanciando apm mi veniva fuori un altro file mancante:

Codice: Seleziona tutto

/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/npmlog/node_modules/gauge/plumbing.js

Anche in questo caso ne trovavo solo la versione .j, così ho effettuato una copia anche di quello e ora apm funziona...(anche all'interno della GUI di atom).
Per completezza segnalo che ho trovato altri 5 file con questa estensione monca:

Codice: Seleziona tutto

/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/request/node_modules/caseless/test.j
/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/request/node_modules/isstream/test.j
/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/osenv/node_modules/os-tmpdir/index.j
/usr/share/atom/resources/app/apm/node_modules/concat-stream/node_modules/readable-stream/writable.j
/usr/share/atom/resources/app/apm/node_modules/concat-stream/node_modules/readable-stream/readable.j

Non capisco come possa essere successo, considerando che nel pacchetto di SBo (atom-1.30.0-x86_64-1_SBo.tgz) quei files hanno estensione .js

Re: segfault di atom su current 64

Inviato: mer set 26, 2018 11:46
da conraid
Strano, però allora uno dei consigli era giusto, cioè reinstallare i moduli npm interni al progetto.

Re: segfault di atom su current 64

Inviato: mer set 26, 2018 16:43
da lennynero
Da notare che per tutti e 7 i path indicati la lunghezza (corretta) è 101 caratteri... Sembrerebbe che il processo installpkg tronca i path superiori a 100 caratteri :oops:
Credo sia impossibile, ma non mi spiego come mai nel tgz i path sono completi, ma quando lo installo non vengono "copiati" correttamente quei files.

Re: segfault di atom su current 64

Inviato: mer set 26, 2018 16:59
da ponce
mi sembra di averlo sentito dire da Alien Bob, ma non sono sicuro di aver capito bene: sembra che ci sia un baco nella versione di tar usata dai pkgtools su slackware 14.2 che tronca i nomi dei file di una lunghezza precisa.

EDIT: ah, guarda, ho trovato il post

https://www.linuxquestions.org/question ... ost5905209

Re: segfault di atom su current 64

Inviato: mer set 26, 2018 17:55
da lennynero
ponce ha scritto:mi sembra di averlo sentito dire da Alien Bob, ma non sono sicuro di aver capito bene: sembra che ci sia un baco nella versione di tar usata dai pkgtools su slackware 14.2 che tronca i nomi dei file di una lunghezza precisa.

EDIT: ah, guarda, ho trovato il post

https://www.linuxquestions.org/question ... ost5905209

Grazie mille ponce, se lo conferma anche AlienBob posso sciogliere i miei dubbi (anche se non avevo pensato a tar, dando la colpa a installpkg).
Mi pare di capire che capita(anche con la versione 1.29) con i path di esattamente 100 caratteri..., come nel caso dei 7 files che ho indicato, escludendo lo "/" iniziale.
Il bug, segnalato già nella versione 1.13.2 qui, è di 9 anni fa... Non è molto strano che non ce ne siamo mai accorti? Non è un bug molto grave?

Re: segfault di atom su current 64

Inviato: mer set 26, 2018 20:50
da ponce
lennynero ha scritto:Il bug, segnalato già nella versione 1.13.2 qui, è di 9 anni fa... Non è molto strano che non ce ne siamo mai accorti? Non è un bug molto grave?

il bug che hai linkato in realta' non e' confermato, se leggi l'email dopo dice che era stato testato e scompattava i file lunghi esattamente 100 caratteri senza troncarli: nota che si riferisce alla versione di tar che hanno riscritto quelli di busybox, non a quella che viene usata in Slackware.

Re: segfault di atom su current 64

Inviato: gio set 27, 2018 10:04
da conraid
Aggiorno per dire che anche la versione 1.31.0 appena uscita da sempre errore, infatti hanno aggiornato Electron alla 2.0.7 quando solo nella 2.0.8 hanno corretto il bug. La versione di sviluppo naturalmente va, e infatti ho compilato quella per il mio repository.
Ora provo a cambiare versione di Electron negli script, magari come fa SBo usare Electron di sistema. Ma boh, faccio prima a usare la versione di sviluppo.

Re: segfault di atom su current 64

Inviato: gio set 27, 2018 11:35
da lennynero
ponce ha scritto:nota che si riferisce alla versione di tar che hanno riscritto quelli di busybox, non a quella che viene usata in Slackware.

Ok, quindi quella segnalazione era riferita alla versione tar busybox, anche se io mi ritrovo comunque quello stesso bug nella versione "normale" (1.29) di slack 14.2-x86_64.
conraid ha scritto:quando solo nella 2.0.8 hanno corretto il bug

quindi il problema deriva da Electron <=2.0.7? Mi sto perdendo:)
conraid ha scritto:anche la versione 1.31.0 appena uscita da sempre errore

Quindi cosa devo installare per fixare il problema?
conraid ha scritto:La versione di sviluppo naturalmente va

A quale versione ti riferisci esattamente?

Re: segfault di atom su current 64

Inviato: gio set 27, 2018 11:42
da conraid
lennynero ha scritto:
conraid ha scritto:quando solo nella 2.0.8 hanno corretto il bug

quindi il problema deriva da Electron <=2.0.7? Mi sto perdendo:)
conraid ha scritto:anche la versione 1.31.0 appena uscita da sempre errore

Quindi cosa devo installare per fixare il problema?


io parlavo del problema relativo a quello indicato da me al primo post, tu non avendo le glibc aggiornate (se non erro sei con la 14.2) non dovresti aver problemi con qualsiasi versione. Al di là del problema di tar.

lennynero ha scritto:
conraid ha scritto:La versione di sviluppo naturalmente va

A quale versione ti riferisci esattamente?


Io l'ho presa con git e compilata da me.