Finally switch to flakes.
This commit is contained in:
parent
a90e09db74
commit
5e0b713756
116 changed files with 5443 additions and 3 deletions
191
home-manager/guiapps/rofi.nix
Normal file
191
home-manager/guiapps/rofi.nix
Normal file
|
@ -0,0 +1,191 @@
|
|||
{pkgs, config, ...}: {
|
||||
# Enable Rofi
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
package = pkgs.rofi-wayland;
|
||||
terminal = "foot";
|
||||
font = let
|
||||
fonts = import ../common/fonts.nix;
|
||||
in "${fonts.main} 14";
|
||||
theme = let
|
||||
inherit (config.lib.formats.rasi) mkLiteral;
|
||||
border = import ../common/border.nix;
|
||||
colors = import ../style/colors.nix;
|
||||
in {
|
||||
"*" = {
|
||||
lightbg = mkLiteral "#EEE8D5";
|
||||
lightfg = mkLiteral "#586875";
|
||||
blue = mkLiteral "#268BD2";
|
||||
red = mkLiteral "#DC322F";
|
||||
background-color = mkLiteral "#00000000";
|
||||
separatorcolor = mkLiteral "#00000000";
|
||||
normal-foreground = mkLiteral "#${colors.text}";
|
||||
normal-background = mkLiteral "#${colors.dark}1A";
|
||||
urgent-foreground = mkLiteral "#${colors.urgent}";
|
||||
active-foreground = mkLiteral "#${colors.split}";
|
||||
selected-active-foreground = mkLiteral "#${colors.prime}";
|
||||
background = mkLiteral "#${colors.dark}B3";
|
||||
bordercolor = mkLiteral "#${colors.prime}";
|
||||
selected-normal-foreground = mkLiteral "#FFFFFF";
|
||||
selected-normal-background = mkLiteral "#${colors.prime}80";
|
||||
border-color = mkLiteral "#${colors.prime}";
|
||||
urgent-background = mkLiteral "#${colors.accent}26";
|
||||
active-background = mkLiteral "#${colors.accent}26";
|
||||
selected-active-background = mkLiteral "#${colors.split}54";
|
||||
};
|
||||
"#window" = {
|
||||
background-color = mkLiteral "@background";
|
||||
width = 500;
|
||||
border = mkLiteral "${border.weight}";
|
||||
padding = 5;
|
||||
};
|
||||
"#message" = {
|
||||
border = mkLiteral "1px dash 0px 0px";
|
||||
border-color = mkLiteral "@separatorcolor";
|
||||
padding = 1;
|
||||
};
|
||||
"#textbox" = {
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
"#listview" = {
|
||||
fixed-height = 0;
|
||||
border-color = mkLiteral "@separatorcolor";
|
||||
scrollbar = mkLiteral "false";
|
||||
columns = 2;
|
||||
};
|
||||
"#element" = {
|
||||
border = 0;
|
||||
padding = 1;
|
||||
};
|
||||
"#element-text" = {
|
||||
background-color = mkLiteral "inherit";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
"#element.normal.normal" = {
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
"#element.normal.urgent" = {
|
||||
text-color = mkLiteral "@urgent-foreground";
|
||||
};
|
||||
"#element.normal.active" = {
|
||||
background-color = mkLiteral "@active-background";
|
||||
text-color = mkLiteral "@active-foreground";
|
||||
};
|
||||
"#element.selected.normal" = {
|
||||
background-color = mkLiteral "@selected-normal-background";
|
||||
text-color = mkLiteral "@selected-normal-foreground";
|
||||
};
|
||||
"#element.selected.urgent" = {
|
||||
background-color = mkLiteral "@urgent-background";
|
||||
text-color = mkLiteral "@urgent-foreground";
|
||||
};
|
||||
"#element.selected.active" = {
|
||||
background-color = mkLiteral "@selected-active-background";
|
||||
text-color = mkLiteral "@selected-active-foreground";
|
||||
};
|
||||
"#element.alternate.normal" = {
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
"#element.alternate.urgent" = {
|
||||
text-color = mkLiteral "@urgent-foreground";
|
||||
};
|
||||
"#element.alternate.active" = {
|
||||
background-color = mkLiteral "@active-background";
|
||||
text-color = mkLiteral "@active-foreground";
|
||||
};
|
||||
"#mode-switcher" = {
|
||||
border = mkLiteral "2px dash 0px 0px";
|
||||
border-color = mkLiteral "@separatorcolor";
|
||||
};
|
||||
"#button.selected" = {
|
||||
background-color = mkLiteral "@selected-normal-background";
|
||||
text-color = mkLiteral "@selected-normal-foreground";
|
||||
};
|
||||
"#case-indicator" = {
|
||||
spacing = mkLiteral "0";
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
"#entry" = {
|
||||
spacing = 0;
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
"#prompt" = {
|
||||
spacing = 0;
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
"#inputbar" = {
|
||||
spacing = 0;
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
padding = 1;
|
||||
children = map mkLiteral ["prompt" "textbox-prompt-colon" "entry"];
|
||||
};
|
||||
"#textbox-prompt-colon" = {
|
||||
expand = false;
|
||||
str = ":";
|
||||
margin = mkLiteral "0px 0.3em 0em 0em";
|
||||
text-color = mkLiteral "@normal-foreground";
|
||||
};
|
||||
};
|
||||
};
|
||||
home.packages = let
|
||||
# All my rofi scripts in one file
|
||||
rofiScripts = let
|
||||
displays = import ../common/displays.nix;
|
||||
in pkgs.writeScriptBin "rofiscripts" ''
|
||||
# Scratchpad function
|
||||
handle_scratchpads() {
|
||||
SCRATCHPADS=$(echo -e "Gotop\nMusic\nSound\nEasyEffects" | rofi -dmenu -i -p "Scratchpads")
|
||||
case $SCRATCHPADS in
|
||||
Gotop) foot -a gotop -T Gotop gotop;;
|
||||
Music) foot -a music -T Music ncmpcpp;;
|
||||
Sound) foot -a sound -T Sound pulsemixer;;
|
||||
EasyEffects) easyeffects;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Lock menu
|
||||
handle_power() {
|
||||
POWER=$(echo -e "Shutdown\nReboot\nSleep\nLock\nKill" | rofi -dmenu -i -p "Power")
|
||||
case $POWER in
|
||||
Shutdown) poweroff;;
|
||||
Reboot) reboot;;
|
||||
Sleep) swaylock --sleep &;;
|
||||
Lock) swaylock &;;
|
||||
Kill) pkill -9 sway;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Resolutions
|
||||
handle_resolutions() {
|
||||
RET=$(echo -e "Default\nWide\nGPU2" | rofi -dmenu -i -p "Resolutions")
|
||||
case $RET in
|
||||
Default) swaymsg reload ;;
|
||||
Wide) swaymsg "
|
||||
output ${displays.d1} enable pos 1680 0 mode 1680x1050@59.954Hz
|
||||
output ${displays.d2} enable pos 0 0 mode 1680x1050@59.954Hz
|
||||
output ${displays.d3} enable pos 3360 0 transform 0
|
||||
";;
|
||||
GPU2) swaymsg "
|
||||
output ${displays.d2} enable pos 1680 0 mode 1920x1080@60Hz
|
||||
output ${displays.d3} enable pos 0 0 transform 0
|
||||
";;
|
||||
esac
|
||||
}
|
||||
|
||||
# Check for command-line arguments
|
||||
if [ "$1" == "--scratchpads" ]; then
|
||||
handle_scratchpads
|
||||
elif [ "$1" == "--power" ]; then
|
||||
handle_power
|
||||
elif [ "$1" == "--resolutions" ]; then
|
||||
handle_resolutions
|
||||
else
|
||||
echo "Please use a valid argument."
|
||||
fi
|
||||
'';
|
||||
in with pkgs; [
|
||||
rofiScripts
|
||||
rofi-bluetooth
|
||||
bemoji
|
||||
];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue