ใน NixOS ผมติดตั้งแพคเกจได้ตามปกติโดยการเรียกใช้yarn $ nix-env -i yarnตอนนี้ผมกำลังพยายามที่จะวิ่งผ่านyarn $ yarn startแต่นี่ทำให้ฉันเกิดข้อผิดพลาดดังต่อไปนี้
$ yarn start
yarn start v0.20.3
$ webpack-dev-server --env dev
sh: webpack-dev-server: command not found
error Command failed with exit code 127.
เมื่อฉันพยายามติดตั้งwebpack-dev-serverใน NixOS ตามปกติของฉันฉันจะได้รับข้อผิดพลาด
$ nix-env -i webpack-dev-server
error: selector ‘webpack-dev-server’ matches no derivations
ฉันอ่านนั่นwebpack-dev-serverคือแพ็คเกจ npm และฉันไม่แน่ใจเกี่ยวกับคำถามสองสามข้อเกี่ยวกับความเกี่ยวข้องของสิ่งนั้นในกรณีนี้
- มันสมเหตุสมผลหรือไม่ที่จะใช้ NPM ซึ่งเป็นตัวจัดการแพ็กเกจที่แตกต่างจากระวังภายใต้ห้าม?
- ถ้าคำตอบสำหรับ (1) คือใช่แล้วจะติดตั้ง npm บน NixOS ได้อย่างไร? ฉันไม่เห็น npm พร้อมใช้งานเมื่อค้นหาผ่าน
nix-envเนื่องจาก$ nix-env -qa npmไม่ตรงกับการพิสูจน์
วิธีที่ถูกต้องในการติดตั้งwebpack-dev-serverบน NixOS คืออะไร?
แก้ไข
ฉันพยายามติดตั้งwebpack-dev-serverตามลิงก์ความคิดเห็นและสามารถติดตั้งnode2nixได้ แต่ไม่สามารถติดตามผ่านในขั้นตอนที่ 2 ที่แสดงใน readme ที่นั่น
ฉันพบไฟล์ที่อ้างอิงในขั้นตอนที่ 2 ใน/nix/storeเวลา
/nix/store/sgk7sxgqxrv2axkxjwc3y15apcqbrv1z-nixos-17.03.1482.1b57bf274a/nixos/pkgs/development/node-packages/node-packages.json
ฉันสามารถเปิดไฟล์นั้นเพื่อดูแพ็กเกจ npm ที่แสดงรายการ แต่สิทธิ์อนุญาตเป็นแบบอ่านอย่างเดียวแม้แต่ทำงานด้วย sudo - ดังนั้นฉันจะต้องแก้ไขสิทธิ์เพื่อเปลี่ยนมัน
ดูเหมือนว่าฉันไม่ควรแก้ไข/nix/storeไฟล์นี้โดยตรงและควรจัดการไฟล์ดังกล่าวทางอ้อมผ่านทางห้าม ฉันแก้ไขถูกต้องหรือไม่ว่าไม่ควรแก้ไขไฟล์นี้โดยตรง ถ้าเป็นเช่นนั้นฉันจะทำขั้นตอนที่ 2 ได้อย่างไรโดยใช้ nix หรือบางอย่างเพื่อเพิ่มwebpack-dev-serverเข้าไป
/nix/storeเป็นแบบอ่านอย่างเดียว คุณต้องโคลน repo คอมไพล์และใช้-I nixpkgs=/path/to/repoสำหรับnix-*คำสั่ง