mirror of
https://github.com/genebean/dots.git
synced 2026-03-27 09:27:44 -04:00
Relocated & split up darwin & nixos modules
I broke out host specific bits from the configuration that should be common to all hosts of a given type.
This commit is contained in:
parent
7d7a958da9
commit
067ab7a012
10 changed files with 243 additions and 220 deletions
52
modules/hosts/darwin/Blue-Rock/default.nix
Normal file
52
modules/hosts/darwin/Blue-Rock/default.nix
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{ pkgs, ... }: {
|
||||
system.stateVersion = 4;
|
||||
|
||||
environment = {
|
||||
systemPackages = with pkgs; [
|
||||
chart-testing
|
||||
kopia
|
||||
kubectx
|
||||
python2
|
||||
];
|
||||
};
|
||||
|
||||
homebrew = {
|
||||
taps = [
|
||||
"hashicorp/tap"
|
||||
# "homebrew/bundle"
|
||||
# "jandedobbeleer/oh-my-posh"
|
||||
"puppetlabs/puppet"
|
||||
];
|
||||
brews = [
|
||||
"adr-tools"
|
||||
"helm"
|
||||
"kubernetes-cli"
|
||||
];
|
||||
casks = [
|
||||
"asana"
|
||||
"boinc"
|
||||
"discord"
|
||||
"elgato-stream-deck"
|
||||
"google-drive"
|
||||
"kopiaui"
|
||||
"obs"
|
||||
"pdk"
|
||||
"puppet-agent"
|
||||
"puppet-bolt"
|
||||
"qmk-toolbox"
|
||||
"thunderbird"
|
||||
"vagrant"
|
||||
"virtualbox"
|
||||
"whalebird"
|
||||
"zenmap"
|
||||
];
|
||||
masApps = {
|
||||
"HomeCam" = 1292995895;
|
||||
"Keeper Password Manager" = 414781829;
|
||||
"MeetingBar" = 1532419400;
|
||||
"Microsoft Remote Desktop" = 1295203466;
|
||||
"Telegram" = 747648890;
|
||||
"WhatsApp Messenger" = 310633997;
|
||||
};
|
||||
};
|
||||
}
|
||||
110
modules/hosts/nixos/rainbow-planet/default.nix
Normal file
110
modules/hosts/nixos/rainbow-planet/default.nix
Normal file
|
|
@ -0,0 +1,110 @@
|
|||
{ config, pkgs, ... }: let
|
||||
username = "gene";
|
||||
hostname = "rainbow-planet";
|
||||
in {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
system.stateVersion = "23.05";
|
||||
|
||||
boot.loader = {
|
||||
efi.canTouchEfiVariables = true;
|
||||
systemd-boot= {
|
||||
enable = true;
|
||||
consoleMode = "1";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
# host specific apps
|
||||
boinc
|
||||
brightnessctl
|
||||
gnome.nautilus
|
||||
pavucontrol
|
||||
polkit-kde-agent
|
||||
ulauncher
|
||||
whalebird
|
||||
wmctrl
|
||||
|
||||
# common gui apps that really should be in another file
|
||||
firefox
|
||||
libreoffice
|
||||
meld
|
||||
slack
|
||||
tilix
|
||||
vivaldi
|
||||
xfce.xfce4-terminal
|
||||
zoom-us
|
||||
];
|
||||
|
||||
networking = {
|
||||
hostName = "${hostname}";
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
|
||||
nix.settings.allowed-users = [ "${username}" ];
|
||||
|
||||
programs = {
|
||||
_1password.enable = true;
|
||||
_1password-gui = {
|
||||
enable = true;
|
||||
# Certain features, including CLI integration and system authentication support,
|
||||
# require enabling PolKit integration on some desktop environments (e.g. Plasma).
|
||||
polkitPolicyOwners = [ "${username}" ];
|
||||
};
|
||||
hyprland.enable = true;
|
||||
|
||||
# common programs that really should be in another file
|
||||
# required for setting to be picked up by xfce4-terminal
|
||||
xfconf.enable = true;
|
||||
};
|
||||
|
||||
services = {
|
||||
boinc.enable = true;
|
||||
gnome.gnome-keyring.enable = true; # Provides secret storage
|
||||
gvfs.enable = true; # Used by Nautilus
|
||||
printing.enable = true; # Enable CUPS
|
||||
tailscale = {
|
||||
extraUpFlags = [
|
||||
"--ssh"
|
||||
];
|
||||
};
|
||||
xserver = {
|
||||
enable = true; # Enable the X11 windowing system.
|
||||
|
||||
# Configure keymap in X11
|
||||
layout = "us";
|
||||
xkbVariant = "";
|
||||
|
||||
displayManager = {
|
||||
gdm = {
|
||||
enable = true;
|
||||
wayland = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable sound with pipewire.
|
||||
sound.enable = true;
|
||||
hardware.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
wireplumber.enable = true;
|
||||
};
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.${username} = {
|
||||
isNormalUser = true;
|
||||
description = "Gene Liverman";
|
||||
extraGroups = [ "networkmanager" "wheel" "dialout" "input" ];
|
||||
packages = with pkgs; [
|
||||
tailscale-systray
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -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, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/eb9a2c7e-ae61-4d06-9464-49b98d576f7c";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/924D-E7A4";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/166d24ca-401c-492e-845d-bb1d0d6d7d86"; }
|
||||
];
|
||||
|
||||
# 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.wlp58s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue