Port fish config
This commit is contained in:
parent
276c08529a
commit
c005b5b65c
|
@ -43,8 +43,10 @@
|
||||||
# Packages used on all systems
|
# Packages used on all systems
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
comma
|
comma
|
||||||
|
dogdns
|
||||||
git
|
git
|
||||||
killall
|
killall
|
||||||
|
mtr
|
||||||
openssl
|
openssl
|
||||||
rsync
|
rsync
|
||||||
sqlite-interactive
|
sqlite-interactive
|
||||||
|
|
|
@ -82,11 +82,6 @@
|
||||||
|
|
||||||
fish = {
|
fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
interactiveShellInit = builtins.readFile (pkgs.fetchurl {
|
|
||||||
url =
|
|
||||||
"https://git.lain.faith/sorceress/dotfiles/raw/commit/80be649e9663e3db67041192c714329e20b10cc9/.config/fish/config.fish";
|
|
||||||
sha256 = "sha256-ZZCTXnRZfotksiJj7iVJnLz+XnWHTlIsZzv3gbbZoRQ=";
|
|
||||||
});
|
|
||||||
plugins = [
|
plugins = [
|
||||||
{
|
{
|
||||||
name = "fzf";
|
name = "fzf";
|
||||||
|
@ -107,6 +102,70 @@
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
functions = {
|
||||||
|
expand-dot-to-parent-directory-path = ''
|
||||||
|
# expand ... to ../.. etc
|
||||||
|
# https://github.com/fish-shell/fish-shell/issues/1891#issuecomment-451961517
|
||||||
|
|
||||||
|
# Get commandline up to cursor
|
||||||
|
set -l cmd (commandline --cut-at-cursor)
|
||||||
|
|
||||||
|
# Match last line
|
||||||
|
switch $cmd[-1]
|
||||||
|
case '*..'
|
||||||
|
commandline --insert '/.'
|
||||||
|
case '*'
|
||||||
|
commandline --insert '.'
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
impostor = ''
|
||||||
|
echo $argv[1] | string sub -s 13 | fold -w1 | shuf | tr -d '\n' | sed 's/^/cccccbeujtje/'
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
shellInit = ''
|
||||||
|
set -Ux AWT_TOOLKIT MToolkit
|
||||||
|
set -Ux JDK_JAVA_OPTIONS "-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel -Dswing.crossplatformlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel -Djdk.gtk.version=3 -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true"
|
||||||
|
|
||||||
|
# Zoxide
|
||||||
|
set -Ux _ZO_FZF_OPTS "--no-sort --height=30% --exit-0 --select-1 --bind=ctrl-z:ignore"
|
||||||
|
|
||||||
|
# Fix locale errors in Nix
|
||||||
|
set -Ux LOCALE_ARCHIVE /usr/lib/locale/locale-archive
|
||||||
|
|
||||||
|
# PATH
|
||||||
|
set -gx fish_user_paths $fish_user_paths \
|
||||||
|
/home/agatha/.local/bin \
|
||||||
|
/home/agatha/.cargo/bin \
|
||||||
|
/home/agatha/.cabal/bin
|
||||||
|
|
||||||
|
if type -q ruby
|
||||||
|
fish_add_path -a (ruby -e 'print Gem.user_dir')/bin
|
||||||
|
end
|
||||||
|
|
||||||
|
# Aliases
|
||||||
|
alias cat bat
|
||||||
|
alias ip 'ip -color=always'
|
||||||
|
alias youtube-dl-audio 'yt-dlp --ignore-errors --output "%(title)s.%(ext)s" --extract-audio --audio-format best'
|
||||||
|
|
||||||
|
bind . 'expand-dot-to-parent-directory-path'
|
||||||
|
|
||||||
|
if test -d ~/.gnupg
|
||||||
|
set -e SSH_AGENT_PID
|
||||||
|
set -x SSH_AUTH_SOCK (gpgconf --list-dirs agent-ssh-socket)
|
||||||
|
# so gpg-agent knows in what tty to prompt for key passwords
|
||||||
|
set -x GPG_TTY (tty)
|
||||||
|
gpg-connect-agent updatestartuptty /bye > /dev/null
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
interactiveShellInit = ''
|
||||||
|
if type -q exa
|
||||||
|
alias ls 'exa -lFhT --group-directories-first --level 1'
|
||||||
|
end
|
||||||
|
|
||||||
|
if type -q zoxide
|
||||||
|
zoxide init --cmd v fish | source
|
||||||
|
end
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
command-not-found.enable = false;
|
command-not-found.enable = false;
|
||||||
|
|
Loading…
Reference in New Issue