blob: 6a9db94e119c569cda233c9411ca386917a917db [file] [log] [blame]
Skyler Grey252927a2022-10-18 22:18:15 +01001{ pkgs, ... }: {
Skyler Grey7418e822022-09-01 23:57:06 +01002 # Basic shell scripting utilities, they don't deserve their own file but I use
3 # them
Skyler Grey341ba3c2022-10-31 00:09:34 +00004 config = {
5 environment.systemPackages = with pkgs; [
6 jq
7 bc
8 (sd.overrideAttrs (oldAttrs: {
9 postInstall = ''
10 mv $out/bin/sd $out/bin/s
11 '';
12 }))
13 lnav
14 dogdns
15 iproute2
Skyler Grey341ba3c2022-10-31 00:09:34 +000016 fd
17 procs
18 grex
Skyler Greycb2e9482022-10-31 00:15:16 +000019 btop
20 rustscan
Skyler Grey5385f042022-10-31 00:24:37 +000021 gping
Skyler Grey341ba3c2022-10-31 00:09:34 +000022 ];
Skyler Grey341ba3c2022-10-31 00:09:34 +000023 };
Skyler Grey59e2ebe2022-09-04 19:14:20 +010024
25 home = {
26 programs = {
27 exa.enable = true;
28 bat.enable = true;
29 zsh.initExtra = ''
Skyler Grey1010db92022-09-05 03:21:48 +010030 function ls {
31 if [ -t 1 ] ; then
32 ${pkgs.exa}/bin/exa --icons -lghF --git --group-directories-first --color always "$@" | less --quit-if-one-screen
33 else
34 ${pkgs.coreutils}/bin/ls "$@"
35 fi
36 }
37 unalias ls
Skyler Grey59e2ebe2022-09-04 19:14:20 +010038 '';
39 };
40 home.shellAliases = {
41 cat = "${pkgs.bat}/bin/bat --wrap never --pager \"less -+S\"";
Skyler Grey341ba3c2022-10-31 00:09:34 +000042 dig = "${pkgs.dogdns}/bin/dog";
43 ip = "${pkgs.iproute2}/bin/ip -c --brief";
44 ipo = "${pkgs.iproute2}/bin/ip";
Skyler Grey341ba3c2022-10-31 00:09:34 +000045 ps = "${pkgs.procs}/bin/procs";
Skyler Greycb2e9482022-10-31 00:15:16 +000046 htop = "${pkgs.btop}/bin/btop";
Skyler Greyc07d8e72022-10-31 00:33:48 +000047 ping = "${pkgs.gping}/bin/gping";
48 pingo = "${pkgs.inetutils}/bin/ping";
Skyler Grey59e2ebe2022-09-04 19:14:20 +010049 };
50 };
Skyler Grey7418e822022-09-01 23:57:06 +010051}