Update for framework laptop

This commit is contained in:
Haak Saxberg 2021-10-04 21:35:35 -07:00
parent f9cdfb390f
commit 01a48ac956

View file

@ -8,17 +8,20 @@
imports = imports =
[ # Include the results of the hardware scan. [ # Include the results of the hardware scan.
/etc/nixos/hardware-configuration.nix /etc/nixos/hardware-configuration.nix
/etc/nixos/glibc-locale-paths.nix
]; ];
# Use the systemd-boot EFI boot loader. # Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
# do not fill the bootloader space with generations until it pops; only keep
# a reasonable number around.
boot.loader.systemd-boot.configurationLimit = 42; boot.loader.systemd-boot.configurationLimit = 42;
# WiFi support requires kernel 5.13
boot.kernelPackages = pkgs.linuxPackages_latest;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;
networking.hostName = "framework"; # Define your hostname.
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
networking.hostName = "athena"; # Define your hostname.
# Create entries for /etc/wpa_supplicant.conf by running `wpa_passphrase SSID PASSWORD` # Create entries for /etc/wpa_supplicant.conf by running `wpa_passphrase SSID PASSWORD`
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
@ -26,24 +29,21 @@
# Per-interface useDHCP will be mandatory in the future, so this generated config # Per-interface useDHCP will be mandatory in the future, so this generated config
# replicates the default behaviour. # replicates the default behaviour.
networking.useDHCP = false; networking.useDHCP = false;
networking.interfaces.wlp58s0.useDHCP = true; networking.interfaces.wlp170s0.useDHCP = true;
# Configure network proxy if necessary # Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/"; # networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
console = {
font = "Fira Code";
keyMap = "us";
};
# Select internationalisation properties. # Select internationalisation properties.
i18n = { i18n = {
defaultLocale = "en_US.UTF-8"; defaultLocale = "en_US.UTF-8";
}; };
# run the following command to swap escape and caps-lock keys, like a console = {
# civilized person: font = "Lat2-Terminus16";
# setxkbmap -option caps:swapescape keyMap = "us";
};
# Set your time zone. # Set your time zone.
time.timeZone = "America/Los_Angeles"; time.timeZone = "America/Los_Angeles";
@ -56,32 +56,27 @@
firefox firefox
inkscape inkscape
p7zip p7zip
plasma-browser-integration
slack slack
vim neovim
vlc vlc
wget wget
xclip xclip
zathura zathura
zsh zsh
gnome.gnome-tweaks
gnomeExtensions.paperwm
]; ];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
nixpkgs.config.firefox.enablePlasmaBrowserIntegration = true;
fonts.fonts = with pkgs; [ fira-code ];
# Open ports in the firewall. # Open ports in the firewall.
networking.firewall = { networking.firewall = {
allowedTCPPorts = [ allowedTCPPorts = [
631 # CUPs port for printing 631 # CUPs port for printing
6881 # port for torrenting
8010 # port for VLC to chromecast
]; ];
allowedUDPPorts = [ allowedUDPPorts = [
631 631
6881
8010
]; ];
}; };
# Or disable the firewall altogether. # Or disable the firewall altogether.
@ -95,16 +90,12 @@
# List services that you want to enable: # List services that you want to enable:
# Enable fingerprint reading
services.fprintd.enable = true;
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
# services.openssh.enable = true; # services.openssh.enable = true;
# Torrenting!
services.deluge = {
enable = true;
declarative = true;
authFile = /home/haak/dotfiles/secrets/deluge_auth;
openFirewall = true;
};
# Enable CUPS to print documents. # Enable CUPS to print documents.
services.printing = { services.printing = {
enable = true; enable = true;
@ -124,18 +115,22 @@
package = pkgs.pulseaudioFull; package = pkgs.pulseaudioFull;
}; };
# Enable the X11 windowing system.
services.xserver.enable = true;
services.xserver.layout = "us";
services.xserver.xkbOptions = "caps:swapescape";
# Enable touchpad support. # Enable touchpad support.
services.xserver.libinput.enable = true; services.xserver.libinput.enable = true;
# Enable the KDE Desktop Environment.
services.xserver = { services.xserver = {
displayManager.sddm.enable = true; # Enable the X11 windowing system.
desktopManager.plasma5.enable = true; enable = true;
# Enable the GNOME Desktop Environment.
displayManager.gdm.enable = true;
desktopManager.gnome.enable = true;
layout = "us";
# run the following command to swap escape and caps-lock keys, like a
# civilized person:
xkbOptions = "caps:swapescape";
}; };
services.syncthing = { services.syncthing = {
@ -166,7 +161,7 @@
# compatible, in order to avoid breaking some software such as database # compatible, in order to avoid breaking some software such as database
# servers. You should change this only after NixOS release notes say you # servers. You should change this only after NixOS release notes say you
# should. # should.
system.stateVersion = "20.03"; # Did you read the comment? system.stateVersion = "21.05"; # Did you read the comment?
system.autoUpgrade.enable = true; system.autoUpgrade.enable = true;
} }