My home.nix
has a programs.zsh section that looks like this:
programs.zsh = {
enable = true;
autocd = true;
enableAutosuggestions = true;
enableCompletion = true;
shellAliases = {
ls = "ls -alG";
vim = "nvim";
htop = "btop";
tmux = "zellij";
};
initExtra = ''
PS1='%(?.%F{green}>.%F{red}?%?)%f %B%F{100}%~%f%b %# ';
CLICOLOR=1;
PATH=/Users/mmai/scripts:$PATH;
NIXPKGS_ALLOW_UNFREE=1;
setopt rmstarsilent;
'';
};
This gives me highlighted directory colours when doing “ls”. But when I run the flake below via direnv use flake
the directory highlighting is gone in my console:
{
description = "R development environment";
# Flake inputs
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs"; # also valid: "nixpkgs"
};
# Flake outputs
outputs = { self, nixpkgs }:
let
# Systems supported
allSystems = [
"x86_64-linux" # 64-bit Intel/AMD Linux
"aarch64-linux" # 64-bit ARM Linux
"x86_64-darwin" # 64-bit Intel macOS
"aarch64-darwin" # 64-bit ARM macOS
];
# Helper to provide system-specific attributes
forAllSystems = f: nixpkgs.lib.genAttrs allSystems (system: f {
pkgs = import nixpkgs { inherit system; };
});
in
{
# Development environment output
devShells = forAllSystems ({ pkgs }: {
default = pkgs.mkShell {
# The Nix packages provided in the environment
packages = with pkgs; [
R
rPackages.xts
rPackages.glmnet
rPackages.ggplot2
rPackages.reshape2
rPackages.lattice
rPackages.quantreg
rPackages.gridBase
radianWrapper
rPackages.ggplot2
rPackages.xts
rPackages.ggsci
rPackages.ragg
rPackages.png
rPackages.viridis
rPackages.forcats
rPackages.ggridges
rPackages.scales
rPackages.RColorBrewer
rPackages.cowplot
rPackages.magick
rPackages.RPostgreSQL
rPackages.DBI
rPackages.devtools
rPackages.tidyverse
];
};
});
};
}
Shouldn’t it be inheriting my home.nix environment automatically? Or do I need to add something to this flake?