Una delle nuove funzioni che sono state introdotte in Windows 10 con l’anniversary update è la bash per Windows, ve ne avevamo già parlato qui. Microsoft lo definisce “Windows Subsystem for Linux” e Dustin Kirkland l’ha già rinominata come “l’inverso di Wine”.

Fino ad oggi usare WSL significava avere Ubuntu ma con questo nuovo tool è possibile usare anche Fedora, openSUSE, CentOS e altre distro Linux su Windows.

WSL Distribution Switcher

wsl-distribution-switcher

WSL distribution switcher consiste in un progetto open-source che vi permette di usare diverse distro su Windows. E’ costituito da un insieme di script che scaricano e estraggono delle immagini pre-built delle varie distribuzioni. Il tool vi darà poi la possibilità di “switchare” rapidamente da una distro all’altra.

Gli script, scritti in Python 3, devono essere lanciati da Windows e non da WSL. Per maggiori informazioni sul progetto e per il download dei vari file vi rimando alla pagina ufficiale di GitHub.

sharing-caring-1-1-1-1

Vi ricordiamo che seguirci è molto semplice: tramite la pagina Facebook ufficiale, tramite il nostro canale notizie Telegram e la nostra pagina Google Plus.

Qui potrete trovare le varie notizie da noi riportate sul blog. È possibile, inoltre, commentare, condividere e creare spunti di discussione inerenti l’argomento.

  • Samael

    OTTIMO!
    Grazie a questo set di script ho installato Slackware-current da DockerHub nell’immagine messa a disposizione da Vincent Batts.
    Finalmente posso usare la mia distro Linux preferita su WSL! 🙂

    • Matteo Gatti

      bene! 🙂

    • Discepolo di Liuk

      Sto pensando di mitigare a Slackware ma ho parecchi interrogativi:
      -voglio che i programmi che installo siano totalmente vergini(senza Slackbuilds o cose del genere)
      -come posso far sì che ogni piccola parte dell’os,compreso il kernel sia aggiornata all’ultima versione, dipendenze comprese?
      -come funziona esattamente l’aggiornamento di un pacchetto? Scarica da un repository predefinito solo il software compreso con la distribuzione al momento dell’installazione mentre per il resto dovrò creare script appositi?

      • Samael

        -voglio che i programmi che installo siano totalmente vergini(senza Slackbuilds o cose del genere)

        Beh, in tal caso devi compilare a mano.
        Bada che Slackware è una distro abbastanza vanilla di suo, quindi non trovi roba patchata come su Debian/Ubuntu, se non per motivi strettamente necessari, tipo un software che non compila.
        Gli SlackBuild sono semplicemente script shell che ti facilitano il lavoro di pacchettizzazione, niente di più.

        -come posso far sì che ogni piccola parte dell’os,compreso il kernel sia aggiornata all’ultima versione, dipendenze comprese?

        Slackware-current.
        Bada però che -current non è ArchLinux, ma è un ramo alpha non supportato ufficialmente. Di solito lo usano persone che hanno abbastanza dimestichezza nell’amministrazione di un OS Linux, perché tende ad essere soggetto a blocchi o malfunzionamenti in quanto in costante cambiamento.
        Dato che non c’è un testing rigoroso come avviene per la stable, spesso è usato da chi vuole contribuire alla distro mandando bug report e fix.
        Detto questo, Slackware non è la distro migliore se cerchi il bleeding edge, sebbene -current si mantiene piuttosto aggiornata. ArchLinux sarebbe la scelta migliore in questo senso, perché è una distro pensata per essere usata in quel modo.

        -come funziona esattamente l’aggiornamento di un pacchetto? Scarica da un repository predefinito solo il software compreso con la distribuzione al momento dell’installazione mentre per il resto dovrò creare script appositi?

        Su Slackware non esistono i repository. Esiste solo il DVD che hai scaricato da torrent/ftp/http, che nelle versioni online viene costantemente aggiornato con le patch in Slackware stable o con i pacchetti più recenti in -current.
        Slackware è una distribuzione nel senso più tradizionale del termine.
        Detto questo, ci sono vari repository terzi non ufficiali come quello di AlienBOB, che è fatto di pacchetti binari, e SlackBuilds_org che è tipo AUR o altri repository di SlackBuilds che utenti tipo willysr tengono su GitHub.
        Chiaramente se vuoi installare pacchetti manualmente, come hai chiesto nel punto 1, allora sì: per quesi software dovrai crearti degli script che tenga traccia della versione installata e di quella disponibile, in modo da capire qualora ci sia o meno un aggiornamento.

        Bada che su Slackware NON esiste il concetto di dipendenza, perché il package manager (pkgtools) non è pensato per gestire cose del genere.
        I pacchetti della distro non hanno nemmeno i metadati per gestire i conflitti ecc. Tutto è a carico dell’utente, che è di fatto il VERO package manager della distro.
        In sostanza tutti i pacchetti su Slackware sono indipendenti, che siano librerie o applicativi. Proprio per questo Slackware la si installa in blocco, ovvero con un installazione COMPLETA del contenuto del DVD.
        Chi fa installazioni custom, disattivando alcuni pacchetti, sta utilizzando una configurazione non supportata. Configurazione possibile, sia chiaro, ma fatta con coscienza del fatto che in caso di problemi tocca rimboccarti le maniche e risolverli.
        Persino alcuni repository di terze parti, come quello di Ponce, non gestiscono le dipendenze e consigliano l’installazione in blocco.

        • Ignorance.

          *migrare(il sonno fa brutti scherzi xD)
          Comunque sembra davvero arduo da mantenere con le mie necessità :.

          • Samael

            In realtà parte del problema è che ti stai complicando la vita inutilmente xD

            Mi riferisco al punto 1.
            Perché vuoi compilare pacchetti senza SlackBuild?
            Compilare a mano non è mai una soluzione conveniente, a mano che non sia una roba che non ti interessa mantenere più di tanto.
            Lo SlackBuild ti permette di mantenere i tuoi pacchetti in maniera semplice e veloce.
            Lanci lo script, aspetti che finisca e installi/fai l’upgrade del pacchetto risultante. Proprio come AUR su ArchLinux.

            Detto questo, i repository terzi come quello di AlienBOB o Ponce sono abbastanza forniti, quindi raramente ti capiterà di compilare qualcosa, a meno di esigenze particolari.
            E comunque sia, se trovi ciò che ti serve su SlackBuilds_org stai tranquillo, perché lì le dipendenze sono segnalate.
            Tra l’altro con un tool chiamato slackpkg+ puoi gestire i repository di terze parti in maniera del tutto identica al mirror di Slackware.

            Inoltre, se vuoi fare installazioni custom, senza installare tutto il blocco, puoi farlo. Io lo faccio senza problemi. Mai installata una Slackware full in vita mia.
            Se poi ho una libreria mancante:
            $ sudo slackpkg file-search libpippo.so.0

            e mi esce il pacchetto a cui appartiene, che installo con un:
            $ sudo slackpkg install nomepacchetto

            Anche se ormai questa cosa la faccio sempre meno, perché ho più o meno memorizzato il grosso delle dipendenze che i miei pacchetti usano.

            Alla fine è una questione di prenderci la mano. Dipende tutto da cosa stai cercando.
            Vuoi un OS simile a UNIX che ti permetta di mantenere il controllo dello stack e ti dia meno problemi possibili? Slackware è la soluzione.
            Vuoi una distro più confortevole e che ti dia tutto a portata di mano? Ubuntu, Fedora o OpenSUSE fanno più al caso tuo.
            Vuoi un OS configurabile come Slackware ma sempre up-to-date e con una eccezionale dotazione di software? ArchLinux.

          • Ignorance.

            Il fatto é che personalmente amo tantissimo la filosofia di Slackware sia a livello concettuale sia per il fatto che mi costringe ad imparare. Ciò che mi preoccupa dei repository di terze parti é che qualche malintenzionato uppi software malevoli e/o che qualche software/dipendenza important non venga più aggiornata

          • Samael

            Allora per la questione sicurezza, i repository binari sono firmati.
            Quelli di SlackBuild, beh, sono script shell, quindi ti basta leggere per verificare.
            Tra l’altro su SBo il controllo è molto rigoroso e prima di poter vedere uppato uno SlackBuild, esso deve essere verificato dal team.

            Sulla questione software di terze parti non aggiornato, beh può succedere, così come lo trovi su Ubuntu o Fedora.
            Tuttavia, se ti capita puoi chiedere di aggiornarlo sia sul chan IRC #slackbuilds@freenode che in un commento nel blog di AlienBOB, a seconda di dove lo trovi.

            Con il repo di AlienBOB comunque il problema è minimo, perché lui tiene sempre tutto aggiornato. Sia i software di terze parti (mantiene anche un repository per KDE 5) che le multilib per eseguire software a 32-bit su Slackware64.

            PS: AlienBOB è un membro dello Slackware team, quindi puoi fidarti.
            E Ponce e willysr sono due membri illustri della comunità Slackware, nonché tra gli admin di SlackBuilds_org.

            Sotto questo punto di vista puoi andare sul sicuro.

          • Ignorance.

            Non capisco, su SlackBuilds non scarica comunque un programma oltre allo script?

          • Samael

            No, viene scaricato solo l’occorrente per creare un pacchetto.
            Di solito sono lo SlackBuild, lo slack-desc (è il file che contiene la descrizione del software, e serve allo SlackBuild per integrarlo nel pacchetto finale), il doinst (script contenente operazioni post-installazione, tipo l’aggiornamento della cache dei lanciatori o dei MIME type) le patch e un file info contenente l’URL dei sorgenti e altre informazioni.

            Guarda qui (dai anche una lettura ad HOWTO per maggiori informazioni)
            h t t p s : / / slackbuilds . org / repository / 14 . 2 / graphics / Blender /

          • Ignorance.

            Ed il programma in sé dov’é contenuto allora?

          • Samael

            Il programma è in formato codice sorgente. Va compilato. Uhm, mi viene un dubbio: non hai mai usato ArchLinux?
            Gli SlackBuild sono script di compilazione che scaricano il sorgente, lo compilano e creano un binario eseguibile.

          • Ignorance.

            Ah, ho capito. No, io pensavo che fossero pacchetti precompilati da installare, scusami.
            Ti ringrazio per le spiegazioni :).

          • Samael

            Figurati 🙂
            Solo i repository di AlienBOB, Ponce, rworkman ed altri sono binari (quindi pacchetti precompilati) e quelli li puoi gestire con slackpkg+.
            Se si parla di SBo o di repository di SlackBuilds, allora si intendono repository di script di compilazione.

No more articles