Saya punya kotak NixOS yang saya simpan di nixos-16.03
saluran. Saya ingin mesin tetap dalam kondisi sebagian besar stabil, jadi saya ingin menghindari beralih ke nixos-unstable
saluran.
Namun, saya perlu menginstal versi paket yang lebih baru daripada yang tersedia di saluran itu ( nodejs-6_x
dalam hal ini). Dalam manual, ada bagian yang menjelaskan Instalasi Satu-Klik , yang pada awalnya tampak seperti apa yang saya butuhkan. Namun, server Hydra di http://hydra.nixos.org tampaknya tidak menyajikan .nixpkg
file apa pun yang digunakan oleh nix-install-package
alat yang dijelaskan dalam bagian itu.
Wiki juga mendokumentasikan suatu proses di mana seseorang dapat menyesuaikan paket (halaman disebut Paket Memodifikasi ), yang saya kira bisa digunakan untuk tujuan saya, meskipun sepertinya saya akan memperjuangkan alat daripada menggunakannya .
Saya bertanya tentang hal ini di IRC juga (terima kasih telah dengan M-Ralith
sabar menjawab pertanyaan bodoh saya!), Tetapi saya tidak begitu mengerti bagaimana cara menerapkannya. Sarannya adalah untuk "menimpa src dan versi di konfigurasi nixpkgs Anda", yang terdengar seperti saya bisa menulis ekspresi nix di .nixpkgs/configuration.nix
dan menimpa properti-properti untuk paket di saluran berlangganan saya ( nixos-16.03
). Ketika saya bertanya tentang paket yang tidak ada di saluran, sarannya adalah "untuk menentukan seluruh paket daripada hanya menimpa src dan versi", yang saya maksudkan bahwa saya perlu menduplikasi seluruh ekspresi nix untuk paket tersebut Saya tertarik dengan.nix-env
Untuk paket yang ada di saluran lain yang ingin saya instal, tetapi tetap di saluran saya saat ini, apakah ada cara yang lebih baik? Rasanya hampir seperti saya bisa melakukan sesuatu seperti nix-build <url> | nix-env -i
. Apa yang ideal adalah menginstal yang ini, tetapi tidak memiliki konfigurasi yang mungkin mencegahnya diupgrade nanti jika saluran saya saat ini mengejar ketinggalan.