Files
LiNix/modules/hosts/desktop/configuration.nix
2026-04-06 14:29:28 -05:00

78 lines
2.0 KiB
Nix

{ inputs, lib, pkgs, self, ... }:{
flake.nixosModules.lily-desktop = { pkgs, ... }:{
# Use the systemd-boot EFI boot loader.
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
networking.hostName = "lily-desktop"; # Define your hostname.
networking.networkmanager.enable = true;
services.xserver.enable = true;
services.displayManager.gdm.enable = true;
services.desktopManager.gnome.enable = true;
# Enable CUPS to print documents.
services.printing.enable = true;
# Enable sound.
# services.pulseaudio.enable = true;
# OR
services.pipewire = {
enable = true;
pulse.enable = true;
};
# Enable touchpad support (enabled default in most desktopManager).
# services.libinput.enable = true;
programs = {
firefox.enable = true;
niri = {
enable = true;
package = self.packages.${pkgs.stdenv.hostPlatform.system}.niri;
};
};
nixpkgs.config.allowUnfree = true;
# List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options).
environment.systemPackages = with pkgs; [
tree
noctalia-shell
quickshell
git
vim
wget
home-manager
sdrpp
self.packages.${pkgs.stdenv.hostPlatform.system}.nh
];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# Enable the OpenSSH daemon.
services.openssh.enable = true;
networking.firewall.allowedTCPPorts = [ 22 ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
nix.settings.experimental-features = [ "nix-command" "flakes" ];
system.stateVersion = "25.11"; # Did you read the comment?
};
}