This commit is contained in:
2025-11-25 16:50:47 -07:00
parent e0d803ff20
commit 1beb97c222
8 changed files with 192 additions and 257 deletions

View File

@@ -53,9 +53,5 @@
# package bundles # package bundles
../bundles/langs.nix ../bundles/langs.nix
## Development
inputs.currents.homeManagerModules.currents
]; ];
services.currents.enable = true;
} }

View File

@@ -1,4 +1,4 @@
{config, pkgs, ...}: {config, pkgs, inputs, ...}:
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
obsidian obsidian
@@ -16,8 +16,12 @@
../../packages/mako/mako.nix ../../packages/mako/mako.nix
../../packages/fuzzel/fuzzel.nix ../../packages/fuzzel/fuzzel.nix
# ../../packages/avizo/avizo.nix # ../../packages/avizo/avizo.nix
../../packages/niri/niri.nix
# Distrobox containers # Distrobox containers
../../boxes/archlinux/box-archlinux.nix # ../../boxes/archlinux/box-archlinux.nix
inputs.currents.homeManagerModules.currents
]; ];
services.currents.enable = true;
} }

104
home/packages/niri/niri.kdl Normal file
View File

@@ -0,0 +1,104 @@
input {
keyboard {
xkb {
layout "us"
}
}
touchpad {
tap
natural-scroll
accel-speed 0.0
scroll-method "two-finger"
middle-emulation
drag true
tap-button-map "left-right-middle"
disabled-on-external-mouse
}
focus-follows-mouse max-scroll-amount="60%"
}
layout {
gaps 10
center-focused-column "on-overflow"
preset-column-widths {
proportion 0.3333333
proportion 0.5
proportion 0.6666667
}
preset-window-heights{
proportion 0.95
proportion 0.8
proportion 0.75
proportion 0.5
}
default-column-width { proportion 0.6666667; }
focus-ring { off; }
border {
width 4
active-color "#7fbbb3"
inactive-color "#d3c6aa"
urgent-color "#e67e80"
}
}
spawn-at-startup "waybar"
spawn-at-startup "swaybg -i ~/Downloads/wp.jpg"
spawn-at-startup "avizo-service"
binds {
//spawn binds
Super+Shift+Slash {show-hotkey-overlay;}
Super+Return hotkey-overlay-title="Alacritty" {spawn "alacritty";}
Super+R hotkey-overlay-title="Fuzzel" {spawn "fuzzel";}
Super+E hotkey-overlay-title="File Manager" {spawn "pcmanfm";}
Super+B hotkey-overlay-title="Obsidian" {spawn "obsidian";}
Super+Escape hotkey-overlay-title="Lock" {spawn "swaylock --screenshots --clock --indicator --indicator-radius 250 --indicator-thickness 12 --effect-blur 7x5 --ring-color 7fbbb3 --line-color d3c6aa --inside-color 2b3339 --separator-color 83c092";}
Super+Shift+E hotkey-overlay-title="Quit" {quit;}
Super+Q hotkey-overlay-title="Close" {close-window;}
Super+O hotkey-overlay-title="Toggle Overview" {toggle-overview;}
Super+H {focus-column-left;}
Super+J {focus-window-down;}
Super+K {focus-window-up;}
Super+L {focus-column-right;}
Super+Left {focus-column-left;}
Super+Down {focus-window-down;}
Super+Up {focus-window-up;}
Super+Right {focus-column-right;}
Super+Shift+H {move-column-left;}
Super+Shift+J {move-window-down;}
Super+Shift+K {move-window-up;}
Super+Shift+L {move-column-right;}
Super+Shift+Left {move-column-left;}
Super+Shift+Down {move-window-down;}
Super+Shift+Up {move-window-up;}
Super+Shift+Right {move-column-right;}
Super+Home {focus-column-first;}
Super+End {focus-column-last;}
Super+1 {focus-workspace 1;}
Super+2 {focus-workspace 2;}
Super+3 {focus-workspace 3;}
Super+4 {focus-workspace 4;}
Super+5 {focus-workspace 5;}
Super+6 {focus-workspace 6;}
Super+7 {focus-workspace 7;}
Super+8 {focus-workspace 8;}
Super+9 {focus-workspace 9;}
// Super+10 {focus-workspace 10;}
Super+Shift+1 {move-column-to-workspace 1;}
Super+Shift+2 {move-column-to-workspace 2;}
Super+Shift+3 {move-column-to-workspace 3;}
Super+Shift+4 {move-column-to-workspace 4;}
Super+Shift+5 {move-column-to-workspace 5;}
Super+Shift+6 {move-column-to-workspace 6;}
Super+Shift+7 {move-column-to-workspace 7;}
Super+Shift+8 {move-column-to-workspace 8;}
Super+Shift+9 {move-column-to-workspace 9;}
Super+BracketLeft {consume-or-expel-window-left;}
Super+BracketRight {consume-or-expel-window-right;}
Super+Comma {consume-window-into-column;}
Super+Period {expel-window-from-column;}
Super+A {switch-preset-column-width;}
Super+Shift+A {switch-preset-window-height;}
Super+F {maximize-column;}
Super+Shift+F {fullscreen-window;}
Super+V {toggle-window-floating;}
Super+W {toggle-column-tabbed-display;}
}

View File

@@ -0,0 +1,6 @@
{ config, pkgs, ... }:
{
xdg.configFile."niri/config.kdl".source = ./niri.kdl;
}

View File

@@ -1,12 +1,11 @@
* { * {
font-family: JetBrains Mono, Font Awesome 6 Free; font-family: "Hack Nerd Font Mono";
font-size: 13px; font-size: 13px;
} }
window#waybar { window#waybar {
color: #ffffff; color: #d3c6aa;
background-color: #1e3b28; background-color: #2b3339;
border-bottom: 3px solid #8f2fef;
transition-property: background-color; transition-property: background-color;
transition-duration: .5s; transition-duration: .5s;
} }
@@ -15,34 +14,53 @@ window#waybar.hidden {
opacity: 0.2; opacity: 0.2;
} }
.modules-left,
.modules-center,
.modules-right {
border: 3px solid #7fbbb3;
border-radius: 4px;
padding: 0 5px;
}
#custom-weather {
/* border-bottom: #a7c080; */
}
button { button {
box-shadow: inset 0 -3px transparent; box-shadow: inset 0 -3px transparent;
border: none; border: 1px #000000 solid;
border-radius: 0; border-radius: 0;
color: #d3c6aa;
} }
button:hover { button:hover {
background: inherit; background: inherit;
box-shadow: inset 0 -3px #ffffff; box-shadow: inset 0 -3px #7fbbb3;
opacity: 0.8;
} }
#workspaces button { #tags button {
padding: 0 15px; padding: 0 5px;
background-color: transparent; background-color: transparent;
border: 2px solid #8f2fef border: 2px solid #d3c6aa;
margin: 3px;
} }
#workspaces button:hover { #tags button.occupied {
background: rgba(255, 255, 255, 0.2); background: #d3c6aa;
border: 1px solid #2b3339;
color: #2b3339;
} }
#workspaces button.focused { #tags button.focused {
background-color: #8f2fef; background-color: #7fbbb3;
box-shadow: inset 0 -3px #ffffff; color: #2b3339;
border: 1px solid #2b3339;
/* border-bottom: 3px solid #2b3339; */
} }
#workspaces button.urgent { #tags button.urgent {
background-color: #f38ba8; background-color: #e67e80;
} }
#backlight, #backlight,
@@ -55,10 +73,9 @@ button:hover {
#pulseaudio, #pulseaudio,
#temperature, #temperature,
#tray, #tray,
#idle_inhibitor,
#keyboard-state,
#power-profiles-daemon { #power-profiles-daemon {
padding: 0 8px; padding: 0 8px;
color: #d3c6aa;
} }
#window, #window,
@@ -66,126 +83,79 @@ button:hover {
margin: 0 8px; margin: 0 8px;
} }
.modules-left>widget:first-child>#workspaces {
margin-left: 0;
}
.modules-right>widget:last-child>#workspaces {
margin-right: 0;
}
#backlight { #backlight {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #cba6f7; /* border-bottom: 3px solid #7fbbb3; */
} }
#battery { #battery {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #a6e3a1; border-right: 3px solid #7fbbb3;
font-size: 18px;
} }
#battery.critical.discharging { #battery.critical.discharging {
background-color: #f38ba8; background-color: #e67e80;
animation: blink 1s infinite; /* animation: blink 5s infinite; */
} }
#battery.warning.discharging { #battery.warning.discharging {
background-color: #f9e2af; background-color: #dbbc7f;
animation: blink 1s infinite; /* animation: blink 10s infinite; */
} }
@keyframes blink { /* @keyframes blink { */
to { /* to { */
background-color: transparent; /* background-color: transparent; */
} /* } */
} /* } */
#clock { #clock {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #a6e3a1; /* border-bottom: 3px solid #a7c080; */
} }
#cpu { #cpu {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #cba6f7; border-right: 3px solid #7fbbb3;
} }
#memory { #memory {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #f9e2af; border-right: 3px solid #7fbbb3;
}
#mode {
color: #ffffff;
background-color: #8f2fef;
border-bottom: 3px solid #ffffff;
} }
#network { #network {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #a6e3a1; border-right: 3px solid #7fbbb3;
} }
#network.disconnected { #network.disconnected {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #f38ba8; /* border-bottom: 3px solid #f38ba8; */
} }
#pulseaudio { #pulseaudio {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #a6e3a1; border-right: 3px solid #7fbbb3;
} }
#pulseaudio.muted { #pulseaudio.muted {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #f38ba8; /* border-bottom: 3px solid #e67e80; */
} }
#temperature { #temperature {
color: #ffffff;
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #a6e3a1; border-right: 3px solid #7fbbb3;
} }
#temperature.critical { #temperature.critical {
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #f38ba8; /* border-bottom: 3px solid #e67e80; */
} }
#tray { #tray {
background-color: transparent; background-color: transparent;
border-bottom: 3px solid #8f2fef; border-left: 3px solid #7fbbb3;
} }
#idle_inhibitor {
color: #ffffff;
background-color: transparent;
border-bottom: 3px solid #f9e2af;
}
#idle_inhibitor.activated {
color: #1e3b28;
background-color: #f9e2af;
border-bottom: 3px solid #f9e2af;
}
#keyboard-state {
color: #ffffff;
background-color: transparent;
border-bottom: 3px solid #fab387;
}
#power-profiles-daemon {
color: #ffffff;
background-color: transparent;
border-bottom: 3px solid #94e2d5;
}

View File

@@ -1,4 +1,4 @@
{ config, pkgs, ... }: { ... }:
{ {
programs.waybar = { programs.waybar = {
@@ -8,7 +8,7 @@
mainBar = { mainBar = {
layer = "top"; layer = "top";
position = "top"; position = "top";
height = 30; height = 45;
spacing = 4; spacing = 4;
# Module layout # Module layout
@@ -121,10 +121,10 @@
}; };
format = "{icon} {capacity}%"; format = "{icon} {capacity}%";
format-full = "{icon} Full"; format-full = "{icon} Full";
format-charging = "{icon} Charging {capacity}% {time}"; format-charging = "{icon} {capacity}% {time}";
format-plugged = "{icon} Charge complete"; format-plugged = "{icon} ";
format-good = ">{icon} {capacity}%"; format-good = ">{icon} {capacity}%";
format-icons = ["" "" "" "" "" "" "" ""]; format-icons = [" " " " " " " " " "];
}; };
"network#wifi" = { "network#wifi" = {
@@ -154,163 +154,13 @@
on-click = "pavucontrol"; on-click = "pavucontrol";
}; };
}; };
"custom/currents"= { "custom/currents"= {
interval= 150; interval= 150;
exec= "/home/autumn/.local/bin/currents --output"; exec= "/home/autumn/.local/bin/currents --output";
return-type= "json"; return-type= "json";
}; };
}; };
}; };
style = ''
* {
font-family: "Hack Nerd Font Mono";
font-size: 13px;
}
window#waybar {
color: #d3c6aa;
background-color: #2b3339;
border-bottom: 3px solid #7fbbb3;
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
#custom-weather{
border-bottom: #a7c080;
}
button {
box-shadow: inset 0 -3px transparent;
border: 1px #000000 solid;
border-radius: 0;
color:#d3c6aa;
}
button:hover {
background: inherit;
box-shadow: inset 0 -3px #7fbbb3;
}
#tags button {
padding: 0 15px;
background-color: transparent;
border: 2px solid #d3c6aa;
}
#tags button.occupied {
background: #d3c6aa;
border: 1px solid #2b3339;
color:#2b3339;
}
#tags button.focused {
background-color: #7fbbb3;
color: #2b3339;
border: 1px solid #2b3339;
border-bottom: 3px solid #2b3339;
}
#tags button.urgent {
background-color: #e67e80;
}
#backlight,
#battery,
#clock,
#cpu,
#memory,
#mode,
#network,
#pulseaudio,
#temperature,
#tray,
#power-profiles-daemon {
padding: 0 8px;
color:#d3c6aa;
}
#window,
#workspaces {
margin: 0 8px;
}
#backlight {
background-color: transparent;
border-bottom: 3px solid #7fbbb3;
}
#battery {
background-color: transparent;
border-bottom: 3px solid #a7c080;
}
#battery.critical.discharging {
background-color: #e67e80;
animation: blink 5s infinite;
}
#battery.warning.discharging {
background-color: #dbbc7f;
animation: blink 10s infinite;
}
@keyframes blink {
to {
background-color: transparent;
}
}
#clock {
background-color: transparent;
border-bottom: 3px solid #a7c080;
}
#cpu {
background-color: transparent;
border-bottom: 3px solid #7fbbb3;
}
#memory {
background-color: transparent;
border-bottom: 3px solid #dbbc7f;
}
#network {
background-color: transparent;
border-bottom: 3px solid #a7c080;
}
#network.disconnected {
background-color: transparent;
border-bottom: 3px solid #f38ba8;
}
#pulseaudio {
background-color: transparent;
border-bottom: 3px solid #7fbbb3;
}
#pulseaudio.muted {
background-color: transparent;
border-bottom: 3px solid #e67e80;
}
#temperature {
background-color: transparent;
border-bottom: 3px solid #a7c080;
}
#temperature.critical {
background-color: transparent;
border-bottom: 3px solid #e67e80;
}
#tray {
background-color: transparent;
border-bottom: 3px solid #7fbbb3;
}
'';
}; };
xdg.configFile."waybar/style.css".source = ./waybar.css;
} }

View File

@@ -5,6 +5,10 @@
name = "oreo-cursors-plus"; name = "oreo-cursors-plus";
package = pkgs.oreo-cursors-plus; package = pkgs.oreo-cursors-plus;
size = 32; size = 32;
gtk.enable = true; };
gtk.enable = true;
gtk.cursorTheme = {
package = pkgs.oreo-cursors-plus;
name = "oreo-cursors-plus";
}; };
} }

View File

@@ -37,6 +37,7 @@
time.timeZone = "${timezone}"; time.timeZone = "${timezone}";
programs.river-classic.enable = true; programs.river-classic.enable = true;
programs.niri.enable = true;
xdg.portal = { xdg.portal = {
enable = true; enable = true;
config.common.default = "*"; config.common.default = "*";
@@ -126,5 +127,5 @@
system.autoUpgrade.enable = true; system.autoUpgrade.enable = true;
system.autoUpgrade.allowReboot = true; system.autoUpgrade.allowReboot = true;
system.autoUpgrade.flake = "../../flake.nix"; system.autoUpgrade.flake = "../../flake.nix";
qt.platformTheme = "kde6"; # qt.platformTheme = "kde6";
} }