dots-of-war/files/nix-stuff/nixpkgs/modules/base.nix
2020-08-17 00:56:30 +02:00

93 lines
2.2 KiB
Nix

{ config, lib, pkgs, ... }:
let
cfg = config.elkowar.base;
elkowar_local = import ../local/default.nix { };
myConf = import ../myConfig.nix;
sources = import ../nix/sources.nix;
in
{
options.elkowar.base = {
enable = lib.mkEnableOption "Basic profile enabled";
enableFish = lib.mkEnableOption "Fish shell";
enableZsh = lib.mkEnableOption "Zsh shell";
};
imports = [ ./term ./generalConfig.nix ];
config = lib.mkIf cfg.enable {
elkowar.programs.tmux.enable = true;
elkowar.programs.zsh.enable = cfg.enableZsh;
elkowar.programs.fish.enable = cfg.enableFish;
elkowar.generalConfig.shellAbbrs = {
vim = "nvim";
tsh = "trash";
cxmonad = "nvim /home/leon/.xmonad/lib/Config.hs";
cnix = "cd ~/nixpkgs/ && nvim home.nix && cd -";
gaa = "git add --all";
gc = "git commit -m ";
gp = "git push";
gs = "git status";
};
home.packages = with pkgs; [
(pkgs.callPackage ../packages/fet.sh.nix { })
sources.manix
direnv
rnix-lsp
nix-prefetch-git
gtop
bat
websocat
niv
exa
trash-cli
mdcat
github-cli
haskellPackages.nix-tree
ripgrep
fd
jq
];
programs = {
home-manager.enable = true;
htop.enable = true;
fzf = {
enable = true;
enableFishIntegration = cfg.enableFish;
enableZshIntegration = cfg.enableZsh;
defaultCommand = "rg --files";
fileWidgetCommand = "fd --type f";
changeDirWidgetCommand = "rg --files --null | xargs -0 dirname | sort -u";
};
direnv = {
enable = true;
enableFishIntegration = cfg.enableFish;
enableZshIntegration = cfg.enableZsh;
enableNixDirenvIntegration = true;
};
};
home = {
sessionVariables = rec {
LOCALE_ARCHIVE_2_11 = "${pkgs.glibcLocales}/lib/locale/locale-archive";
LOCALE_ARCHIVE_2_27 = "${pkgs.glibcLocales}/lib/locale/locale-archive";
LOCALE_ARCHIVE = "/usr/bin/locale";
EDITOR = "nvim";
VISUAL = "nvim";
GIT_EDITOR = EDITOR;
};
username = "leon";
homeDirectory = "/home/leon";
stateVersion = "20.09";
};
};
}