WIP: Switch to NixOS #5
1 changed files with 69 additions and 22 deletions
|
@ -1,6 +1,64 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
home = {
|
||||||
|
username = "functionalhacker";
|
||||||
|
homeDirectory = "/home/functionalhacker";
|
||||||
|
stateVersion = "24.05";
|
||||||
|
|
||||||
|
packages = with pkgs; [
|
||||||
|
bat
|
||||||
|
cargo
|
||||||
|
fd
|
||||||
|
gcc
|
||||||
|
neovide
|
||||||
|
nerdfonts
|
||||||
|
nodejs
|
||||||
|
pass
|
||||||
|
ripgrep
|
||||||
|
tree-sitter
|
||||||
|
yarn
|
||||||
|
];
|
||||||
|
|
||||||
|
sessionVariables = {
|
||||||
|
|
||||||
|
# key timeout
|
||||||
|
KEYTIMEOUT = 1;
|
||||||
|
|
||||||
|
# prompt customization
|
||||||
|
PURE_PROMPT_SYMBOL = "λ";
|
||||||
|
PURE_PROMPT_VICMD_SYMBOL = "y";
|
||||||
|
|
||||||
|
# history settings
|
||||||
|
HISTFILE = "~/.zsh_history";
|
||||||
|
HISTSIZE = 10000;
|
||||||
|
SAVEHIST = 10000;
|
||||||
|
|
||||||
|
# fzf settings
|
||||||
|
FD_COMMAND = "fd -HLt";
|
||||||
|
FZF_DEFAULT_COMMAND = "fd -HLt f";
|
||||||
|
FZF_ALT_C_COMMAND = "fd -HLt d";
|
||||||
|
FZF_ALT_C_OPTS = "--preview 'eza -l {}'";
|
||||||
|
FZF_DEFAULT_OPTS = "-m --ansi --bind ctrl-a:toggle-all,ctrl-d:deselect-all,ctrl-t:toggle-all";
|
||||||
|
FZF_COMPLETION_TRIGGER = "**";
|
||||||
|
FZF_CTRL_T_COMMAND = "fd -HLt f --strip-cwd-prefix";
|
||||||
|
FZF_CTRL_T_OPTS = "--preview 'bat --color=always --style=numbers --line-range=:500 {}'";
|
||||||
|
|
||||||
|
# nvim ftw!
|
||||||
|
PAGER = "nvim -R +\"lua require 'pager'\"";
|
||||||
|
GIT_PAGER = "nvim -c 'set ft=git' -R +\"lua require 'pager'\"";
|
||||||
|
MANPAGER = "nvim +\"lua require 'pager'\" +Man!";
|
||||||
|
SYSTEMD_PAGER = "less";
|
||||||
|
|
||||||
|
MARKON_NIXOS = "cool";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Just symlink neovim configuration for now.
|
||||||
|
# Declarative configuration coming soon™
|
||||||
|
file.".config/nvim".source =
|
||||||
|
config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/git/dotfiles/home/.config/nvim";
|
||||||
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -9,6 +67,8 @@
|
||||||
|
|
||||||
zsh = {
|
zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
enableCompletion = false;
|
||||||
zplug = {
|
zplug = {
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins = [
|
plugins = [
|
||||||
|
@ -21,33 +81,20 @@
|
||||||
{ name = "zsh-users/zsh-history-substring-search"; }
|
{ name = "zsh-users/zsh-history-substring-search"; }
|
||||||
{ name = "wfxr/forgit"; }
|
{ name = "wfxr/forgit"; }
|
||||||
{ name = "zsh-users/zsh-completions"; }
|
{ name = "zsh-users/zsh-completions"; }
|
||||||
{ name = "zdharma-continuum/fast-syntax-highlighting"; }
|
|
||||||
{ name = "RobSis/zsh-completion-generator"; }
|
{ name = "RobSis/zsh-completion-generator"; }
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
fzf = {
|
||||||
|
enable = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home = {
|
git = {
|
||||||
username = "functionalhacker";
|
enable = true;
|
||||||
homeDirectory = "/home/functionalhacker";
|
userName = "Marko Korhonen";
|
||||||
stateVersion = "24.05";
|
userEmail = "marko@korhonen.cc";
|
||||||
|
};
|
||||||
file.".config/nvim".source =
|
|
||||||
config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/git/dotfiles/home/.config/nvim";
|
|
||||||
|
|
||||||
packages = with pkgs; [
|
|
||||||
cargo
|
|
||||||
fd
|
|
||||||
fzf
|
|
||||||
gcc
|
|
||||||
neovide
|
|
||||||
nerdfonts
|
|
||||||
nodejs
|
|
||||||
pass
|
|
||||||
ripgrep
|
|
||||||
tree-sitter
|
|
||||||
yarn
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue