Initial commit
This commit is contained in:
commit
69d741b98b
29 changed files with 718 additions and 0 deletions
83
hosts/main-laptop/configuration.nix
Normal file
83
hosts/main-laptop/configuration.nix
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
{ lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[
|
||||
./hardware-configuration.nix
|
||||
../../nixosModules/default.nix
|
||||
];
|
||||
|
||||
settings = {
|
||||
programs.docker.enable = lib.mkForce true;
|
||||
programs.tailscale.enable = lib.mkForce true;
|
||||
|
||||
drivers = {
|
||||
printer.M2020.enable = lib.mkForce true;
|
||||
ipod.enable = lib.mkForce true;
|
||||
gpu.amd.enable = lib.mkForce true;
|
||||
};
|
||||
|
||||
gnome.enable = lib.mkForce true;
|
||||
services.printing.enable = lib.mkForce true;
|
||||
services.audio.enable = lib.mkForce true;
|
||||
};
|
||||
|
||||
#enable wayland for electron programs
|
||||
environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
||||
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
boot.loader.systemd-boot.configurationLimit = 10;
|
||||
|
||||
#todo look further into networking options
|
||||
#could be pretty interesting
|
||||
networking.hostName = "fedfer-main-laptop-nixos";
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
#todo need to move this to modules
|
||||
services = {
|
||||
fstrim.enable = true;
|
||||
thermald.enable = true;
|
||||
libinput = {
|
||||
enable = true;
|
||||
touchpad = {
|
||||
tapping = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#remove various bloat
|
||||
services.xserver.excludePackages = with pkgs; [ xterm ];
|
||||
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
};
|
||||
};
|
||||
|
||||
#todo modularize!
|
||||
programs.xwayland.enable = true;
|
||||
programs.zsh.enable = true;
|
||||
|
||||
# Allow unfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
nano
|
||||
lshw
|
||||
zsh
|
||||
fastfetch
|
||||
gparted
|
||||
gcc
|
||||
];
|
||||
|
||||
#enable flakes
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
system.stateVersion = "23.11"; #DO NOT CHANGE THIS!
|
||||
|
||||
}
|
||||
40
hosts/main-laptop/hardware-configuration.nix
Normal file
40
hosts/main-laptop/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-label/nixos";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-label/BOOT";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-label/swap"; }
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp2s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
38
hosts/main-laptop/home.nix
Normal file
38
hosts/main-laptop/home.nix
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{ pkgs, ... }: {
|
||||
|
||||
imports = [
|
||||
../../homeManagerModules/zsh.nix
|
||||
../../homeManagerModules/starship.nix
|
||||
../../homeManagerModules/desktopPrograms/essentials/firefox.nix
|
||||
|
||||
../../homeManagerModules/desktopPrograms/vscodium.nix
|
||||
../../homeManagerModules/desktopPrograms/vesktop.nix
|
||||
|
||||
../../homeManagerModules/cliPrograms/hyfetch.nix
|
||||
../../homeManagerModules/cliPrograms/bun.nix
|
||||
../../homeManagerModules/cliPrograms/git.nix
|
||||
];
|
||||
|
||||
home.username = "fedfer";
|
||||
home.homeDirectory = "/home/fedfer";
|
||||
|
||||
xdg.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
prismlauncher
|
||||
foliate
|
||||
rustup
|
||||
logseq
|
||||
python3
|
||||
impression
|
||||
chatterino2
|
||||
qbittorrent
|
||||
nil
|
||||
fira-code-nerdfont
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
home.stateVersion = "23.11"; #DO NOT CHANGE
|
||||
programs.home-manager.enable = true; #DO NOT CHANGE
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue