Update
This commit is contained in:
parent
d37504de7c
commit
d11cf580f9
@ -1,7 +1,7 @@
|
||||
# Themes
|
||||
|
||||
Themes are defined in `themes`. Those themes define the colors, fonts, icons, etc, used by Hyprland and the apps/programs installed.
|
||||
You can change the selected theme by changing the import statement of your host's variables.nix file.
|
||||
You can change the selected theme by changing the import statement of your host's configuration.nix file.
|
||||
|
||||
> [!TIP]
|
||||
> To apply the theme to DuckDuckGo, follow the instructions in `$HOME/.duckduckgo-colorscheme.js`
|
||||
|
@ -2,8 +2,7 @@
|
||||
|
||||
feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
|
||||
|
||||
- [ ] Hyprshade (replacement for gammastep)
|
||||
- [ ] !!! Qutebrowser Bitwarden integration (I need this.)
|
||||
- [!] Qutebrowser Bitwarden integration (I need this.)
|
||||
|
||||
- [ ] Hyprland
|
||||
- [ ] Fix screenshots (screenshot region's border shows up in the screenshot, hyprshot jq error?) and add in the scripts doc
|
||||
|
@ -17,9 +17,9 @@ function getList() {
|
||||
echo "$list"
|
||||
}
|
||||
|
||||
[[ -f "./home/system/hyprland/default.nix" ]] || (echo "File ./home/system/hyprland/default.nix not found" && exit 1)
|
||||
[[ -f "./home/system/hyprland/bindings.nix" ]] || (echo "File ./home/system/hyprland/bindings.nix not found" && exit 1)
|
||||
|
||||
config=$(cat "./home/system/hyprland/default.nix")
|
||||
config=$(cat "./home/system/hyprland/bindings.nix")
|
||||
|
||||
# Bind
|
||||
bind=$(getList "$config" "bind")
|
||||
|
@ -10,10 +10,9 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
default = "4000";
|
||||
|
||||
night-shift-on = pkgs.writeShellScriptBin "night-shift-on" ''
|
||||
${pkgs.hyprland}/bin/hyprctl dispatch exec "${pkgs.gammastep}/bin/gammastep -O ${default}"
|
||||
${pkgs.hyprshade}/bin/hyprshade on blue-light-filter
|
||||
title=" Night-Shift Activated"
|
||||
description="Night-Shift is now activated! Your screen will be warmer and easier on the eyes."
|
||||
|
||||
@ -21,7 +20,7 @@ let
|
||||
'';
|
||||
|
||||
night-shift-off = pkgs.writeShellScriptBin "night-shift-off" ''
|
||||
pkill gammastep
|
||||
${pkgs.hyprshade}/bin/hyprshade off
|
||||
title=" Night-Shift Deactivated"
|
||||
description="Night-Shift is now deactivated! Your screen will return to normal."
|
||||
|
||||
@ -29,7 +28,7 @@ let
|
||||
'';
|
||||
|
||||
night-shift = pkgs.writeShellScriptBin "night-shift" ''
|
||||
if pgrep gammastep; then
|
||||
if [[ $(${pkgs.hyprshade}/bin/hyprshade current) ]]; then
|
||||
night-shift-off
|
||||
else
|
||||
night-shift-on
|
||||
@ -37,7 +36,7 @@ let
|
||||
'';
|
||||
|
||||
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
|
||||
if [[ $(pgrep gammastep) ]]; then
|
||||
if [[ $(${pkgs.hyprshade}/bin/hyprshade current) ]]; then
|
||||
echo "1"
|
||||
else
|
||||
echo "0"
|
||||
@ -46,15 +45,14 @@ let
|
||||
|
||||
night-shift-status-icon =
|
||||
pkgs.writeShellScriptBin "night-shift-status-icon" ''
|
||||
if [[ $(pgrep gammastep) ]]; then
|
||||
echo ""
|
||||
else
|
||||
echo ""
|
||||
fi
|
||||
if [[ $(hyprshade current) ]]; then
|
||||
echo ""
|
||||
else
|
||||
echo ""
|
||||
fi
|
||||
'';
|
||||
in {
|
||||
home.packages = [
|
||||
pkgs.gammastep
|
||||
night-shift-on
|
||||
night-shift-off
|
||||
night-shift
|
||||
|
52
home/system/hyprland/animations.nix
Normal file
52
home/system/hyprland/animations.nix
Normal file
@ -0,0 +1,52 @@
|
||||
{ config, ... }: {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
animations = let
|
||||
animationSpeed = config.var.theme.animation-speed;
|
||||
|
||||
animationDuration = if animationSpeed == "slow" then
|
||||
"4"
|
||||
else if animationSpeed == "medium" then
|
||||
"2.5"
|
||||
else
|
||||
"1.5";
|
||||
borderDuration = if animationSpeed == "slow" then
|
||||
"10"
|
||||
else if animationSpeed == "medium" then
|
||||
"6"
|
||||
else
|
||||
"3";
|
||||
in {
|
||||
enabled = true;
|
||||
bezier = [
|
||||
"linear, 0, 0, 1, 1"
|
||||
"md3_standard, 0.2, 0, 0, 1"
|
||||
"md3_decel, 0.05, 0.7, 0.1, 1"
|
||||
"md3_accel, 0.3, 0, 0.8, 0.15"
|
||||
"overshot, 0.05, 0.9, 0.1, 1.1"
|
||||
"crazyshot, 0.1, 1.5, 0.76, 0.92"
|
||||
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
|
||||
"menu_decel, 0.1, 1, 0, 1"
|
||||
"menu_accel, 0.38, 0.04, 1, 0.07"
|
||||
"easeInOutCirc, 0.85, 0, 0.15, 1"
|
||||
"easeOutCirc, 0, 0.55, 0.45, 1"
|
||||
"easeOutExpo, 0.16, 1, 0.3, 1"
|
||||
"softAcDecel, 0.26, 0.26, 0.15, 1"
|
||||
"md2, 0.4, 0, 0.2, 1"
|
||||
];
|
||||
|
||||
animation = [
|
||||
"windows, 1, ${animationDuration}, md3_decel, popin 60%"
|
||||
"windowsIn, 1, ${animationDuration}, md3_decel, popin 60%"
|
||||
"windowsOut, 1, ${animationDuration}, md3_accel, popin 60%"
|
||||
"border, 1, ${borderDuration}, default"
|
||||
"fade, 1, ${animationDuration}, md3_decel"
|
||||
"layersIn, 1, ${animationDuration}, menu_decel, slide"
|
||||
"layersOut, 1, ${animationDuration}, menu_accel"
|
||||
"fadeLayersIn, 1, ${animationDuration}, menu_decel"
|
||||
"fadeLayersOut, 1, ${animationDuration}, menu_accel"
|
||||
"workspaces, 1, ${animationDuration}, menu_decel, slide"
|
||||
"specialWorkspace, 1, ${animationDuration}, md3_decel, slidevert"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
58
home/system/hyprland/bindings.nix
Normal file
58
home/system/hyprland/bindings.nix
Normal file
@ -0,0 +1,58 @@
|
||||
{ pkgs, ... }: {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
bind = [
|
||||
"$mod, RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
||||
"$mod, E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
||||
"$mod, B, exec, ${pkgs.qutebrowser}/bin/qutebrowser" # Qutebrowser
|
||||
"$mod, K, exec, ${pkgs.bitwarden}/bin/bitwarden" # Bitwarden
|
||||
"$mod, L, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
||||
"$mod, X, exec, powermenu" # Powermenu
|
||||
"$mod, SPACE, exec, menu" # Launcher
|
||||
"$shiftMod, SPACE, exec, hyprfocus-toggle" # Toggle HyprFocus
|
||||
|
||||
"$mod, Q, killactive," # Close window
|
||||
"$mod, T, togglefloating," # Toggle Floating
|
||||
"$mod, F, fullscreen" # Toggle Fullscreen
|
||||
"$mod, left, movefocus, l" # Move focus left
|
||||
"$mod, right, movefocus, r" # Move focus Right
|
||||
"$mod, up, movefocus, u" # Move focus Up
|
||||
"$mod, down, movefocus, d" # Move focus Down
|
||||
"$shiftMod, left, layoutmsg, addmaster" # Add to master
|
||||
"$shiftMod, right, layoutmsg, removemaster" # Remove from master
|
||||
|
||||
"$mod, PRINT, exec, screenshot window" # Screenshot window
|
||||
", PRINT, exec, screenshot monitor" # Screenshot monitor
|
||||
"$shiftMod, PRINT, exec, screenshot region" # Screenshot region
|
||||
"ALT, PRINT, exec, screenshot region swappy" # Screenshot region then edit
|
||||
|
||||
"$shiftMod, S, exec, ${pkgs.qutebrowser}/bin/qutebrowser :open $(wofi --show dmenu -L 1 -p ' Search on internet')" # Search on internet with wofi
|
||||
"$shiftMod, C, exec, clipboard" # Clipboard picker with wofi
|
||||
"$shiftMod, E, exec, ${pkgs.wofi-emoji}/bin/wofi-emoji" # Emoji picker with wofi
|
||||
"$mod, F2, exec, night-shift" # Toggle night shift
|
||||
"$mod, F3, exec, night-shift" # Toggle night shift
|
||||
] ++ (builtins.concatLists (builtins.genList (i:
|
||||
let ws = i + 1;
|
||||
in [
|
||||
"$mod, code:1${toString i}, workspace, ${toString ws}"
|
||||
"$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}"
|
||||
]) 9));
|
||||
|
||||
bindm = [
|
||||
"$mod, mouse:272, movewindow" # Move Window (mouse)
|
||||
"$mod, R, resizewindow" # Resize Window (mouse)
|
||||
];
|
||||
|
||||
bindl = [
|
||||
",XF86AudioMute, exec, sound-toggle" # Toggle Mute
|
||||
",switch:Lid Switch, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock when closing Lid
|
||||
];
|
||||
|
||||
bindle = [
|
||||
", XF86AudioRaiseVolume, exec, sound-up" # Sound Up
|
||||
", XF86AudioLowerVolume, exec, sound-down" # Sound Down
|
||||
", XF86MonBrightnessUp, exec, brightness-up" # Brightness Up
|
||||
", XF86MonBrightnessDown, exec, brightness-down" # Brightness Down
|
||||
];
|
||||
|
||||
};
|
||||
}
|
@ -1,13 +1,12 @@
|
||||
{ pkgs, config, inputs, ... }: {
|
||||
|
||||
imports = [ ./hyprlock.nix ./hypridle.nix ./hyprpaper.nix ./hyprpanel.nix ];
|
||||
imports = [ ./animations.nix ./bindings.nix ];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
qt5.qtwayland
|
||||
qt6.qtwayland
|
||||
qt5ct
|
||||
qt6ct
|
||||
|
||||
hyprshot
|
||||
hyprpicker
|
||||
swappy
|
||||
@ -35,12 +34,7 @@
|
||||
"$mod" = "SUPER";
|
||||
"$shiftMod" = "SUPER_SHIFT";
|
||||
|
||||
exec-once = [
|
||||
"${pkgs.bitwarden}/bin/bitwarden"
|
||||
"[[ ${
|
||||
toString config.var.sops
|
||||
} == 1 ]] && systemctl --user start sops-nix"
|
||||
];
|
||||
exec-once = [ "${pkgs.bitwarden}/bin/bitwarden" ];
|
||||
|
||||
monitor = [
|
||||
"eDP-2,highres,0x0,1"
|
||||
@ -48,60 +42,6 @@
|
||||
",prefered,auto,1"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mod, RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
||||
"$mod, E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
||||
"$mod, B, exec, ${pkgs.qutebrowser}/bin/qutebrowser" # Qutebrowser
|
||||
"$mod, K, exec, ${pkgs.bitwarden}/bin/bitwarden" # Bitwarden
|
||||
"$mod, L, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
||||
"$mod, X, exec, powermenu" # Powermenu
|
||||
"$mod, SPACE, exec, menu" # Launcher
|
||||
"$shiftMod, SPACE, exec, hyprfocus-toggle" # Toggle HyprFocus
|
||||
|
||||
"$mod, Q, killactive," # Close window
|
||||
"$mod, T, togglefloating," # Toggle Floating
|
||||
"$mod, F, fullscreen" # Toggle Fullscreen
|
||||
"$mod, left, movefocus, l" # Move focus left
|
||||
"$mod, right, movefocus, r" # Move focus Right
|
||||
"$mod, up, movefocus, u" # Move focus Up
|
||||
"$mod, down, movefocus, d" # Move focus Down
|
||||
"$shiftMod, left, layoutmsg, addmaster" # Add to master
|
||||
"$shiftMod, right, layoutmsg, removemaster" # Remove from master
|
||||
|
||||
"$mod, PRINT, exec, screenshot window" # Screenshot window
|
||||
", PRINT, exec, screenshot monitor" # Screenshot monitor
|
||||
"$shiftMod, PRINT, exec, screenshot region" # Screenshot region
|
||||
"ALT, PRINT, exec, screenshot region swappy" # Screenshot region then edit
|
||||
|
||||
"$shiftMod, S, exec, ${pkgs.qutebrowser}/bin/qutebrowser :open $(wofi --show dmenu -L 1 -p ' Search on internet')" # Search on internet with wofi
|
||||
"$shiftMod, C, exec, clipboard" # Clipboard picker with wofi
|
||||
"$shiftMod, E, exec, ${pkgs.wofi-emoji}/bin/wofi-emoji" # Emoji picker with wofi
|
||||
"$mod, F2, exec, night-shift-off" # Turn off night shift
|
||||
"$mod, F3, exec, night-shift-on" # Turn on night shift
|
||||
] ++ (builtins.concatLists (builtins.genList (i:
|
||||
let ws = i + 1;
|
||||
in [
|
||||
"$mod, code:1${toString i}, workspace, ${toString ws}"
|
||||
"$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}"
|
||||
]) 9));
|
||||
|
||||
bindm = [
|
||||
"$mod, mouse:272, movewindow" # Move Window (mouse)
|
||||
"$mod, R, resizewindow" # Resize Window (mouse)
|
||||
];
|
||||
|
||||
bindl = [
|
||||
",XF86AudioMute, exec, sound-toggle" # Toggle Mute
|
||||
",switch:Lid Switch, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock when closing Lid
|
||||
];
|
||||
|
||||
bindle = [
|
||||
", XF86AudioRaiseVolume, exec, sound-up" # Sound Up
|
||||
", XF86AudioLowerVolume, exec, sound-down" # Sound Down
|
||||
", XF86MonBrightnessUp, exec, brightness-up" # Brightness Up
|
||||
", XF86MonBrightnessDown, exec, brightness-down" # Brightness Down
|
||||
];
|
||||
|
||||
env = [
|
||||
"XDG_SESSION_TYPE,wayland"
|
||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
||||
@ -191,68 +131,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
windowrulev2 = [
|
||||
"float, class:floating"
|
||||
"size 40% 40%, class:floating"
|
||||
"move 30% 30%, class:floating"
|
||||
|
||||
"float, title:Bluetooth Devices"
|
||||
"move 20% 20%, title:Bluetooth Devices"
|
||||
"size 60% 60%, title:Bluetooth Devices"
|
||||
];
|
||||
|
||||
animations = let
|
||||
animationSpeed = config.var.theme.animation-speed;
|
||||
|
||||
animationDuration = if animationSpeed == "slow" then
|
||||
"4"
|
||||
else if animationSpeed == "medium" then
|
||||
"2.5"
|
||||
else
|
||||
"1.5";
|
||||
borderDuration = if animationSpeed == "slow" then
|
||||
"10"
|
||||
else if animationSpeed == "medium" then
|
||||
"6"
|
||||
else
|
||||
"3";
|
||||
in {
|
||||
enabled = true;
|
||||
bezier = [
|
||||
"linear, 0, 0, 1, 1"
|
||||
"md3_standard, 0.2, 0, 0, 1"
|
||||
"md3_decel, 0.05, 0.7, 0.1, 1"
|
||||
"md3_accel, 0.3, 0, 0.8, 0.15"
|
||||
"overshot, 0.05, 0.9, 0.1, 1.1"
|
||||
"crazyshot, 0.1, 1.5, 0.76, 0.92"
|
||||
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
|
||||
"menu_decel, 0.1, 1, 0, 1"
|
||||
"menu_accel, 0.38, 0.04, 1, 0.07"
|
||||
"easeInOutCirc, 0.85, 0, 0.15, 1"
|
||||
"easeOutCirc, 0, 0.55, 0.45, 1"
|
||||
"easeOutExpo, 0.16, 1, 0.3, 1"
|
||||
"softAcDecel, 0.26, 0.26, 0.15, 1"
|
||||
"md2, 0.4, 0, 0.2, 1"
|
||||
];
|
||||
|
||||
animation = [
|
||||
"windows, 1, ${animationDuration}, md3_decel, popin 60%"
|
||||
"windowsIn, 1, ${animationDuration}, md3_decel, popin 60%"
|
||||
"windowsOut, 1, ${animationDuration}, md3_accel, popin 60%"
|
||||
"border, 1, ${borderDuration}, default"
|
||||
"fade, 1, ${animationDuration}, md3_decel"
|
||||
"layersIn, 1, ${animationDuration}, menu_decel, slide"
|
||||
"layersOut, 1, ${animationDuration}, menu_accel"
|
||||
"fadeLayersIn, 1, ${animationDuration}, menu_decel"
|
||||
"fadeLayersOut, 1, ${animationDuration}, menu_accel"
|
||||
"workspaces, 1, ${animationDuration}, menu_decel, slide"
|
||||
"specialWorkspace, 1, ${animationDuration}, md3_decel, slidevert"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
systemd.user.targets.hyprland-session.Unit.Wants =
|
||||
[ "xdg-desktop-autostart.target" ];
|
||||
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ in {
|
||||
font_color = foreground;
|
||||
fade_on_empty = false;
|
||||
font_family = config.stylix.fonts.serif.name + " Bold";
|
||||
placeholder_text = "<i>🔒 Enter Pass</i>";
|
||||
placeholder_text = "<i>🔒 Enter Password</i>";
|
||||
hide_input = false;
|
||||
position = "0, -250";
|
||||
halign = "center";
|
@ -55,6 +55,7 @@
|
||||
#input {
|
||||
background-color: #${config.lib.stylix.colors.base00};
|
||||
border: 0px solid #${config.lib.stylix.colors.base0D};
|
||||
color: #${config.lib.stylix.colors.base05};
|
||||
padding: 8px 12px;
|
||||
}
|
||||
|
||||
|
@ -18,6 +18,7 @@
|
||||
../../nixos/variables-config.nix
|
||||
|
||||
../../themes/nixy.nix
|
||||
|
||||
./hardware-configuration.nix
|
||||
./variables.nix
|
||||
];
|
||||
|
@ -19,6 +19,10 @@
|
||||
|
||||
# System (Desktop environment like stuff)
|
||||
../../home/system/hyprland
|
||||
../../home/system/hypridle
|
||||
../../home/system/hyprlock
|
||||
../../home/system/hyprpanel
|
||||
../../home/system/hyprpaper
|
||||
../../home/system/gtk
|
||||
../../home/system/wofi
|
||||
../../home/system/batsignal
|
||||
|
@ -15,4 +15,7 @@
|
||||
|
||||
systemd.user.services.mbsync.Unit.After = [ "sops-nix.service" ];
|
||||
home.packages = with pkgs; [ sops age ];
|
||||
|
||||
wayland.windowManager.hyprland.settings.exec-once =
|
||||
[ "systemctl --user start sops-nix" ];
|
||||
}
|
||||
|
@ -21,11 +21,6 @@
|
||||
autoUpgrade = false;
|
||||
autoGarbageCollector = false;
|
||||
|
||||
# SOPS
|
||||
# Sops is a tool to store secrets in git repositories encrypted with GPG.
|
||||
# change the sops configuration if you want to enable that:
|
||||
sops = true;
|
||||
|
||||
theme = {
|
||||
rounding = 15;
|
||||
gaps-in = 10;
|
||||
|
Loading…
Reference in New Issue
Block a user