feat: use regreet as greeter
no ragrets
This commit is contained in:
parent
fc7c791b41
commit
ab0b47fec7
7 changed files with 230 additions and 201 deletions
162
home/apps/i3.nix
162
home/apps/i3.nix
|
@ -27,23 +27,6 @@
|
||||||
in
|
in
|
||||||
f [] attrList;
|
f [] attrList;
|
||||||
|
|
||||||
swaylocker = pkgs.writeShellScript "swaylocker" ''
|
|
||||||
swaylock \
|
|
||||||
--screenshots \
|
|
||||||
--clock \
|
|
||||||
--indicator \
|
|
||||||
--indicator-radius 100 \
|
|
||||||
--indicator-thickness 7 \
|
|
||||||
--effect-blur 7x5 \
|
|
||||||
--effect-vignette 0.5:0.5 \
|
|
||||||
--ring-color f5c2e7 \
|
|
||||||
--key-hl-color 1e1e2e \
|
|
||||||
--line-color 00000000 \
|
|
||||||
--inside-color 00000088 \
|
|
||||||
--separator-color 00000000 \
|
|
||||||
--text-color cdd6f4
|
|
||||||
'';
|
|
||||||
|
|
||||||
commonConfig = {wayland ? false}: rec {
|
commonConfig = {wayland ? false}: rec {
|
||||||
modifier = "Mod4";
|
modifier = "Mod4";
|
||||||
focus.wrapping = "no";
|
focus.wrapping = "no";
|
||||||
|
@ -59,10 +42,6 @@
|
||||||
{
|
{
|
||||||
command = "1password --silent";
|
command = "1password --silent";
|
||||||
}
|
}
|
||||||
{
|
|
||||||
command = "swaync";
|
|
||||||
always = true;
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
workspaceAutoBackAndForth = true;
|
workspaceAutoBackAndForth = true;
|
||||||
terminal = "${lib.getExe config.programs.wezterm.package}";
|
terminal = "${lib.getExe config.programs.wezterm.package}";
|
||||||
|
@ -74,23 +53,13 @@
|
||||||
modFocus = "${mod}+Ctrl";
|
modFocus = "${mod}+Ctrl";
|
||||||
hyper = "Mod4+Mod1+Shift+Ctrl";
|
hyper = "Mod4+Mod1+Shift+Ctrl";
|
||||||
|
|
||||||
gopass = lib.getExe pkgs.gopass;
|
|
||||||
thunar = lib.getExe pkgs.xfce.thunar;
|
thunar = lib.getExe pkgs.xfce.thunar;
|
||||||
xargs = "${lib.getExe pkgs.findutils}/bin/xargs";
|
|
||||||
xdotool = lib.getExe pkgs.xdotool;
|
|
||||||
screenshot =
|
screenshot =
|
||||||
if wayland
|
if wayland
|
||||||
then "${lib.getExe pkgs.sway-contrib.grimshot} copy area"
|
then "${lib.getExe pkgs.sway-contrib.grimshot} copy area"
|
||||||
else "${pkgs.flameshot}/bin/flameshot gui";
|
else "${pkgs.flameshot}/bin/flameshot gui";
|
||||||
playerctl = lib.getExe pkgs.playerctl;
|
playerctl = lib.getExe pkgs.playerctl;
|
||||||
wpctl = pkgs.wireplumber + "/bin/wpctl";
|
wpctl = pkgs.wireplumber + "/bin/wpctl";
|
||||||
# TODO: replace xdotool with wayland equivalent
|
|
||||||
gopassRofi = pkgs.writeShellScript "gopass-rofi" ''
|
|
||||||
${gopass} ls --flat | \
|
|
||||||
${menu} -dmenu -dpi $dpi | \
|
|
||||||
${xargs} --no-run-if-empty ${gopass} show -o | \
|
|
||||||
${xdotool} type --clearmodifiers --file -
|
|
||||||
'';
|
|
||||||
in {
|
in {
|
||||||
"${mod}+Shift+b" = "border none";
|
"${mod}+Shift+b" = "border none";
|
||||||
"${mod}+b" = "border pixel 2";
|
"${mod}+b" = "border pixel 2";
|
||||||
|
@ -102,7 +71,6 @@
|
||||||
# Start Applications
|
# Start Applications
|
||||||
"${mod}+Shift+Return" = "exec ${terminal}";
|
"${mod}+Shift+Return" = "exec ${terminal}";
|
||||||
"${mod}+e" = "exec --no-startup-id ${thunar}";
|
"${mod}+e" = "exec --no-startup-id ${thunar}";
|
||||||
"${hyper}+space" = "exec --no-startup-id ${gopassRofi}";
|
|
||||||
"${hyper}+p" = "exec --no-startup-id ${screenshot}";
|
"${hyper}+p" = "exec --no-startup-id ${screenshot}";
|
||||||
|
|
||||||
# change focus
|
# change focus
|
||||||
|
@ -188,7 +156,7 @@
|
||||||
"XF86AudioMute" = "exec --no-startup-id ${wpctl} set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
"XF86AudioMute" = "exec --no-startup-id ${wpctl} set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
"XF86AudioNext" = "exec --no-startup-id ${playerctl} next";
|
"XF86AudioNext" = "exec --no-startup-id ${playerctl} next";
|
||||||
"XF86AudioPrev" = "exec --no-startup-id ${playerctl} previous";
|
"XF86AudioPrev" = "exec --no-startup-id ${playerctl} previous";
|
||||||
"XF86AudioPause" = "exec --no-startup-id ${playerctl} play-pause";
|
"XF86AudioPlay" = "exec --no-startup-id ${playerctl} play-pause";
|
||||||
|
|
||||||
# modes
|
# modes
|
||||||
"${mod}+r" = "mode \"resize\"";
|
"${mod}+r" = "mode \"resize\"";
|
||||||
|
@ -198,7 +166,7 @@
|
||||||
"power: (l)ock, (e)xit, (r)eboot, (s)uspend, (h)ibernate, (S)hut off" = let
|
"power: (l)ock, (e)xit, (r)eboot, (s)uspend, (h)ibernate, (S)hut off" = let
|
||||||
lock =
|
lock =
|
||||||
if wayland
|
if wayland
|
||||||
then swaylocker
|
then "swaylock"
|
||||||
else "i3lock";
|
else "i3lock";
|
||||||
msg =
|
msg =
|
||||||
if wayland
|
if wayland
|
||||||
|
@ -235,18 +203,18 @@
|
||||||
colors = {
|
colors = {
|
||||||
background = "#1e1e2e";
|
background = "#1e1e2e";
|
||||||
focusedWorkspace = {
|
focusedWorkspace = {
|
||||||
background = "#F5C2E7";
|
background = "#f5c2e7";
|
||||||
text = "#11111b";
|
text = "#11111b";
|
||||||
border = "#F5C2E7";
|
border = "#f5c2e7";
|
||||||
};
|
};
|
||||||
activeWorkspace = {
|
activeWorkspace = {
|
||||||
background = "#CBA6F7";
|
background = "#cba6f7";
|
||||||
text = "#11111b";
|
text = "#11111b";
|
||||||
border = "#CBA6F7";
|
border = "#cba6f7";
|
||||||
};
|
};
|
||||||
inactiveWorkspace = {
|
inactiveWorkspace = {
|
||||||
background = "#11111b";
|
background = "#11111b";
|
||||||
text = "#CDD6F4";
|
text = "#cdd6f4";
|
||||||
border = "#11111b";
|
border = "#11111b";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -255,24 +223,24 @@
|
||||||
colors = rec {
|
colors = rec {
|
||||||
focused = {
|
focused = {
|
||||||
background = "#1e1e2e";
|
background = "#1e1e2e";
|
||||||
border = "#F5C2E7";
|
border = "#f5c2e7";
|
||||||
childBorder = "#F5C2E7";
|
childBorder = "#f5c2e7";
|
||||||
text = "#CDD6F4";
|
text = "#cdd6f4";
|
||||||
indicator = "#F5C2E7";
|
indicator = "#f5c2e7";
|
||||||
};
|
};
|
||||||
urgent = {
|
urgent = {
|
||||||
background = "#1e1e2e";
|
background = "#1e1e2e";
|
||||||
border = "#F38BA8";
|
border = "#f38ba8";
|
||||||
childBorder = "#F38BA8";
|
childBorder = "#f38ba8";
|
||||||
text = "#CDD6F4";
|
text = "#cdd6f4";
|
||||||
indicator = "#F38BA8";
|
indicator = "#f38ba8";
|
||||||
};
|
};
|
||||||
unfocused = {
|
unfocused = {
|
||||||
background = "#1e1e2e";
|
background = "#1e1e2e";
|
||||||
border = "#CBA6F7";
|
border = "#cba6f7";
|
||||||
childBorder = "#CBA6F7";
|
childBorder = "#cba6f7";
|
||||||
text = "#CDD6F4";
|
text = "#cdd6f4";
|
||||||
indicator = "#CBA6F7";
|
indicator = "#cba6f7";
|
||||||
};
|
};
|
||||||
focusedInactive = unfocused;
|
focusedInactive = unfocused;
|
||||||
placeholder = unfocused;
|
placeholder = unfocused;
|
||||||
|
@ -371,78 +339,15 @@ in {
|
||||||
arandr
|
arandr
|
||||||
autotiling
|
autotiling
|
||||||
blueberry
|
blueberry
|
||||||
|
clipman
|
||||||
flameshot
|
flameshot
|
||||||
libnotify
|
libnotify
|
||||||
pavucontrol
|
pavucontrol
|
||||||
sway-contrib.grimshot
|
sway-contrib.grimshot
|
||||||
swaynotificationcenter
|
swaynotificationcenter
|
||||||
|
wl-clipboard
|
||||||
xclip
|
xclip
|
||||||
];
|
];
|
||||||
pointerCursor = {
|
|
||||||
name = "Numix-Cursor";
|
|
||||||
package = pkgs.numix-cursor-theme;
|
|
||||||
gtk.enable = true;
|
|
||||||
size = 24;
|
|
||||||
x11.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.i3status-rust = lib.mkIf isLinux {
|
|
||||||
enable = true;
|
|
||||||
bars.top = {
|
|
||||||
blocks = [
|
|
||||||
{
|
|
||||||
block = "vpn";
|
|
||||||
driver = "mullvad";
|
|
||||||
format_connected = " ";
|
|
||||||
format_disconnected = " ";
|
|
||||||
state_connected = "good";
|
|
||||||
state_disconnected = "critical";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
block = "tea_timer";
|
|
||||||
done_cmd = "notify-send 'Timer Finished'";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
block = "time";
|
|
||||||
interval = 60;
|
|
||||||
format = " $timestamp.datetime(f:'%d/%m %R') ";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
block = "notify";
|
|
||||||
format = " $icon {($notification_count.eng(w:1)) |}";
|
|
||||||
driver = "swaync";
|
|
||||||
click = [
|
|
||||||
{
|
|
||||||
button = "left";
|
|
||||||
action = "show";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
button = "right";
|
|
||||||
action = "toggle_paused";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
settings = {
|
|
||||||
icons.icons = "material-nf";
|
|
||||||
theme.overrides = {
|
|
||||||
idle_fg = "#cdd6f4";
|
|
||||||
idle_bg = "#00000000";
|
|
||||||
info_fg = "#89b4fa";
|
|
||||||
info_bg = "#00000000";
|
|
||||||
good_fg = "#a6e3a1";
|
|
||||||
good_bg = "#00000000";
|
|
||||||
warning_fg = "#fab387";
|
|
||||||
warning_bg = "#00000000";
|
|
||||||
critical_fg = "#f38ba8";
|
|
||||||
critical_bg = "#00000000";
|
|
||||||
separator = " ";
|
|
||||||
separator_bg = "auto";
|
|
||||||
separator_fg = "auto";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
xresources = lib.mkIf isLinux {
|
xresources = lib.mkIf isLinux {
|
||||||
|
@ -511,6 +416,7 @@ in {
|
||||||
Description = "Home Manager System Tray";
|
Description = "Home Manager System Tray";
|
||||||
Requires = ["graphical-session-pre.target"];
|
Requires = ["graphical-session-pre.target"];
|
||||||
};
|
};
|
||||||
|
user.services.picom = lib.mkForce {};
|
||||||
};
|
};
|
||||||
|
|
||||||
xsession = lib.mkIf isLinux {
|
xsession = lib.mkIf isLinux {
|
||||||
|
@ -530,6 +436,10 @@ in {
|
||||||
command = "${lib.getExe pkgs.feh} --bg-fill ${flakePath}/home/wallpapers/dhm_1610.png --no-fehbg";
|
command = "${lib.getExe pkgs.feh} --bg-fill ${flakePath}/home/wallpapers/dhm_1610.png --no-fehbg";
|
||||||
always = true;
|
always = true;
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
command = "${lib.getExe config.services.picom.package}";
|
||||||
|
always = true;
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
@ -557,10 +467,10 @@ in {
|
||||||
{
|
{
|
||||||
command = ''
|
command = ''
|
||||||
swayidle -w \
|
swayidle -w \
|
||||||
timeout 180 ${swaylocker} \
|
timeout 180 swaylock \
|
||||||
timeout 240 'swaymsg "output * dpms off"' \
|
timeout 360 'swaymsg "output * dpms off"' \
|
||||||
resume 'swaymsg "output * dpms on"' \
|
resume 'swaymsg "output * dpms on"' \
|
||||||
before-sleep ${swaylocker}
|
before-sleep swaylock
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
@ -584,5 +494,17 @@ in {
|
||||||
base = true;
|
base = true;
|
||||||
gtk = true;
|
gtk = true;
|
||||||
};
|
};
|
||||||
|
extraSessionCommands = ''
|
||||||
|
# session
|
||||||
|
export XDG_SESSION_TYPE=wayland
|
||||||
|
export XDG_SESSION_DESKTOP=sway
|
||||||
|
export XDG_CURRENT_DESKTOP=sway
|
||||||
|
# wayland
|
||||||
|
export NIXOS_OZONE_WL=1
|
||||||
|
export MOZ_ENABLE_WAYLAND=1
|
||||||
|
export QT_QPA_PLATFORM=wayland
|
||||||
|
export SDL_VIDEODRIVER=wayland
|
||||||
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,22 +8,8 @@
|
||||||
in {
|
in {
|
||||||
gtk = lib.mkIf isLinux {
|
gtk = lib.mkIf isLinux {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
iconTheme.name = "Papirus-Dark";
|
||||||
iconTheme = {
|
theme.name = "Catppuccin-Mocha-Compact-Pink-Dark";
|
||||||
package = pkgs.nur.repos.nekowinston.papirus-folders-catppuccin.override {
|
|
||||||
flavour = "mocha";
|
|
||||||
accent = "pink";
|
|
||||||
};
|
|
||||||
name = "Papirus-Dark";
|
|
||||||
};
|
|
||||||
theme = {
|
|
||||||
name = "Catppuccin-Mocha-Standard-Pink-Dark";
|
|
||||||
package = pkgs.catppuccin-gtk.override {
|
|
||||||
accents = ["pink"];
|
|
||||||
variant = "mocha";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
|
gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
|
||||||
gtk2.extraConfig = ''
|
gtk2.extraConfig = ''
|
||||||
gtk-xft-antialias=1
|
gtk-xft-antialias=1
|
||||||
|
@ -39,12 +25,123 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home.pointerCursor = lib.mkIf isLinux {
|
||||||
|
name = "Numix-Cursor";
|
||||||
|
package = pkgs.numix-cursor-theme;
|
||||||
|
gtk.enable = true;
|
||||||
|
size = 24;
|
||||||
|
x11.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.i3status-rust = lib.mkIf isLinux {
|
||||||
|
enable = true;
|
||||||
|
bars.top = {
|
||||||
|
blocks = [
|
||||||
|
{
|
||||||
|
block = "vpn";
|
||||||
|
driver = "mullvad";
|
||||||
|
format_connected = " ";
|
||||||
|
format_disconnected = " ";
|
||||||
|
state_connected = "good";
|
||||||
|
state_disconnected = "critical";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
block = "tea_timer";
|
||||||
|
done_cmd = "notify-send 'Timer Finished'";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
block = "time";
|
||||||
|
interval = 60;
|
||||||
|
format = " $timestamp.datetime(f:'%d/%m %R') ";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
block = "notify";
|
||||||
|
format = " $icon {($notification_count.eng(w:1)) |}";
|
||||||
|
driver = "swaync";
|
||||||
|
click = [
|
||||||
|
{
|
||||||
|
button = "left";
|
||||||
|
action = "show";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
button = "right";
|
||||||
|
action = "toggle_paused";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
settings = {
|
||||||
|
icons.icons = "material-nf";
|
||||||
|
theme.overrides = {
|
||||||
|
idle_fg = "#cdd6f4";
|
||||||
|
idle_bg = "#00000000";
|
||||||
|
info_fg = "#89b4fa";
|
||||||
|
info_bg = "#00000000";
|
||||||
|
good_fg = "#a6e3a1";
|
||||||
|
good_bg = "#00000000";
|
||||||
|
warning_fg = "#fab387";
|
||||||
|
warning_bg = "#00000000";
|
||||||
|
critical_fg = "#f38ba8";
|
||||||
|
critical_bg = "#00000000";
|
||||||
|
separator = " ";
|
||||||
|
separator_bg = "auto";
|
||||||
|
separator_fg = "auto";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
programs.rofi = lib.mkIf isLinux {
|
programs.rofi = lib.mkIf isLinux {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.rofi-wayland;
|
package = pkgs.rofi-wayland;
|
||||||
font = "Berkeley Mono 14";
|
font = "IBM Plex Sans 14";
|
||||||
extraConfig.icon-theme = "Papirus-Dark";
|
extraConfig.icon-theme = "Papirus-Dark";
|
||||||
terminal = "wezterm";
|
terminal = "wezterm";
|
||||||
theme = ./rofi/theme.rasi;
|
theme = ./rofi/theme.rasi;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.swaylock = lib.mkIf isLinux {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.swaylock-effects;
|
||||||
|
settings = {
|
||||||
|
ignore-empty-password = true;
|
||||||
|
font = "IBM Plex Sans";
|
||||||
|
fade-in = "0.2";
|
||||||
|
screenshots = true;
|
||||||
|
|
||||||
|
clock = true;
|
||||||
|
timestr = "%H:%M";
|
||||||
|
datestr = "%A, %d %B";
|
||||||
|
|
||||||
|
indicator = true;
|
||||||
|
indicator-radius = "100";
|
||||||
|
indicator-thickness = "10";
|
||||||
|
|
||||||
|
effect-blur = "30x2";
|
||||||
|
effect-vignette = "0.5:0.5";
|
||||||
|
|
||||||
|
text-color = "cdd6f4";
|
||||||
|
text-clear-color = "11111b";
|
||||||
|
text-ver-color = "11111b";
|
||||||
|
text-wrong-color = "11111b";
|
||||||
|
|
||||||
|
ring-color = "1e1e2e";
|
||||||
|
key-hl-color = "f5c2e7";
|
||||||
|
line-color = "f5c2e7";
|
||||||
|
inside-color = "00000088";
|
||||||
|
separator-color = "00000000";
|
||||||
|
|
||||||
|
inside-clear-color = "f2cdcd88";
|
||||||
|
line-clear-color = "f2cdcd";
|
||||||
|
ring-clear-color = "f2cdcd";
|
||||||
|
|
||||||
|
inside-ver-color = "89dceb88";
|
||||||
|
line-ver-color = "89dceb";
|
||||||
|
ring-ver-color = "89dceb";
|
||||||
|
|
||||||
|
inside-wrong-color = "f38ba888";
|
||||||
|
line-wrong-color = "f38ba8";
|
||||||
|
ring-wrong-color = "f38ba8";
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (pkgs.stdenv.hostPlatform) isLinux;
|
|
||||||
in {
|
|
||||||
home.packages = lib.mkIf isLinux (with pkgs; [
|
|
||||||
clipman
|
|
||||||
wl-clipboard
|
|
||||||
]);
|
|
||||||
}
|
|
|
@ -21,7 +21,6 @@ in {
|
||||||
./apps/newsboat.nix
|
./apps/newsboat.nix
|
||||||
./apps/rice.nix
|
./apps/rice.nix
|
||||||
./apps/vscode.nix
|
./apps/vscode.nix
|
||||||
./apps/wayland.nix
|
|
||||||
./apps/wezterm.nix
|
./apps/wezterm.nix
|
||||||
./apps/zsh.nix
|
./apps/zsh.nix
|
||||||
./secrets/sops.nix
|
./secrets/sops.nix
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./boot.nix
|
./boot.nix
|
||||||
|
./greeter.nix
|
||||||
./input.nix
|
./input.nix
|
||||||
./network.nix
|
./network.nix
|
||||||
./sound.nix
|
./sound.nix
|
||||||
|
|
73
machines/common/linux/greeter.nix
Normal file
73
machines/common/linux/greeter.nix
Normal file
|
@ -0,0 +1,73 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
greetdConfig = pkgs.writeText "greetd-config" ''
|
||||||
|
exec "dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP"
|
||||||
|
seat seat0 xcursor_theme "Numix-Cursor" 24
|
||||||
|
xwayland disable
|
||||||
|
exec "${lib.getExe config.programs.regreet.package}; swaymsg exit"
|
||||||
|
'';
|
||||||
|
in {
|
||||||
|
programs.regreet = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
background = {
|
||||||
|
path = ../../../home/wallpapers/dhm_1610.png;
|
||||||
|
fit = "Cover";
|
||||||
|
};
|
||||||
|
GTK = {
|
||||||
|
font_name = "IBM Plex Mono 16";
|
||||||
|
cursor_theme_name = "Numix-Cursor";
|
||||||
|
icon_theme_name = "Papirus-Dark";
|
||||||
|
theme_name = "Catppuccin-Mocha-Compact-Pink-Dark";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
services.greetd.settings.default_session.command = "${lib.getExe config.programs.sway.package} --config ${greetdConfig}";
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
|
security.pam.services.greetd.gnupg.enable = true;
|
||||||
|
security.polkit.enable = true;
|
||||||
|
systemd = {
|
||||||
|
packages = [pkgs.polkit_gnome];
|
||||||
|
user.services.polkit-gnome-authentication-agent-1 = {
|
||||||
|
unitConfig = {
|
||||||
|
Description = "polkit-gnome-authentication-agent-1";
|
||||||
|
Wants = ["graphical-session.target"];
|
||||||
|
WantedBy = ["graphical-session.target"];
|
||||||
|
After = ["graphical-session.target"];
|
||||||
|
};
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 1;
|
||||||
|
TimeoutStopSec = 10;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
((pkgs.catppuccin-gtk.overrideAttrs (final: rec {
|
||||||
|
version = "0.5.0";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "catppuccin";
|
||||||
|
repo = "gtk";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "sha256-tVkB9R3Z4lApCIveWPweTnB/JlwbiVAHREGq+xRINkM=";
|
||||||
|
};
|
||||||
|
}))
|
||||||
|
.override {
|
||||||
|
accents = ["pink"];
|
||||||
|
variant = "mocha";
|
||||||
|
size = "compact";
|
||||||
|
})
|
||||||
|
(pkgs.nur.repos.nekowinston.papirus-folders-catppuccin.override {
|
||||||
|
flavour = "mocha";
|
||||||
|
accent = "pink";
|
||||||
|
})
|
||||||
|
numix-cursor-theme
|
||||||
|
];
|
||||||
|
}
|
|
@ -29,10 +29,6 @@
|
||||||
swaylock-effects
|
swaylock-effects
|
||||||
swayidle
|
swayidle
|
||||||
];
|
];
|
||||||
wrapperFeatures = {
|
|
||||||
base = true;
|
|
||||||
gtk = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
# needed for gnome3 pinentry
|
# needed for gnome3 pinentry
|
||||||
services.dbus.packages = [pkgs.gcr];
|
services.dbus.packages = [pkgs.gcr];
|
||||||
|
@ -45,36 +41,9 @@
|
||||||
udisks2.enable = true;
|
udisks2.enable = true;
|
||||||
devmon.enable = true;
|
devmon.enable = true;
|
||||||
|
|
||||||
greetd = let
|
|
||||||
sway-run = pkgs.writeShellScript "sway-run" ''
|
|
||||||
# session
|
|
||||||
export XDG_SESSION_TYPE=wayland
|
|
||||||
export XDG_SESSION_DESKTOP=sway
|
|
||||||
export XDG_CURRENT_DESKTOP=sway
|
|
||||||
# wayland
|
|
||||||
export NIXOS_OZONE_WL=1
|
|
||||||
export MOZ_ENABLE_WAYLAND=1
|
|
||||||
export QT_QPA_PLATFORM=wayland
|
|
||||||
export SDL_VIDEODRIVER=wayland
|
|
||||||
export _JAVA_AWT_WM_NONREPARENTING=1
|
|
||||||
|
|
||||||
exec systemd-cat --identifier=sway sway $@
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
default_session = {
|
|
||||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time -r --cmd ${sway-run}";
|
|
||||||
user = "greeter";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# thumbnails
|
# thumbnails
|
||||||
tumbler.enable = true;
|
tumbler.enable = true;
|
||||||
|
|
||||||
gnome.gnome-keyring.enable = true;
|
|
||||||
|
|
||||||
xserver = {
|
xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
desktopManager.xterm.enable = false;
|
desktopManager.xterm.enable = false;
|
||||||
|
@ -87,24 +56,4 @@
|
||||||
xkbOptions = "caps:ctrl_modifier";
|
xkbOptions = "caps:ctrl_modifier";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
security.polkit.enable = true;
|
|
||||||
systemd = {
|
|
||||||
packages = [pkgs.polkit_gnome];
|
|
||||||
user.services.polkit-gnome-authentication-agent-1 = {
|
|
||||||
unitConfig = {
|
|
||||||
Description = "polkit-gnome-authentication-agent-1";
|
|
||||||
Wants = ["graphical-session.target"];
|
|
||||||
WantedBy = ["graphical-session.target"];
|
|
||||||
After = ["graphical-session.target"];
|
|
||||||
};
|
|
||||||
serviceConfig = {
|
|
||||||
Type = "simple";
|
|
||||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
|
||||||
Restart = "on-failure";
|
|
||||||
RestartSec = 1;
|
|
||||||
TimeoutStopSec = 10;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue