1
0
mirror of https://github.com/robbyrussell/oh-my-zsh.git synced 2025-12-07 07:50:40 +01:00

fix(systemd): remove sudo from power-related aliases (#9441)

This commit is contained in:
scrouthtv
2021-12-29 10:31:29 +01:00
committed by GitHub
parent cffa9a2fda
commit 5b2f99bcb7
2 changed files with 52 additions and 23 deletions

View File

@@ -1,3 +1,4 @@
# systemctl aliases
user_commands=(
cat
get-default
@@ -14,7 +15,8 @@ user_commands=(
list-units
show
show-environment
status)
status
)
sudo_commands=(
add-requires
@@ -28,8 +30,6 @@ sudo_commands=(
emergency
enable
halt
hibernate
hybrid-sleep
import-environment
isolate
kexec
@@ -38,34 +38,53 @@ sudo_commands=(
list-machines
load
mask
poweroff
preset
preset-all
reboot
reenable
reload
reload-or-restart
reset-failed
rescue
restart
revert
set-default
set-environment
set-property
start
stop
suspend
switch-root
try-reload-or-restart
try-restart
unmask
unset-environment)
unset-environment
)
for c in $user_commands; do; alias sc-$c="systemctl $c"; done
for c in $sudo_commands; do; alias sc-$c="sudo systemctl $c"; done
for c in $user_commands; do; alias scu-$c="systemctl --user $c"; done
for c in $sudo_commands; do; alias scu-$c="systemctl --user $c"; done
power_commands=(
hibernate
hybrid-sleep
poweroff
reboot
restart
suspend
)
for c in $user_commands; do
alias "sc-$c"="systemctl $c"
alias "scu-$c"="systemctl --user $c"
done
for c in $sudo_commands; do
alias "sc-$c"="sudo systemctl $c"
alias "scu-$c"="systemctl --user $c"
done
for c in $power_commands; do
alias "sc-$c"="systemctl $c"
done
unset c user_commands sudo_commands power_commands
# --now commands
alias sc-enable-now="sc-enable --now"
alias sc-disable-now="sc-disable --now"
alias sc-mask-now="sc-mask --now"
@@ -74,17 +93,24 @@ alias scu-enable-now="scu-enable --now"
alias scu-disable-now="scu-disable --now"
alias scu-mask-now="scu-mask --now"
function systemd_prompt_info {
local unit
for unit in $@; do
for unit in "$@"; do
echo -n "$ZSH_THEME_SYSTEMD_PROMPT_PREFIX"
[[ -n "$ZSH_THEME_SYSTEMD_PROMPT_CAPS" ]] && echo -n "${(U)unit}:" || echo -n "$unit:"
if systemctl is-active $unit &>/dev/null; then
echo -n "$ZSH_THEME_SYSTEMD_PROMPT_ACTIVE"
if [[ -n "$ZSH_THEME_SYSTEMD_PROMPT_CAPS" ]]; then
echo -n "${(U)unit:gs/%/%%}:"
else
echo -n "$ZSH_THEME_SYSTEMD_PROMPT_NOTACTIVE"
echo -n "${unit:gs/%/%%}:"
fi
if systemctl is-active "$unit" &>/dev/null; then
echo -n "$ZSH_THEME_SYSTEMD_PROMPT_ACTIVE"
else
echo -n "$ZSH_THEME_SYSTEMD_PROMPT_NOTACTIVE"
fi
echo -n "$ZSH_THEME_SYSTEMD_PROMPT_SUFFIX"
done
}