Initial commit

This commit is contained in:
Veneficium 2024-06-11 23:59:03 +02:00
commit 69d741b98b
29 changed files with 718 additions and 0 deletions

View 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!
}

View 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;
}

View 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
}