mirror of
https://gitlab.com/Zaney/zaneyos.git
synced 2025-06-25 06:23:59 +02:00
Adding back waybar, wallpapers, and fonts
This commit is contained in:
parent
32a9191fce
commit
5c04d0dc11
BIN
config/fonts/JetBrainsMono.ttf
Normal file
BIN
config/fonts/JetBrainsMono.ttf
Normal file
Binary file not shown.
BIN
config/fonts/NotoColorEmoji.ttf
Normal file
BIN
config/fonts/NotoColorEmoji.ttf
Normal file
Binary file not shown.
BIN
config/fonts/Symbols-Regular.ttf
Normal file
BIN
config/fonts/Symbols-Regular.ttf
Normal file
Binary file not shown.
BIN
config/fonts/UniSans-Heavy.otf
Normal file
BIN
config/fonts/UniSans-Heavy.otf
Normal file
Binary file not shown.
@ -1,11 +1,24 @@
|
||||
{ pkgs, config, lib, inputs, host, ... }:
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
inputs,
|
||||
host,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
theme = config.colorScheme.palette;
|
||||
hyprplugins = inputs.hyprland-plugins.packages.${pkgs.system};
|
||||
inherit (import ../hosts/${host}/variables.nix)
|
||||
browser borderAnim terminal extraMonitorSettings;
|
||||
in with lib; {
|
||||
browser
|
||||
borderAnim
|
||||
terminal
|
||||
extraMonitorSettings
|
||||
;
|
||||
in
|
||||
with lib;
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
@ -13,178 +26,190 @@ in with lib; {
|
||||
plugins = [
|
||||
# hyprplugins.hyprtrails
|
||||
];
|
||||
extraConfig = let
|
||||
modifier = "SUPER";
|
||||
in concatStrings [ ''
|
||||
monitor=,preferred,auto,1
|
||||
${extraMonitorSettings}
|
||||
general {
|
||||
gaps_in = 6
|
||||
gaps_out = 8
|
||||
border_size = 2
|
||||
col.active_border = rgba(${theme.base0C}ff) rgba(${theme.base0D}ff) rgba(${theme.base0B}ff) rgba(${theme.base0E}ff) 45deg
|
||||
col.inactive_border = rgba(${theme.base00}cc) rgba(${theme.base01}cc) 45deg
|
||||
layout = dwindle
|
||||
resize_on_border = true
|
||||
}
|
||||
extraConfig =
|
||||
let
|
||||
modifier = "SUPER";
|
||||
in
|
||||
concatStrings [
|
||||
''
|
||||
monitor=,preferred,auto,1
|
||||
${extraMonitorSettings}
|
||||
general {
|
||||
gaps_in = 6
|
||||
gaps_out = 8
|
||||
border_size = 2
|
||||
col.active_border = rgba(${theme.base0C}ff) rgba(${theme.base0D}ff) rgba(${theme.base0B}ff) rgba(${theme.base0E}ff) 45deg
|
||||
col.inactive_border = rgba(${theme.base00}cc) rgba(${theme.base01}cc) 45deg
|
||||
layout = dwindle
|
||||
resize_on_border = true
|
||||
}
|
||||
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_options = grp:alt_shift_toggle
|
||||
kb_options=caps:super
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = false
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
accel_profile = flat
|
||||
}
|
||||
env = NIXOS_OZONE_WL, 1
|
||||
env = NIXPKGS_ALLOW_UNFREE, 1
|
||||
env = XDG_CURRENT_DESKTOP, Hyprland
|
||||
env = XDG_SESSION_TYPE, wayland
|
||||
env = XDG_SESSION_DESKTOP, Hyprland
|
||||
env = GDK_BACKEND, wayland
|
||||
env = CLUTTER_BACKEND, wayland
|
||||
env = QT_QPA_PLATFORM, wayland
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION, 1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR, 1
|
||||
env = MOZ_ENABLE_WAYLAND, 1
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
}
|
||||
misc {
|
||||
mouse_move_enables_dpms = true
|
||||
key_press_enables_dpms = false
|
||||
}
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = winIn, 0.1, 1.1, 0.1, 1.1
|
||||
bezier = winOut, 0.3, -0.3, 0, 1
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
${if borderAnim == true then ''
|
||||
animation = borderangle, 1, 30, liner, loop
|
||||
'' else ''
|
||||
''}
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
decoration {
|
||||
rounding = 10
|
||||
drop_shadow = false
|
||||
blur {
|
||||
enabled = true
|
||||
size = 5
|
||||
passes = 3
|
||||
new_optimizations = on
|
||||
ignore_opacity = on
|
||||
}
|
||||
}
|
||||
plugin {
|
||||
hyprtrails {
|
||||
color = rgba(${theme.base0A}ff)
|
||||
}
|
||||
}
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = systemctl --user import-environment QT_QPA_PLATFORMTHEME WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = swww init
|
||||
exec-once = waybar
|
||||
exec-once = swaync
|
||||
exec-once = wallsetter
|
||||
exec-once = nm-applet --indicator
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
bind = ${modifier},Return,exec,${terminal}
|
||||
bind = ${modifier}SHIFT,Return,exec,rofi-launcher
|
||||
bind = ${modifier}SHIFT,W,exec,web-search
|
||||
bind = ${modifier}SHIFT,N,exec,swaync-client -rs
|
||||
${if browser == "google-chrome" then ''
|
||||
bind = ${modifier},W,exec,google-chrome-stable
|
||||
'' else ''
|
||||
bind = ${modifier},W,exec,${browser}
|
||||
''}
|
||||
bind = ${modifier},E,exec,emopicker9000
|
||||
bind = ${modifier},S,exec,screenshootin
|
||||
bind = ${modifier},D,exec,discord
|
||||
bind = ${modifier},O,exec,obs
|
||||
bind = ${modifier},G,exec,gimp
|
||||
bind = ${modifier}SHIFT,G,exec,godot4
|
||||
bind = ${modifier},T,exec,thunar
|
||||
bind = ${modifier},M,exec,spotify
|
||||
bind = ${modifier},Q,killactive,
|
||||
bind = ${modifier},P,pseudo,
|
||||
bind = ${modifier}SHIFT,I,togglesplit,
|
||||
bind = ${modifier},F,fullscreen,
|
||||
bind = ${modifier}SHIFT,F,togglefloating,
|
||||
bind = ${modifier}SHIFT,C,exit,
|
||||
bind = ${modifier}SHIFT,left,movewindow,l
|
||||
bind = ${modifier}SHIFT,right,movewindow,r
|
||||
bind = ${modifier}SHIFT,up,movewindow,u
|
||||
bind = ${modifier}SHIFT,down,movewindow,d
|
||||
bind = ${modifier}SHIFT,h,movewindow,l
|
||||
bind = ${modifier}SHIFT,l,movewindow,r
|
||||
bind = ${modifier}SHIFT,k,movewindow,u
|
||||
bind = ${modifier}SHIFT,j,movewindow,d
|
||||
bind = ${modifier},left,movefocus,l
|
||||
bind = ${modifier},right,movefocus,r
|
||||
bind = ${modifier},up,movefocus,u
|
||||
bind = ${modifier},down,movefocus,d
|
||||
bind = ${modifier},h,movefocus,l
|
||||
bind = ${modifier},l,movefocus,r
|
||||
bind = ${modifier},k,movefocus,u
|
||||
bind = ${modifier},j,movefocus,d
|
||||
bind = ${modifier},1,workspace,1
|
||||
bind = ${modifier},2,workspace,2
|
||||
bind = ${modifier},3,workspace,3
|
||||
bind = ${modifier},4,workspace,4
|
||||
bind = ${modifier},5,workspace,5
|
||||
bind = ${modifier},6,workspace,6
|
||||
bind = ${modifier},7,workspace,7
|
||||
bind = ${modifier},8,workspace,8
|
||||
bind = ${modifier},9,workspace,9
|
||||
bind = ${modifier},0,workspace,10
|
||||
bind = ${modifier}SHIFT,SPACE,movetoworkspace,special
|
||||
bind = ${modifier},SPACE,togglespecialworkspace
|
||||
bind = ${modifier}SHIFT,1,movetoworkspace,1
|
||||
bind = ${modifier}SHIFT,2,movetoworkspace,2
|
||||
bind = ${modifier}SHIFT,3,movetoworkspace,3
|
||||
bind = ${modifier}SHIFT,4,movetoworkspace,4
|
||||
bind = ${modifier}SHIFT,5,movetoworkspace,5
|
||||
bind = ${modifier}SHIFT,6,movetoworkspace,6
|
||||
bind = ${modifier}SHIFT,7,movetoworkspace,7
|
||||
bind = ${modifier}SHIFT,8,movetoworkspace,8
|
||||
bind = ${modifier}SHIFT,9,movetoworkspace,9
|
||||
bind = ${modifier}SHIFT,0,movetoworkspace,10
|
||||
bind = ${modifier}CONTROL,right,workspace,e+1
|
||||
bind = ${modifier}CONTROL,left,workspace,e-1
|
||||
bind = ${modifier},mouse_down,workspace, e+1
|
||||
bind = ${modifier},mouse_up,workspace, e-1
|
||||
bindm = ${modifier},mouse:272,movewindow
|
||||
bindm = ${modifier},mouse:273,resizewindow
|
||||
bind = ALT,Tab,cyclenext
|
||||
bind = ALT,Tab,bringactivetotop
|
||||
bind = ,XF86AudioRaiseVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bind = ,XF86AudioLowerVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
binde = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = ,XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = ,XF86AudioPause, exec, playerctl play-pause
|
||||
bind = ,XF86AudioNext, exec, playerctl next
|
||||
bind = ,XF86AudioPrev, exec, playerctl previous
|
||||
bind = ,XF86MonBrightnessDown,exec,brightnessctl set 5%-
|
||||
bind = ,XF86MonBrightnessUp,exec,brightnessctl set +5%
|
||||
'' ];
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_options = grp:alt_shift_toggle
|
||||
kb_options=caps:super
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = false
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
accel_profile = flat
|
||||
}
|
||||
env = NIXOS_OZONE_WL, 1
|
||||
env = NIXPKGS_ALLOW_UNFREE, 1
|
||||
env = XDG_CURRENT_DESKTOP, Hyprland
|
||||
env = XDG_SESSION_TYPE, wayland
|
||||
env = XDG_SESSION_DESKTOP, Hyprland
|
||||
env = GDK_BACKEND, wayland
|
||||
env = CLUTTER_BACKEND, wayland
|
||||
env = QT_QPA_PLATFORM, wayland
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION, 1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR, 1
|
||||
env = MOZ_ENABLE_WAYLAND, 1
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
}
|
||||
misc {
|
||||
mouse_move_enables_dpms = true
|
||||
key_press_enables_dpms = false
|
||||
}
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = winIn, 0.1, 1.1, 0.1, 1.1
|
||||
bezier = winOut, 0.3, -0.3, 0, 1
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
${
|
||||
if borderAnim == true then
|
||||
''
|
||||
animation = borderangle, 1, 30, liner, loop
|
||||
''
|
||||
else
|
||||
''''
|
||||
}
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
decoration {
|
||||
rounding = 10
|
||||
drop_shadow = false
|
||||
blur {
|
||||
enabled = true
|
||||
size = 5
|
||||
passes = 3
|
||||
new_optimizations = on
|
||||
ignore_opacity = on
|
||||
}
|
||||
}
|
||||
plugin {
|
||||
hyprtrails {
|
||||
color = rgba(${theme.base0A}ff)
|
||||
}
|
||||
}
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = systemctl --user import-environment QT_QPA_PLATFORMTHEME WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = swww init
|
||||
exec-once = waybar
|
||||
exec-once = swaync
|
||||
exec-once = nm-applet --indicator
|
||||
exec-once = lxqt-policykit-agent
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
bind = ${modifier},Return,exec,${terminal}
|
||||
bind = ${modifier}SHIFT,Return,exec,rofi-launcher
|
||||
bind = ${modifier}SHIFT,W,exec,web-search
|
||||
bind = ${modifier}SHIFT,N,exec,swaync-client -rs
|
||||
${
|
||||
if browser == "google-chrome" then
|
||||
''
|
||||
bind = ${modifier},W,exec,google-chrome-stable
|
||||
''
|
||||
else
|
||||
''
|
||||
bind = ${modifier},W,exec,${browser}
|
||||
''
|
||||
}
|
||||
bind = ${modifier},E,exec,emopicker9000
|
||||
bind = ${modifier},S,exec,screenshootin
|
||||
bind = ${modifier},D,exec,discord
|
||||
bind = ${modifier},O,exec,obs
|
||||
bind = ${modifier},G,exec,gimp
|
||||
bind = ${modifier}SHIFT,G,exec,godot4
|
||||
bind = ${modifier},T,exec,thunar
|
||||
bind = ${modifier},M,exec,spotify
|
||||
bind = ${modifier},Q,killactive,
|
||||
bind = ${modifier},P,pseudo,
|
||||
bind = ${modifier}SHIFT,I,togglesplit,
|
||||
bind = ${modifier},F,fullscreen,
|
||||
bind = ${modifier}SHIFT,F,togglefloating,
|
||||
bind = ${modifier}SHIFT,C,exit,
|
||||
bind = ${modifier}SHIFT,left,movewindow,l
|
||||
bind = ${modifier}SHIFT,right,movewindow,r
|
||||
bind = ${modifier}SHIFT,up,movewindow,u
|
||||
bind = ${modifier}SHIFT,down,movewindow,d
|
||||
bind = ${modifier}SHIFT,h,movewindow,l
|
||||
bind = ${modifier}SHIFT,l,movewindow,r
|
||||
bind = ${modifier}SHIFT,k,movewindow,u
|
||||
bind = ${modifier}SHIFT,j,movewindow,d
|
||||
bind = ${modifier},left,movefocus,l
|
||||
bind = ${modifier},right,movefocus,r
|
||||
bind = ${modifier},up,movefocus,u
|
||||
bind = ${modifier},down,movefocus,d
|
||||
bind = ${modifier},h,movefocus,l
|
||||
bind = ${modifier},l,movefocus,r
|
||||
bind = ${modifier},k,movefocus,u
|
||||
bind = ${modifier},j,movefocus,d
|
||||
bind = ${modifier},1,workspace,1
|
||||
bind = ${modifier},2,workspace,2
|
||||
bind = ${modifier},3,workspace,3
|
||||
bind = ${modifier},4,workspace,4
|
||||
bind = ${modifier},5,workspace,5
|
||||
bind = ${modifier},6,workspace,6
|
||||
bind = ${modifier},7,workspace,7
|
||||
bind = ${modifier},8,workspace,8
|
||||
bind = ${modifier},9,workspace,9
|
||||
bind = ${modifier},0,workspace,10
|
||||
bind = ${modifier}SHIFT,SPACE,movetoworkspace,special
|
||||
bind = ${modifier},SPACE,togglespecialworkspace
|
||||
bind = ${modifier}SHIFT,1,movetoworkspace,1
|
||||
bind = ${modifier}SHIFT,2,movetoworkspace,2
|
||||
bind = ${modifier}SHIFT,3,movetoworkspace,3
|
||||
bind = ${modifier}SHIFT,4,movetoworkspace,4
|
||||
bind = ${modifier}SHIFT,5,movetoworkspace,5
|
||||
bind = ${modifier}SHIFT,6,movetoworkspace,6
|
||||
bind = ${modifier}SHIFT,7,movetoworkspace,7
|
||||
bind = ${modifier}SHIFT,8,movetoworkspace,8
|
||||
bind = ${modifier}SHIFT,9,movetoworkspace,9
|
||||
bind = ${modifier}SHIFT,0,movetoworkspace,10
|
||||
bind = ${modifier}CONTROL,right,workspace,e+1
|
||||
bind = ${modifier}CONTROL,left,workspace,e-1
|
||||
bind = ${modifier},mouse_down,workspace, e+1
|
||||
bind = ${modifier},mouse_up,workspace, e-1
|
||||
bindm = ${modifier},mouse:272,movewindow
|
||||
bindm = ${modifier},mouse:273,resizewindow
|
||||
bind = ALT,Tab,cyclenext
|
||||
bind = ALT,Tab,bringactivetotop
|
||||
bind = ,XF86AudioRaiseVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bind = ,XF86AudioLowerVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
binde = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = ,XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = ,XF86AudioPause, exec, playerctl play-pause
|
||||
bind = ,XF86AudioNext, exec, playerctl next
|
||||
bind = ,XF86AudioPrev, exec, playerctl previous
|
||||
bind = ,XF86MonBrightnessDown,exec,brightnessctl set 5%-
|
||||
bind = ,XF86MonBrightnessUp,exec,brightnessctl set +5%
|
||||
''
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
|
BIN
config/wallpapers/zaney-wallpaper.jpg
Normal file
BIN
config/wallpapers/zaney-wallpaper.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.7 MiB |
384
config/waybar.nix
Normal file
384
config/waybar.nix
Normal file
@ -0,0 +1,384 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
host,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
palette = config.colorScheme.palette;
|
||||
betterTransition = "all 0.3s cubic-bezier(.55,-0.68,.48,1.682)";
|
||||
inherit (import ../hosts/${host}/variables.nix) clock24h;
|
||||
in
|
||||
with lib;
|
||||
{
|
||||
# Configure & Theme Waybar
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
package = pkgs.waybar;
|
||||
settings = [
|
||||
{
|
||||
layer = "top";
|
||||
position = "top";
|
||||
modules-center = [ "hyprland/workspaces" ];
|
||||
modules-left = [
|
||||
"custom/startmenu"
|
||||
"hyprland/window"
|
||||
"pulseaudio"
|
||||
"cpu"
|
||||
"memory"
|
||||
];
|
||||
modules-right = [
|
||||
"custom/hyprbindings"
|
||||
"custom/exit"
|
||||
"idle_inhibitor"
|
||||
"custom/themeselector"
|
||||
"custom/notification"
|
||||
"battery"
|
||||
"clock"
|
||||
"tray"
|
||||
];
|
||||
|
||||
"hyprland/workspaces" = {
|
||||
format = "{name}";
|
||||
format-icons = {
|
||||
default = " ";
|
||||
active = " ";
|
||||
urgent = " ";
|
||||
};
|
||||
on-scroll-up = "hyprctl dispatch workspace e+1";
|
||||
on-scroll-down = "hyprctl dispatch workspace e-1";
|
||||
};
|
||||
"clock" = {
|
||||
format = if clock24h == true then '' {:L%H:%M}'' else '' {:L%I:%M %p}'';
|
||||
tooltip = true;
|
||||
tooltip-format = "<big>{:%A, %d.%B %Y }</big><tt><br><small>{calendar}</small></tt>";
|
||||
};
|
||||
"hyprland/window" = {
|
||||
max-length = 25;
|
||||
separate-outputs = false;
|
||||
rewrite = {
|
||||
"" = " 🙈 No Windows? ";
|
||||
};
|
||||
};
|
||||
"memory" = {
|
||||
interval = 5;
|
||||
format = " {}%";
|
||||
tooltip = true;
|
||||
};
|
||||
"cpu" = {
|
||||
interval = 5;
|
||||
format = " {usage:2}%";
|
||||
tooltip = true;
|
||||
};
|
||||
"disk" = {
|
||||
format = " {free}";
|
||||
tooltip = true;
|
||||
};
|
||||
"network" = {
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
format-ethernet = " {bandwidthDownOctets}";
|
||||
format-wifi = "{icon} {signalStrength}%";
|
||||
format-disconnected = "";
|
||||
tooltip = false;
|
||||
};
|
||||
"tray" = {
|
||||
spacing = 12;
|
||||
};
|
||||
"pulseaudio" = {
|
||||
format = "{icon} {volume}% {format_source}";
|
||||
format-bluetooth = "{volume}% {icon} {format_source}";
|
||||
format-bluetooth-muted = " {icon} {format_source}";
|
||||
format-muted = " {format_source}";
|
||||
format-source = " {volume}%";
|
||||
format-source-muted = "";
|
||||
format-icons = {
|
||||
headphone = "";
|
||||
hands-free = "";
|
||||
headset = "";
|
||||
phone = "";
|
||||
portable = "";
|
||||
car = "";
|
||||
default = [
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
on-click = "sleep 0.1 && pavucontrol";
|
||||
};
|
||||
"custom/themeselector" = {
|
||||
tooltip = false;
|
||||
format = "";
|
||||
on-click = "sleep 0.1 && theme-selector";
|
||||
};
|
||||
"custom/exit" = {
|
||||
tooltip = false;
|
||||
format = "";
|
||||
on-click = "sleep 0.1 && wlogout";
|
||||
};
|
||||
"custom/startmenu" = {
|
||||
tooltip = false;
|
||||
format = " ";
|
||||
# exec = "rofi -show drun";
|
||||
on-click = "sleep 0.1 && rofi-launcher";
|
||||
};
|
||||
"custom/hyprbindings" = {
|
||||
tooltip = false;
|
||||
format = " Bindings";
|
||||
on-click = "sleep 0.1 && list-hypr-bindings";
|
||||
};
|
||||
"idle_inhibitor" = {
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
activated = "";
|
||||
deactivated = "";
|
||||
};
|
||||
tooltip = "true";
|
||||
};
|
||||
"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-click = "sleep 0.1 && task-waybar";
|
||||
escape = true;
|
||||
};
|
||||
"battery" = {
|
||||
states = {
|
||||
warning = 30;
|
||||
critical = 15;
|
||||
};
|
||||
format = "{icon} {capacity}%";
|
||||
format-charging = " {capacity}%";
|
||||
format-plugged = " {capacity}%";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
on-click = "";
|
||||
tooltip = false;
|
||||
};
|
||||
}
|
||||
];
|
||||
style = concatStrings [
|
||||
''
|
||||
* {
|
||||
font-size: 16px;
|
||||
font-family: JetBrainsMono Nerd Font, Font Awesome, sans-serif;
|
||||
font-weight: bold;
|
||||
}
|
||||
window#waybar {
|
||||
background-color: #${palette.base00};
|
||||
border-bottom: 1px solid rgba(26,27,38,0);
|
||||
border-radius: 0px;
|
||||
color: #${palette.base0F};
|
||||
}
|
||||
#workspaces {
|
||||
background: #${palette.base01};
|
||||
margin: 2px;
|
||||
padding: 0px 1px;
|
||||
border-radius: 15px;
|
||||
border: 0px;
|
||||
font-style: normal;
|
||||
color: #${palette.base00};
|
||||
}
|
||||
#workspaces button {
|
||||
padding: 0px 5px;
|
||||
margin: 4px 3px;
|
||||
border-radius: 10px;
|
||||
border: 0px;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
|
||||
background-size: 300% 300%;
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
opacity: 0.5;
|
||||
transition: ${betterTransition};
|
||||
}
|
||||
#workspaces button.active {
|
||||
padding: 0px 5px;
|
||||
margin: 4px 3px;
|
||||
border-radius: 10px;
|
||||
border: 0px;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
|
||||
background-size: 300% 300%;
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
transition: ${betterTransition};
|
||||
opacity: 1.0;
|
||||
min-width: 40px;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
border-radius: 10px;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
|
||||
background-size: 300% 300%;
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
opacity: 0.8;
|
||||
transition: ${betterTransition};
|
||||
}
|
||||
@keyframes gradient_horizontal {
|
||||
0% {
|
||||
background-position: 0% 50%;
|
||||
}
|
||||
50% {
|
||||
background-position: 100% 50%;
|
||||
}
|
||||
100% {
|
||||
background-position: 0% 50%;
|
||||
}
|
||||
}
|
||||
@keyframes swiping {
|
||||
0% {
|
||||
background-position: 0% 200%;
|
||||
}
|
||||
100% {
|
||||
background-position: 200% 200%;
|
||||
}
|
||||
}
|
||||
tooltip {
|
||||
background: #${palette.base00};
|
||||
border: 1px solid #${palette.base0E};
|
||||
border-radius: 10px;
|
||||
}
|
||||
tooltip label {
|
||||
color: #${palette.base07};
|
||||
}
|
||||
#window {
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
color: #${palette.base05};
|
||||
background: #${palette.base01};
|
||||
border-radius: 10px;
|
||||
}
|
||||
#memory {
|
||||
color: #${palette.base0F};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#clock {
|
||||
color: #${palette.base01};
|
||||
background: linear-gradient(45deg, #${palette.base0C}, #${palette.base0F}, #${palette.base0B}, #${palette.base08});
|
||||
background-size: 300% 300%;
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#cpu {
|
||||
color: #${palette.base07};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#disk {
|
||||
color: #${palette.base03};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#battery {
|
||||
color: #${palette.base08};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#network {
|
||||
color: #${palette.base09};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#custom-hyprbindings {
|
||||
color: #${palette.base0E};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#tray {
|
||||
color: #${palette.base05};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#pulseaudio {
|
||||
color: #${palette.base0D};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#custom-notification {
|
||||
color: #${palette.base0C};
|
||||
background: #${palette.base01};
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#custom-themeselector {
|
||||
color: #${palette.base0D};
|
||||
background: #${palette.base01};
|
||||
margin: 4px 0px;
|
||||
padding: 2px 10px 2px 5px;
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
}
|
||||
#custom-startmenu {
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base09}, #${palette.base03}, #${palette.base0C}, #${palette.base07});
|
||||
background-size: 300% 300%;
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
margin: 4px;
|
||||
padding: 2px 10px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
#idle_inhibitor {
|
||||
color: #${palette.base09};
|
||||
background: #${palette.base01};
|
||||
margin: 4px 0px;
|
||||
padding: 2px 14px;
|
||||
border-radius: 0px;
|
||||
}
|
||||
#custom-exit {
|
||||
color: #${palette.base0E};
|
||||
background: #${palette.base01};
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
margin: 4px 0px;
|
||||
padding: 2px 5px 2px 15px;
|
||||
} ''
|
||||
];
|
||||
};
|
||||
}
|
@ -14,11 +14,7 @@
|
||||
};
|
||||
|
||||
outputs =
|
||||
inputs@{
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
...
|
||||
}:
|
||||
inputs@{ nixpkgs, home-manager, ... }:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
host = "familypc";
|
||||
|
@ -7,6 +7,9 @@
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) browser;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./hardware.nix
|
||||
@ -16,7 +19,9 @@
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.kernel.sysctl = { "vm.max_map_count" = 2147483642; };
|
||||
boot.kernel.sysctl = {
|
||||
"vm.max_map_count" = 2147483642;
|
||||
};
|
||||
boot.tmp.useTmpfs = false;
|
||||
boot.tmp.tmpfsSize = "30%";
|
||||
|
||||
@ -24,8 +29,7 @@
|
||||
boot.kernelModules = [ "v4l2loopback" ];
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||
|
||||
networking.hostName = "${host}"; # Define your hostname.
|
||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
networking.hostName = "${host}";
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
@ -66,7 +70,31 @@
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
programs.firefox.enable = true;
|
||||
programs = {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
xwayland.enable = true;
|
||||
};
|
||||
firefox.enable = true;
|
||||
dconf.enable = true;
|
||||
seahorse.enable = true;
|
||||
fuse.userAllowOther = true;
|
||||
mtr.enable = true;
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
virt-manager.enable = true;
|
||||
};
|
||||
|
||||
# Steam Configuration
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
gamescopeSession.enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
dedicatedServer.openFirewall = true;
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
@ -78,13 +106,74 @@
|
||||
vim
|
||||
wget
|
||||
git
|
||||
cmatrix
|
||||
lolcat
|
||||
neofetch
|
||||
htop
|
||||
btop
|
||||
libvirt
|
||||
lxqt.lxqt-policykit
|
||||
lm_sensors
|
||||
unzip
|
||||
unrar
|
||||
libnotify
|
||||
eza
|
||||
v4l-utils
|
||||
ydotool
|
||||
wl-clipboard
|
||||
socat
|
||||
cowsay
|
||||
lsd
|
||||
lshw
|
||||
pkg-config
|
||||
meson
|
||||
hugo
|
||||
gnumake
|
||||
ninja
|
||||
go
|
||||
nodejs
|
||||
symbola
|
||||
noto-fonts-color-emoji
|
||||
material-icons
|
||||
brightnessctl
|
||||
virt-viewer
|
||||
swappy
|
||||
ripgrep
|
||||
appimage-run
|
||||
networkmanagerapplet
|
||||
yad
|
||||
playerctl
|
||||
nh
|
||||
nixfmt
|
||||
discord
|
||||
libvirt
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
gnome.file-roller
|
||||
swaynotificationcenter
|
||||
rofi-wayland
|
||||
imv
|
||||
transmission-gtk
|
||||
mpv
|
||||
gimp
|
||||
obs-studio
|
||||
rustup
|
||||
audacity
|
||||
pavucontrol
|
||||
tree
|
||||
protonup-qt
|
||||
font-awesome
|
||||
spotify
|
||||
swayidle
|
||||
neovide
|
||||
(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
|
||||
];
|
||||
|
||||
environment.variables = {
|
||||
ZANEYOS_VERSION="2.0";
|
||||
ZANEYOS_VERSION = "2.0";
|
||||
};
|
||||
|
||||
|
||||
# List services that you want to enable:
|
||||
# Enable the X11 windowing system.
|
||||
services.xserver = {
|
||||
@ -103,11 +192,12 @@
|
||||
nix = {
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = [
|
||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
@ -116,6 +206,14 @@
|
||||
};
|
||||
};
|
||||
|
||||
virtualisation.libvirtd.enable = true;
|
||||
|
||||
# OpenGL
|
||||
hardware.opengl = {
|
||||
enable = true;
|
||||
driSupport = true;
|
||||
driSupport32Bit = true;
|
||||
};
|
||||
|
||||
# Open ports in the firewall.
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
|
@ -36,6 +36,16 @@ in
|
||||
"Xcursor.size" = 24;
|
||||
};
|
||||
|
||||
# Place Files Inside Home Directory
|
||||
home.file.".config/wallpapers" = {
|
||||
source = ../../config/wallpapers;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".local/share/fonts" = {
|
||||
source = ../../config/fonts;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
# Install & Configure Git
|
||||
programs.git = {
|
||||
enable = true;
|
||||
@ -58,38 +68,70 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
profileExtra = ''
|
||||
#if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" = 1 ]; then
|
||||
# exec Hyprland
|
||||
#fi
|
||||
'';
|
||||
initExtra = ''
|
||||
neofetch
|
||||
if [ -f $HOME/.bashrc-personal ]; then
|
||||
source $HOME/.bashrc-personal
|
||||
fi
|
||||
'';
|
||||
sessionVariables = {
|
||||
ZANEYOS = true;
|
||||
programs = {
|
||||
bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
profileExtra = ''
|
||||
#if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" = 1 ]; then
|
||||
# exec Hyprland
|
||||
#fi
|
||||
'';
|
||||
initExtra = ''
|
||||
neofetch
|
||||
if [ -f $HOME/.bashrc-personal ]; then
|
||||
source $HOME/.bashrc-personal
|
||||
fi
|
||||
'';
|
||||
sessionVariables = {
|
||||
ZANEYOS = true;
|
||||
};
|
||||
shellAliases = {
|
||||
sv = "sudo nvim";
|
||||
flake-rebuild = "nh os switch --hostname ${host}";
|
||||
flake-update = "nh os switch --hostname ${host} --update";
|
||||
gcCleanup = "nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
|
||||
v = "nvim";
|
||||
ls = "lsd";
|
||||
ll = "lsd -l";
|
||||
la = "lsd -a";
|
||||
lal = "lsd -al";
|
||||
".." = "cd ..";
|
||||
};
|
||||
};
|
||||
shellAliases = {
|
||||
sv="sudo nvim";
|
||||
flake-rebuild="nh os switch --hostname ${host}";
|
||||
flake-update="nh os switch --hostname ${host} --update";
|
||||
gcCleanup="nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
|
||||
v="nvim";
|
||||
ls="lsd";
|
||||
ll="lsd -l";
|
||||
la="lsd -a";
|
||||
lal="lsd -al";
|
||||
".."="cd ..";
|
||||
neofetch="neofetch --ascii ~/.config/ascii-neofetch";
|
||||
home-manager.enable = true;
|
||||
hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
disable_loading_bar = true;
|
||||
grace = 300;
|
||||
hide_cursor = true;
|
||||
no_fade_in = false;
|
||||
};
|
||||
background = [
|
||||
{
|
||||
path = "/home/${username}/.config/wallpapers/zaney-wallpaper.jpg";
|
||||
blur_passes = 3;
|
||||
blur_size = 8;
|
||||
}
|
||||
];
|
||||
input-field = [
|
||||
{
|
||||
size = "200, 50";
|
||||
position = "0, -80";
|
||||
monitor = "";
|
||||
dots_center = true;
|
||||
fade_on_empty = false;
|
||||
font_color = "rgb(202, 211, 245)";
|
||||
inner_color = "rgb(91, 96, 120)";
|
||||
outer_color = "rgb(24, 25, 38)";
|
||||
outline_thickness = 5;
|
||||
placeholder_text = "Password...";
|
||||
shadow_passes = 2;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
|
@ -10,8 +10,10 @@
|
||||
borderAnim = true; # Enable / Disable Hyprland Border Animation
|
||||
extraMonitorSettings = "";
|
||||
|
||||
# Waybar Settings
|
||||
clock24h = false;
|
||||
|
||||
# Program Options
|
||||
browser = "firefox"; # Set Default Browser
|
||||
terminal = "kitty"; # Set Default System Terminal
|
||||
terminal = "kitty"; # Set Default System Terminal
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user