129 lines
3.3 KiB
Nix
129 lines
3.3 KiB
Nix
|
{
|
||
|
inputs = {
|
||
|
nixpkgs.url = "github:nixos/nixpkgs/release-23.05";
|
||
|
sile-flake.url = "github:sile-typesetter/sile";
|
||
|
durnitisp-flake.url = "github:zaphar/durnitisp";
|
||
|
runwhen-flake.url = "github:zaphar/runwhen";
|
||
|
agenix-flake.url = "github:ryantm/agenix";
|
||
|
rust-overlay-flake = {
|
||
|
url = "github:oxalica/rust-overlay";
|
||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||
|
};
|
||
|
jj-flake.url = "github:martinvonz/jj";
|
||
|
};
|
||
|
outputs = {
|
||
|
self,
|
||
|
nixpkgs,
|
||
|
sile-flake,
|
||
|
runwhen-flake,
|
||
|
durnitisp-flake,
|
||
|
rust-overlay-flake,
|
||
|
jj-flake,
|
||
|
agenix-flake,
|
||
|
}: {
|
||
|
systemModule = system: let
|
||
|
runwhen = runwhen-flake.defaultPackage."${system}";
|
||
|
durnitisp = durnitisp-flake.defaultPackage."${system}";
|
||
|
rust-overlay = rust-overlay-flake.overlay;
|
||
|
sile = sile-flake.defaultPackage.${system};
|
||
|
jj = jj-flake.packages."${system}".jujutsu;
|
||
|
age = agenix-flake.packages."${system}".default;
|
||
|
in { config, pkgs, ... }: {
|
||
|
|
||
|
imports = [
|
||
|
agenix-flake.nixosModules.default
|
||
|
];
|
||
|
|
||
|
config = {
|
||
|
|
||
|
nixpkgs.overlays = [
|
||
|
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
|
||
|
#zsh.interactiveShellInit = (builtins.readFile ../.zshrc);
|
||
|
};
|
||
|
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
|
||
|
python3
|
||
|
emacs
|
||
|
git
|
||
|
mercurial
|
||
|
bash
|
||
|
curl
|
||
|
wget
|
||
|
jq
|
||
|
spacebar
|
||
|
coreutils
|
||
|
watch
|
||
|
iterm2
|
||
|
go
|
||
|
htop
|
||
|
colima
|
||
|
qemu
|
||
|
podman
|
||
|
lima
|
||
|
rlwrap
|
||
|
docker-client
|
||
|
google-cloud-sdk
|
||
|
rnix-lsp
|
||
|
nil
|
||
|
alloy6
|
||
|
jdk
|
||
|
plantuml-c4
|
||
|
texlive.combined.scheme-basic
|
||
|
nssTools
|
||
|
mkcert
|
||
|
octave
|
||
|
kubo
|
||
|
dotnet-sdk_7
|
||
|
# TODO add sonic-pi here if it supports the arch
|
||
|
]) ++ [
|
||
|
sile
|
||
|
runwhen
|
||
|
durnitisp
|
||
|
jj
|
||
|
age
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|