gosh i barely understand nix

This commit is contained in:
Schrottkatze 2022-09-12 17:07:23 +02:00
parent 88d91caaac
commit 425e8b5454
4 changed files with 37 additions and 41 deletions

View file

@ -5,7 +5,9 @@ let
window-screenshot = pkgs.writeShellScriptBin "window-screenshot.sh" (builtins.readFile ../scripts/desktop/window-screenshot.sh);
# desktop-ctl = pkgs.writeShellScriptBin "desktop-ctl.sh" (builtins.readFile ../scripts/desktop/desktop-ctl.sh);
desktop-ctl = import ../scripts/desktop/desktopctl.nix { pkgs = pkgs; };
permaclip = import ../scripts/desktop/permaclip { pkgs = pkgs; };
# permaclip
pc-get = pkgs.writeShellScriptBin "pc-get.sh" (builtins.readFile ../scripts/desktop/permaclip/pc-get.sh);
pc-set = pkgs.writeShellScriptBin "pc-set.sh" (builtins.readFile ../scripts/desktop/permaclip/pc-set.sh);
em-record = pkgs.writeShellScriptBin "em-record.sh" (builtins.readFile ../scripts/desktop/macros/record.sh);
em-play = pkgs.writeShellScriptBin "em-play.sh" (builtins.readFile ../scripts/desktop/macros/play.sh);
em-play-loop = pkgs.writeShellScriptBin "em-play-loop.sh" (builtins.readFile ../scripts/desktop/macros/play-loop.sh);
@ -29,7 +31,7 @@ in with lib; {
libqalculate # needed by menu-qalc
# custom scripts
window-screenshot desktop-ctl em-record em-play em-play-loop ocr-screenshot menu-qalc
permaclip
pc-get pc-set
# themes
gruvbox-dark-gtk gruvbox-dark-icons-gtk
@ -139,8 +141,8 @@ in with lib; {
"${mod}+Shift+p" = "exec em-play-loop.sh";
# permaclip
"${mod}+c" = "rofi -show permaclip -modes \"permaclip:${permaclip.outPath}/bin/pc-set\" -theme gruvbox-dark";
"${mod}+v" = "rofi -show permaclip -modes \"permaclip:${permaclip.outPath}/bin/pc-get\" -theme gruvbox-dark";
"${mod}+c" = "rofi -show permaclip -modes \"permaclip:${pc-set.outPath}/bin/pc-set.sh\" -theme gruvbox-dark";
"${mod}+v" = "rofi -show permaclip -modes \"permaclip:${pc-get.outPath}/bin/pc-get.sh\" -theme gruvbox-dark";
};
# }}}
# Visuals {{{

View file

@ -1,37 +0,0 @@
{ pkgs, ... }:
pkgs.writeShellScriptBin "pc-set" ''
# create ~/permaclip if it doesnt exist already
mkdir -p $HOME/permaclip
tr_name=$(echo $@ | xargs)
if [ x"$tr_name" != x"" ]; then
tr_name="''${tr_name% (*}"
clipdata=$(xclip -selection c -o)
echo $clipdata > $HOME/permaclip/$tr_name
fi
echo -e "\0markup-rows\x1ftrue"
for reg in $(ls ~/permaclip); do
content=$(cat ~/permaclip/$reg)
echo -e "$reg (<i>''${content:0:30}</i>)"
done
'';
pkgs.writeShellScriptBin "pc-get" ''
# create ~/permaclip if it doesnt exist already
mkdir -p $HOME/permaclip
tr_name=$(echo ''${@% (*} | xargs)
if [ x"$tr_name" != x"" ]; then
xclip -selection c -i $HOME/permaclip/''${tr_name% (*} &> /dev/null
exit 0
fi
echo -e "\0markup-rows\x1ftrue"
for reg in $(ls ~/permaclip); do
content=$(cat ~/permaclip/$reg)
echo -e "$reg (<i>''${content:0:50}...</i>)"
done
'';

View file

@ -0,0 +1,15 @@
# create ~/permaclip if it doesnt exist already
mkdir -p $HOME/permaclip
tr_name=$(echo ''${@% (*} | xargs)
if [ x"$tr_name" != x"" ]; then
xclip -selection c -i $HOME/permaclip/''${tr_name% (*} &> /dev/null
exit 0
fi
echo -e "\0markup-rows\x1ftrue"
for reg in $(ls ~/permaclip); do
content=$(cat ~/permaclip/$reg)
echo -e "$reg (<i>''${content:0:50}...</i>)"
done

View file

@ -0,0 +1,16 @@
# create ~/permaclip if it doesnt exist already
mkdir -p $HOME/permaclip
tr_name=$(echo $@ | xargs)
if [ x"$tr_name" != x"" ]; then
tr_name="''${tr_name% (*}"
clipdata=$(xclip -selection c -o)
echo $clipdata > $HOME/permaclip/$tr_name
fi
echo -e "\0markup-rows\x1ftrue"
for reg in $(ls ~/permaclip); do
content=$(cat ~/permaclip/$reg)
echo -e "$reg (<i>''${content:0:30}</i>)"
done