init: public
This commit is contained in:
21
modules/desktop/wm/all.nix
Normal file
21
modules/desktop/wm/all.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
lib.my.makeSwitch {
|
||||
inherit config;
|
||||
optionName = "all window managers";
|
||||
optionPath = [
|
||||
"desktop"
|
||||
"wm"
|
||||
"all"
|
||||
];
|
||||
config' = {
|
||||
my.desktop.wm = {
|
||||
cage.enable = true;
|
||||
dwm.enable = true;
|
||||
niri.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
16
modules/desktop/wm/cage.nix
Normal file
16
modules/desktop/wm/cage.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
lib.my.makeHomePackageConfig {
|
||||
inherit config pkgs;
|
||||
packageName = "cage";
|
||||
packagePath = [ "cage" ];
|
||||
optionPath = [
|
||||
"desktop"
|
||||
"wm"
|
||||
"cage"
|
||||
];
|
||||
}
|
||||
9
modules/desktop/wm/default.nix
Normal file
9
modules/desktop/wm/default.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./all.nix
|
||||
./cage.nix
|
||||
./dwm.nix
|
||||
./niri
|
||||
];
|
||||
}
|
||||
16
modules/desktop/wm/dwm.nix
Normal file
16
modules/desktop/wm/dwm.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
lib.my.makeHomePackageConfig {
|
||||
inherit config pkgs;
|
||||
packageName = "dwm";
|
||||
packagePath = [ "dwm" ];
|
||||
optionPath = [
|
||||
"desktop"
|
||||
"wm"
|
||||
"dwm"
|
||||
];
|
||||
}
|
||||
259
modules/desktop/wm/niri/config.nix
Normal file
259
modules/desktop/wm/niri/config.nix
Normal file
@@ -0,0 +1,259 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
my.home.systemd.user.services.swaync.Unit.After = [ "graphical-session.target" ];
|
||||
|
||||
my.home.programs.niri.settings = {
|
||||
input = {
|
||||
focus-follows-mouse = {
|
||||
enable = true;
|
||||
max-scroll-amount = "40%";
|
||||
};
|
||||
workspace-auto-back-and-forth = true;
|
||||
};
|
||||
|
||||
layout = {
|
||||
gaps = 23;
|
||||
center-focused-column = "never";
|
||||
always-center-single-column = true;
|
||||
focus-ring.enable = false;
|
||||
border = {
|
||||
enable = true;
|
||||
width = 4;
|
||||
|
||||
inactive.color = "#2e2e3eee";
|
||||
active.gradient = {
|
||||
from = "#6186d6ee";
|
||||
to = "#cba6f7ee";
|
||||
angle = 180;
|
||||
relative-to = "workspace-view";
|
||||
};
|
||||
};
|
||||
preset-column-widths = [
|
||||
{ proportion = 0.33333; }
|
||||
{ proportion = 0.4; }
|
||||
{ proportion = 0.5; }
|
||||
{ proportion = 0.6; }
|
||||
{ proportion = 0.66667; }
|
||||
];
|
||||
default-column-width.proportion = 0.4;
|
||||
};
|
||||
|
||||
animations = {
|
||||
enable = true;
|
||||
slowdown = 1.5;
|
||||
workspace-switch.spring = {
|
||||
damping-ratio = 1.0;
|
||||
stiffness = 1000;
|
||||
epsilon = 0.0001;
|
||||
};
|
||||
};
|
||||
|
||||
prefer-no-csd = true;
|
||||
hotkey-overlay.skip-at-startup = true;
|
||||
|
||||
window-rules = [
|
||||
{
|
||||
geometry-corner-radius = {
|
||||
bottom-left = 14.;
|
||||
bottom-right = 14.;
|
||||
top-left = 14.;
|
||||
top-right = 14.;
|
||||
};
|
||||
clip-to-geometry = true;
|
||||
draw-border-with-background = false;
|
||||
}
|
||||
{
|
||||
matches = [ { app-id = "kitty|foot|Alacritty|ghostty|chromium-browser|wofi"; } ];
|
||||
opacity = 0.8;
|
||||
}
|
||||
{
|
||||
matches = [ { app-id = "org.gnome.Nautilus|nemo"; } ];
|
||||
opacity = 0.6;
|
||||
}
|
||||
];
|
||||
|
||||
environment = {
|
||||
QT_QPA_PLATFORM = "wayland;xcb";
|
||||
XDG_SESSION_TYPE = "wayland";
|
||||
XDG_CURRENT_DESKTOP = "niri";
|
||||
XDG_SESSION_DESKTOP = "niri";
|
||||
QT_AUTO_SCREEN_SCALE_FACTOR = "1";
|
||||
STEAM_FORCE_DESKTOPUI_SCALING = "1.25";
|
||||
DISPLAY = ":0";
|
||||
};
|
||||
|
||||
spawn-at-startup = map (c: { command = c; }) [
|
||||
[
|
||||
"alacritty"
|
||||
"--daemon"
|
||||
]
|
||||
[ "${lib.getExe pkgs.xwayland-satellite-unstable}" ]
|
||||
[
|
||||
"${lib.getExe pkgs.swaybg}"
|
||||
"-i"
|
||||
(toString ./wallpaper.png)
|
||||
]
|
||||
[
|
||||
"${lib.getExe pkgs.wl-clip-persist}"
|
||||
"--clipboard"
|
||||
"regular"
|
||||
]
|
||||
[
|
||||
"wl-paste"
|
||||
"--type"
|
||||
"text"
|
||||
"--watch"
|
||||
"cliphist"
|
||||
"store"
|
||||
]
|
||||
[
|
||||
"wl-paste"
|
||||
"--type"
|
||||
"image"
|
||||
"--watch"
|
||||
"cliphist"
|
||||
"store"
|
||||
]
|
||||
];
|
||||
|
||||
binds =
|
||||
with config.my.home.lib.niri.actions;
|
||||
{
|
||||
"Ctrl+Alt+T".action.spawn = [
|
||||
"alacritty"
|
||||
"msg"
|
||||
"create-window"
|
||||
];
|
||||
"Mod+T".action.spawn = [
|
||||
"alacritty"
|
||||
"msg"
|
||||
"create-window"
|
||||
];
|
||||
"Mod+Return".action.spawn = [
|
||||
"alacritty"
|
||||
"msg"
|
||||
"create-window"
|
||||
];
|
||||
"Mod+G".action.spawn = [ "chromium" ];
|
||||
"Mod+E".action.spawn = [ "nemo" ];
|
||||
"Mod+R".action.spawn = [
|
||||
"sh"
|
||||
"-c"
|
||||
"pkill wofi || wofi --color ~/.config/wal/colors"
|
||||
];
|
||||
"Mod+V".action.spawn = [
|
||||
"sh"
|
||||
"-c"
|
||||
"pkill ${lib.getExe pkgs.wofi} || ${lib.getExe pkgs.cliphist} list | wofi --dmenu --color ~/.config/wal/colors | cliphist decode | wl-copy"
|
||||
];
|
||||
|
||||
"XF86AudioRaiseVolume" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = [
|
||||
"pamixer"
|
||||
"-i"
|
||||
"2"
|
||||
];
|
||||
};
|
||||
"XF86AudioLowerVolume" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = [
|
||||
"pamixer"
|
||||
"-d"
|
||||
"2"
|
||||
];
|
||||
};
|
||||
"XF86AudioMute" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = [
|
||||
"playerctl"
|
||||
"-i"
|
||||
"firefox,chromium"
|
||||
"play-pause"
|
||||
];
|
||||
};
|
||||
"Mod+XF86AudioRaiseVolume" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = [
|
||||
"playerctl"
|
||||
"-i"
|
||||
"firefox,chromium"
|
||||
"next"
|
||||
];
|
||||
};
|
||||
"Mod+XF86AudioLowerVolume" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = [
|
||||
"playerctl"
|
||||
"-i"
|
||||
"firefox,chromium"
|
||||
"previous"
|
||||
];
|
||||
};
|
||||
|
||||
"Mod+Q".action = close-window;
|
||||
|
||||
"Mod+Left".action = focus-column-left;
|
||||
"Mod+Right".action = focus-column-right;
|
||||
"Mod+Up".action = focus-window-up;
|
||||
"Mod+Down".action = focus-window-down;
|
||||
|
||||
"Mod+Ctrl+Left".action = move-column-left;
|
||||
"Mod+Ctrl+Right".action = move-column-right;
|
||||
"Mod+Ctrl+Up".action = move-window-up;
|
||||
"Mod+Ctrl+Down".action = move-window-down;
|
||||
|
||||
"Mod+Shift+Left".action = focus-monitor-left;
|
||||
"Mod+Shift+Right".action = focus-monitor-right;
|
||||
"Mod+Shift+Up".action = focus-monitor-up;
|
||||
"Mod+Shift+Down".action = focus-monitor-down;
|
||||
|
||||
"Mod+Shift+Ctrl+Left".action = move-column-to-monitor-left;
|
||||
"Mod+Shift+Ctrl+Right".action = move-column-to-monitor-right;
|
||||
"Mod+Shift+Ctrl+Up".action = move-column-to-monitor-up;
|
||||
"Mod+Shift+Ctrl+Down".action = move-column-to-monitor-down;
|
||||
|
||||
"Mod+Page_Up".action = focus-workspace-up;
|
||||
"Mod+Page_Down".action = focus-workspace-down;
|
||||
|
||||
"Mod+Ctrl+Page_Up".action = move-column-to-workspace-up;
|
||||
"Mod+Ctrl+Page_Down".action = move-column-to-workspace-down;
|
||||
|
||||
"Mod+Shift+Page_Up".action = move-workspace-up;
|
||||
"Mod+Shift+Page_Down".action = move-workspace-down;
|
||||
|
||||
"Mod+Comma".action = consume-window-into-column;
|
||||
"Mod+Period".action = expel-window-from-column;
|
||||
|
||||
"Mod+L".action = switch-preset-column-width;
|
||||
"Mod+Shift+L".action = reset-window-height;
|
||||
"Mod+M".action = maximize-column;
|
||||
"Mod+Shift+M".action = fullscreen-window;
|
||||
"Mod+C".action = center-column;
|
||||
"Mod+F".action = toggle-window-floating;
|
||||
"Mod+H".action = expand-column-to-available-width;
|
||||
|
||||
"Mod+Minus".action.set-column-width = "-10%";
|
||||
"Mod+Equal".action.set-column-width = "+10%";
|
||||
"Mod+Shift+Minus".action.set-window-height = "-10%";
|
||||
"Mod+Shift+Equal".action.set-window-height = "+10%";
|
||||
|
||||
"Ctrl+Alt+A".action = screenshot;
|
||||
# "Print".action = screenshot-screen;
|
||||
"Alt+Print".action = screenshot-window;
|
||||
|
||||
"Mod+Shift+E".action = quit;
|
||||
}
|
||||
// lib.attrsets.mergeAttrsList (
|
||||
map (n: {
|
||||
"Mod+${toString n}".action.focus-workspace = n;
|
||||
"Mod+Shift+${toString n}".action.move-column-to-workspace = n;
|
||||
}) (lib.range 0 9)
|
||||
);
|
||||
};
|
||||
}
|
||||
87
modules/desktop/wm/niri/default.nix
Normal file
87
modules/desktop/wm/niri/default.nix
Normal file
@@ -0,0 +1,87 @@
|
||||
args@{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.my.desktop.wm.niri;
|
||||
pkg = pkgs.niri-unstable;
|
||||
in
|
||||
{
|
||||
options.my.desktop.wm.niri = {
|
||||
enable = lib.mkEnableOption "Niri";
|
||||
};
|
||||
|
||||
imports = [
|
||||
(lib.mkIf cfg.enable (import ./config.nix args))
|
||||
];
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
config = {
|
||||
niri = {
|
||||
default = [
|
||||
"gnome"
|
||||
"gtk"
|
||||
];
|
||||
"org.freedesktop.impl.portal.Access" = [ "gtk" ];
|
||||
"org.freedesktop.impl.portal.FileChooser" = [ "gtk" ];
|
||||
"org.freedesktop.impl.portal.Notification" = [ "gtk" ];
|
||||
"org.freedesktop.impl.portal.RemoteDesktop" = [ "gnome" ];
|
||||
"org.freedesktop.impl.portal.ScreenCast" = [ "gnome" ];
|
||||
"org.freedesktop.impl.portal.Screenshot" = [ "gnome" ];
|
||||
"org.freedesktop.impl.portal.Secret" = [ "gnome-keyring" ];
|
||||
};
|
||||
};
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-gnome
|
||||
];
|
||||
};
|
||||
programs.uwsm = {
|
||||
enable = true;
|
||||
waylandCompositors = {
|
||||
niri = {
|
||||
prettyName = "niri";
|
||||
comment = "Niri compositor managed by UWSM";
|
||||
binPath = pkgs.writeShellScript "niri-session" ''
|
||||
${lib.getExe pkg} --session
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
package = pkg;
|
||||
};
|
||||
my.home = {
|
||||
home.packages = with pkgs; [
|
||||
wlr-randr
|
||||
wl-clipboard
|
||||
wl-clip-persist
|
||||
cliphist
|
||||
swaynotificationcenter
|
||||
nemo-with-extensions
|
||||
];
|
||||
programs.wofi.enable = true;
|
||||
xdg.configFile."wofi" = {
|
||||
source = ./wofi;
|
||||
recursive = true;
|
||||
};
|
||||
xdg.configFile."wal" = {
|
||||
source = ./wal;
|
||||
recursive = true;
|
||||
};
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
};
|
||||
xdg.configFile."waybar/config.jsonc".text = builtins.toJSON (import ./waybar/config.nix args);
|
||||
xdg.configFile."waybar/style.css" = {
|
||||
source = ./waybar/style.css;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
6
modules/desktop/wm/niri/wal/colors
Normal file
6
modules/desktop/wm/niri/wal/colors
Normal file
@@ -0,0 +1,6 @@
|
||||
#1e1e2e
|
||||
#262636
|
||||
#d9e0ee
|
||||
#89b4fa
|
||||
#f38ba8
|
||||
#cba6f7
|
||||
BIN
modules/desktop/wm/niri/wallpaper.png
Normal file
BIN
modules/desktop/wm/niri/wallpaper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 25 KiB |
118
modules/desktop/wm/niri/waybar/config.nix
Normal file
118
modules/desktop/wm/niri/waybar/config.nix
Normal file
@@ -0,0 +1,118 @@
|
||||
{ ... }:
|
||||
{
|
||||
layer = "top";
|
||||
position = "top";
|
||||
mod = "dock";
|
||||
exclusive = true;
|
||||
passthrough = false;
|
||||
gtk-layer-shell = true;
|
||||
height = 0;
|
||||
|
||||
modules-left = [
|
||||
"clock"
|
||||
"cpu"
|
||||
"memory"
|
||||
"niri/workspaces"
|
||||
];
|
||||
modules-center = [
|
||||
"mpris"
|
||||
];
|
||||
modules-right = [
|
||||
"custom/notification"
|
||||
"tray"
|
||||
"pulseaudio"
|
||||
"pulseaudio#microphone"
|
||||
];
|
||||
|
||||
"niri/workspaces" = {
|
||||
format = "{value}";
|
||||
};
|
||||
cpu = {
|
||||
interval = 1;
|
||||
format = " {}%";
|
||||
max-length = 10;
|
||||
on-click = "";
|
||||
};
|
||||
memory = {
|
||||
interval = 10;
|
||||
format = " {used:0.1f}G";
|
||||
max-length = 10;
|
||||
};
|
||||
"custom/notification" = {
|
||||
tooltip = false;
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
notification = "<span foreground='red'><sup></sup></span>";
|
||||
none = "";
|
||||
dnd-notification = "<span foreground='red'><sup></sup></span>";
|
||||
dnd-none = "";
|
||||
inhibited-notification = "<span foreground='red'><sup></sup></span>";
|
||||
inhibited-none = "";
|
||||
dnd-inhibited-notification = "<span foreground='red'><sup></sup></span>";
|
||||
dnd-inhibited-none = "";
|
||||
};
|
||||
return-type = "json";
|
||||
exec-if = "which swaync-client";
|
||||
exec = "swaync-client -swb";
|
||||
on-double-click = "swaync-client -t -sw";
|
||||
on-click-right = "swaync-client -d -sw";
|
||||
escape = true;
|
||||
};
|
||||
tray = {
|
||||
icon-size = 13;
|
||||
tooltip = false;
|
||||
spacing = 10;
|
||||
};
|
||||
mpris = {
|
||||
player = "musicfox";
|
||||
interval = 1;
|
||||
format = "{status_icon} {artist} - {title}";
|
||||
max-length = 60;
|
||||
status-icons = {
|
||||
paused = "";
|
||||
playing = "";
|
||||
stopped = "";
|
||||
};
|
||||
tooltip = false;
|
||||
toottip-format = "{status_icon} Musicfox {artist} - {album} - {title}";
|
||||
on-scroll-up = "playerctl -p musicfox volume 0.05+";
|
||||
on-scroll-down = "playerctl -p musicfox volume 0.05-";
|
||||
};
|
||||
clock = {
|
||||
format = " {:%H:%M %m.%d}";
|
||||
tooltip = false;
|
||||
};
|
||||
pulseaudio = {
|
||||
format = "{icon} {volume}%";
|
||||
tooltip = false;
|
||||
format-muted = " Muted";
|
||||
on-click = "pamixer -t";
|
||||
on-click-middle = "pavucontrol & disown";
|
||||
on-scroll-up = "pamixer -i 5";
|
||||
on-scroll-down = "pamixer -d 5";
|
||||
scroll-step = 5;
|
||||
format-icons = {
|
||||
headphone = "";
|
||||
hands-free = "";
|
||||
headset = "";
|
||||
phone = "";
|
||||
portable = "";
|
||||
car = "";
|
||||
default = [
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
};
|
||||
"pulseaudio#microphone" = {
|
||||
format = "{format_source}";
|
||||
tooltip = false;
|
||||
format-source = " {volume}%";
|
||||
format-source-muted = " Muted";
|
||||
on-click = "pamixer --default-source -t";
|
||||
on-scroll-up = "pamixer --default-source -i 5";
|
||||
on-scroll-down = "pamixer --default-source -d 5";
|
||||
scroll-step = 5;
|
||||
};
|
||||
}
|
||||
247
modules/desktop/wm/niri/waybar/style.css
Normal file
247
modules/desktop/wm/niri/waybar/style.css
Normal file
@@ -0,0 +1,247 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
font-family: monospace;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: rgba(21, 18, 27, 0);
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
tooltip {
|
||||
color: #cdd6f4;
|
||||
font-family: monospace;
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
border-color: #2a2c36;
|
||||
}
|
||||
|
||||
tooltip label {
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
tooltip.background {
|
||||
background-clip: padding-box;
|
||||
}
|
||||
|
||||
tooltip * {
|
||||
padding: 4px;
|
||||
background-color: transparent;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 5px;
|
||||
color: #313244;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
color: #a6adc8;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: #11111b;
|
||||
background: #a6e3a1;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: #11111b;
|
||||
color: #cdd6f4;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#taskbar button {
|
||||
padding: 5px;
|
||||
color: #313244;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#taskbar button.focused {
|
||||
color: #a6adc8;
|
||||
background: #eba0ac;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#taskbar button.urgent {
|
||||
color: #11111b;
|
||||
background: #a6e3a1;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: #11111b;
|
||||
color: #cdd6f4;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#tray menu {
|
||||
color: #cdd6f4;
|
||||
font-family: monospace;
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
border-color: #2a2c36;
|
||||
}
|
||||
|
||||
#custom-language,
|
||||
#custom-updates,
|
||||
#custom-caffeine,
|
||||
#custom-weather,
|
||||
#window,
|
||||
#clock,
|
||||
#battery,
|
||||
#pulseaudio,
|
||||
#network,
|
||||
#workspaces,
|
||||
#taskbar,
|
||||
#tray,
|
||||
#custom-notification,
|
||||
#mpd,
|
||||
#mpris,
|
||||
#cpu,
|
||||
#memory,
|
||||
#backlight {
|
||||
background: #1e1e2e;
|
||||
padding: 0px 10px;
|
||||
margin: 3px 0px;
|
||||
margin-top: 10px;
|
||||
border: 1px solid #181825;
|
||||
}
|
||||
|
||||
#tray {
|
||||
border-radius: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
margin-left: 10px;
|
||||
padding-right: 0px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
#taskbar {
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
margin-left: 10px;
|
||||
padding-right: 0px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
#custom-language {
|
||||
color: #f38ba8;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
#custom-updates {
|
||||
color: #f5c2e7;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
}
|
||||
|
||||
#custom-notification {
|
||||
color: #cdd6f4;
|
||||
font-size: 20px;
|
||||
border-radius: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
color: rgba(97, 134, 214, 0.973);
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
border: 1px solid #181825;
|
||||
}
|
||||
|
||||
#mpris {
|
||||
color: rgba(97, 134, 214, 0.973);
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
border: 1px solid #181825;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
#window {
|
||||
border-radius: 10px;
|
||||
margin-left: 60px;
|
||||
margin-right: 60px;
|
||||
}
|
||||
|
||||
#window.empty {
|
||||
border-radius: 0px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
window#waybar.empty #window {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #fab387;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
margin-left: 5px;
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #f9e2af;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
color: #fab387;
|
||||
border-radius: 0;
|
||||
border-left: 0;
|
||||
border-right: 0;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: #fab387;
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
border-left: 0;
|
||||
border-right: 0;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #89b4fa;
|
||||
border-right: 0px;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
}
|
||||
|
||||
#pulseaudio.microphone {
|
||||
color: #cba6f7;
|
||||
margin-right: 5px;
|
||||
border-left: 0px;
|
||||
border-radius: 0 10px 10px 0;
|
||||
}
|
||||
|
||||
#battery {
|
||||
color: #a6e3a1;
|
||||
border-radius: 0 10px 10px 0;
|
||||
margin-right: 10px;
|
||||
border-left: 0px;
|
||||
}
|
||||
|
||||
#custom-weather {
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
border-left: 0;
|
||||
border-right: 0;
|
||||
margin-left: 0px;
|
||||
}
|
||||
39
modules/desktop/wm/niri/wofi/config
Normal file
39
modules/desktop/wm/niri/wofi/config
Normal file
@@ -0,0 +1,39 @@
|
||||
## Wofi Config
|
||||
|
||||
## General
|
||||
show=drun
|
||||
prompt=Apps
|
||||
normal_window=true
|
||||
layer=top
|
||||
term=kitty
|
||||
|
||||
## Geometry
|
||||
width=500px
|
||||
height=305px
|
||||
location=0
|
||||
orientation=vertical
|
||||
halign=fill
|
||||
line_wrap=off
|
||||
dynamic_lines=false
|
||||
|
||||
## Images
|
||||
allow_markup=true
|
||||
allow_images=true
|
||||
image_size=24
|
||||
|
||||
## Search
|
||||
exec_search=false
|
||||
hide_search=false
|
||||
parse_search=false
|
||||
insensitive=false
|
||||
|
||||
## Other
|
||||
hide_scroll=true
|
||||
no_actions=true
|
||||
sort_order=default
|
||||
gtk_dark=true
|
||||
filter_rate=100
|
||||
|
||||
## Keys
|
||||
key_expand=Tab
|
||||
key_exit=Escape
|
||||
64
modules/desktop/wm/niri/wofi/style.css
Normal file
64
modules/desktop/wm/niri/wofi/style.css
Normal file
@@ -0,0 +1,64 @@
|
||||
/*
|
||||
* Copyright (C) 2020-2022 Aditya Shakya <adi1090x@gmail.com>
|
||||
*/
|
||||
|
||||
/** ********** Fonts ********** **/
|
||||
* {
|
||||
font-family: monospace;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#window {
|
||||
background-color: --wofi-color0;
|
||||
color: --wofi-color2;
|
||||
border: 2px solid --wofi-color1;
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
#outer-box {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
#input {
|
||||
background-color: --wofi-color1;
|
||||
border: 0px solid --wofi-color3;
|
||||
padding: 8px 12px;
|
||||
}
|
||||
|
||||
#scroll {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#inner-box {
|
||||
}
|
||||
|
||||
#img {
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
#text {
|
||||
color: --wofi-color2;
|
||||
}
|
||||
|
||||
#text:selected {
|
||||
color: --wofi-color0;
|
||||
}
|
||||
|
||||
#entry {
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
#entry:selected {
|
||||
background-color: --wofi-color3;
|
||||
color: --wofi-color0;
|
||||
}
|
||||
|
||||
#unselected {
|
||||
}
|
||||
|
||||
#selected {
|
||||
}
|
||||
|
||||
#input, #entry:selected {
|
||||
border-radius: 4px;
|
||||
}
|
||||
Reference in New Issue
Block a user