Update
This commit is contained in:
parent
90e8d5577e
commit
55a5c52c51
90
flake.lock
90
flake.lock
@ -1,5 +1,24 @@
|
||||
{
|
||||
"nodes": {
|
||||
"ags": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1721306136,
|
||||
"narHash": "sha256-VKPsIGf3/a+RONBipx4lEE4LXG2sdMNkWQu22LNQItg=",
|
||||
"owner": "Aylur",
|
||||
"repo": "ags",
|
||||
"rev": "344ea72cd3b8d4911f362fec34bce7d8fb37028c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Aylur",
|
||||
"repo": "ags",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"apple-fonts": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
@ -149,7 +168,7 @@
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
@ -400,6 +419,25 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprpanel": {
|
||||
"inputs": {
|
||||
"ags": "ags",
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1724741517,
|
||||
"narHash": "sha256-jC8FN8L4Xl/btXJg/gEPjJfC+NAf0oNnHwOA+goG52Y=",
|
||||
"owner": "Jas-SinghFSU",
|
||||
"repo": "HyprPanel",
|
||||
"rev": "6140778e5d2dc6f71c5ab18c166254490bc26bac",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Jas-SinghFSU",
|
||||
"repo": "HyprPanel",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprutils": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -536,6 +574,38 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1718714799,
|
||||
"narHash": "sha256-FUZpz9rg3gL8NVPKbqU8ei1VkPLsTIfAJ2fdAf5qjak=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1722185531,
|
||||
"narHash": "sha256-veKR07psFoJjINLC8RK4DiLniGGMgF3QMlS4tb74S6k=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "52ec9ac3b12395ad677e8b62106f0b98c1f8569d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1724479785,
|
||||
"narHash": "sha256-pP3Azj5d6M5nmG68Fu4JqZmdGt4S4vqI5f8te+E/FTw=",
|
||||
@ -619,8 +689,9 @@
|
||||
"home-manager": "home-manager",
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"hyprpanel": "hyprpanel",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixvim": "nixvim",
|
||||
"sops-nix": "sops-nix",
|
||||
"spicetify-nix": "spicetify-nix"
|
||||
@ -747,6 +818,21 @@
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
|
@ -30,15 +30,18 @@
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
hyprpanel.url = "github:Jas-SinghFSU/HyprPanel";
|
||||
};
|
||||
|
||||
outputs = inputs@{ nixpkgs, ... }: {
|
||||
nixosConfigurations = {
|
||||
|
||||
nixy = nixpkgs.lib.nixosSystem { # CHANGEME
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
{ _module.args = { inherit inputs; }; }
|
||||
{
|
||||
nixpkgs.overlays = [ inputs.hyprpanel.overlay ];
|
||||
_module.args = { inherit inputs; };
|
||||
}
|
||||
inputs.nixos-hardware.nixosModules.omen-16-n0005ne # CHANGEME
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
./hosts/laptop/configuration.nix # CHANGEME
|
||||
|
@ -1,36 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
battery-watch = pkgs.writeShellScriptBin "battery-watch" ''
|
||||
while true;do
|
||||
battery-plugged &
|
||||
battery-level &
|
||||
sleep 60
|
||||
done
|
||||
'';
|
||||
|
||||
battery-plugged = pkgs.writeShellScriptBin "battery-plugged" ''
|
||||
BATTERY_STATUS=$(cat /sys/class/power_supply/BAT*/status | head -n1)
|
||||
OLD_BATTERY_STATUS=$(cat /tmp/old_battery_status 2>/dev/null || echo "Unknown")
|
||||
if [[ $BATTERY_STATUS != $OLD_BATTERY_STATUS && $OLD_BATTERY_STATUS != "Unknown" ]]; then
|
||||
if [[ $BATTERY_STATUS == "Discharging" ]]; then
|
||||
notif "battery" " Battery is unplugged"
|
||||
else
|
||||
notif "battery" " Battery is plugged in"
|
||||
fi
|
||||
fi
|
||||
echo $BATTERY_STATUS > /tmp/old_battery_status
|
||||
'';
|
||||
|
||||
battery-level = pkgs.writeShellScriptBin "battery-level" ''
|
||||
BATTERY_LEVEL=$(cat /sys/class/power_supply/BAT*/capacity | head -n1)
|
||||
BATTERY_STATUS=$(cat /sys/class/power_supply/BAT*/status | head -n1)
|
||||
if [[ $BATTERY_LEVEL -le 20 ]] && [[ $BATTERY_STATUS == "Discharging" ]]; then
|
||||
notif "battery" " Low battery" "Battery level is $BATTERY_LEVEL%"
|
||||
elif [[ $BATTERY_LEVEL -le 10 ]] && [[ $BATTERY_STATUS == "Discharging" ]]; then
|
||||
notif "battery" " Very low battery" "Battery level is $BATTERY_LEVEL%"
|
||||
# elif [[ $BATTERY_LEVEL -eq 100 ]] && [[ $BATTERY_STATUS -ne "Discharging" ]]; then
|
||||
# notif "battery" " Fully charged"
|
||||
fi
|
||||
'';
|
||||
|
||||
in { home.packages = [ battery-watch battery-plugged battery-level ]; }
|
@ -8,12 +8,6 @@ let
|
||||
|
||||
[[ $1 == "up" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ${increments}%+
|
||||
[[ $1 == "down" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ${increments}%-
|
||||
|
||||
brightness_level=$(${pkgs.brightnessctl}/bin/brightnessctl get)
|
||||
|
||||
message=" Brightness: $brightness_level%"
|
||||
|
||||
notif "brightness" "$message" "extraargs=-h int:value:$brightness_level"
|
||||
'';
|
||||
|
||||
brightness-up = pkgs.writeShellScriptBin "brightness-up" ''
|
||||
|
@ -6,11 +6,9 @@
|
||||
./caffeine
|
||||
./night-shift
|
||||
./screenshot
|
||||
./startup
|
||||
./nerdfont_fzf
|
||||
./notification
|
||||
./battery
|
||||
./compress
|
||||
./misc
|
||||
./system
|
||||
];
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
{ pkgs, config, ... }:
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
homedir = config.home.homeDirectory;
|
||||
increments = "5";
|
||||
|
||||
sound-change = pkgs.writeShellScriptBin "sound-change" ''
|
||||
@ -10,23 +9,6 @@ let
|
||||
[[ $1 == "mute" ]] && wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
[[ $1 == "up" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ "$2%+"
|
||||
[[ $1 == "down" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ "$2%-"
|
||||
|
||||
sink_info=$(wpctl get-volume @DEFAULT_AUDIO_SINK@)
|
||||
|
||||
volume=$(echo "$(echo "$sink_info" | awk '{print $2}' | sed 's/%//')*100" | bc -l | xargs printf "%.0f")
|
||||
muted=false
|
||||
if [[ $sink_info == *"MUTED"* ]]; then
|
||||
muted=true
|
||||
fi
|
||||
|
||||
message=""
|
||||
if [ $muted = true ]; then
|
||||
message=" Muted"
|
||||
else
|
||||
message=" Volume: $volume%"
|
||||
fi
|
||||
|
||||
notif "sound" "$message" "extraargs=-h int:value:$volume"
|
||||
'';
|
||||
|
||||
sound-up = pkgs.writeShellScriptBin "sound-up" ''
|
||||
@ -40,47 +22,4 @@ let
|
||||
sound-toggle = pkgs.writeShellScriptBin "sound-toggle" ''
|
||||
sound-change mute
|
||||
'';
|
||||
|
||||
sound-output = pkgs.writeShellScriptBin "sound-output" ''
|
||||
function parse_sinks(){
|
||||
output=$(wpctl status)
|
||||
sinks=($(echo "$output" | sed 's/ │ //' | awk '/Sinks:/ {flag=1; next} /^$/ {flag=0} flag' | sed 's/ /-/g'))
|
||||
|
||||
for sink in "''${sinks[@]}"; do
|
||||
|
||||
id=""
|
||||
default=false
|
||||
sink=$(echo "$sink" | sed 's/-/ /g')
|
||||
sink_name=$(echo "$sink" | sed 's/\[vol:.*$//')
|
||||
|
||||
if [[ $sink_name == "*"* ]]; then
|
||||
sink_name=$(echo "$sink_name" | sed 's/*//')
|
||||
default=true
|
||||
fi
|
||||
|
||||
id=$(echo "$sink_name" | cut -d'.' -f1)
|
||||
sink_name=$(echo "$sink_name" | sed 's/^[ ]*//;s/[ ]*$//' )
|
||||
sink_name=$(echo "$sink_name" | cut -d'.' -f2 )
|
||||
|
||||
if [[ $default == true ]];then
|
||||
printf "*%s (%d)" "$sink_name" "$id"
|
||||
else
|
||||
printf " %s (%d)" "$sink_name" "$id"
|
||||
fi
|
||||
printf "\n"
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
choosed_sink=$(echo "$(parse_sinks)" | ${pkgs.fzf}/bin/fzf \
|
||||
--border-label "Choose sound output" ) || exit 1
|
||||
|
||||
choosed_sink_id=$(echo "$choosed_sink" | sed 's/.*(\(.*\))/\1/')
|
||||
|
||||
wpctl set-default $choosed_sink_id
|
||||
'';
|
||||
|
||||
in {
|
||||
home.packages =
|
||||
[ sound-output sound-change sound-up sound-down sound-toggle ];
|
||||
}
|
||||
in { home.packages = [ sound-change sound-up sound-down sound-toggle ]; }
|
||||
|
@ -1,17 +0,0 @@
|
||||
# File runned at startup by Hyprland
|
||||
{ pkgs, config, ... }:
|
||||
let
|
||||
startup = pkgs.writeShellScriptBin "startup" ''
|
||||
# Startup is a script called by Hyprland on startup
|
||||
# Because HM enabling services suck.
|
||||
|
||||
[[ ${toString config.var.sops} == "1" ]] && systemctl --user start sops-nix
|
||||
|
||||
battery-watch &
|
||||
${pkgs.waybar}/bin/waybar &
|
||||
|
||||
|
||||
wlr-randr --output "Unknown-1" --off # FIX: REMOVE WEIRD GHOST MONITOR
|
||||
'';
|
||||
|
||||
in { home.packages = [ startup ]; }
|
1
home/system/batsignal/default.nix
Normal file
1
home/system/batsignal/default.nix
Normal file
@ -0,0 +1 @@
|
||||
{ services.batsignal.enable = true; }
|
@ -1,83 +0,0 @@
|
||||
{ config, pkgs, ... }: {
|
||||
|
||||
home.packages = with pkgs; [ libnotify ];
|
||||
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
iconTheme = {
|
||||
name = "Moka";
|
||||
package = pkgs.moka-icon-theme;
|
||||
};
|
||||
settings = {
|
||||
global = {
|
||||
rounded = "yes";
|
||||
origin = "top-center";
|
||||
monitor = "0";
|
||||
alignment = "center";
|
||||
vertical_alignment = "center";
|
||||
width = "400";
|
||||
height = "400";
|
||||
scale = 0;
|
||||
gap_size = 0;
|
||||
progress_bar = true;
|
||||
transparency = 0;
|
||||
text_icon_padding = 0;
|
||||
separator_color = "frame";
|
||||
sort = "yes";
|
||||
idle_threshold = 120;
|
||||
line_height = 0;
|
||||
markup = "full";
|
||||
show_age_threshold = 60;
|
||||
ellipsize = "middle";
|
||||
ignore_newline = "no";
|
||||
stack_duplicates = true;
|
||||
sticky_history = "yes";
|
||||
history_length = 20;
|
||||
always_run_script = true;
|
||||
corner_radius = config.var.theme.rounding;
|
||||
follow = "mouse";
|
||||
font = config.var.theme.font;
|
||||
format = "<b>%s</b>\\n%b";
|
||||
progress_bar_corner_radius = config.var.theme.rounding - 10;
|
||||
#format = ''
|
||||
# <span foreground='#${config.var.theme.colors.accent}'><b>%s %p</b></span>
|
||||
# %b'';
|
||||
frame_color = "#" + config.var.theme.colors.bg;
|
||||
highlight = "#" + config.var.theme.colors.accent;
|
||||
foreground = "#" + config.var.theme.colors.fg;
|
||||
frame_width = 1;
|
||||
offset = "0x10";
|
||||
horizontal_padding = 10;
|
||||
icon_position = "left";
|
||||
indicate_hidden = "yes";
|
||||
min_icon_size = 0;
|
||||
max_icon_size = 64;
|
||||
mouse_left_click = "do_action, close_current";
|
||||
mouse_middle_click = "close_current";
|
||||
mouse_right_click = "close_all";
|
||||
padding = 10;
|
||||
plain_text = "no";
|
||||
separator_height = 2;
|
||||
show_indicators = "yes";
|
||||
shrink = "no";
|
||||
word_wrap = "yes";
|
||||
browser = "${pkgs.qutebrowser}/bin/qutebrowser";
|
||||
};
|
||||
|
||||
fullscreen_delay_everything = { fullscreen = "delay"; };
|
||||
|
||||
urgency_critical = {
|
||||
background = "#" + config.var.theme.colors.c1;
|
||||
foreground = "#" + config.var.theme.colors.c0;
|
||||
};
|
||||
urgency_low = {
|
||||
background = "#" + config.var.theme.colors.bgalt;
|
||||
foreground = "#" + config.var.theme.colors.fgalt;
|
||||
};
|
||||
urgency_normal = {
|
||||
background = "#" + config.var.theme.colors.bgalt;
|
||||
foreground = "#" + config.var.theme.colors.fgalt;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,7 +1,12 @@
|
||||
{ pkgs, config, inputs, ... }: {
|
||||
|
||||
imports =
|
||||
[ ./hyprlock/macos.nix ./hypridle.nix ./hyprpaper.nix ./hyprcursor.nix ];
|
||||
imports = [
|
||||
./hyprlock/macos.nix
|
||||
./hypridle.nix
|
||||
./hyprpaper.nix
|
||||
./hyprcursor.nix
|
||||
./hyprpanel.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
hyprshot
|
||||
@ -9,14 +14,13 @@
|
||||
swappy
|
||||
imv
|
||||
wf-recorder
|
||||
xdg-desktop-portal-hyprland
|
||||
wlr-randr
|
||||
wl-clipboard
|
||||
brightnessctl
|
||||
gnome-themes-extra
|
||||
wlsunset
|
||||
xwayland
|
||||
xdg-desktop-portal-gtk
|
||||
# xwayland
|
||||
# xdg-desktop-portal-gtk
|
||||
qt5ct
|
||||
libva
|
||||
dconf
|
||||
@ -29,21 +33,36 @@
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
||||
# plugins = [ inputs.hyprland-plugins.packages.${pkgs.system}.hyprexpo ]; # TODO: Fix, stack overflow
|
||||
plugins = [ inputs.hyprland-plugins.packages.${pkgs.system}.hyprexpo ];
|
||||
|
||||
settings = {
|
||||
"$mod" = "SUPER";
|
||||
"$shiftMod" = "SUPER_SHIFT";
|
||||
|
||||
exec-once = [
|
||||
"startup"
|
||||
"${pkgs.hypridle}/bin/hypridle"
|
||||
"${pkgs.hyprpaper}/bin/hyprpaper"
|
||||
"${pkgs.bitwarden}/bin/bitwarden"
|
||||
"[[ ${
|
||||
toString config.var.sops
|
||||
} == 1 ]] && systemctl --user start sops-nix"
|
||||
];
|
||||
|
||||
monitor = [ "eDP-2,highres,0x0,1" ",prefered,auto,1" ];
|
||||
|
||||
plugin = {
|
||||
hyprexpo = {
|
||||
columns = 2;
|
||||
gap_size = 5;
|
||||
bg_col = "rgb(111111)";
|
||||
workspace_method =
|
||||
"center current"; # [center/first] [workspace] e.g. first 1 or center m+1
|
||||
|
||||
enable_gesture = true; # laptop touchpad
|
||||
gesture_fingers = 3; # 3 or 4
|
||||
gesture_distance = 300; # how far is the "max"
|
||||
gesture_positive = true; # positive = swipe down. Negative = swipe up.
|
||||
};
|
||||
};
|
||||
|
||||
bind = [
|
||||
"$mod, RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
||||
"$mod, E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
||||
@ -53,6 +72,7 @@
|
||||
"$mod, L, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
||||
"$mod, X, exec, powermenu" # Powermenu
|
||||
"$mod, SPACE, exec, menu" # Launcher
|
||||
"$shiftMod, SPACE, hyprexpo:expo, toggle" # HyprExpo
|
||||
|
||||
"$mod, Q, killactive," # Close window
|
||||
"$mod, T, togglefloating," # Toggle Floating
|
||||
|
@ -1,4 +1,6 @@
|
||||
{ pkgs, ... }: {
|
||||
wayland.windowManager.hyprland.settings.exec-once =
|
||||
[ "${pkgs.hypridle}/bin/hypridle" ];
|
||||
|
||||
services.hypridle = {
|
||||
enable = true;
|
||||
|
@ -1,84 +0,0 @@
|
||||
{ config, ... }: {
|
||||
|
||||
programs.hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
disable_loading_bar = true;
|
||||
grace = 5;
|
||||
no_fade_in = true;
|
||||
no_fade_out = true;
|
||||
};
|
||||
|
||||
background = {
|
||||
monitor = "";
|
||||
path = "$HOME/wallpapers/${config.var.theme.wallpaper}";
|
||||
color = "rgb(${config.var.theme.colors.bg})";
|
||||
|
||||
blur_size = 4;
|
||||
blur_passes = 3;
|
||||
noise = 1.17e-2;
|
||||
contrast = 1.3;
|
||||
brightness = 0.8;
|
||||
vibrancy = 0.21;
|
||||
vibrancy_darkness = 0.0;
|
||||
};
|
||||
|
||||
input-field = [{
|
||||
monitor = "";
|
||||
size = "250, 50";
|
||||
outline_thickness = 3;
|
||||
dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
|
||||
dots_spacing = 0.64; # Scale of dots' absolute size, 0.0 - 1.0
|
||||
dots_center = true;
|
||||
outer_color = "rgb(${config.var.theme.colors.accent})";
|
||||
inner_color = "rgb(${config.var.theme.colors.bg})";
|
||||
font_color = "rgb(${config.var.theme.colors.fg})";
|
||||
fade_on_empty = true;
|
||||
placeholder_text =
|
||||
"Password..."; # Text rendered in the input box when it's empty.
|
||||
position = "0, 80";
|
||||
halign = "center";
|
||||
valign = "bottom";
|
||||
}];
|
||||
|
||||
label = [
|
||||
# Current time
|
||||
{
|
||||
monitor = "";
|
||||
text =
|
||||
''cmd[update:1000] echo "<b><big> $(date +"%H:%M:%S") </big></b>"'';
|
||||
color = "rgb(${config.var.theme.colors.fg})";
|
||||
font_size = 64;
|
||||
font_family = config.var.theme.font;
|
||||
position = "0, 16";
|
||||
halign = "center";
|
||||
valign = "center";
|
||||
}
|
||||
# User label
|
||||
{
|
||||
monitor = "";
|
||||
text = ''
|
||||
Hey <span text_transform="capitalize" size="larger">$USER</span>'';
|
||||
color = "rgb(${config.var.theme.colors.fg})";
|
||||
font_size = config.var.theme.font-size;
|
||||
font_family = config.var.theme.font;
|
||||
position = "0, 0";
|
||||
halign = "center";
|
||||
valign = "center";
|
||||
}
|
||||
# Type to unlock
|
||||
{
|
||||
monitor = "";
|
||||
text = "Type to unlock!";
|
||||
color = "rgb(${config.var.theme.colors.fg})";
|
||||
font_size = config.var.theme.font-size;
|
||||
font_family = config.var.theme.font;
|
||||
position = "0, 30";
|
||||
halign = "center";
|
||||
valign = "bottom";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
@ -1,86 +0,0 @@
|
||||
{ config, ... }: {
|
||||
|
||||
programs.hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
disable_loading_bar = true;
|
||||
grace = 5;
|
||||
no_fade_in = true;
|
||||
no_fade_out = true;
|
||||
};
|
||||
|
||||
background = {
|
||||
monitor = "";
|
||||
color = "rgb(${config.var.theme.colors.bg})";
|
||||
};
|
||||
|
||||
input-field = [{
|
||||
monitor = "";
|
||||
size = "250, 50";
|
||||
outline_thickness = 3;
|
||||
dots_size = 0.2;
|
||||
dots_spacing = 0.64;
|
||||
dots_center = false;
|
||||
outer_color = "rgb(${config.var.theme.colors.bg})";
|
||||
inner_color = "rgb(${config.var.theme.colors.bg})";
|
||||
font_color = "rgb(${config.var.theme.colors.fg})";
|
||||
fade_on_empty = false;
|
||||
placeholder_text = "";
|
||||
position = "1190, -50";
|
||||
halign = "left";
|
||||
valign = "center";
|
||||
}];
|
||||
|
||||
shape = [{
|
||||
monitor = "";
|
||||
size = "520, 200";
|
||||
color = "rgb(${config.var.theme.colors.bg})";
|
||||
rounding = "0";
|
||||
border_size = "3";
|
||||
border_color = "rgba(255, 255, 255, 1.0)";
|
||||
rotate = "0";
|
||||
xray = "false";
|
||||
position = "0, 0";
|
||||
halign = "center";
|
||||
valign = "center";
|
||||
}];
|
||||
|
||||
label = [
|
||||
# Current time
|
||||
{
|
||||
monitor = "";
|
||||
text = ''cmd[update:900] echo "time: $(date +"%H:%M:%S")"'';
|
||||
color = "rgb(${config.var.theme.colors.fg})";
|
||||
font_size = config.var.theme.font-size;
|
||||
font_family = config.var.theme.font-mono;
|
||||
position = "1100, 50";
|
||||
halign = "left";
|
||||
valign = "center";
|
||||
}
|
||||
# Username
|
||||
{
|
||||
monitor = "";
|
||||
text = "username: ${config.var.username}";
|
||||
color = "rgb(${config.var.theme.colors.fg})";
|
||||
font_size = config.var.theme.font-size;
|
||||
font_family = config.var.theme.font-mono;
|
||||
position = "1100, 0";
|
||||
halign = "left";
|
||||
valign = "center";
|
||||
}
|
||||
# Password
|
||||
{
|
||||
monitor = "";
|
||||
text = "password: ";
|
||||
color = "rgb(${config.var.theme.colors.fg})";
|
||||
font_size = config.var.theme.font-size;
|
||||
font_family = config.var.theme.font-mono;
|
||||
position = "1100, -50";
|
||||
halign = "left";
|
||||
valign = "center";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
6
home/system/hyprland/hyprpanel.nix
Normal file
6
home/system/hyprland/hyprpanel.nix
Normal file
@ -0,0 +1,6 @@
|
||||
{ pkgs, config, ... }: {
|
||||
wayland.windowManager.hyprland.settings.exec-once =
|
||||
[ "${pkgs.hyprpanel}/bin/hyprpanel" ];
|
||||
|
||||
home.packages = with pkgs; [ hyprpanel ];
|
||||
}
|
@ -1,4 +1,7 @@
|
||||
{ config, ... }: {
|
||||
{ pkgs, config, ... }: {
|
||||
wayland.windowManager.hyprland.settings.exec-once =
|
||||
[ "${pkgs.hyprpaper}/bin/hyprpaper" ];
|
||||
|
||||
services.hyprpaper = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
@ -1,125 +0,0 @@
|
||||
{ pkgs, ... }: {
|
||||
|
||||
imports = [ ./style.nix ];
|
||||
|
||||
home.packages = with pkgs; [ libnotify ];
|
||||
|
||||
services.swaync = {
|
||||
enable = true;
|
||||
settings = {
|
||||
positionX = "right";
|
||||
positionY = "top";
|
||||
|
||||
control-center-margin-top = 15;
|
||||
control-center-margin-bottom = 15;
|
||||
control-center-margin-right = 15;
|
||||
control-center-margin-left = 15;
|
||||
|
||||
notification-icon-size = 32;
|
||||
notification-body-image-height = 50;
|
||||
notification-body-image-width = 50;
|
||||
|
||||
timeout-low = 5;
|
||||
timeout = 10;
|
||||
timeout-critical = 0;
|
||||
|
||||
fit-to-screen = true;
|
||||
control-center-width = 500;
|
||||
notification-window-width = 400;
|
||||
|
||||
keyboard-shortcuts = true;
|
||||
image-visibility = "when-available";
|
||||
|
||||
transition-time = 200;
|
||||
hide-on-clear = false;
|
||||
hide-on-action = true;
|
||||
script-fail-notify = true;
|
||||
|
||||
widgets = [
|
||||
"menubar"
|
||||
"title"
|
||||
"buttons-grid"
|
||||
"mpris"
|
||||
"volume"
|
||||
"backlight"
|
||||
"dnd"
|
||||
"notifications"
|
||||
];
|
||||
|
||||
widget-config = {
|
||||
title = {
|
||||
text = "Notification Center";
|
||||
clear-all-button = true;
|
||||
button-text = " Clear All";
|
||||
};
|
||||
dnd = { text = "Do Not Disturb"; };
|
||||
mpris = {
|
||||
image-size = 96;
|
||||
image-radius = 7;
|
||||
};
|
||||
volume = { label = ""; };
|
||||
backlight = {
|
||||
label = "";
|
||||
subsystem = "backlight";
|
||||
device = "nvidia_0";
|
||||
};
|
||||
menubar = {
|
||||
"menu#power-buttons" = {
|
||||
label = "";
|
||||
position = "right";
|
||||
actions = [
|
||||
{
|
||||
label = "";
|
||||
command = "systemctl poweroff";
|
||||
}
|
||||
{
|
||||
label = "";
|
||||
command = "systemctl reboot";
|
||||
}
|
||||
{
|
||||
label = "";
|
||||
command = "systemctl suspend";
|
||||
}
|
||||
{
|
||||
"label" = "";
|
||||
"command" = "${pkgs.hyprlock}/bin/hyprlock";
|
||||
}
|
||||
{
|
||||
"label" = "";
|
||||
"command" = "${pkgs.hyprland}/bin/hyprctl dispatch exit";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
"buttons-grid" = {
|
||||
"actions" = [
|
||||
{
|
||||
"label" = "";
|
||||
"command" =
|
||||
"${pkgs.pulseaudio}/bin/pactl set-sink-mute @DEFAULT_SINK@ toggle";
|
||||
}
|
||||
{
|
||||
"label" = "";
|
||||
"command" =
|
||||
"${pkgs.pulseaudio}/bin/pactl set-source-mute @DEFAULT_SOURCE@ toggle";
|
||||
}
|
||||
{
|
||||
"label" = "";
|
||||
"command" = "${pkgs.blueman}/bin/blueman-manager";
|
||||
}
|
||||
{
|
||||
"label" = "";
|
||||
"command" =
|
||||
"${pkgs.grimblast}/bin/grimblast --notify --freeze --wait 1 copysave area ~/Pictures/$(date +%Y-%m-%dT%H%M%S).png";
|
||||
}
|
||||
{
|
||||
"label" = "";
|
||||
"command" = "${pkgs.kooha}/bin/kooha";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
@ -1,315 +0,0 @@
|
||||
{ config, ... }: {
|
||||
|
||||
xdg.configFile."swaync/style.css" = {
|
||||
text = ''
|
||||
@define-color notif-bg #${config.var.theme.colors.bgalt};
|
||||
@define-color notif-fg #${config.var.theme.colors.fgalt};
|
||||
@define-color cc-bg #${config.var.theme.colors.bg};
|
||||
@define-color cc-fg #${config.var.theme.colors.fg};
|
||||
@define-color red #${config.var.theme.colors.c1};
|
||||
|
||||
* {
|
||||
font-family: "${config.var.theme.font}";
|
||||
color: #${config.var.theme.colors.fg};
|
||||
}
|
||||
|
||||
.notification-row {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.notification-row:focus,
|
||||
.notification-row:hover {
|
||||
background: @notif-bg;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.notification {
|
||||
border-radius: ${toString config.var.theme.rounding}px;
|
||||
margin: 6px 12px;
|
||||
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7),
|
||||
0 2px 6px 2px rgba(0, 0, 0, 0.3);
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.notification-content {
|
||||
background: transparent;
|
||||
padding: 6px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: @cc-bg;
|
||||
color: @cc-fg;
|
||||
text-shadow: none;
|
||||
padding: 0;
|
||||
border-radius: 100%;
|
||||
margin-top: 10px;
|
||||
margin-right: 16px;
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
min-width: 24px;
|
||||
min-height: 24px;
|
||||
}
|
||||
|
||||
.close-button:hover {
|
||||
box-shadow: none;
|
||||
background: @red;
|
||||
transition: all 0.15s ease-in-out;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.notification-default-action,
|
||||
.notification-action {
|
||||
padding: 4px;
|
||||
margin: 0;
|
||||
box-shadow: none;
|
||||
background: @cc-bg;
|
||||
color: @cc-fg;
|
||||
}
|
||||
|
||||
.notification-default-action:hover,
|
||||
.notification-action:hover {
|
||||
-gtk-icon-effect: none;
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
|
||||
.notification-default-action {
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
/* When alternative actions are visible */
|
||||
.notification-default-action:not(:only-child) {
|
||||
border-bottom-left-radius: 0px;
|
||||
border-bottom-right-radius: 0px;
|
||||
}
|
||||
|
||||
.notification-action {
|
||||
border-radius: 0px;
|
||||
border-top: none;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
/* add bottom border radius to eliminate clipping */
|
||||
.notification-action:first-child {
|
||||
border-bottom-left-radius: 10px;
|
||||
}
|
||||
|
||||
.notification-action:last-child {
|
||||
border-bottom-right-radius: 10px;
|
||||
border-right: 1px solid @noti-border-color;
|
||||
}
|
||||
|
||||
.image {}
|
||||
|
||||
.body-image {
|
||||
margin-top: 6px;
|
||||
background-color: white;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.summary {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: transparent;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: transparent;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
margin-right: 18px;
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 15px;
|
||||
font-weight: normal;
|
||||
background: transparent;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
/* The "Notifications" and "Do Not Disturb" text widget */
|
||||
.top-action-title {
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.control-center {
|
||||
background-color: @cc-bg;
|
||||
}
|
||||
|
||||
.control-center-list {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.floating-notifications {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/* Window behind control center and on all other monitors */
|
||||
.blank-window {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/*** Widgets ***/
|
||||
|
||||
/* Title widget */
|
||||
.widget-title {
|
||||
margin: 8px;
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
|
||||
.widget-title>button {
|
||||
font-size: initial;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
background: @noti-bg;
|
||||
border: 1px solid @noti-border-color;
|
||||
box-shadow: none;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.widget-title>button:hover {
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
|
||||
/* DND widget */
|
||||
.widget-dnd {
|
||||
margin: 8px;
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
.widget-dnd>switch {
|
||||
font-size: initial;
|
||||
border-radius: 12px;
|
||||
background: @noti-bg;
|
||||
border: 1px solid @noti-border-color;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.widget-dnd>switch:checked {
|
||||
background: @bg-selected;
|
||||
}
|
||||
|
||||
.widget-dnd>switch slider {
|
||||
background: @noti-bg-hover;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
/* Label widget */
|
||||
.widget-label {
|
||||
margin: 8px;
|
||||
}
|
||||
|
||||
.widget-label>label {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
/* Mpris widget */
|
||||
.widget-mpris {
|
||||
/* The parent to all players */
|
||||
}
|
||||
|
||||
.widget-mpris-player {
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
}
|
||||
|
||||
.widget-mpris-title {
|
||||
font-weight: bold;
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
.widget-mpris-subtitle {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
/* Volume and Brightness Widget*/
|
||||
|
||||
.widget-volume {
|
||||
background-color: @noti-bg;
|
||||
padding: 4px 8px 8px 8px;
|
||||
margin: 0px 8px 8px 8px;
|
||||
border-bottom-left-radius: 12px;
|
||||
border-bottom-right-radius: 12px;
|
||||
}
|
||||
|
||||
.widget-backlight {
|
||||
background-color: @noti-bg;
|
||||
padding: 8px 8px 4px 8px;
|
||||
margin: 8px 8px 0px 8px;
|
||||
border-top-left-radius: 12px;
|
||||
border-top-right-radius: 12px;
|
||||
}
|
||||
|
||||
.KB {
|
||||
padding: 4px 8px 4px 8px;
|
||||
margin: 0px 8px 0px 8px;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.power-buttons{
|
||||
background-color: @noti-bg;
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
|
||||
.power-buttons>button {
|
||||
background: transparent;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.power-buttons>button:hover {
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
|
||||
.widget-menubar>box>.menu-button-bar>button{
|
||||
border: none;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.topbar-buttons>button{
|
||||
border: none;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.widget-buttons-grid{
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
border-radius: 12px;
|
||||
background-color: @noti-bg;
|
||||
}
|
||||
|
||||
.widget-buttons-grid>flowbox>flowboxchild>button{
|
||||
background: @noti-bg;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.widget-buttons-grid>flowbox>flowboxchild>button:hover {
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
|
||||
.powermode-buttons{
|
||||
background-color: @noti-bg;
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.powermode-buttons>button {
|
||||
background: transparent;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.powermode-buttons>button:hover {
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
@ -1,337 +0,0 @@
|
||||
{ config, ... }: {
|
||||
services = {
|
||||
blueman-applet.enable = true;
|
||||
network-manager-applet.enable = true;
|
||||
};
|
||||
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
settings = {
|
||||
mainBar = {
|
||||
layer = config.var.theme.waybar.position;
|
||||
position = config.var.theme.waybar.position;
|
||||
spacing = 0;
|
||||
"margin-top" = if config.var.theme.waybar.float
|
||||
&& config.var.theme.waybar.position == "top" then
|
||||
config.var.theme.gaps-out
|
||||
else
|
||||
0;
|
||||
"margin-bottom" = if config.var.theme.waybar.float
|
||||
&& config.var.theme.waybar.position == "bottom" then
|
||||
config.var.theme.gaps-out
|
||||
else
|
||||
0;
|
||||
"margin-left" = if config.var.theme.waybar.float then
|
||||
config.var.theme.gaps-out
|
||||
else
|
||||
0;
|
||||
"margin-right" = if config.var.theme.waybar.float then
|
||||
config.var.theme.gaps-out
|
||||
else
|
||||
0;
|
||||
height = 44;
|
||||
modules-left = [ "custom/logo" "hyprland/window" ];
|
||||
modules-center = [ "hyprland/workspaces" ];
|
||||
modules-right = [
|
||||
"tray"
|
||||
# "backlight"
|
||||
# "pulseaudio"
|
||||
"custom/caffeine"
|
||||
"custom/night-shift"
|
||||
"battery"
|
||||
"clock"
|
||||
"custom/notification"
|
||||
"custom/power"
|
||||
];
|
||||
|
||||
"wlr/taskbar" = {
|
||||
format = "{icon}";
|
||||
"on-click" = "activate";
|
||||
"on-click-right" = "fullscreen";
|
||||
|
||||
"icon-size" = 25;
|
||||
"tooltip-format" = "{title}";
|
||||
};
|
||||
"hyprland/window" = {
|
||||
"format" = "{title:30}";
|
||||
"max-length" = 30;
|
||||
"separate-outputs" = true;
|
||||
rewrite = {
|
||||
"\\s*(.*)\\s+" = "$1"; # Remove trailing whitespace
|
||||
# "\\s*" = # TODO FIXME
|
||||
# "\${USER}@\${HOST}"; # Replace empty string with your username
|
||||
".* - LibreWolf" = "LibreWolf";
|
||||
};
|
||||
};
|
||||
|
||||
"hyprland/workspaces" = {
|
||||
"on-click" = "activate";
|
||||
format = "{icon}";
|
||||
"format-icons" = {
|
||||
"default" = "";
|
||||
"1" = "1";
|
||||
"2" = "2";
|
||||
"3" = "3";
|
||||
"4" = "4";
|
||||
"5" = "5";
|
||||
"6" = "6";
|
||||
"7" = "7";
|
||||
"8" = "8";
|
||||
"9" = "9";
|
||||
"active" = "";
|
||||
"urgent" = "";
|
||||
};
|
||||
"persistent-workspaces" = {
|
||||
"1" = [ ];
|
||||
"2" = [ ];
|
||||
"3" = [ ];
|
||||
"4" = [ ];
|
||||
"5" = [ ];
|
||||
};
|
||||
};
|
||||
|
||||
tray = { spacing = 16; };
|
||||
|
||||
clock = {
|
||||
"tooltip-format" = "<tt>{calendar}</tt>";
|
||||
"format-alt" = " {:%a, %d %b %Y}";
|
||||
format = " {:%I:%M %p}";
|
||||
};
|
||||
|
||||
pulseaudio = {
|
||||
format = "{icon}";
|
||||
"format-bluetooth" = "";
|
||||
nospacing = 1;
|
||||
"tooltip-format" = "Volume : {volume}%";
|
||||
"format-muted" = "";
|
||||
"format-icons" = {
|
||||
"headphone" = "";
|
||||
"default" = [ "" "" "" ];
|
||||
};
|
||||
"on-click" = "sound-toggle";
|
||||
"scroll-step" = 1;
|
||||
};
|
||||
|
||||
"custom/logo" = {
|
||||
format = " ";
|
||||
tooltip = false;
|
||||
on-click = "menu";
|
||||
};
|
||||
|
||||
"custom/notification" = {
|
||||
tooltip = false;
|
||||
format = "{} {icon}";
|
||||
"format-icons" = {
|
||||
notification = "";
|
||||
none = "";
|
||||
"dnd-notification" = " ";
|
||||
"dnd-none" = "";
|
||||
"inhibited-notification" = " ";
|
||||
"inhibited-none" = "";
|
||||
"dnd-inhibited-notification" = " ";
|
||||
"dnd-inhibited-none" = " ";
|
||||
};
|
||||
"return-type" = "json";
|
||||
"exec-if" = "which swaync-client";
|
||||
exec = "swaync-client -swb";
|
||||
"on-click" = "sleep 0.1 && swaync-client -t -sw";
|
||||
"on-click-right" = "sleep 0.1 && swaync-client -d -sw";
|
||||
escape = true;
|
||||
};
|
||||
|
||||
battery = {
|
||||
format = "{capacity}% {icon}";
|
||||
"format-icons" = {
|
||||
"charging" = [ "" "" "" "" "" "" "" "" "" "" ];
|
||||
"default" = [ "" "" "" "" "" "" "" "" "" "" ];
|
||||
};
|
||||
"format-full" = " ";
|
||||
interval = 10;
|
||||
states = {
|
||||
warning = 20;
|
||||
critical = 10;
|
||||
};
|
||||
tooltip = false;
|
||||
};
|
||||
|
||||
"custom/power" = {
|
||||
format = "";
|
||||
tooltip = false;
|
||||
on-click = "powermenu";
|
||||
};
|
||||
"custom/caffeine" = {
|
||||
format = "{}";
|
||||
max-length = 5;
|
||||
interval = 10;
|
||||
exec = "caffeine-status-icon";
|
||||
"on-click" = "caffeine";
|
||||
# exec-if = "pgrep spotify";
|
||||
# return-type = "";
|
||||
};
|
||||
"custom/night-shift" = {
|
||||
format = "{}";
|
||||
max-length = 5;
|
||||
interval = 10;
|
||||
exec = "night-shift-status-icon";
|
||||
"on-click" = "night-shift";
|
||||
};
|
||||
backlight = {
|
||||
device = "nvidia_0";
|
||||
format = "{icon}";
|
||||
"format-icons" = [ " " " " "" "" "" "" "" "" "" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
style = ''
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
min-height: 0;
|
||||
font-family: "${config.var.theme.font}";
|
||||
color: #${config.var.theme.colors.fg};
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: ${
|
||||
if config.var.theme.waybar.transparent then
|
||||
"rgba(0, 0, 0, 0)"
|
||||
else
|
||||
"#${config.var.theme.colors.bg}"
|
||||
};
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
border-radius: ${
|
||||
if config.var.theme.waybar.float then
|
||||
toString config.var.theme.rounding
|
||||
else
|
||||
"0"
|
||||
}px;
|
||||
font-size: ${toString config.var.theme.waybar.font-size}px;
|
||||
}
|
||||
|
||||
.modules-left, .modules-center, .modules-right {
|
||||
border-radius: ${
|
||||
if config.var.theme.waybar.float then
|
||||
toString config.var.theme.rounding
|
||||
else
|
||||
"0"
|
||||
}px;
|
||||
background-color: #${config.var.theme.colors.bg};
|
||||
padding: 2px 6px;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
all: initial; /* Remove GTK theme values (waybar #1351) */
|
||||
min-width: 0; /* Fix weird spacing in materia (waybar #450) */
|
||||
box-shadow: inset 0 -3px transparent; /* Use box-shadow instead of border so the text isn't offset */
|
||||
padding: 6px 18px;
|
||||
margin: 6px 3px;
|
||||
border-radius: 4px;
|
||||
background-color: #${config.var.theme.colors.bgalt};
|
||||
color: #${config.var.theme.colors.fgalt};
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: #${config.var.theme.colors.accentFg};
|
||||
background-color: #${config.var.theme.colors.accent};
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
box-shadow: inherit;
|
||||
text-shadow: inherit;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: #${config.var.theme.colors.c1};
|
||||
}
|
||||
|
||||
#window > * {
|
||||
font-family: "${config.var.theme.font-mono}";
|
||||
}
|
||||
|
||||
#memory,
|
||||
#custom-power,
|
||||
#custom-notification,
|
||||
#custom-caffeine,
|
||||
#custom-night-shift,
|
||||
#battery,
|
||||
#backlight,
|
||||
#pulseaudio,
|
||||
#network,
|
||||
#clock,
|
||||
#tray,
|
||||
#backlight{
|
||||
border-radius: 9px;
|
||||
margin: 6px 3px;
|
||||
padding: 6px 12px;
|
||||
background-color: #${config.var.theme.colors.bgalt};
|
||||
color: #${config.var.theme.colors.fgalt};
|
||||
}
|
||||
|
||||
#tray menu {
|
||||
background-color: #${config.var.theme.colors.bgalt};
|
||||
color: #${config.var.theme.colors.fgalt};
|
||||
}
|
||||
|
||||
#custom-logo {
|
||||
padding-right: 7px;
|
||||
font-size: ${toString config.var.theme.waybar.font-size}px;
|
||||
color: #${config.var.theme.colors.accent};
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #f38ba8;
|
||||
color: #181825;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.warning,
|
||||
#battery.critical,
|
||||
#battery.urgent {
|
||||
background-color: #ff0048;
|
||||
color: #181825;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
background-color: #${config.var.theme.colors.bgalt};
|
||||
color: #${config.var.theme.colors.fgalt};
|
||||
animation: none;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
background-color: #${config.var.theme.colors.accent};
|
||||
color: #${config.var.theme.colors.accentFg};
|
||||
}
|
||||
|
||||
|
||||
tooltip {
|
||||
border-radius: 8px;
|
||||
padding: 15px;
|
||||
background-color: #${config.var.theme.colors.bgalt};
|
||||
color: #${config.var.theme.colors.fgalt};
|
||||
}
|
||||
|
||||
tooltip label {
|
||||
padding: 5px;
|
||||
background-color: #${config.var.theme.colors.bgalt};
|
||||
color: #${config.var.theme.colors.fgalt};
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
@ -21,16 +21,14 @@
|
||||
../../home/scripts # All scripts
|
||||
|
||||
# System (Desktop environment like stuff)
|
||||
# ../../home/system/dunst
|
||||
../../home/system/gtk
|
||||
../../home/system/batsignal
|
||||
../../home/system/zathura
|
||||
../../home/system/hyprland
|
||||
../../home/system/waybar
|
||||
../../home/system/wlogout
|
||||
../../home/system/wofi
|
||||
../../home/system/mime
|
||||
../../home/system/udiskie
|
||||
../../home/system/swaync
|
||||
|
||||
./secrets # You should probably remove this line
|
||||
];
|
||||
@ -49,10 +47,7 @@
|
||||
wireguard-tools
|
||||
|
||||
# Dev
|
||||
wails
|
||||
pkg-config
|
||||
go
|
||||
cargo
|
||||
nodejs
|
||||
python3
|
||||
jq
|
||||
@ -78,7 +73,6 @@
|
||||
vscode
|
||||
firefox
|
||||
neovide
|
||||
brave
|
||||
];
|
||||
|
||||
# Import wallpapers into $HOME/wallpapers
|
||||
|
@ -1,6 +1,4 @@
|
||||
{ pkgs, ... }: {
|
||||
networking.networkmanager.enable = true;
|
||||
systemd.services.NetworkManager-wait-online.enable = false;
|
||||
|
||||
environment.systemPackages = with pkgs; [ networkmanagerapplet ];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user