dotfiles/nix/darwin/darwin-configuration.nix

116 lines
2.7 KiB
Nix

{ config, pkgs, inputs, ... }:
{
nix = {
package = pkgs.nix;
useSandbox = true;
extraOptions = ''
experimental-features = nix-command flakes
'';
};
imports = [
./program-neovim.nix
];
# I'm not a zealot about this one.
nixpkgs.config.allowUnfree = true;
nixpkgs.overlays = [
(self: super: {
neovim = super.neovim.override {
viAlias = true;
vimAlias = true;
};
})
inputs.rust-overlay
];
environment.variables = {
EDITOR="nvim";
PAGER="less -R";
};
programs = with pkgs; {
neovim.enable = true;
neovim.configure = {
customRC = (builtins.readFile ../../.vimrc);
packages.myVimPackage = with pkgs.vimPlugins; {
start = [
coc-nvim
nerdtree
vim-nix
coc-rust-analyzer
coc-diagnostic
coc-markdownlint
coc-tslint
coc-explorer
coc-git
coc-vimlsp
coc-python
coc-clangd
coc-go
coc-html
coc-css
coc-yaml
coc-json
vim-toml
hoon-vim
];
};
};
zsh.enable = true; # default shell on catalina
};
# List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget
environment.systemPackages =
with pkgs; [
nodejs
tmux
gnumake
# TODO find a version of the julia package that will install
# on darwin and add it as an overlay
python
emacs
git
mercurial
bash
curl
wget
jq
spacebar
coreutils
watch
iterm2
go
htop
colima
lima
rlwrap
docker-client
google-cloud-sdk
inputs.sile
inputs.runwhen
inputs.durnitisp
# TODO add sonic-pi here if it supports the arch
];
# Use a custom configuration.nix location.
# $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
# environment.darwinConfig = "$HOME/.config/nixpkgs/darwin/configuration.nix";
# Auto upgrade nix package and the daemon service.
services.nix-daemon.enable = true;
#services.spacebar.enable = true;
#services.spacebar.package = "${pkgs.spacebar}";
# Create /etc/bashrc that loads the nix-darwin environment.
# programs.bash.enable = true; # default shell on catalina
# programs.fish.enable = true;
# Used for backwards compatibility, please read the changelog before changing.
# $ darwin-rebuild changelog
system.stateVersion = 4;
}