blob: 8efa4cf411f4ca1c9248f12d53178d35cc6a3c72 (
plain)
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
26
27
28
29
30
31
32
33
34
35
36
37
|
(define-module (shell)
#:use-module (gnu home services)
#:use-module (gnu services)
#:use-module (guix gexp)
#:use-module (shell)
#:use-module (gnu home services shells))
(define-public shell-service
(list
(service home-bash-service-type
(home-bash-configuration
(aliases '(("cp" . "cp -i")
("grep" . "grep --color=auto")
("guix-home" . "RUNNING_GUIX_HOME=1 guix home -L ${HOME}/.config/guix/modules/ reconfigure ${HOME}/.config/guix/${HOSTNAME}.scm")
("guix-system" . "RUNNING_GUIX_HOME=0 sudo guix system -L ${HOME}/.config/guix/modules/ reconfigure ${HOME}/.config/guix/${HOSTNAME}.scm")
("ll" . "ls -l")
("ls" . "ls -p --color=auto")
("mkd" . "mkdir -pv")
("mv" . "mv -i")
("rm" . "rm -i")
("suspend" . "sudo bash -c 'echo mem > /sys/power/state'")
("vi" . "vim")
("xeb" . "emacsclient -nce '(switch-to-buffer nil)'")
("xet" . "emacsclient -nce '(shell)'")
("ytta" . "yt-dlp --extract-audio --format bestaudio/best")
("yttv" . "yt-dlp -f b")))
(bashrc (list (plain-file "bashrc" "
# converts above aliases into eshell aliases automatically
alias | sed -E \"s/^alias ([^=]+)='(.*)'$/alias \\1 \\2 \\$*/g; s/'\\\\\\''/'/g;\" >~/.config/emacs/eshell/alias
# add my scripts to path
PATH=${HOME}/Personal/scripts:$PATH")))
(environment-variables
'(("BROWSER" . "icecat")))))))
|