Things
- `wireguard` for `hs` - gnome keyring for VSCode to make Copilot work - uninstalled local `Hydra` on `pc` - VSCode -> VSCodeFHS - Emacs - typescript - solidity - envrc mode
This commit is contained in:
parent
3668e2d3d0
commit
816bd8fe6f
132 changed files with 1410 additions and 3682 deletions
92
hmModules/shell/default.nix
Normal file
92
hmModules/shell/default.nix
Normal file
|
@ -0,0 +1,92 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.bat.enable = true;
|
||||
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
config = {
|
||||
warn_timeout = "60s"; # default was 5s
|
||||
};
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
|
||||
programs.exa = {
|
||||
enable = true;
|
||||
enableAliases = true;
|
||||
};
|
||||
|
||||
programs.fzf.enable = true;
|
||||
|
||||
programs.vim.enable = true;
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableAutosuggestions = true;
|
||||
enableCompletion = true;
|
||||
autocd = true;
|
||||
plugins = [
|
||||
{
|
||||
name = "nix-zsh-completions";
|
||||
src = pkgs.nix-zsh-completions;
|
||||
file = "share/zsh/plugins/nix/nix-zsh-completions.plugin.zsh";
|
||||
}
|
||||
{
|
||||
name = "spaceship";
|
||||
file = "share/zsh/themes/spaceship.zsh-theme";
|
||||
src = pkgs.spaceship-prompt;
|
||||
}
|
||||
{
|
||||
name = "zsh-fzf-tab";
|
||||
file = "share/fzf-tab/fzf-tab.plugin.zsh";
|
||||
src = pkgs.zsh-fzf-tab;
|
||||
}
|
||||
{
|
||||
name = "fast-zsh-syntax-highlighting";
|
||||
file = "share/zsh/site-functions/fast-syntax-highlighting.plugin.zsh";
|
||||
src = pkgs.zsh-fast-syntax-highlighting;
|
||||
}
|
||||
];
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"git"
|
||||
"sudo"
|
||||
"command-not-found"
|
||||
"colored-man-pages"
|
||||
"colorize"
|
||||
];
|
||||
};
|
||||
shellAliases = {
|
||||
"pass-clone" = "[ -d .password-store ] && echo 'Password store archive already exists' || git clone git@git.sr.ht:~zrsk/pass ~/.password-store";
|
||||
"getpass" = "pass show $(find .password-store/ -name \"*.gpg\" | sed \"s/\\.password-store\\/\\(.*\\)\\.gpg$/\\1/g\" | fzf) | wl-copy; ((sleep 60 && wl-copy --clear) &)";
|
||||
"cat" = "bat";
|
||||
"man" = "batman";
|
||||
"em" = "[[ -z \$XDG_CURRENT_DESKTOP ]] && emacsclient -c -nw || emacsclient -c";
|
||||
"emw" = "emacsclient -c";
|
||||
"emnw" = "emacsclient -c -nw";
|
||||
};
|
||||
localVariables = {
|
||||
PASSWORD_STORE_DIR = "/home/ccr/.password-store";
|
||||
SPACESHIP_TIME_SHOW = "true";
|
||||
SPACESHIP_USER_SHOW = "always";
|
||||
SPACESHIP_HOST_SHOW = "always";
|
||||
EDITOR = "em";
|
||||
NIX_BUILD_SHELL = "${pkgs.zsh-nix-shell}/scripts/buildShellShim.zsh";
|
||||
PROMPT = "\\\${IN_NIX_SHELL:+[nix-shell] }$PROMPT";
|
||||
};
|
||||
loginExtra = "[[ -z $DISPLAY && $TTY = /dev/tty1 ]] && exec startx";
|
||||
initExtra =
|
||||
if pkgs.stdenv.hostPlatform.isDarwin
|
||||
then "if test -e /etc/static/bashrc; then source /etc/static/bashrc > /dev/null 2>&1; fi"
|
||||
else "";
|
||||
envExtra = ''
|
||||
[ $TERM = "dumb" ] && unsetopt zle && PS1='$ ' # for Emacs TRAMP mode
|
||||
'';
|
||||
};
|
||||
|
||||
programs.command-not-found.enable = true;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue