Compare commits

...

9 commits

Author SHA1 Message Date
e0d5144389
Re-style waybar
Some checks failed
EVAL x86_64-linux.picard
BUILD x86_64-linux.picard
UPLOAD x86_64-linux.picard
DOWNLOAD x86_64-linux.picard
CACHIX x86_64-linux.picard
ATTIC x86_64-linux.picard
/ test (push) Successful in 30m25s
2025-01-10 20:51:00 +01:00
37de97df46
Use rofi-power-menu 2025-01-10 20:50:46 +01:00
66fd1c3066
Format 2025-01-10 20:43:25 +01:00
12f1800aed
Emacs experiments 2025-01-10 20:42:58 +01:00
0c4a52f6ec
Emacs default frame title 2025-01-10 20:42:46 +01:00
1411269c58
Move out the waybar config 2025-01-10 10:41:05 +01:00
8c18115208
Add math-preview executable used by the math-preview Emacs package 2025-01-10 10:40:37 +01:00
ba9775666b
Re-enable Sway Notification Center 2025-01-10 10:39:29 +01:00
12698af186
Add math-preview Emacs package 2025-01-10 10:39:18 +01:00
8 changed files with 167 additions and 186 deletions

View file

@ -47,6 +47,7 @@ in
qadwaitadecorations
kdePackages.qtwayland
copilot-node-server
math-preview
]
++ (with hunspellDicts; [
en_US-large

View file

@ -56,6 +56,7 @@
(mouse-autoselect-window t)
(treesit-font-lock-level 4)
(custom-file "~/.config/emacs/custom.el")
(frame-title-format "%b - Emacs")
:config
(set-face-background 'vertical-border (face-background 'default))
(set-display-table-slot standard-display-table 'vertical-border (make-glyph-code ?┃))
@ -1020,7 +1021,7 @@ This is meant to be an helper to be called from the window manager."
"test"
(interactive)
(with-selected-frame
(make-frame '((name . "floating")
(make-frame '((name . "Emacs Selector")
(minibuffer . only)
(fullscreen . 0) ; no fullscreen
(undecorated . t) ; remove title bar

View file

@ -27,7 +27,7 @@ in
../waybar
../swayidle
../gammastep
# ../swaync
../swaync
../foot
];

View file

@ -280,26 +280,29 @@ window-rule {
}
window-rule {
geometry-corner-radius 4
clip-to-geometry true
geometry-corner-radius 4
clip-to-geometry true
}
window-rule {
match app-id=r#"^spotify$"#
open-maximized true
open-on-workspace "spotify"
match app-id=r#"^spotify$"#
open-maximized true
open-on-workspace "spotify"
}
window-rule {
match app-id=r#"^Slack$"#
open-maximized true
match app-id=r#"^Slack$"#
open-maximized true
}
window-rule {
match app-id=r#"^Element"#
open-maximized true
match app-id=r#"^Element"#
open-maximized true
}
window-rule {
match app-id=r#"^Emacs Selector$"#
}
@ -332,6 +335,7 @@ binds {
Mod+G { spawn "emacsclient" "-c" "--eval" "(switch-to-buffer (gptel \"*ChatGPT*\"))"; }
Mod+Shift+C { spawn "emacsclient" "-c" "--eval" "(org-roam-dailies-capture-today)"; }
Super+Alt+L { spawn "swaylock"; }
Mod+Space { spawn "rofi" "-show" "menu" "-modi" "menu:rofi-power-menu"; }
// Example volume keys mappings for PipeWire & WirePlumber.

View file

@ -0,0 +1,78 @@
{
"layer": "top",
"position": "left",
"width": 36,
"margin": "12 0 12 0",
"spacing": 2,
"modules-left": ["clock", "custom/sep", "niri/window"],
"modules-center": ["niri/workspaces"],
"modules-right": [
"tray",
"custom/sep",
"temperature",
"custom/sep",
"pulseaudio",
"custom/powermenu"
],
"custom/sep": {
"format": "──"
// "format": ""
},
"custom/powermenu": {
"on-click": "rofi -show menu -modi menu:rofi-power-menu",
"format": "",
"tooltip": false
},
"niri/workspaces": {
"format": "{icon}",
"on-click": "activate",
"format-icons": {
"active": "",
"urgent": "",
"default": ""
}
},
"niri/window": {
"rotate": 90,
"rewrite": {
"(.*) — Mozilla Firefox": " $1",
"(.*) - Emacs": " $1",
"(.*) - Slack": " $1"
}
},
"clock": {
"tooltip": true,
"format": "{:%H\n%M}",
"tooltip-format": "{:%Y-%m-%d}"
},
"tray": {
"icon-size": 20,
"spacing": 5,
"show-passive-items": "false"
},
"temperature": {
"rotate": 90,
"hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
"critical-threshold": 80,
"format": "{icon} {temperatureC}°C",
"format-icons": ["", "", ""]
},
"pulseaudio": {
"rotate": 90,
"format": "{icon} {volume}%",
"format-bluetooth": "{icon} {volume}%",
"format-muted": "MUTE ",
"format-icons": {
"headphones": "",
"handsfree": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", ""]
},
"scroll-step": 3,
"on-click": "pavucontrol",
"on-click-right": "pactl set-source-mute @DEFAULT_SOURCE@ toggle"
}
}

View file

@ -7,144 +7,23 @@
programs.waybar = {
enable = true;
systemd.enable = true;
style = builtins.readFile ./style.css;
settings = {
mainBar = {
ipc = true;
layer = "top";
position = "top";
height = 30;
modules-left = [
"wlr/mode"
"hyprland/workspaces"
"niri/workspaces"
];
modules-center = [
"hyprland/window"
"niri/window"
];
modules-right = [
"network"
"tray"
"pulseaudio"
"cpu"
"memory"
"temperature"
"backlight"
"battery"
"clock"
];
"hyprland/workspaces" = {
all-outputs = true;
disable-scroll-wraparound = true;
# format = "{icon}";
on-click = "activate";
# format-icons = {
# "1" = "";
# "2" = "";
# "3" = "";
# "9" = "ﬧ";
# urgent = "";
# };
# sort-by-number = true;
};
"wlr/mode" = {
tooltip = false;
};
"wlr/window" = {
max_length = 50;
};
tray = {
spacing = 10;
};
battery = {
format = "{capacity}% {icon}";
format-alt = "{time} {icon}";
format-charging = "{capacity}% ";
format-icons = [
" "
" "
" "
" "
" "
];
format-plugged = "{capacity}% ";
states = {
critical = 15;
warning = 30;
};
};
clock = {
format-alt = "{:%Y-%m-%d}";
tooltip-format = "{:%Y-%m-%d | %H:%M}";
};
cpu = {
format = "{usage}% ";
tooltip = false;
};
memory = {
format = "{}% ";
};
network = {
interval = 1;
format-alt = "{ifname}: {ipaddr}/{cidr}";
format-disconnected = "Disconnected ";
format-ethernet = "{ifname}: {ipaddr}/{cidr} 󰈀 up: {bandwidthUpBits:>4} down: {bandwidthDownBits:>4}";
format-linked = "{ifname} (No IP) ";
format-wifi = "{essid} ({signalStrength}%) {ipaddr}/{cidr} up: {bandwidthUpBits:>4} down: {bandwidthDownBits:>4}";
};
pulseaudio = {
format = "{volume}% {icon} {format_source}";
format-bluetooth = "{volume}% {icon} {format_source}";
format-bluetooth-muted = " {icon} {format_source}";
format-icons = {
car = "";
default = [
" "
" "
" "
];
handsfree = "";
headphones = " ";
headset = "";
phone = "";
portable = "";
};
format-muted = " {format_source}";
format-source = "{volume}% ";
format-source-muted = "";
on-click = "${pkgs.pavucontrol}/bin/pavucontrol";
};
"wlr/mode" = {
format = ''<span style="italic">{}</span>'';
};
temperature = {
critical-threshold = 80;
format = "{temperatureC}°C {icon}";
format-icons = [
""
""
""
];
hwmon-path = "/sys/class/hwmon/hwmon2/temp1_input"; # picard FIXME
# hwmon-path = "/sys/class/thermal/thermal_zone4/temp"; # thinkpad
};
backlight = {
device = "ddcci2";
format = "{percent}% {icon}";
format-icons = [
" "
" "
];
};
};
};
};
catppuccin.waybar.enable = lib.mkForce false;
home.activation.linkWaybarConfig = lib.hm.dag.entryAnywhere ''
if [ ! -d "$HOME/.config/waybar" ]; then
$DRY_RUN_CMD mkdir -p "$HOME/.config/waybar"
$DRY_RUN_CMD ln -s "$HOME/projects/aciceri/nixfleet/hmModules/waybar/config.json" "$HOME/.config/waybar/config"
$DRY_RUN_CMD ln -s "$HOME/projects/aciceri/nixfleet/hmModules/waybar/style.css" "$HOME/.config/waybar/style.css"
fi
'';
home.packages = with pkgs; [
rofi-power-menu
];
# waybar needs the hyprctl binary in PATH when started in hyprland
# TODO still needed?
systemd.user.services.waybar.Service.Environment = "PATH=${lib.makeBinPath [ pkgs.hyprland ]}";
}

View file

@ -1,54 +1,71 @@
* {
border: none;
border-radius: 0;
min-height: 0;
font-family: Fira Code;
font-family: "Iosevka Comfy", "FontAwesome", "Nerd Font";
font-size: 1.35rem;
font-weight: 600;
background: none;
}
window#waybar {
background: rgba(255, 255, 255, 0.05);
color: white;
font-size: 1.2rem;
color: #a5adcb;
background-color: #181926;
border-top-right-radius: 5px;
border-bottom-right-radius: 5px;
}
.modules-left,
.modules-right,
.modules-center {
padding: 12px 4px;
}
#workspaces button {
padding: 0 10px;
background: transparent;
color: white;
font-size: 2rem;
tooltip {
color: #a5adcb;
background-color: #181926;
text-shadow: none;
}
#workspaces button.active {
box-shadow: inset 0 -5px red;
tooltip * {
color: #a5adcb;
text-shadow: none;
}
#workspaces button.focused,
#custom-sep {
color: #494d64;
}
#workspaces button:hover {
box-shadow: inset 0 -5px white;
box-shadow: inherit;
text-shadow: inherit;
}
#workspaces button {
color: #5b6078;
background: none;
padding: 0;
}
#workspaces button:hover {
color: #a6da95;
}
#workspaces button.active {
color: #f5bde6;
}
#temperature {
color: #eed49f;
}
#clock {
font-weight: 600;
color: #8bd5ca;
}
#custom-bluetooth_devices {
color: #8aadf4;
}
#pulseaudio {
color: #a6da95;
}
#pulseaudio.muted {
color: #ed8796;
}
#workspaces button.urgent {
/* background: @theme_fg_color; */
/* color: @theme_selected_bg_color; */
}
#mode {
margin: 0 4px;
padding: 0 4px;
/* background: @theme_fg_color; */
/* color: @unfocused_borders; */
}
#pulseaudio,
#network,
#cpu,
#memory,
#disk,
#temperature,
#battery,
#language,
#clock,
#tray {
margin: 0 4px;
padding: 0 2px;
#custom-powermenu {
margin: 12px 0 0 0;
color: #6e738d;
}

View file

@ -164,6 +164,7 @@ let
terraform-mode
diredfl
org-modern
math-preview
org-roam
org-roam-ql
org-roam-ui