nix/home/default.nix

218 lines
3.7 KiB
Nix
Raw Normal View History

2022-07-05 22:36:51 +02:00
{pkgs, lib, ...}:
2021-10-09 01:46:55 +02:00
{
2022-07-05 22:36:51 +02:00
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
"ookla-speedtest"
];
2021-10-09 01:46:55 +02:00
home.packages = with pkgs; [
2021-10-23 17:50:36 +02:00
(python3.withPackages(ps: with ps; [
2022-06-06 23:10:57 +02:00
# ansible
2021-10-23 17:50:36 +02:00
dnspython
2021-10-28 21:05:21 +02:00
youtube-dl
2021-11-13 22:06:43 +01:00
boto3 # aws-s3 support for ansible
2022-04-08 20:01:06 +02:00
kubernetes # is in ansible kubernetes.core module
2021-11-19 20:41:07 +01:00
# dict_utils for an ansible filter_plugin
setuptools
deepmerge
pip
passlib # bcrypt
pyyaml
2021-10-23 17:50:36 +02:00
]))
2022-06-06 23:10:57 +02:00
ansible
2021-10-09 01:46:55 +02:00
killall
2023-03-20 22:59:54 +01:00
exa
# tree # use exa
2021-10-09 01:46:55 +02:00
htop
mosh
dasel
2021-11-13 22:06:43 +01:00
pre-commit
2021-10-09 01:46:55 +02:00
git-lfs
2022-04-08 20:01:35 +02:00
git-crypt
git-annex
2022-02-23 22:22:10 +01:00
ghorg
2021-10-09 01:46:55 +02:00
tig
cocogitto
2021-10-09 01:46:55 +02:00
tea
glab
figlet
tmux
2021-10-11 11:37:10 +02:00
w3m
2022-04-08 20:11:10 +02:00
wget
2021-10-09 01:46:55 +02:00
xh
minio-client
2021-10-09 01:46:55 +02:00
liboping # fix it
mtr
2022-07-05 22:36:51 +02:00
ookla-speedtest
hey
2021-10-09 01:46:55 +02:00
colordiff
direnv
## nice prompt together with grml
# pure-prompt
# vimPlugins.nvim-lspconfig
# vimPlugins.nerdtree
go_1_18 gcc libcap
2022-07-05 22:37:17 +02:00
gopls
# cargo
rustup
2021-10-15 01:44:37 +02:00
yarn
2022-07-23 15:00:17 +02:00
cmake
2021-10-14 16:30:31 +02:00
pwgen
hugo
asciidoctor-with-extensions
# gotify-cli # use ntfy.sh
2021-10-09 01:46:55 +02:00
glow
2021-11-13 22:06:43 +01:00
imagemagick
2021-10-23 17:50:04 +02:00
ffmpeg
# devOps
terraform
tflint
2022-04-08 20:11:24 +02:00
kubectl
kustomize
2023-07-18 20:10:07 +02:00
(wrapHelm kubernetes-helm {
plugins = with kubernetes-helmPlugins; [
helm-diff
helm-secrets
];
})
2022-06-06 23:10:57 +02:00
helmfile
stern
kubeswitch
kubespy
fluxcd
kubeseal
2022-07-05 22:37:17 +02:00
# nixopsUnstable
2021-10-09 01:46:55 +02:00
];
home.shellAliases = {
k9sctx = "k9s --kubeconfig=$(switch)";
k9s = "k9s --headless";
kubectx = "export KUBECONFIG=$(switch)";
2023-03-20 22:59:54 +01:00
ls = "exa";
};
2023-03-20 22:59:54 +01:00
programs.home-manager.enable = false; # use OS
2022-07-23 08:50:22 +02:00
programs.password-store = {
enable = true;
package = pkgs.pass-wayland.withExtensions (exts: [
exts.pass-otp
]);
settings = {
PASSWORD_STORE_DIR = "$HOME/.password-store";
};
};
programs.nushell = {
enable = true;
# envFile.text = ''
# let-env config = {
# hooks: {
# pre_prompt: [{
# code: "
# let direnv = (direnv export json | from json)
# let direnv = if ($direnv | length) == 1 { $direnv } else { {} }
# $direnv | load-env
# "
# }]
# }
# }
# '';
};
2021-10-09 01:46:55 +02:00
programs.zsh = {
enable = true;
enableAutosuggestions = true;
2023-07-07 23:22:02 +02:00
syntaxHighlighting.enable = true;
# initExtra = ''
# source ${pkgs.grml-zsh-config}/etc/zsh/zshrc
# prompt pure
# '';
};
programs.starship = {
enable = true;
settings = {
directory ={
truncation_length = 0;
};
helm = {
disabled = true;
};
kubernetes = {
disabled = false;
format = "[$symbol$cluster( \($namespace\))]($style) in ";
detect_extensions = [
"package" # helm
];
};
};
2022-07-05 22:36:31 +02:00
};
2023-03-20 22:59:54 +01:00
programs.atuin = {
enable = false;
settings = {
auto_sync = false;
style = "compact";
search_mode = "fulltext";
filter_mode_shell_up_key_binding = "directory";
exit_mode = "return-query";
};
};
2021-11-13 22:06:43 +01:00
programs.direnv.enable = true;
programs.btop.enable = true;
programs.tealdeer.enable = true; # man / tldr ...
2022-06-06 23:10:57 +02:00
programs.gitui.enable = true;
2021-10-09 01:46:55 +02:00
2023-03-20 22:59:54 +01:00
programs.git = {
enable = true;
2023-06-14 18:41:21 +02:00
extraConfig = {
init.defaultBranch = "main";
filter.lfs = {
required = "true";
clean = "git-lfs clean -- %f";
smudge = "git-lfs smudge -- %f";
process = "git-lfs filter-process";
};
};
2023-03-20 22:59:54 +01:00
};
2021-10-09 01:46:55 +02:00
programs.neovim = {
2023-01-13 22:05:55 +01:00
enable = false;
2021-10-09 01:46:55 +02:00
extraConfig = ''
syntax on
set number relativenumber
'';
plugins = with pkgs.vimPlugins; [
nvim-lspconfig
airline
Syntastic
{
plugin = nerdtree;
config = "map <C-n> :NERDTreeToggle<CR>";
}
];
};
2023-01-13 22:05:55 +01:00
programs.helix = {
enable = true;
2023-06-14 18:41:21 +02:00
languages.language = [];
2023-01-13 22:05:55 +01:00
settings = {
theme = "base16_default";
editor = {
lsp.display-messages = true;
};
};
};
2023-03-20 22:59:54 +01:00
services.syncthing = {
enable = true;
tray.enable = true;
};
programs.k9s = {
enable = true;
# does not open ERROR with clusters settings
#settings.k9s = {
# headless = true;
# logger.fullScreenLogs = true;
#};
};
2021-10-09 01:46:55 +02:00
}