72 lines
1.4 KiB
Nix
72 lines
1.4 KiB
Nix
{ pkgs, ... }: {
|
|
|
|
imports = [ ./shared.nix ];
|
|
|
|
# Networking
|
|
networking.wireless.iwd.enable = true;
|
|
networking.networkmanager = {
|
|
enable = true;
|
|
wifi.backend = "iwd";
|
|
};
|
|
|
|
# Enable sound
|
|
security.rtkit.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
alsa.support32Bit = true;
|
|
pulse.enable = true;
|
|
jack.enable = true;
|
|
};
|
|
|
|
# Enable niri window manager.
|
|
programs.niri.enable = true;
|
|
|
|
# Display manager for graphical login
|
|
services.greetd = {
|
|
enable = true;
|
|
settings = {
|
|
default_session = {
|
|
command = "${pkgs.tuigreet}/bin/tuigreet --time --remember --cmd niri";
|
|
user = "greeter";
|
|
};
|
|
};
|
|
};
|
|
|
|
# Suppress greetd's default virtual terminal log spam.
|
|
systemd.services.greetd.serviceConfig.LogStandardStream = "journal";
|
|
|
|
# XDG Desktop Portals (used for wayland screen sharing, file pickets, etc.)
|
|
xdg.portal = {
|
|
enable = true;
|
|
wlr.enable = true;
|
|
};
|
|
|
|
# Configure keymap
|
|
services.xserver.xkb = {
|
|
layout = "us";
|
|
variant = "";
|
|
options = "caps:escape";
|
|
};
|
|
|
|
# List packages to be installed for headful systems
|
|
environment.systemPackages = with pkgs; [
|
|
awww
|
|
fuzzel
|
|
waybar
|
|
kanshi
|
|
swaybg
|
|
swaylock
|
|
swayidle
|
|
alacritty
|
|
wl-clipboard
|
|
xwayland-satellite
|
|
];
|
|
|
|
# Install OpenGL
|
|
hardware.graphics = {
|
|
enable = true;
|
|
enable32Bit = true;
|
|
};
|
|
}
|