1
1
Fork 0

Compare commits

..

48 commits

Author SHA1 Message Date
b30f6e22a6
hyprland: enable mouse refocus
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
4595580e23
toggle: remove debug flag
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
7361295ff1
nix: change nixpkgs-local dir
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
67303011f2
hyprland: disable shadow for tiled windows
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
82961fa55a
hyprland: modify binds
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
c0b0163722
anyrun: fix build
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
f683b90e45
boot: enable hibernation for mynix
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
b2489b2e04
nix: format with alejandra
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:43:24 -05:00
c78b4ce2ee
minimize: remove extraneous +
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:42:14 -05:00
bddacf341c
toggle: refactor with proper flags
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:42:14 -05:00
661ee80da0
screenshot: enable freeze
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:42:14 -05:00
23bf7c6b8d
waybar: add office workspace
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:42:14 -05:00
9f92539135
wireshark: fix gui package
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
478bb904b5
nano: show linenumbers
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
0bafe677a8
hyprland: replace browser tag
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
3c0f160cab
hyprland: switch to custom accel profile for trackball
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
2a50437892
hyprland: reduce repeat delay
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
50523aa0b9
hyprland: focus window under mouse on close
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
7dae76f489
hyprland: move binds section to variables.nix
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
f1f1a81bec
hyprland: disable layer animations
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
3705c2e818
libvirt: use env var to specify uri
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
a71db4c9d8
laptop: disable includeBuildDependencies
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
505e6dc583
hyprland: refactor binds and rules
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
29972bf2d8
nix: switch to alejandra formatter
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
17b699964c
caddy: modify Caddyfile
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
bf2f2d5485
netbird: initial disabled service
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
a4de5f3324
headscale: initial disabled container
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
a1aabe4528
nix: update flake.lock
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
12883d7453
nix: gnome-shell-extensions moved to top-level
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
0dbce20189
xdg: fix portal for gnome
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
bf3637818b
hyprlock: disable immediate render
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
6a753ad0b2
hyprland: handle dpms on lid switch when inhibited
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
3ae6c4ed6f
mynix: use performance profile index 1
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
9a4377d6a8
screenshot: disable rounding and freezing
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
672b4de105
hyprland: disable fullscreen vrr
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
802f3c677c
laptop: enable building while offline
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
6898d99268
wireshark: initial program
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
e78677ad34
hyprland: modify binds
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
3658f80a6b
hyprlock: fix desktop flicker after resuming from suspend
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
a038320587
nix: fix console build
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
fa5765e5f2
nix: update flake.lock
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
1f62a179d7
nix: lock hyprland to v0.43.0
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
65f3133c79
kitty: fix padding
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
5563375ab4
hyprland: use special_fallthrough for scratchpad
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
1f6207ae96
nixos: remove support for script install
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
3f2f381d32
git: update readme with warning
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
6200244837
agenix: fix keys
Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00
53c8575116
git: migrate to forgejo
Squashes 1,331 commits

Signed-off-by: Myned <dev@bjork.tech>
2024-09-12 19:41:21 -05:00

View file

@ -4,6 +4,7 @@
pkgs, pkgs,
... ...
}: }:
with lib; let
with lib; let with lib; let
bash = "${pkgs.bash}/bin/bash"; bash = "${pkgs.bash}/bin/bash";
blueberry = "${pkgs.blueberry}/bin/blueberry"; blueberry = "${pkgs.blueberry}/bin/blueberry";
@ -32,6 +33,8 @@ with lib; let
wttrbar = "${pkgs.wttrbar}/bin/wttrbar"; wttrbar = "${pkgs.wttrbar}/bin/wttrbar";
cfg = config.custom.programs.waybar; cfg = config.custom.programs.waybar;
in {
options.custom.programs.waybar.enable = mkOption {default = false;};
in { in {
options.custom.programs.waybar.enable = mkOption {default = false;}; options.custom.programs.waybar.enable = mkOption {default = false;};
@ -46,6 +49,52 @@ in {
### SETTINGS ### ### SETTINGS ###
# https://github.com/Alexays/Waybar/wiki/Configuration # https://github.com/Alexays/Waybar/wiki/Configuration
#?? pkill -SIGUSR2 -x waybar #?? pkill -SIGUSR2 -x waybar
settings = let
## INHERIT ##
#!! Module defaults are not accurate to documentation
# TODO: Submit pull request to fix in addition to inconsistent hyphen vs underscore
# https://github.com/Alexays/Waybar/wiki/Module:-Cava
cava-config = {
cava_config = null; # Default: null?
framerate = 30; # Default: 30?
autosens = 1; # Default: 1
# sensitivity = 0; # Default: 100?
bars = 16; # Default: 2
lower_cutoff_freq = 50; # Default: 50?
higher_cutoff_freq = 10000; # Default: 10000?
sleep_timer = 5; # Default: 0
hide_on_silence = true; # Default: false
method = "pipewire"; # Default: pulse
source = "auto"; # Default: auto?
sample_rate = 44100; # Default: 44100?
sample_bits = 16; # Default: 16?
stereo = false; # Default: true
reverse = false; # Default: false
bar_delimiter = 32; # ASCII code for space, default: 59 or ;
monstercat = true; # Default: false?
waves = true; # Default: false?
noise_reduction = 0.2; # Default: 0.77?
input_delay = 1; # Default: 4
format-icons = [
""
""
""
""
""
""
""
""
]; # !! Required
on-click = easyeffects;
on-scroll-up = "${swayosd-client} --output-volume raise";
on-scroll-down = "${swayosd-client} --output-volume lower";
rotate = 180;
};
in {
status = {
## GLOBAL ##
layer = "top";
position = "bottom";
settings = let settings = let
## INHERIT ## ## INHERIT ##
#!! Module defaults are not accurate to documentation #!! Module defaults are not accurate to documentation
@ -93,6 +142,26 @@ in {
layer = "top"; layer = "top";
position = "bottom"; position = "bottom";
## POSITION ##
modules-left = [
"custom/power"
"custom/inhibitor"
"custom/vpn"
"custom/vm"
"hyprland/workspaces"
];
modules-center = [
"clock"
"custom/weather"
];
modules-right = [
"mpris"
"tray"
"wireplumber"
"bluetooth"
"network"
"battery"
];
## POSITION ## ## POSITION ##
modules-left = [ modules-left = [
"custom/power" "custom/power"
@ -114,6 +183,14 @@ in {
"battery" "battery"
]; ];
## MODULES ##
# https://github.com/Alexays/Waybar/wiki/Module:-Custom
"custom/power" = {
format = "";
on-click = "${systemctl} poweroff";
on-click-right = "${systemctl} reboot";
on-click-middle = "${loginctl} terminate-session ''";
};
## MODULES ## ## MODULES ##
# https://github.com/Alexays/Waybar/wiki/Module:-Custom # https://github.com/Alexays/Waybar/wiki/Module:-Custom
"custom/power" = { "custom/power" = {
@ -123,12 +200,26 @@ in {
on-click-middle = "${loginctl} terminate-session ''"; on-click-middle = "${loginctl} terminate-session ''";
}; };
"custom/inhibitor" = {
interval = 5;
exec = "~/.config/waybar/scripts/inhibitor.sh";
on-click = "~/.local/bin/inhibit";
};
"custom/inhibitor" = { "custom/inhibitor" = {
interval = 5; interval = 5;
exec = "~/.config/waybar/scripts/inhibitor.sh"; exec = "~/.config/waybar/scripts/inhibitor.sh";
on-click = "~/.local/bin/inhibit"; on-click = "~/.local/bin/inhibit";
}; };
"custom/vm" = {
interval = 5;
exec = "~/.config/waybar/scripts/vm.sh";
on-click = "~/.local/bin/vm -x ${
if config.custom.hidpi
then "/scale:140"
else ""
}";
};
"custom/vm" = { "custom/vm" = {
interval = 5; interval = 5;
exec = "~/.config/waybar/scripts/vm.sh"; exec = "~/.config/waybar/scripts/vm.sh";
@ -139,12 +230,27 @@ in {
}"; }";
}; };
"custom/vpn" = {
interval = 5;
exec = "~/.config/waybar/scripts/vpn.sh";
on-click = "~/.local/bin/vpn mypi3";
};
"custom/vpn" = { "custom/vpn" = {
interval = 5; interval = 5;
exec = "~/.config/waybar/scripts/vpn.sh"; exec = "~/.config/waybar/scripts/vpn.sh";
on-click = "~/.local/bin/vpn mypi3"; on-click = "~/.local/bin/vpn mypi3";
}; };
# https://github.com/Alexays/Waybar/wiki/Module:-Idle-Inhibitor
# FIXME: Not currently usable
# https://github.com/Alexays/Waybar/issues/690
idle_inhibitor = {
format = "{icon}";
format-icons = {
activated = "󰅶";
deactivated = "󰾪";
};
};
# https://github.com/Alexays/Waybar/wiki/Module:-Idle-Inhibitor # https://github.com/Alexays/Waybar/wiki/Module:-Idle-Inhibitor
# FIXME: Not currently usable # FIXME: Not currently usable
# https://github.com/Alexays/Waybar/issues/690 # https://github.com/Alexays/Waybar/issues/690
@ -156,8 +262,17 @@ in {
}; };
}; };
# https://github.com/Alexays/Waybar/wiki/Module:-Hyprland
# https://github.com/Alexays/Waybar/wiki/Module:-Hyprland # https://github.com/Alexays/Waybar/wiki/Module:-Hyprland
# https://www.nerdfonts.com/cheat-sheet # https://www.nerdfonts.com/cheat-sheet
"hyprland/workspaces" = {
show-special = true;
format = "{icon}";
format-icons = {
android = "";
dropdown = "󰞷";
game = "󰊴";
music = "󰝚";
"hyprland/workspaces" = { "hyprland/workspaces" = {
show-special = true; show-special = true;
format = "{icon}"; format = "{icon}";
@ -168,6 +283,7 @@ in {
music = "󰝚"; music = "󰝚";
office = "󰈙"; office = "󰈙";
pip = "󰹙"; pip = "󰹙";
pip = "󰹙";
scratchpad = ""; scratchpad = "";
steam = "󰓓"; steam = "󰓓";
terminal = ""; terminal = "";
@ -175,9 +291,28 @@ in {
wallpaper = "󰏩"; wallpaper = "󰏩";
}; };
}; };
steam = "󰓓";
terminal = "";
vm = "󰢹";
wallpaper = "󰏩";
};
};
cava = cava-config;
cava = cava-config; cava = cava-config;
# https://github.com/Alexays/Waybar/wiki/Module:-Clock
clock = {
# https://fmt.dev/latest/syntax.html#chrono-specs
format = "{:%a %b %d %I:%M %p}"; # Mon Jan 01 12:00 AM
tooltip-format = "{calendar}";
calendar.format = {
months = "<span color='#eee8d5'>{}</span>";
weeks = "<span color='#eee8d5'>{}</span>";
weekdays = "<span color='#93a1a1'>{}</span>";
days = "<span color='#586e75'>{}</span>";
today = "<span color='#eee8d5'>{}</span>";
};
# https://github.com/Alexays/Waybar/wiki/Module:-Clock # https://github.com/Alexays/Waybar/wiki/Module:-Clock
clock = { clock = {
# https://fmt.dev/latest/syntax.html#chrono-specs # https://fmt.dev/latest/syntax.html#chrono-specs
@ -198,7 +333,19 @@ in {
on-scroll-up = "${swayosd-client} --output-volume raise"; on-scroll-up = "${swayosd-client} --output-volume raise";
on-scroll-down = "${swayosd-client} --output-volume lower"; on-scroll-down = "${swayosd-client} --output-volume lower";
}; };
# FIXME: Click release event sends to incorrect layer without sleeping
# https://github.com/hyprwm/Hyprland/issues/1348
on-click = "${swaync-client} --toggle-panel";
# on-click-right = easyeffects;
on-scroll-up = "${swayosd-client} --output-volume raise";
on-scroll-down = "${swayosd-client} --output-volume lower";
};
# https://github.com/bjesus/wttrbar
"custom/weather" = {
format = "{}°";
interval = 60 * 60;
return-type = "json";
# https://github.com/bjesus/wttrbar # https://github.com/bjesus/wttrbar
"custom/weather" = { "custom/weather" = {
format = "{}°"; format = "{}°";
@ -211,9 +358,13 @@ in {
"--fahrenheit" "--fahrenheit"
"--hide-conditions" "--hide-conditions"
"--main-indicator temp_F" "--main-indicator temp_F"
"--location 'Cedar Falls Iowa'"
]; ];
}; };
"cava#reverse" =
cava-config
// {
"cava#reverse" = "cava#reverse" =
cava-config cava-config
// { // {
@ -236,7 +387,37 @@ in {
on-scroll-up = "${swayosd-client} --output-volume raise"; on-scroll-up = "${swayosd-client} --output-volume raise";
on-scroll-down = "${swayosd-client} --output-volume lower"; on-scroll-down = "${swayosd-client} --output-volume lower";
}; };
# https://github.com/Alexays/Waybar/wiki/Module:-MPRIS
mpris = {
format = "{player_icon} {dynamic}";
format-paused = "{status_icon} {dynamic}";
dynamic-len = 50;
dynamic-order = [
"title"
"artist"
];
dynamic-separator = " 󰧟 ";
player-icons.default = "󰎈";
status-icons.paused = "";
on-click-middle = ""; # TODO: Close music player
on-scroll-up = "${swayosd-client} --output-volume raise";
on-scroll-down = "${swayosd-client} --output-volume lower";
};
# https://github.com/Alexays/Waybar/wiki/Module:-WirePlumber
wireplumber = {
format = "{icon} {volume}%";
format-muted = "󰸈";
format-icons = [
"󰕿"
"󰖀"
"󰕾"
];
on-click = easyeffects;
on-click-right = "${swayosd-client} --output-volume mute-toggle";
on-scroll-up = "${swayosd-client} --output-volume raise";
on-scroll-down = "${swayosd-client} --output-volume lower";
};
# https://github.com/Alexays/Waybar/wiki/Module:-WirePlumber # https://github.com/Alexays/Waybar/wiki/Module:-WirePlumber
wireplumber = { wireplumber = {
format = "{icon} {volume}%"; format = "{icon} {volume}%";
@ -252,6 +433,16 @@ in {
on-scroll-down = "${swayosd-client} --output-volume lower"; on-scroll-down = "${swayosd-client} --output-volume lower";
}; };
# https://github.com/Alexays/Waybar/wiki/Module:-Bluetooth
bluetooth = {
format-disabled = "󰂲";
format-off = "󰂲";
format-on = "󰂯";
format-connected = "󰂱";
on-click = blueberry;
on-click-right = "${bluetoothctl} disconnect";
on-click-middle = "${rfkill} toggle bluetooth"; # Toggle bluetooth on/off
};
# https://github.com/Alexays/Waybar/wiki/Module:-Bluetooth # https://github.com/Alexays/Waybar/wiki/Module:-Bluetooth
bluetooth = { bluetooth = {
format-disabled = "󰂲"; format-disabled = "󰂲";
@ -263,6 +454,22 @@ in {
on-click-middle = "${rfkill} toggle bluetooth"; # Toggle bluetooth on/off on-click-middle = "${rfkill} toggle bluetooth"; # Toggle bluetooth on/off
}; };
# https://github.com/Alexays/Waybar/wiki/Module:-Network
network = {
format = "{icon}";
format-icons = {
disabled = "";
disconnected = "";
ethernet = "󰈀";
linked = "";
wifi = [
"󰤯"
"󰤟"
"󰤢"
"󰤥"
"󰤨"
];
};
# https://github.com/Alexays/Waybar/wiki/Module:-Network # https://github.com/Alexays/Waybar/wiki/Module:-Network
network = { network = {
format = "{icon}"; format = "{icon}";
@ -283,7 +490,31 @@ in {
on-click = nm-connection-editor; on-click = nm-connection-editor;
on-click-right = "~/.local/bin/network"; # Toggle networking on/off on-click-right = "~/.local/bin/network"; # Toggle networking on/off
}; };
on-click = nm-connection-editor;
on-click-right = "~/.local/bin/network"; # Toggle networking on/off
};
# https://github.com/Alexays/Waybar/wiki/Module:-Battery
"battery" = {
format = "{icon} {power:.0f}W";
format-icons = [
"󰂃"
"󰁺"
"󰁻"
"󰁼"
"󰁽"
"󰁾"
"󰁿"
"󰂀"
"󰂁"
"󰂂"
"󰁹"
];
interval = 5;
states = {
critical = 15;
warning = 30;
};
# https://github.com/Alexays/Waybar/wiki/Module:-Battery # https://github.com/Alexays/Waybar/wiki/Module:-Battery
"battery" = { "battery" = {
format = "{icon} {power:.0f}W"; format = "{icon} {power:.0f}W";
@ -310,6 +541,10 @@ in {
}; };
}; };
}; };
on-click = "~/.local/bin/power"; # Toggle power-saver mode
};
};
};
}; };
# TODO: Convert to writeShellApplication # TODO: Convert to writeShellApplication