moving server configs to be more modular

This commit is contained in:
Chris Cochrun 2023-01-27 21:11:08 -06:00
parent bac5142431
commit 69235e61fa
6 changed files with 20 additions and 136 deletions

View file

@ -3,7 +3,7 @@
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-22.05"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-22.11";
home-manager = { home-manager = {
url = "github:nix-community/home-manager/master"; url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";

View file

@ -2,10 +2,23 @@
with lib; with lib;
{ {
nixpkgs.config.allowUnfree = true;
nix = {
extraOptions = "experimental-features = nix-command flakes";
package = pkgs.nixFlakes;
};
nixpkgs.config.allowUnFree = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
time.timeZone = "America/Chicago"; time.timeZone = "America/Chicago";
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
# Set default shell to be dash for speed # Set default shell to be dash for speed
# Apparently this is bad because a lot of nix relies on bash # Apparently this is bad because a lot of nix relies on bash
# environment.binsh = "${pkgs.dash}/bin/dash"; # environment.binsh = "${pkgs.dash}/bin/dash";

View file

@ -21,14 +21,7 @@ with lib;
kernelPackages = pkgs.linuxPackages_zen; kernelPackages = pkgs.linuxPackages_zen;
kernelParams = [ "mem_sleep_default=deep" "nvme.noacpi=1"]; kernelParams = [ "mem_sleep_default=deep" "nvme.noacpi=1"];
# initrd.kernelModules = [ "amdgpu" ]; # initrd.kernelModules = [ "amdgpu" ];
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
}; };
};
networking.networkmanager.enable = true;
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# The global useDHCP flag is deprecated, therefore explicitly set to false here. # The global useDHCP flag is deprecated, therefore explicitly set to false here.
# 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

View file

@ -44,3 +44,4 @@
neofetch neofetch
]; ];
} }

View file

@ -4,33 +4,11 @@
imports = imports =
[ # Include the results of the hardware scan. [ # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
../../modules/base.nix
../../pkgs/base-packages.nix
]; ];
nix = {
extraOptions = "experimental-features = nix-command flakes";
package = pkgs.nixFlakes;
};
nixpkgs.config.allowUnFree = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "dalinar"; # Define your hostname. networking.hostName = "dalinar"; # Define your hostname.
# Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
# Set your time zone.
time.timeZone = "America/Chicago";
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
# Enable the X11 windowing system. # Enable the X11 windowing system.
# services.xserver.enable = true; # services.xserver.enable = true;
@ -59,9 +37,6 @@
]; ];
}; };
environment.homeBinInPath = true;
programs.fish.enable = true;
# Enable touchpad support (enabled default in most desktopManager). # Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true; # services.xserver.libinput.enable = true;
@ -71,32 +46,6 @@
extraGroups = [ "wheel" ]; # Enable sudo for the user. extraGroups = [ "wheel" ]; # Enable sudo for the user.
}; };
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
vim
wget
yt-dlp
bat
ripgrep
ffmpeg-full
rsync
dutree
tmux
git
samba
exa
jq
fd
bc
sysstat
procs
btop
htop
unzip
blesh
];
virtualisation.docker.enable = true; virtualisation.docker.enable = true;
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are

View file

@ -4,51 +4,13 @@
imports = imports =
[ # Include the results of the hardware scan. [ # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
../../modules/base.nix
../../pkgs/base-packages.nix
]; ];
nix = {
extraOptions = "experimental-features = nix-command flakes";
package = pkgs.nixFlakes;
};
nixpkgs.config.allowUnFree = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.efi.efiSysMountPoint = "/boot/efi"; boot.loader.efi.efiSysMountPoint = "/boot/efi";
networking.hostName = "kohlin"; # Define your hostname. networking.hostName = "kohlin"; # Define your hostname.
# Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
# Set your time zone.
time.timeZone = "America/Chicago";
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
# Enable the X11 windowing system.
# services.xserver.enable = true;
# Configure keymap in X11
# services.xserver.layout = "us";
# services.xserver.xkbOptions = {
# "eurosign:e";
# "caps:escape" # map caps to escape.
# };
# Enable CUPS to print documents.
# services.printing.enable = true;
# Enable sound.
# sound.enable = true;
# hardware.pulseaudio.enable = true;
hardware.opengl = { hardware.opengl = {
enable = true; enable = true;
@ -59,13 +21,6 @@
libvdpau-va-gl libvdpau-va-gl
]; ];
}; };
environment.homeBinInPath = true;
programs.fish.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users = { users.users = {
chris = { chris = {
@ -74,33 +29,6 @@
}; };
}; };
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
vim
wget
yt-dlp
bat
ripgrep
ffmpeg-full
rsync
dutree
tmux
git
samba
exa
jq
fd
bc
sysstat
procs
btop
htop
unzip
#blesh
];
virtualisation.docker.enable = true; virtualisation.docker.enable = true;
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are