2022-04-27 00:21:19 +02:00
|
|
|
{ pkgs
|
|
|
|
, config
|
|
|
|
, lib
|
|
|
|
, ...
|
2022-03-01 22:19:03 +01:00
|
|
|
}:
|
|
|
|
with lib; let
|
|
|
|
cfg = config.eboskma.greetd;
|
2022-07-03 22:43:40 +02:00
|
|
|
|
|
|
|
style = builtins.replaceStrings [ "{WALLPAPER}" ] [ (builtins.toString ../../home-manager/modules/sway/wallpapers/river-2560.png) ] (builtins.readFile ./greetd.css);
|
2022-10-30 22:19:50 +01:00
|
|
|
|
2022-04-27 00:21:19 +02:00
|
|
|
in
|
|
|
|
{
|
2021-11-17 16:32:18 +01:00
|
|
|
options.eboskma.greetd = {
|
|
|
|
enable = mkEnableOption "enable greetd";
|
2022-11-19 20:00:54 +01:00
|
|
|
sway = mkEnableOption "sway";
|
2021-11-17 16:32:18 +01:00
|
|
|
};
|
|
|
|
|
2022-03-18 21:14:51 +01:00
|
|
|
config =
|
2022-05-03 18:17:38 +02:00
|
|
|
mkIf cfg.enable
|
2022-04-27 00:21:19 +02:00
|
|
|
{
|
|
|
|
services.greetd = {
|
|
|
|
enable = true;
|
|
|
|
restart = true;
|
|
|
|
settings = {
|
|
|
|
default_session = {
|
2022-11-11 17:07:24 +01:00
|
|
|
command = "${pkgs.sway}/bin/sway --unsupported-gpu --config /etc/greetd/sway-config";
|
2022-04-27 00:21:19 +02:00
|
|
|
};
|
2022-03-18 21:14:51 +01:00
|
|
|
};
|
2021-11-17 16:32:18 +01:00
|
|
|
};
|
2023-09-13 23:57:47 +02:00
|
|
|
|
|
|
|
programs.regreet = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
background = {
|
|
|
|
path = ../../home-manager/modules/sway/wallpapers/river-2560.png;
|
|
|
|
fit = "Cover";
|
|
|
|
};
|
|
|
|
|
|
|
|
GTK = {
|
|
|
|
application_prefer_dark_theme = true;
|
|
|
|
theme_name = "elementary";
|
|
|
|
cursor_theme = "elementary";
|
|
|
|
icon_theme_name = "elementary";
|
|
|
|
font_name = "Iosevka Aile 16";
|
|
|
|
};
|
|
|
|
|
|
|
|
commands = {
|
|
|
|
reboot = [ "systemctl" "reboot" ];
|
|
|
|
poweroff = [ "systemctl" "poweroff" ];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
security.pam.services.greetd.u2fAuth = false;
|
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [ pantheon.elementary-gtk-theme pantheon.elementary-icon-theme ];
|
|
|
|
|
|
|
|
# exec "${pkgs.greetd.gtkgreet}/bin/gtkgreet -l -s /etc/greetd/gtkgreet.css; swaymsg exit"
|
2021-11-17 16:32:18 +01:00
|
|
|
|
2022-04-27 00:21:19 +02:00
|
|
|
environment.etc = {
|
|
|
|
"greetd/sway-config" = {
|
|
|
|
text = ''
|
|
|
|
# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet.
|
2023-09-13 23:57:47 +02:00
|
|
|
exec "${pkgs.greetd.regreet}/bin/regreet; swaymsg exit"
|
|
|
|
# bindsym Mod4+shift+f exec swaynag \
|
|
|
|
# -t warning \
|
|
|
|
# -m 'What do you want to do?' \
|
|
|
|
# -b 'Poweroff' 'systemctl poweroff' \
|
|
|
|
# -b 'Reboot' 'systemctl reboot'
|
2022-04-27 00:21:19 +02:00
|
|
|
include /etc/sway/config.d/*
|
|
|
|
'';
|
|
|
|
user = "greeter";
|
|
|
|
group = "greeter";
|
|
|
|
};
|
|
|
|
"greetd/environments" = {
|
2023-09-13 14:50:03 +02:00
|
|
|
text = concatStringsSep "\n" ((optional cfg.sway "${pkgs.sway}/bin/sway")
|
2022-11-19 20:00:54 +01:00
|
|
|
++ [ "${pkgs.bash}/bin/bash" ]);
|
2022-04-27 00:21:19 +02:00
|
|
|
user = "greeter";
|
|
|
|
group = "greeter";
|
2022-07-03 22:43:40 +02:00
|
|
|
};
|
|
|
|
"greetd/gtkgreet.css" = {
|
|
|
|
text = style;
|
|
|
|
user = "greeter";
|
|
|
|
group = "greeter";
|
2022-04-27 00:21:19 +02:00
|
|
|
};
|
|
|
|
"sway/config.d/systemd-env.conf" = {
|
|
|
|
text = ''
|
|
|
|
exec_always --no-startup-id systemctl --user import-environment _JAVA_AWT_WM_NONREPARENTING MOZ_ENABLE_WAYLAND MOZ_DBUS_REMOTE QT_QPA_PLATFORM QT_WAYLAND_DISABLE_WINDOWDECORATION QT_QPA_PLATFORMTHEME SDL_VIDEODRIVER SSH_AUTH_SOCK
|
|
|
|
exec_always --no-startup-id dbus-update-activation-environment --systemd _JAVA_AWT_WM_NONREPARENTING MOZ_ENABLE_WAYLAND MOZ_DBUS_REMOTE QT_QPA_PLATFORM QT_WAYLAND_DISABLE_WINDOWDECORATION QT_QPA_PLATFORMTHEME SDL_VIDEODRIVER SSH_AUTH_SOCK
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
"xdg/gtk-3.0/settings.ini" = {
|
|
|
|
text = generators.toINI { } {
|
|
|
|
Settings = {
|
2023-09-06 17:01:26 +02:00
|
|
|
gtk-theme-name = "elementary";
|
|
|
|
gtk-icon-theme-name = "elementary";
|
|
|
|
gtk-cursor-theme-name = "elementary";
|
|
|
|
gtk-application-prefer-dark-theme = "true";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
"xdg/gtk-4.0/settings.ini" = {
|
|
|
|
text = generators.toINI { } {
|
|
|
|
Settings = {
|
|
|
|
gtk-theme-name = "elementary";
|
|
|
|
gtk-icon-theme-name = "elementary";
|
|
|
|
gtk-cursor-theme-name = "elementary";
|
2022-04-27 00:21:19 +02:00
|
|
|
gtk-application-prefer-dark-theme = "true";
|
|
|
|
};
|
2022-03-18 21:14:51 +01:00
|
|
|
};
|
2022-01-03 13:03:10 +01:00
|
|
|
};
|
|
|
|
};
|
2021-11-17 16:32:18 +01:00
|
|
|
};
|
|
|
|
}
|