{pkgs, lib, repoFlake, nodeFlake, ...}: { home-manager.users.steveej = _: { imports = [ ../../../home-manager/configuration/graphical-fullblown.nix (_: { programs.chromium.extensions = [ # can define host-specific extensions here ]; }) ]; home.sessionVariables = { }; }; # TODO: fix the following errors with regreet # # Failed to create /var/empty/.cache for shader cache (Operation not permitted)---disabling. # amdgpu: amdgpu_cs_ctx_create2 failed. (-13) # Failed to create /var/empty/.cache for shader cache (Operation not permitted)---disabling. # ERROR: Couldn't create log file '/var/log/regreet/log': Permission denied (os error 13) # 2023-05-22T10:31:42.52900769+02:00 WARN regreet::tomlutils: Missing TOML file: /var/cache/regreet/cache.toml # 2023-05-22T10:31:42.52902325+02:00 WARN regreet::tomlutils: Missing TOML file: /etc/greetd/regreet.toml # # (regreet:505614): Gtk-WARNING **: 10:31:42.532: Theme parser warning: :6:17-18: Empty declaration # Failed to create /var/empty/.cache for shader cache (Operation not permitted)---disabling. services.greetd = let # exec "${pkgs.greetd.gtkgreet}/bin/gtkgreet -l; swaymsg exit" swayConfig = pkgs.writeText "greetd-sway-config" '' # `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet. exec "dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK; ${pkgs.greetd.regreet}/bin/regreet; swaymsg exit" bindsym Mod4+shift+e exec swaynag \ -t warning \ -m 'What do you want to do?' \ -b 'Poweroff' 'systemctl poweroff' \ -b 'Reboot' 'systemctl reboot' ''; in { enable = false; settings = { vt = 1; default_session = { command = "${pkgs.sway}/bin/sway --config ${swayConfig}"; }; }; }; environment.etc."greetd/environments".text = '' sway ''; # fonts = let # prefs.font = rec { # size = 13; # default = sans; # sans = { family = "Noto Sans"; package = pkgs.noto-fonts; }; # serif = { family = "Noto Serif"; package = pkgs.noto-fonts; }; # # monospace = { family = "Iosevka Fixed"; package = pkgs.iosevka-bin; }; # monospace = { family = "Iosevka Comfy Fixed"; package = pkgs.iosevka-comfy.comfy-fixed; }; # # monospace = { family = "Go Mono"; package = pkgs.go-font; }; # # monospace = { family = "Jetbrains Mono"; package = pkgs.jetbrains-mono; }; # fallback = { family = "Font Awesome 5 Free"; package = pkgs.font-awesome; }; # emoji = { family = "Noto Color Emoji"; package = pkgs.noto-fonts-emoji; }; # # allPackages = (map (p: p.package) # [ # default # sans # serif # monospace # fallback # emoji # ]) ++ # (with pkgs; [ # liberation_ttf # free corefonts-metric-compatible replacement # ttf_bitstream_vera # gelasio # metric-compatible with Georgia # powerline-symbols # ]); # }; # in { # # fonts = prefs.font.allPackages; # # fontconfig = { # # enable = true; # # defaultFonts = { # # serif = [ prefs.font.serif.family ]; # # sansSerif = [ prefs.font.sans.family ]; # # monospace = [ prefs.font.monospace.family ]; # # emoji = [ prefs.font.emoji.family ]; # # }; # # }; # }; security.pam.services.getty.enableGnomeKeyring = true; services.gnome.gnome-keyring.enable = true; # rtkit is optional but recommended security.rtkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; # If you want to use JACK applications, uncomment this #jack.enable = true; }; # required by swaywm security.polkit.enable = true; security.pam.services.swaylock = { }; # test these on https://mozilla.github.io/webrtc-landing/gum_test.html xdg.portal = { enable = true; # FIXME: `true` breaks xdg-open from alacritty: # $ xdg-open "https://github.com/" # Error: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.OpenURI” on object at path /org/freedesktop/portal/desktop xdgOpenUsePortal = false; extraPortals = [ pkgs.xdg-desktop-portal-wlr pkgs.xdg-desktop-portal-gtk # repoFlake.inputs.nixpkgs-wayland.packages.${pkgs.system}.xdg-desktop-portal-wlr # (pkgs.xdg-desktop-portal-gtk.override (_: { # buildPortalsInGnome = false; # })) ]; }; system.stateVersion = "23.05"; }