NixOS

Cara menggunakan NixOS Package Manager?

Cara menggunakan NixOS Package Manager?
Pengurus pakej NixOS adalah sistemnya sendiri. Anda boleh menggunakannya di mana-mana Distribusi Linux.

Apa yang dilakukan oleh NixOS Package Manager?

Sebilangan besar pengurus pakej menggunakan fail yang mengandungi kod pelaksanaan atau sumber. Mereka kemudian mengira apa yang diperlukannya pada sistem dan kemudian memastikan bahawa ia ada. Di Nix, perkara berfungsi sama. Perbezaan besarnya ialah Nix membuat semua fail, dan menyusunnya jika perlu, kemudian letakkan di satu tempat; kedai nix. Soalan pertama yang anda ada ialah, “Adakah fail tidak akan mempunyai nama yang sama?"Sistem mengelakkan ini dengan mempunyai satu direktori untuk setiap versi DAN menamakan semua fail dengan hash. Untuk membuat aplikasi "merasa di rumah", semua kebergantungan kemudian dihubungkan ke direktori yang betul menggunakan symlink biasa. Profil mengesan versi mana yang dijalankan oleh setiap pengguna.

Pemasangan Pengguna NixOS

Dengan sistem ini, anda dapat memasang versi yang berlainan di setiap direktori pengguna. Sekiranya mereka sama di beberapa pengguna, pentadbir boleh membiarkan Nix menghubungkan semula binari, jadi hanya ada satu pada satu masa. Ini berguna dalam menjimatkan ruang cakera. Anda juga boleh membuat persekitaran khusus untuk setiap versi pakej. Ini amat berguna semasa anda ingin menguji versi baru atau mengembangkan perisian.

Memasang untuk pengedaran biasa

Untuk platform yang paling biasa, anda boleh memasang Nix, pengurus pakej dengan skrip ringkas. Skrip ini terdapat di laman web Nix. Skrip akan memerlukan akses pengguna root, tetapi jika anda sangat mementingkan keselamatan, anda harus membaca skrip sebelum menggunakannya. Sekiranya anda ingin mengelakkan penggunaan root dalam skrip, buat saja direktori / nix pada sistem anda.

$ sh <(curl -L https://nixos.org/nix/install)

Sekiranya anda tidak mempunyai akses root atau hanya berhati-hati, anda boleh menjadikan Nix sebagai pengurus pakej pengguna sahaja.

$ sh <(curl -L https://nixos.org/nix/install) -no-daemon

Perduaan ini berfungsi dengan baik untuk sebilangan besar, jika tidak semua, pengedaran. Platform adalah x8664, i?86, aarch64, dan x8664-darwin, yang merangkumi hampir semua platform yang ada. Sekiranya anda menggunakan platform lain, anda mungkin boleh menggunakan kod sumber dan membina sendiri. Apabila pemasangan selesai, anda akan mempunyai banyak arahan baru.

Menambah program pertama anda ke NixOS

Untuk memasang perisian dan menetapkan kapan ia dapat digunakan, anda mempunyai nix-env. Pilihan pemasangan (-i) adalah yang paling biasa kerana anda selalu menggunakannya dan meletakkan pakej sebagai hujah.

$ nix-env -i firefox

Ini kelihatan sama seperti pengedaran lain, begitu juga dengan argumen pertanyaan. Walau bagaimanapun, pemasangan akan memakan masa. Sebabnya ialah ia mesti menyusun perisian kecuali ada versi pra-kompilasi dalam Nix Cache. Mencapai cache juga tidak begitu cepat. Terdapat perbezaan yang harus anda perhatikan; anda boleh memilih versi! Sekiranya anda mahukan versi khas, anda mesti mencari yang tersedia menggunakan ungkapan biasa.

$ nix-env -qa 'firefox.* '

Anda akan menerima senarai semua pakej yang ada. Anda boleh memasangnya dengan cara yang sama tetapi menggunakan nilai dalam senarai.

$ nix-env -install 'firefox-78.4.0ser '-preserve-dipasang

Ini boleh gagal jika anda sudah mempunyai versi terpasang. Pilihan '-preserve -instal' tidak akan menghapus versi yang dipasang. Anda mungkin berakhir dengan dua versi dengan keutamaan yang sama, yang boleh anda perbaiki dengan menetapkan keutamaan.

$ nix-env -set-flag priority 2 'firefox-82.0.2 '

Sekarang, anda akan menjalankan versi lama pada saat anda memulakan Firefox. Untuk menukar yang mana yang anda jalankan, anda boleh menetapkan keutamaan dengan sewajarnya. Anda juga boleh memulakan shell untuk memilih perduaan. Ini adalah pilihan pemaju, dan perintahnya adalah nix-shell.

Mengemas kini NixOS

Setelah anda mempunyai koleksi perisian, anda ingin terus dikemas kini. Sama seperti biasa, anda menggunakan perintah yang sama dengan argumen. Tetapi anda juga mesti terus mengemas kini saluran. Perintahnya adalah saluran nix.

$ nix-channel -kemas kini

Ini membaca versi terkini semua pakej yang ada. Selepas itu, anda boleh mula menaik taraf perisian anda dengan nix-env.

$ nix-env -tingkatkan

Peningkatan seperti ini akan meningkatkan versi lama perisian anda. Dalam kes ini, Firefox lama akan diganti dengan versi terbaru. Anda mungkin tidak menginginkannya dengan alasan apa pun, biasanya pembangunan.

Mengalih keluar aplikasi dari NixOS

Menghapus aplikasi sama mudah, dengan peringatan kecil. Tidak ada aplikasi yang dikeluarkan oleh perintah hapus.

$ nix-env -uninstall 'firefox-78.4.0ser '

Perintah ini akan membuang pautan ke versi Firefox versi terkini. Semua fail akan sentiasa berada dalam cakera. Anda mempunyai versi ini untuk melakukan penggantian. Rollback bermaksud anda kembali menggunakan versi lama. Ini boleh berguna sekiranya anda telah mencuba yang terbaru dan mempunyai masalah yang tidak dijangka.

$ nix-env-daftar balik

Anda mengembalikan keseluruhan generasi, yang bermaksud semua program yang ditingkatkan sejak generasi terakhir. Pilihannya menjalankan dua arahan; senarai itu dan kemudian beralih ke generasi lama. Semua pakej yang dipasang ada dalam generasi pada cakera.

NixOS Roll-back dan Membersihkan

Fungsi rollback akan menyebabkan banyak ruang cakera digunakan oleh versi lama. Anda boleh membersihkannya (anda perlu membersihkannya!). Apabila anda mempunyai tempoh yang cukup lama, atas pilihan anda sendiri, anda juga dapat membersihkan generasi lama ini untuk menjimatkan ruang cakera.

$ nix-env -delete-generasi lama

Dengan arahan ini, anda memadamkan semua generasi kecuali dua generasi terakhir. Anda boleh pergi dan balik dalam senarai dengan parameter yang lebih kompleks untuk meninggalkan generasi tertentu yang paling sesuai untuk anda. Kecuali anda mempunyai banyak projek pengujian atau pembangunan yang memerlukan banyak versi untuk ujian, anda harus menggunakan penghapusan berjadual dari semua generasi lama.

Skrip ringkas untuk menjaga kebersihan generasi anda dilengkapi dengan pemasangan pengurus pakej Nix.

$ nix-collect-sampah

Anda juga harus mengatur pemungut agar berjalan secara automatik menggunakan systemd atau sistem lain.

Kesimpulannya

Nix package manager adalah sistem yang hebat yang dapat membuat anda menjalankan persekitaran pembangunan yang kompleks di mesin anda. Anda juga dapat menggunakannya untuk memastikan perisian anda kemas dan mempunyai cara mudah untuk pulih pada mesin baru, sekiranya bencana kerosakan cakera berlaku.

Cara Memasang League Of Legends di Ubuntu 14.04
Sekiranya anda peminat League of Legends, maka ini adalah peluang bagi anda untuk menguji menjalankan League of Legends. Perhatikan bahawa LOL disokon...
Pasang permainan Strategi OpenRA terkini di Ubuntu Linux
OpenRA adalah mesin permainan Strategi Masa Nyata / Bebas yang mencipta semula permainan Westwood awal seperti Command & Conquer klasik: Makluman Mera...
Pasang Dolphin Emulator terkini untuk Gamecube & Wii di Linux
Dolphin Emulator membolehkan anda memainkan permainan Gamecube & Wii pilihan anda di Komputer Peribadi Linux (PC). Menjadi emulator permainan sumber ...