2015-10-09 21 views
5

Ben NixOS 15 ve nix-shell v1.10'tayım. Zsh'u şu an ana kabuğum olarak kullanıyorum ve bir Nix ifadesi ile oluşturulmuş geliştirme ortamlarında çalışırken, Nix-shell içinde Oh-My-Zsh ile birlikte kullanmak istiyorum.Bash dışında bir kabuk kullanmak için nix-shell yapılandırın?

o burada yardımcı bir Raylar proje için kurdunuz Nix ortamlarından biri ise:

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 
    ]; 
    }; 
} 

** Düzenleme **

bu şekilde göstermez komutu Koşu CLI isteminde ben nix-shell içinde olduğumu. Bunu tespit etmenin kolay bir yolu var, böylece zshrc'umda hızlıca komut dosyası oluşturabilir miyim?

cevap

4

PR #545 birisi daha iyi bir cevabı vardır durumunda bu kabul edilmeyen gidiyorum bu

3

Hızlı yanıt almak için #nixos IRC kanalındaki adamlara teşekkürler. Bunu yapmak için

komut şöyledir:

nix-shell . --command "zsh"

+0

hitap edecek olan son zamanlarda orada açılır. Belki de gerçek baz kabuk nix-shell çalışmasının yerini alması için daha fazlasını yapmanın bir yolu var mı? '--command' kullanmanın sadece kabuk oluşturmadaki orijinal Bash kabuğundan Zsh'yi çalıştırdığını düşünüyorum. – josiah

+0

Birkaç gün olduğu için, bu noktada daha iyi bir cevap alamayacağımı varsayıyorum. – josiah

+1

Bu, kabuk işlevlerini nix-shell generate ('configurePhase' vb.) Olarak çağırmanız gerekmediği sürece iyi çalışır. – olejorgenb