diff --git a/common/config/config.nix b/common/config/config.nix index 6ff5845..45b88d9 100644 --- a/common/config/config.nix +++ b/common/config/config.nix @@ -48,6 +48,7 @@ nixpkgs, # The flake's input version of nixpkgs (nerdfonts.override { fonts = [ "UbuntuMono" "JetBrainsMono" ]; }) meslo-lgs-nf victor-mono + ubuntu_font_family ]; fontconfig = { diff --git a/common/home-manager/shell/starship.nix b/common/home-manager/shell/starship.nix index 7aad325..79e684b 100644 --- a/common/home-manager/shell/starship.nix +++ b/common/home-manager/shell/starship.nix @@ -2,9 +2,6 @@ { programs.starship.enable = true; - # This config is intended to make starship look like Tide, - # since that was the previous prompt I used and I think it looks better. - programs.starship.settings = { format = "$directory$nix_shell$all$fill$cmd_duration$status$jobs$time$line_break$character"; diff --git a/common/home-manager/wayland/default.nix b/common/home-manager/wayland/default.nix index c9c1ef4..90c9386 100644 --- a/common/home-manager/wayland/default.nix +++ b/common/home-manager/wayland/default.nix @@ -8,7 +8,7 @@ imports = [ ./sway.nix ./swaylock.nix - ./wofi.nix ./mako.nix + ./rofi.nix ]; } diff --git a/common/home-manager/wayland/mako.nix b/common/home-manager/wayland/mako.nix index e045ef4..d3cb205 100644 --- a/common/home-manager/wayland/mako.nix +++ b/common/home-manager/wayland/mako.nix @@ -11,7 +11,7 @@ margin = "5"; padding = "5,10"; borderSize = 2; - borderColor = "#04c2e8"; + borderColor = "#7bc5e4"; borderRadius = 5; defaultTimeout = 10000; @@ -20,19 +20,23 @@ [urgency=low] format=%s\n%b background-color=#111111c0 - border-color=#ffffff + border-color=#787c99 border-size=1 [urgency=high] background-color=#1e0909d0 - border-color=#bf616a - border-size=4 + border-color=#ce7284 + border-size=3 default-timeout=0 ignore-timeout=1 + [app-name=discord] + format=%s\n\n%b + border-color=#7da6ff + [app-name=discordcanary] - format=%s\n%b - border-color=#88c0d0 + format=%s\n\n%b + border-color=#7da6ff ''; }; } diff --git a/common/home-manager/wayland/rofi.nix b/common/home-manager/wayland/rofi.nix new file mode 100644 index 0000000..0defb6e --- /dev/null +++ b/common/home-manager/wayland/rofi.nix @@ -0,0 +1,7 @@ +{ config, pkgs, ... }: +{ + programs.rofi.enable = true; + programs.rofi.package = pkgs.rofi-wayland; + + xdg.configFile.rofi.source = ./rofi; +} diff --git a/common/home-manager/wayland/rofi/config.rasi b/common/home-manager/wayland/rofi/config.rasi new file mode 100644 index 0000000..dc09f4b --- /dev/null +++ b/common/home-manager/wayland/rofi/config.rasi @@ -0,0 +1,120 @@ +configuration { + cycle: false; + //modi: "drun,run,window:~/.config/rofi/window.sh,workspace:~/.config/rofi/workspace.sh"; + modi: "drun,run"; + font: "JetBrainsMono Nerd Font 14"; + location: 0; + terminal: "alacritty"; + + show-icons: true; + run-show-icons: false; + hide-scrollbar: true; + sidebar-mode: true; + + drun-display-format: "{name}"; + display-drun: "  Apps "; + display-run: "  Run "; + display-window: " 﩯 Window "; + display-workspace: "  Workspace "; + + run { + show-icons: false; + } +} + +@theme "tokyonight" + +element-text, element-icon, mode-switcher { + background-color: inherit; + text-color: inherit; +} + +window { + // Using percentages here breaks literally everything for some reason + height: 550px; + width: 50%; + /* border: 3px; */ + border-color: @border-col; + background-color: @bg-col; + border-radius: 12px; +} + +mainbox { + background-color: @bg-col; +} + +inputbar { + children: [prompt,entry]; + background-color: @selected-col; + border-radius: 12px; + padding: 2px; +} + +prompt { + background-color: @blue; + padding: 6px; + text-color: @bg-col; + border-radius: 8px; + margin: 20px 0px 20px 20px; +} + +textbox-prompt-colon { + expand: false; + str: ":"; +} + +entry { + padding: 6px; + margin: 20px 0px 4px 10px; + text-color: @fg-col; + background-color: @selected-col; +} + +listview { + padding: 10 10 0; + margin: 10 10 0 10; + columns: 5; + background-color: @bg-col; +} + +element { + padding: 15 10 15; + background-color: @bg-col; + text-color: @fg-col; + orientation: vertical; +} + +element-icon { + size: 56px; + horizontal-align: 0.5; +} + +element selected { + background-color: @selected-col; + text-color: @blue ; + border-radius: 8px; +} + +element-text { + vertical-align: 0.5; + horizontal-align: 0.5; + expand: true; + font: "JetBrainsMono Nerd Font Medium 10"; +} + +mode-switcher { + spacing: 0; +} + +button { + padding: 10px; + background-color: @bg-col; + text-color: @empty; + vertical-align: 0.5; + horizontal-align: 0.5; +} + +button selected { + background-color: @bg-col; + text-color: @blue; +} diff --git a/common/home-manager/wayland/rofi/tokyonight.rasi b/common/home-manager/wayland/rofi/tokyonight.rasi new file mode 100644 index 0000000..e654538 --- /dev/null +++ b/common/home-manager/wayland/rofi/tokyonight.rasi @@ -0,0 +1,16 @@ +* { + bg-col: #1a1b26; + bg-col-light: #272834; + border-col: #7aa2f7; + selected-col: #282e49; + blue: #7bc5e4; + fg-col: #abb2bf; + fg-col2: #e06c75; + grey: #565c64; + width: 600; + selected: #caaa6a; + red: #ce7284; + green: #7dc5a0; + empty: #5b668e; + inactive: #4a5374; +} diff --git a/common/home-manager/wayland/rofi/window.sh b/common/home-manager/wayland/rofi/window.sh new file mode 100755 index 0000000..b0569a5 --- /dev/null +++ b/common/home-manager/wayland/rofi/window.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +if [ $# -ne 0 ]; then + id=echo "$@" | cut -d ' ' -f1 + swaymsg "[con_id=$id]" focus + exit 0 +fi + +swaymsg -t get_tree | + jq -r '.nodes[].nodes[] | if .nodes then [recurse(.nodes[])] else [] end + .floating_nodes | + .[] | select(.nodes==[]) | ((.id | tostring) + " " + .name)' diff --git a/common/home-manager/wayland/rofi/workspace.sh b/common/home-manager/wayland/rofi/workspace.sh new file mode 100755 index 0000000..ead2bb7 --- /dev/null +++ b/common/home-manager/wayland/rofi/workspace.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +if [ $# -ne 0 ]; then + swaymsg workspace "$@" + exit 0 +fi + +swaymsg -t get_workspaces | + jq -r '.[].name' diff --git a/common/home-manager/wayland/sway.nix b/common/home-manager/wayland/sway.nix index afac55e..8edd37b 100644 --- a/common/home-manager/wayland/sway.nix +++ b/common/home-manager/wayland/sway.nix @@ -10,12 +10,12 @@ in { wrapperFeatures.gtk = true; config = { inherit modifier terminal; - menu = "wofi --show drun"; + menu = "rofi -show drun"; fonts = { - names = [ "NotoSans Nerd Font" ]; + names = [ "JetBrainsMono Nerd Font" ]; style = "Medium"; - size = 12.0; + size = 10.0; }; bars = [{ command = "waybar"; }]; @@ -75,8 +75,12 @@ in { # Grim screenshot file name filename = ''~/Pictures/$(date +%Y-%m-%d_%H-%M-%S).png''; in pkgs.lib.mkOptionDefault { - "${modifier}+Shift+d" = ''exec wofi --show run''; - "${modifier}+Shift+m" = ''exec swaylock''; + "${modifier}+Shift+d" = "exec rofi -show run"; + # "${modifier}+w" = "exec rofi -show window"; + # "${modifier}+Shift+w" = "exec rofi -show workspace"; + + "${modifier}+t" = "layout tabbed"; + "${modifier}+Shift+m" = "exec swaylock"; # Screenshot "Print" = ''exec grim ${filename}''; @@ -102,18 +106,18 @@ in { This will end your Wayland session." -b "Yes, exit sway" "swaymsg exit" ''; # Workspaces - "${modifier}+1" = "workspace 1:browser"; - "${modifier}+2" = "workspace 2:terminal"; - "${modifier}+3" = "workspace 3:code"; - "${modifier}+4" = "workspace 4:files"; - "${modifier}+5" = "workspace 5:discord"; - "${modifier}+6" = "workspace 6:settings"; - "${modifier}+Shift+1" = "move container to workspace 1:browser"; - "${modifier}+Shift+2" = "move container to workspace 2:terminal"; - "${modifier}+Shift+3" = "move container to workspace 3:code"; - "${modifier}+Shift+4" = "move container to workspace 4:files"; - "${modifier}+Shift+5" = "move container to workspace 5:discord"; - "${modifier}+Shift+6" = "move container to workspace 6:settings"; + "${modifier}+1" = "workspace 10:browser"; + "${modifier}+2" = "workspace 20:terminal"; + "${modifier}+3" = "workspace 30:code"; + "${modifier}+4" = "workspace 40:files"; + "${modifier}+5" = "workspace 50:discord"; + "${modifier}+6" = "workspace 60:settings"; + "${modifier}+Shift+1" = "move container to workspace 10:browser"; + "${modifier}+Shift+2" = "move container to workspace 20:terminal"; + "${modifier}+Shift+3" = "move container to workspace 30:code"; + "${modifier}+Shift+4" = "move container to workspace 40:files"; + "${modifier}+Shift+5" = "move container to workspace 50:discord"; + "${modifier}+Shift+6" = "move container to workspace 60:settings"; }; output."*" = { diff --git a/common/home-manager/wayland/swaylock.nix b/common/home-manager/wayland/swaylock.nix index 51960f9..4171dc4 100644 --- a/common/home-manager/wayland/swaylock.nix +++ b/common/home-manager/wayland/swaylock.nix @@ -12,12 +12,12 @@ indicator screenshots - font=Ubuntu - text-color=ffffff + font=UbuntuMono + text-color=a9b1d6 color=00000000 - ring-color=151fea - key-hl-color=6ecef4 + ring-color=7da6ff + key-hl-color=7bc5e4 line-uses-inside @@ -26,7 +26,7 @@ clock - datestr=%A, %e.%m.%Y + datestr=%A, %Y-%m-%e effect-scale=0.4 effect-vignette=0.3:0.7 diff --git a/common/home-manager/wayland/waybar.nix b/common/home-manager/wayland/waybar.nix index 0ef2ff5..a793fac 100644 --- a/common/home-manager/wayland/waybar.nix +++ b/common/home-manager/wayland/waybar.nix @@ -22,12 +22,12 @@ modules-right: format = "{icon}"; persistent_workspaces = { - "1:browser" = []; - "2:terminal" = []; - "3:code" = []; - "4:files" = []; - "5:discord" = []; - "6:settings" = []; + "10:browser" = []; + "20:terminal" = []; + "30:code" = []; + "40:files" = []; + "50:discord" = []; + "60:settings" = []; }; format-icons = { diff --git a/common/home-manager/wayland/wofi.nix b/common/home-manager/wayland/wofi.nix index 07dc2a1..e69de29 100644 --- a/common/home-manager/wayland/wofi.nix +++ b/common/home-manager/wayland/wofi.nix @@ -1,6 +0,0 @@ -{ pkgs, ... }: -{ - home.packages = [ pkgs.wofi ]; - - xdg.configFile.wofi.source = ./wofi; -} diff --git a/common/home-manager/wayland/wofi/config b/common/home-manager/wayland/wofi/config deleted file mode 100755 index 4c92798..0000000 --- a/common/home-manager/wayland/wofi/config +++ /dev/null @@ -1,12 +0,0 @@ -location=center -width=50% -height=55% -columns=6 -image_size=64 -content_halign=center -prompt= -always_parse_args=true -sort_order=alphabetical -allow_images=true -no_actions=true -term=alacritty diff --git a/common/home-manager/wayland/wofi/style.css b/common/home-manager/wayland/wofi/style.css deleted file mode 100755 index dfa1c02..0000000 --- a/common/home-manager/wayland/wofi/style.css +++ /dev/null @@ -1,60 +0,0 @@ -window { - padding: 15px; - border: none; - border-radius: 8px; - background-color: #1a1b26; - color: #a9b1d6; - font-size: 14px; - font-family: "JetBrainsMono Nerd Font"; -} - -#input { - color: white; - margin-bottom: 8px; - border-radius: 0px; - background-color: transparent; -} - -#inner-box { - margin: 0px; - margin-right: 10px; - margin-left: 10px; - border-top: 2px solid transparent; - color: #; - background-color: transparent; -} - -#img { - margin-right: 6px; -} - -#outer-box { - margin: 0px; - border: 0px solid; - background-color: transparent; -} - -#scroll { - margin: 0px; - border: 0px solid; - background-color: transparent; -} - -#entry { - display: grid; - padding: 1px; - padding-left: 4px; - padding-right: 4px; - margin: 0px; -} - -image { display: block; } -label { display: flex; } - -#entry:selected { -} - -#text:selected { - outline: 0px; - border-radius: 0px; -}