migrate lock for oled
This commit is contained in:
@@ -1 +1 @@
|
|||||||
{ ... }: { imports = [ ./dunst ./eww ./kanshi ./waylock ./wofi ]; }
|
{ ... }: { imports = [ ./dunst ./eww ./kanshi ./lockscreen ./wofi ]; }
|
||||||
|
|||||||
@@ -1,3 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
eww close popup 2>/dev/null
|
eww close popup 2>/dev/null
|
||||||
swaylock
|
eww close powermenu 2>/dev/null
|
||||||
|
# swaylock #swaylock-effects
|
||||||
|
hyprlock
|
||||||
|
# gtklock
|
||||||
@@ -16,9 +16,9 @@
|
|||||||
(pm-btn :icon "" :label "Reboot"
|
(pm-btn :icon "" :label "Reboot"
|
||||||
:onclick "systemctl reboot")
|
:onclick "systemctl reboot")
|
||||||
(pm-btn :icon "" :label "Lock"
|
(pm-btn :icon "" :label "Lock"
|
||||||
:onclick "sleep 0.1 && gtklock & eww close powermenu &")
|
:onclick "scripts/lock")
|
||||||
(pm-btn :icon "" :label "Suspend"
|
(pm-btn :icon "" :label "Suspend"
|
||||||
:onclick "sleep 0.1 && gtklock & systemctl suspend & eww close powermenu &")
|
:onclick "scripts/lock & systemctl suspend")
|
||||||
(pm-btn :icon "" :label "Sign out"
|
(pm-btn :icon "" :label "Sign out"
|
||||||
:onclick "hyprctl eval \"hl.dispatch(hl.dsp.exit())\"")
|
:onclick "hyprctl eval \"hl.dispatch(hl.dsp.exit())\"")
|
||||||
(pm-btn :icon "" :label "Cancel"
|
(pm-btn :icon "" :label "Cancel"
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ let
|
|||||||
"scripts/radio" = mkScript "radio" ./bar/scripts/radio [ pkgs.eww pkgs.jq pkgs.curl pkgs.mpv pkgs.playerctl ];
|
"scripts/radio" = mkScript "radio" ./bar/scripts/radio [ pkgs.eww pkgs.jq pkgs.curl pkgs.mpv pkgs.playerctl ];
|
||||||
"scripts/color-pick" = mkScript "color-pick" ./bar/scripts/color-pick [ pkgs.eww pkgs.hyprpicker ];
|
"scripts/color-pick" = mkScript "color-pick" ./bar/scripts/color-pick [ pkgs.eww pkgs.hyprpicker ];
|
||||||
"scripts/media" = mkScript "media" ./bar/scripts/media [ pkgs.playerctl ];
|
"scripts/media" = mkScript "media" ./bar/scripts/media [ pkgs.playerctl ];
|
||||||
"scripts/lock" = mkScript "lock" ./bar/scripts/lock [ pkgs.eww pkgs.swaylock-effects ];
|
"scripts/lock" = mkScript "lock" ./bar/scripts/lock [ pkgs.eww pkgs.hyprlock ];
|
||||||
"scripts/screenshot" = mkScript "screenshot" ./bar/scripts/screenshot [ pkgs.eww pkgs.hyprshot pkgs.satty pkgs.wl-clipboard ];
|
"scripts/screenshot" = mkScript "screenshot" ./bar/scripts/screenshot [ pkgs.eww pkgs.hyprshot pkgs.satty pkgs.wl-clipboard ];
|
||||||
"scripts/sys/gpu" = mkScript "gpu" ./bar/scripts/sys/gpu [ pkgs.custom.amdgpu_top pkgs.jq ];
|
"scripts/sys/gpu" = mkScript "gpu" ./bar/scripts/sys/gpu [ pkgs.custom.amdgpu_top pkgs.jq ];
|
||||||
"scripts/sys/memory" = mkScript "memory" ./bar/scripts/sys/memory [ pkgs.ripgrep ];
|
"scripts/sys/memory" = mkScript "memory" ./bar/scripts/sys/memory [ pkgs.ripgrep ];
|
||||||
|
|||||||
@@ -17,14 +17,14 @@ in {
|
|||||||
settings = [
|
settings = [
|
||||||
{output = baseOutput//{
|
{output = baseOutput//{
|
||||||
criteria = "LG Electronics LG ULTRAGEAR+ 511NTDVGC194";
|
criteria = "LG Electronics LG ULTRAGEAR+ 511NTDVGC194";
|
||||||
mode = "2560x1440@480.168";
|
# mode = "2560x1440@480.168";
|
||||||
# mode = "2560x1440x240.083";
|
mode = "2560x1440@240.083";
|
||||||
# mode = "1920x1080x240.084";
|
# mode = "1920x1080x240.084";
|
||||||
};}
|
};}
|
||||||
{output = baseOutput//{
|
{output = baseOutput//{
|
||||||
criteria = "AOC 24E1W1 GNSKCHA086899";
|
criteria = "AOC 24E1W1 GNSKCHA086899";
|
||||||
mode = "1920x1080@60.000";
|
mode = "1920x1080@60.000";
|
||||||
transform = "90";
|
transform = "180";
|
||||||
};}
|
};}
|
||||||
{output = baseOutput//{
|
{output = baseOutput//{
|
||||||
criteria = "AOC 24E1W1 GNSKBHA080346";
|
criteria = "AOC 24E1W1 GNSKBHA080346";
|
||||||
@@ -51,7 +51,6 @@ in {
|
|||||||
outputs = [
|
outputs = [
|
||||||
{
|
{
|
||||||
criteria = "AOC 24E1W1 GNSKCHA086899";
|
criteria = "AOC 24E1W1 GNSKCHA086899";
|
||||||
transform = "180";
|
|
||||||
position = "0,0";
|
position = "0,0";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
@@ -101,7 +100,7 @@ in {
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
exec = [
|
exec = [
|
||||||
"${pkgs.eww}/bin/eww open bar --screen 0"
|
|
||||||
"${pkgs.writeShellScript "kanshi-hyprland-init" ''
|
"${pkgs.writeShellScript "kanshi-hyprland-init" ''
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
${pkgs.hyprland}/bin/hyprctl eval '
|
${pkgs.hyprland}/bin/hyprctl eval '
|
||||||
@@ -119,6 +118,7 @@ in {
|
|||||||
|
|
||||||
''}"
|
''}"
|
||||||
"${pkgs.awww}/bin/awww restore"
|
"${pkgs.awww}/bin/awww restore"
|
||||||
|
"${pkgs.eww}/bin/eww open bar --screen 0"
|
||||||
];
|
];
|
||||||
};}
|
};}
|
||||||
{profile = {
|
{profile = {
|
||||||
|
|||||||
113
modules/home/wayland/apps/lockscreen/default.nix
Executable file
113
modules/home/wayland/apps/lockscreen/default.nix
Executable file
@@ -0,0 +1,113 @@
|
|||||||
|
{ lib, pkgs, config, ... }: {
|
||||||
|
config = lib.mkIf (config.usercfg.wm == "Wayland") {
|
||||||
|
programs.hyprlock = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
general = {
|
||||||
|
grace = 5; # grace=5
|
||||||
|
no_fade_in = false; # fade-in=0.2 (handled dynamically)
|
||||||
|
ignore_empty_input = true; # ignore-empty-password
|
||||||
|
};
|
||||||
|
|
||||||
|
background = [
|
||||||
|
# 1. OLED MONITOR (Pure Black)
|
||||||
|
{
|
||||||
|
monitor = "desc:LG Electronics LG ULTRAGEAR+ 511NTDVGC194";
|
||||||
|
color = "rgba(0,0,0,1.0)"; # Pure black OLED protection
|
||||||
|
path = ""; # Explicitly no screenshot
|
||||||
|
zindex = 0;
|
||||||
|
}
|
||||||
|
# 2. ALL OTHER MONITORS (Pixelated Screenshot)
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
path = "screenshot"; # screenshots
|
||||||
|
blur_passes = 3; # effect-pixelate=5 approximation
|
||||||
|
blur_size = 8;
|
||||||
|
noise = 0.01;
|
||||||
|
zindex = -1;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
input-field = {
|
||||||
|
monitor = "";
|
||||||
|
placeholder_text = "";
|
||||||
|
fail_text = "";
|
||||||
|
|
||||||
|
size = "200, 200"; # Custom sizing matching indicator-radius
|
||||||
|
outline_thickness = 30; # indicator-thickness=30
|
||||||
|
|
||||||
|
dots_size = 0.33;
|
||||||
|
dots_spacing = 0.15;
|
||||||
|
dots_center = true;
|
||||||
|
fade_on_empty = true;
|
||||||
|
hide_input = true;
|
||||||
|
dots_text_format = "*";
|
||||||
|
font_family = "IBM Plex Mono"; # font=IBM Plex Mono
|
||||||
|
|
||||||
|
# --- Outer Rings / Outline Colors ---
|
||||||
|
# key-hl-color, bs-hl-color, caps-lock-key-hl-color
|
||||||
|
check_color = "rgb(${config.colorScheme.palette.base0C})"; # key-hl
|
||||||
|
fail_color = "rgb(${config.colorScheme.palette.base0F})"; # inside-wrong
|
||||||
|
capslock_color = "rgb(${config.colorScheme.palette.base09})"; # caps-lock-key-hl
|
||||||
|
|
||||||
|
# --- Inner/Outer Core Colors ---
|
||||||
|
# Replicating your transparent rings with solid action states
|
||||||
|
outer_color = "rgba(${config.colorScheme.palette.base00}00)"; # ring-color (Transparent)
|
||||||
|
inner_color = "rgba(${config.colorScheme.palette.base0C}00)"; # inside-color (Transparent)
|
||||||
|
font_color = "rgba(${config.colorScheme.palette.base00}00)"; # text-color (Transparent)
|
||||||
|
|
||||||
|
fail_transition = 300;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
xdg.configFile."swaylock/config".text = ''
|
||||||
|
screenshots
|
||||||
|
grace-no-mouse
|
||||||
|
grace-no-touch
|
||||||
|
grace=5
|
||||||
|
effect-pixelate=5
|
||||||
|
fade-in=0.2
|
||||||
|
|
||||||
|
ignore-empty-password
|
||||||
|
font=IBM Plex Mono
|
||||||
|
|
||||||
|
color=${config.colorScheme.palette.base00}00
|
||||||
|
|
||||||
|
indicator-radius=100
|
||||||
|
indicator-thickness=30
|
||||||
|
|
||||||
|
separator-color=${config.colorScheme.palette.base00}00
|
||||||
|
|
||||||
|
inside-color=${config.colorScheme.palette.base0C}00
|
||||||
|
inside-clear-color=${config.colorScheme.palette.base08}FF
|
||||||
|
inside-caps-lock-color=${config.colorScheme.palette.base09}00
|
||||||
|
inside-ver-color=${config.colorScheme.palette.base0C}FF
|
||||||
|
inside-wrong-color=${config.colorScheme.palette.base0F}FF
|
||||||
|
|
||||||
|
|
||||||
|
ring-color=${config.colorScheme.palette.base00}00
|
||||||
|
ring-clear-color=${config.colorScheme.palette.base00}00
|
||||||
|
ring-caps-lock-color=${config.colorScheme.palette.base00}00
|
||||||
|
ring-ver-color=${config.colorScheme.palette.base00}00
|
||||||
|
ring-wrong-color=${config.colorScheme.palette.base00}00
|
||||||
|
|
||||||
|
line-color=${config.colorScheme.palette.base00}00
|
||||||
|
line-clear-color=${config.colorScheme.palette.base00}00
|
||||||
|
line-caps-lock-color=${config.colorScheme.palette.base00}00
|
||||||
|
line-ver-color=${config.colorScheme.palette.base00}00
|
||||||
|
line-wrong-color=${config.colorScheme.palette.base00}00
|
||||||
|
|
||||||
|
text-color=${config.colorScheme.palette.base00}00
|
||||||
|
text-clear-color=${config.colorScheme.palette.base00}00
|
||||||
|
text-caps-lock-color=${config.colorScheme.palette.base00}00
|
||||||
|
text-ver-color=${config.colorScheme.palette.base00}00
|
||||||
|
text-wrong-color=${config.colorScheme.palette.base00}00
|
||||||
|
|
||||||
|
|
||||||
|
key-hl-color=${config.colorScheme.palette.base0C}FF
|
||||||
|
bs-hl-color=${config.colorScheme.palette.base08}FF
|
||||||
|
caps-lock-key-hl-color=${config.colorScheme.palette.base09}FF
|
||||||
|
caps-lock-bs-hl-color=${config.colorScheme.palette.base09}FF
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
{ lib, pkgs, config, ... }: {
|
|
||||||
config = lib.mkIf (config.usercfg.wm == "Wayland") {
|
|
||||||
|
|
||||||
xdg.configFile."swaylock/config".text = ''
|
|
||||||
screenshots
|
|
||||||
grace-no-mouse
|
|
||||||
grace-no-touch
|
|
||||||
grace=5
|
|
||||||
effect-pixelate=5
|
|
||||||
fade-in=0.2
|
|
||||||
|
|
||||||
ignore-empty-password
|
|
||||||
font=IBM Plex Mono
|
|
||||||
|
|
||||||
color=${config.colorScheme.palette.base00}00
|
|
||||||
|
|
||||||
indicator-radius=100
|
|
||||||
indicator-thickness=30
|
|
||||||
|
|
||||||
separator-color=${config.colorScheme.palette.base00}00
|
|
||||||
|
|
||||||
inside-color=${config.colorScheme.palette.base0C}00
|
|
||||||
inside-clear-color=${config.colorScheme.palette.base08}FF
|
|
||||||
inside-caps-lock-color=${config.colorScheme.palette.base09}00
|
|
||||||
inside-ver-color=${config.colorScheme.palette.base0C}FF
|
|
||||||
inside-wrong-color=${config.colorScheme.palette.base0F}FF
|
|
||||||
|
|
||||||
|
|
||||||
ring-color=${config.colorScheme.palette.base00}00
|
|
||||||
ring-clear-color=${config.colorScheme.palette.base00}00
|
|
||||||
ring-caps-lock-color=${config.colorScheme.palette.base00}00
|
|
||||||
ring-ver-color=${config.colorScheme.palette.base00}00
|
|
||||||
ring-wrong-color=${config.colorScheme.palette.base00}00
|
|
||||||
|
|
||||||
line-color=${config.colorScheme.palette.base00}00
|
|
||||||
line-clear-color=${config.colorScheme.palette.base00}00
|
|
||||||
line-caps-lock-color=${config.colorScheme.palette.base00}00
|
|
||||||
line-ver-color=${config.colorScheme.palette.base00}00
|
|
||||||
line-wrong-color=${config.colorScheme.palette.base00}00
|
|
||||||
|
|
||||||
text-color=${config.colorScheme.palette.base00}00
|
|
||||||
text-clear-color=${config.colorScheme.palette.base00}00
|
|
||||||
text-caps-lock-color=${config.colorScheme.palette.base00}00
|
|
||||||
text-ver-color=${config.colorScheme.palette.base00}00
|
|
||||||
text-wrong-color=${config.colorScheme.palette.base00}00
|
|
||||||
|
|
||||||
|
|
||||||
key-hl-color=${config.colorScheme.palette.base0C}FF
|
|
||||||
bs-hl-color=${config.colorScheme.palette.base08}FF
|
|
||||||
caps-lock-key-hl-color=${config.colorScheme.palette.base09}FF
|
|
||||||
caps-lock-bs-hl-color=${config.colorScheme.palette.base09}FF
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -24,7 +24,6 @@
|
|||||||
|
|
||||||
|
|
||||||
startupScript = pkgs.writeShellScriptBin "hyprland-start" ''
|
startupScript = pkgs.writeShellScriptBin "hyprland-start" ''
|
||||||
${pkgs.eww}/bin/eww open bar &
|
|
||||||
${pkgs.awww}/bin/awww-daemon &
|
${pkgs.awww}/bin/awww-daemon &
|
||||||
${pkgs.awww}/bin/awww restore &
|
${pkgs.awww}/bin/awww restore &
|
||||||
|
|
||||||
@@ -55,7 +54,7 @@ in {
|
|||||||
hl.exec_cmd("${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1")
|
hl.exec_cmd("${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1")
|
||||||
hl.exec_cmd("${pkgs.wl-clipboard}/bin/wl-paste --type text --watch ${lib.getExe pkgs.cliphist} store")
|
hl.exec_cmd("${pkgs.wl-clipboard}/bin/wl-paste --type text --watch ${lib.getExe pkgs.cliphist} store")
|
||||||
hl.exec_cmd("${pkgs.wl-clipboard}/bin/wl-paste --type image --watch ${lib.getExe pkgs.cliphist} store")
|
hl.exec_cmd("${pkgs.wl-clipboard}/bin/wl-paste --type image --watch ${lib.getExe pkgs.cliphist} store")
|
||||||
hl.exec_cmd("${lib.getExe pkgs.swayidle} -w timeout 600 '${pkgs.swaylock-effects}/bin/swaylock' before-sleep '${pkgs.swaylock-effects}/bin/swaylock'")
|
hl.exec_cmd("${lib.getExe pkgs.swayidle} -w timeout 600 '${pkgs.hyprlock}/bin/hyprlock' before-sleep '${pkgs.hyprlock}/bin/hyprlock'")
|
||||||
hl.exec_cmd("${lib.getExe startupScript}")
|
hl.exec_cmd("${lib.getExe startupScript}")
|
||||||
hl.exec_cmd("[workspace special:magic silent] kitty --title flying_kitty")
|
hl.exec_cmd("[workspace special:magic silent] kitty --title flying_kitty")
|
||||||
end'')
|
end'')
|
||||||
@@ -68,13 +67,12 @@ in {
|
|||||||
position = "auto";
|
position = "auto";
|
||||||
scale = "auto";
|
scale = "auto";
|
||||||
bitdepth = 10;
|
bitdepth = 10;
|
||||||
cm = "auto"; #dcip3
|
cm = "dcip3"; #auto"; #hdr";#
|
||||||
sdrbrightness = 1.4;
|
sdrbrightness = 0.85;
|
||||||
# sdrsaturation = 1.0;
|
sdrsaturation = 1.0;
|
||||||
# sdr_max_luminance = 220;
|
sdr_max_luminance = 600;
|
||||||
# sdr_min_luminance = 0.005;
|
sdr_min_luminance = 0.0005;
|
||||||
}];
|
}];
|
||||||
#Fullscreen HDR is possible without the hdr cm setting if "render:cm_auto_hdr" is enabled.
|
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
input = {
|
input = {
|
||||||
@@ -276,7 +274,7 @@ in {
|
|||||||
(bind "SUPER + SHIFT + D" (dsp.exec "~/.config/hypr/themes/apatheia/eww/launch_bar"))
|
(bind "SUPER + SHIFT + D" (dsp.exec "~/.config/hypr/themes/apatheia/eww/launch_bar"))
|
||||||
(bind "SUPER + V" (dsp.exec "${lib.getExe pkgs.cliphist} list | ${lib.getExe pkgs.wofi} -dmenu | ${lib.getExe pkgs.cliphist} decode | ${pkgs.wl-clipboard}/bin/wl-copy"))
|
(bind "SUPER + V" (dsp.exec "${lib.getExe pkgs.cliphist} list | ${lib.getExe pkgs.wofi} -dmenu | ${lib.getExe pkgs.cliphist} decode | ${pkgs.wl-clipboard}/bin/wl-copy"))
|
||||||
(bind "PRINT" (dsp.exec "${lib.getExe pkgs.hyprshot} -m region --raw | ${lib.getExe pkgs.satty} --filename - --early-exit --action-on-enter save-to-clipboard --copy-command '${pkgs.wl-clipboard}/bin/wl-copy'"))
|
(bind "PRINT" (dsp.exec "${lib.getExe pkgs.hyprshot} -m region --raw | ${lib.getExe pkgs.satty} --filename - --early-exit --action-on-enter save-to-clipboard --copy-command '${pkgs.wl-clipboard}/bin/wl-copy'"))
|
||||||
(bind "SUPER + L" (dsp.exec "${pkgs.swaylock-effects}/bin/swaylock"))
|
(bind "SUPER + L" (dsp.exec "${pkgs.hyprlock}/bin/hyprlock"))
|
||||||
(bind "SUPER + left" (dsp.focus "left"))
|
(bind "SUPER + left" (dsp.focus "left"))
|
||||||
(bind "SUPER + right" (dsp.focus "right"))
|
(bind "SUPER + right" (dsp.focus "right"))
|
||||||
(bind "SUPER + up" (dsp.focus "up"))
|
(bind "SUPER + up" (dsp.focus "up"))
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs, ... }: {
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
security.pam.services.swaylock = {
|
security.pam.services.hyprlock = { #swaylock
|
||||||
text = ''
|
text = ''
|
||||||
auth include login
|
auth include login
|
||||||
'';
|
'';
|
||||||
|
|||||||
Reference in New Issue
Block a user