about summary refs log tree commit diff
path: root/profile/.profile.d/ls.sh
blob: 385caf8e2b15a7a05abd505759bc608ab17b5eae (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/sh
# shellcheck disable=SC2139

_gnu_ls="--color=always --human-readable --group-directories-first --indicator-style=classify --author"
_bsd_ls="-G -p"

if ls --color "${HOME}" >/dev/null 2>&1; then
	alias ls="ls ${_gnu_ls} -C"
	alias la="ls ${_gnu_ls} -C -A"
	alias ll="ls ${_gnu_ls} -l -A"
else
	if command -v gls >/dev/null 2>&1; then
		alias ls="gls ${_gnu_ls} -C"
		alias la="gls ${_gnu_ls} -C -A"
		alias ll="gls ${_gnu_ls} -l -A"
	else
		alias ls="ls ${_bsd_ls}"
		alias la="ls ${_bsd_ls} -A"
		alias ll="ls ${_bsd_ls} -A -l"
	fi
fi

alias l="ll"

unset _bsd_ls _gnu_ls

Consider giving Nix/NixOS a try! <3