{inputs, pkgs, gpu, platform, ...}: { # nixpkgs = { # overlays = [ # # https://github.com/nix-community/nixpkgs-wayland # inputs.nixpkgs-wayland.overlay # ]; # }; services.xserver.videoDrivers = [ gpu ]; # tuigreet services.greetd = { enable = true; settings = { default_session = { command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd Hyprland -g 'Authorized Personnel Only'"; user = "greeter"; }; }; }; services.tlp = { enable = true; }; # Brightness and volume control # https://haikarainen.github.io/light/ programs.light.enable = true; # PolKit for the fingerprint reader security.polkit.enable = true; # https://github.com/NixOS/nixpkgs/issues/143365 security.pam.services.swaylock = {}; # Enabling hyprlnd on NixOS programs.hyprland = { enable = true; enableNvidiaPatches = true; xwayland.enable = true; }; environment.sessionVariables = { # If your cursor becomes invisible WLR_NO_HARDWARE_CURSORS = "0"; # Hint electron apps to use wayland NIXOS_OZONE_WL = "1"; }; services.logind.extraConfig = '' IdleActionSec=900 IdleAction=suspend-then-hibernate ''; systemd.sleep.extraConfig = '' AllowSuspend = yes AllowHibernate = yes AllowSuspendThenhibernate = yes AllowHybridSleep = yes HibernateDelaySec = 600 ''; # XDG portal xdg.portal.enable = true; xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; # system packages environment.systemPackages = [ # waybar (pkgs.waybar.overrideAttrs (oldAttrs: { mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ]; }) ) pkgs.libnotify # Notification libraries pkgs.mako # Notification daemon pkgs.swww # Wallpaper daemon pkgs.kitty # Terminal emulator pkgs.rofi-wayland # App Launcher pkgs.grim # Screenshots pkgs.slurp # Screenshots pkgs.wl-clipboard # Clipboard pkgs.font-awesome # Fonts pkgs.libinput-gestures # Gesture Control pkgs.playerctl # Control sublime-music from waybar? pkgs.pavucontrol # Pulse Audio Volume CONTROL pkgs.glib # Set GTK theme settings pkgs.greetd.tuigreet # Greeter pkgs.swayidle # Idle management daemon - Automatic lock screen pkgs.swayosd # used for on-screen notifications for things like adjusting backlight, volume, etc pkgs.nwg-bar # Logout/shutdown/hibernate/lock screen modal UI pkgs.ranger # TUI file manager pkgs.xdg-utils # Utilities for better X/Wayland integration inputs.nixpkgs-wayland.packages.${platform}.wayprompt # from nixpkgs-wayland exclusively - pinentry UI # Themes pkgs.gruvbox-gtk-theme # Gruvbox Theme pkgs.papirus-icon-theme # Papirus Icons ]; # Enable sound with pipewire. sound.enable = true; security.rtkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; jack.enable = true; }; }