Some checks failed
Nix Format Check / check-format (push) Failing after 38s
adds noatime to all devices root partition mount options adds cosmic desktop to workstations adds xanmod kernel to workstations adds xanmod with zfs to servers adds perplexityai extension to brave removes openra flatpak adds threads limit to upgrade command to prevent system freezes removes fcitx5 completely
76 lines
1.6 KiB
Nix
76 lines
1.6 KiB
Nix
{ config, pkgs, ... }:
|
|
{
|
|
# Enable the X11 windowing system.
|
|
services.xserver.enable = true;
|
|
|
|
# Enable the GNOME Desktop Environment.
|
|
services.xserver.displayManager.gdm.enable = true;
|
|
services.xserver.desktopManager.gnome.enable = true;
|
|
|
|
# Enable the Cosmic Desktop Environment.
|
|
services.desktopManager.cosmic.enable = true;
|
|
services.displayManager.cosmic-greeter.enable = true;
|
|
|
|
# Install xanmod kernel
|
|
boot.kernelPackages = pkgs.linuxKernel.packages.linux_xanmod_stable;
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
gnome-session
|
|
xdg-desktop-portal
|
|
xdg-desktop-portal-gnome
|
|
xdg-desktop-portal-gtk
|
|
];
|
|
|
|
# Configure keymap in X11
|
|
services.xserver.xkb = {
|
|
layout = "us";
|
|
variant = "euro";
|
|
};
|
|
|
|
# Enable sound with pipewire.
|
|
hardware.pulseaudio.enable = false;
|
|
security.rtkit.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
alsa.support32Bit = true;
|
|
pulse.enable = true;
|
|
};
|
|
|
|
# Open ports in the firewall
|
|
networking.firewall = {
|
|
enable = true;
|
|
allowedTCPPorts = [
|
|
# RDP (Gnome Remote Desktop)
|
|
3389
|
|
3390
|
|
3391
|
|
|
|
# SSH
|
|
400
|
|
];
|
|
allowedUDPPorts = [
|
|
# RDP (Gnome Remote Desktop)
|
|
3389
|
|
3390
|
|
3391
|
|
];
|
|
};
|
|
|
|
# OpenSSH server
|
|
services.openssh = {
|
|
enable = true;
|
|
ports = [ 400 ];
|
|
settings = {
|
|
PasswordAuthentication = false;
|
|
AllowUsers = [ "menno" ];
|
|
X11Forwarding = true;
|
|
PermitRootLogin = "prohibit-password";
|
|
AllowTCPForwarding = true;
|
|
AllowAgentForwarding = true;
|
|
PermitEmptyPasswords = false;
|
|
PubkeyAuthentication = true;
|
|
};
|
|
};
|
|
}
|