109 lines
2.3 KiB
Fish
109 lines
2.3 KiB
Fish
|
if status is-interactive
|
||
|
# Commands to run in interactive sessions can go here
|
||
|
end
|
||
|
|
||
|
function sudo
|
||
|
if count $argv >/dev/null
|
||
|
command sudo $argv
|
||
|
else
|
||
|
command sudo (history | read -l)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
set -x GPG_TTY (tty)
|
||
|
|
||
|
set -Ua fish_user_paths /home/sudoer777/.config/guix/current/bin/
|
||
|
|
||
|
set -x GUIX_HOME /home/sudoer777/.guix-home/profile
|
||
|
|
||
|
set -x GUILE_LOAD_PATH $GUIX_HOME/share/guile/site/3.0
|
||
|
|
||
|
set -x GUILE_LOAD_COMPILED_PATH $GUIX_HOME/share/guile/3.0/site-ccache $GUILE_LOAD_PATH
|
||
|
|
||
|
set -x ZATHURA_PLUGINS_PATH $GUIX_HOME/lib/zathura
|
||
|
|
||
|
set -x SSL_CERT_DIR $GUIX_HOME/etc/ssl/certs
|
||
|
|
||
|
set -x SSL_CERT_FILE $GUIX_HOME/etc/ssl/certs/ca-certificates.crt
|
||
|
|
||
|
set -x GIT_SSL_CAINFO $SSL_CERT_FILE
|
||
|
|
||
|
set -x EDITOR $GUIX_HOME/bin/hx
|
||
|
|
||
|
set -x VISUAL $GUIX_HOME/bin/hx
|
||
|
|
||
|
|
||
|
alias ls='exa'
|
||
|
|
||
|
function o
|
||
|
xdg-open $argv & disown
|
||
|
end
|
||
|
|
||
|
function home-reconfig
|
||
|
cd ~/src/guix-config
|
||
|
just
|
||
|
end
|
||
|
|
||
|
function home-edit
|
||
|
emacs ~/src/guix-config/home-configuration.scm
|
||
|
end
|
||
|
|
||
|
function home-update
|
||
|
cd ~/src/guix-config
|
||
|
just update
|
||
|
end
|
||
|
|
||
|
function hotspot
|
||
|
sudo sysctl net.ipv4.ip_default_ttl=65
|
||
|
end
|
||
|
|
||
|
function send-email
|
||
|
set -l from "guix-home@ethanreece.com"
|
||
|
set -l to ""
|
||
|
set -l subject ""
|
||
|
|
||
|
# Parse the arguments
|
||
|
for arg in $argv
|
||
|
switch $arg
|
||
|
case '--from=*'
|
||
|
set from (string split '=' -- $arg)[2]
|
||
|
case '--to=*'
|
||
|
set to (string split '=' -- $arg)[2]
|
||
|
case '--subject=*'
|
||
|
set subject (string split '=' -- $arg)[2]
|
||
|
end
|
||
|
end
|
||
|
|
||
|
set temp_file (mktemp)
|
||
|
|
||
|
# Add required headers to the temporary file
|
||
|
echo "To: $to" >>$temp_file
|
||
|
echo "From: $from" >>$temp_file
|
||
|
echo "Subject: $subject" >>$temp_file
|
||
|
echo "" >>$temp_file # Add a blank line to separate headers from the body
|
||
|
|
||
|
# Open the temporary file with $EDITOR
|
||
|
$EDITOR $temp_file
|
||
|
|
||
|
# Extract the recipient from the file if not provided as an argument
|
||
|
if test -z "$to"
|
||
|
set to (grep -m 1 '^To: ' $temp_file | sed 's/^To: //')
|
||
|
end
|
||
|
|
||
|
echo "Do you want to send the email? (y/n)"
|
||
|
read -l response
|
||
|
|
||
|
if test "$response" = y
|
||
|
# Send the email using msmtp
|
||
|
msmtp $to <$temp_file
|
||
|
echo "Email sent."
|
||
|
else
|
||
|
echo "Email not sent."
|
||
|
end
|
||
|
|
||
|
# Delete the temporary file
|
||
|
rm $temp_file
|
||
|
end
|
||
|
|
||
|
fish_add_path -g
|