F42: Script ignorato

Sul mini-pc che mi ha lasciato, avevo uno script bash che facevo eseguire in automatico all’avvio.
Ora che sto approntando un nuovo mini-pc, ho preso il file.sh dal deposito esterno e l’ho copiato nello stesso facile posto, che è
/home/nomeutente/
Ma non riesco a farlo eseguire.
Non solo in automatico, ma neanche se clicko il file e poi su “esegui”.
Cosa posso fare?

chmod +x <nome_del_file>

chmod +x <nome_del_file>
mi restituisce la linea di comando senza produrre nessun effetto.
Però mi sono accorto che se copio i comnadi da dentro al file e li passo al terminale funzionano, solo che ho anche questi messaggi di errore:

[00007fd928c08e20] avcodec decoder: Using Mesa Gallium driver 25.1.7 for AMD Radeon Graphics (radeonsi, renoir, ACO, DRM 3.63, 6.15.10-200.fc42.x86_64) for hardware decoding
[h264 @ 0x7fd928c120c0] No support for codec h264 profile 100.
[h264 @ 0x7fd928c120c0] Failed setup for format vaapi: hwaccel initialisation returned error.
[00007fd928c08e20] avcodec decoder error: existing hardware acceleration cannot be reused
Failed to open VDPAU backend libvdpau_radeonsi.so: impossibile aprire il file oggetto condiviso: File o directory non esistente
Failed to open VDPAU backend libvdpau_radeonsi.so: impossibile aprire il file oggetto condiviso: File o directory non esistente

Il comando che ti ho scritto fa sì che qualsiasi files abbia l’attributo di eseguibile attivato. Se lo hai precedere da sudo esso sarà eseguito come se fossi l’amministratore di sistema. Riguardo quei messaggi d’errore si capisce che mancano delle librerie di sistema.

OK. Ho provato a scrivere nel terminale:
sudo file.sh
mi risponde file.sh comando non trovato.

Quali librerie di sistema mi mancano?

Innanzitutto il comando andava dato nella forma:
sudo ./file.sh
Sei nel percorso corrente e il file viene lanciato localmente, per le librerie quelle non lo so. Dovresti porti la domanda: tra il vecchio e il nuovo computer quali sono i repos abilitati? Quali librerie di terzi ho installato nella macchina vecchia?

Ho scoperto che anche con il mini-pc di riserva, sempre con Fedora42 lxde, ho lo stesso problema.
Così le prove le sto facendo con il mini-pc di riserva. Quando avrò risolto su questo riporterò sul nuovo.

Ho provato la forma suggerita, ed ho provato anche a dargli il percorso completo. Ho provato con e senza sudo, con e senza il (.). Benchè non dovrebbero servire nè sudo, visto che nelle proprietà il file risulta eseguibile da chiunque, nè il percorso completo, o il (.) davanti al percorso completo, perchè è lì dove si apre il terminale. Infatti, se nel terminale scrivo solo il comando ls, lo vedo.
Niente da fare. Ottengo risposte come:
comando non trovato
cannot execute: required file not found
No such file or directory

Però ho scoperto che se scrivo:
sh file.sh
funziona.
Ho scritto così nell’avvio automatico ed ha funzionato anche dall’avvio automatico.

Per il resto, c’è qualcosa di strano, o erano tutte prove sbagliate e dovevo scrivere sh file.sh fin dall’inizio?
Però, se guardo nel file manager e cerco di fargli eseguire il file.sh clickando sul file e poi su esegui, non avrebbe dovuto eseguirlo? Invece non fa niente. Se clicko su esegui nel terminale, apre il terminale, ma non lo esegue, nè produce un messaggio di errore.

Per la questione dei codec. I repos dovrebbero essere quelli ufficiali di Fedora ed i Fusion. Non ricordo di aver installato altri repo sul mini-pc perso. Figurati se posso ricordare quali librerie avevo o non avevo.
Dai quei messaggi di errore per i codec non si capisce cos’è che manca?

Si avvia con sh? Com’è la prima linea di quello script? Scommetto che manca un #!/bin/sh nella prima linea…

La prima linea è così:
#! usr/bin/bash
e nel vecchio mini-pc, sempre con Fedora42 lxde, funzionava.

Allora siamo a norma per quanto riguarda la struttura dello script. Per quanto riguarda quei messaggi d’errore tutti indicano libvdpau e vaapi come mancanti. Dovresti dare il comando sudo dnf install libvdpau gstreamer-vaapi sulla nuova macchina così da installarli.

Provato. Ottengo:
Repository caricati.
Il pacchetto “libvdpau-1.5-9.fc42.x86_64” è già installato.
Il pacchetto “libvdpau-1.5-9.fc42.i686” è già installato.
Nessuna corrispondenza per l’argomento: gstreamer-vaapi