2015-10-09 14 views
5

Tôi đang sử dụng NixOS 15 và nix-shell v1.10. Tôi sử dụng Zsh như vỏ chính của tôi bây giờ, và muốn sử dụng nó trong conjuction với Oh-My-Zsh trong nix-shell cũng như khi tôi đang làm việc trong môi trường phát triển được xây dựng bởi một biểu thức Nix.Cấu hình nix-shell để sử dụng một trình bao ngoài Bash?

Nếu nó giúp, đây là một trong những môi trường Nix Tôi đã thiết lập cho một dự án Rails:

with import <nixpkgs> {}; { 
    cannyFreeRadicalEnv = stdenv.mkDerivation rec { 
    name = "canny-free-radical-env"; 
    version = "0.1"; 
    src = ./.; 
    buildInputs = [ 
     stdenv 
     ruby_2_2_2 
     bundler_HEAD 
     zlib 
     postgresql94 
     sqlite 
    ]; 
    }; 
} 

** Sửa **

Chạy lệnh theo cách này không chỉ ra trong lời nhắc CLI rằng tôi đang ở trong nix-shell. Có cách nào dễ dàng để phát hiện điều này để tôi có thể viết kịch bản nhanh chóng trong số zshrc của tôi không?

Trả lời

4

có được PR #545 mở gần đây trong đó sẽ giải quyết này

3

Cảm ơn các bạn trên kênh IRN #nixos để nhận được câu trả lời nhanh.

Các lệnh để làm như vậy là:

nix-shell . --command "zsh"

+0

Tôi đi này không được chấp nhận trong trường hợp ai đó có một câu trả lời tốt hơn. Có lẽ có một cách để làm điều này mà được nhiều hơn để thay thế vỏ cơ sở thực tế nix-shell chạy trên? Tôi nghĩ rằng bằng cách sử dụng '--command' chỉ thực hiện Zsh từ vỏ Bash gốc trên tạo shell. – josiah

+0

Vì đã vài ngày rồi, tôi cho rằng tôi sẽ không nhận được câu trả lời hay hơn vào thời điểm này. – josiah

+1

Điều này hoạt động tốt miễn là bạn không cần phải gọi các hàm hệ vỏ tạo ra nix-shell ('configurePhase' vv) – olejorgenb

Các vấn đề liên quan