Try out river as a compositor
This commit is contained in:
parent
d1cb0d8a4d
commit
b0f4c448f6
10 changed files with 411 additions and 432 deletions
81
modules/graphical/compositor/launcher.zsh
Normal file
81
modules/graphical/compositor/launcher.zsh
Normal file
|
@ -0,0 +1,81 @@
|
|||
#!@zsh@/bin/zsh
|
||||
|
||||
_sighandler() {
|
||||
kill -INT "$child" 2>/dev/null
|
||||
}
|
||||
|
||||
calc_options() {
|
||||
echo "calc "
|
||||
}
|
||||
|
||||
calc() {
|
||||
if [ -n "$1" ]
|
||||
then
|
||||
@libqalculate@/bin/qalc "$1"
|
||||
sleep 5
|
||||
else
|
||||
@libqalculate@/bin/qalc
|
||||
fi
|
||||
}
|
||||
|
||||
emoji_options() {
|
||||
@uni@/bin/uni emoji all | sed "s/^/emoji /"
|
||||
}
|
||||
|
||||
emoji() {
|
||||
char=$(echo -n "$1" | sed "s/^\([^ ]*\) .*/\1/")
|
||||
riverctl spawn "echo -n $char | @wlClipboard@/bin/wl-copy --foreground"
|
||||
}
|
||||
|
||||
nrun_options() {
|
||||
echo "nrun "
|
||||
}
|
||||
|
||||
nrun() {
|
||||
riverctl spawn "@nix@/bin/nix run nixpkgs\#$1"
|
||||
}
|
||||
|
||||
pass_options(){
|
||||
prefix=${PASSWORD_STORE_DIR-~/.password-store}
|
||||
password_files=( "$prefix"/**/*.gpg )
|
||||
printf 'password %s\n' ${${password_files%.gpg}#$prefix/}
|
||||
printf 'username %s\n' ${${password_files%.gpg}#$prefix/}
|
||||
printf 'otp %s\n' ${${password_files%.gpg}#$prefix/}
|
||||
}
|
||||
|
||||
username() {
|
||||
riverctl spawn "@pass@/bin/pass show '$@' | sed -n 's/^Username: *//p' | tr -d '\n' | @wlClipboard@/bin/wl-copy --foreground"
|
||||
}
|
||||
|
||||
password() {
|
||||
riverctl spawn "@pass@/bin/pass show -c0 '$@'"
|
||||
}
|
||||
|
||||
otp() {
|
||||
riverctl spawn "@pass@/bin/pass otp -c '$@'"
|
||||
}
|
||||
|
||||
run_options() {
|
||||
print -rl -- ''${(ko)commands} | grep -v "^\\." | sed "s/^/run /"
|
||||
}
|
||||
|
||||
run() {
|
||||
riverctl spawn $1
|
||||
}
|
||||
|
||||
systemctl_options() {
|
||||
echo systemctl hibernate
|
||||
echo systemctl poweroff
|
||||
echo systemctl reboot
|
||||
echo systemctl suspend
|
||||
}
|
||||
|
||||
CHOSEN=$(cat <(systemctl_options) <(pass_options) <(nrun_options) <(run_options) <(calc_options) <(emoji_options) | @fzy@/bin/fzy --lines 80 | tail -n1)
|
||||
|
||||
if [ -n "$CHOSEN" ]
|
||||
then
|
||||
PREFIX=$(echo $CHOSEN | sed "s/^\([^ ]*\) .*/\1/g")
|
||||
WORD=$(echo $CHOSEN | sed "s/^[^ ]* \(.*\)/\1/g")
|
||||
|
||||
$PREFIX $WORD
|
||||
fi
|
Loading…
Add table
Add a link
Reference in a new issue