Haven't updated these readme's in a long time..

This commit is contained in:
Emmet
2025-10-01 19:54:25 -05:00
parent 44e854f32e
commit f64c9ace84
13 changed files with 190 additions and 214 deletions

View File

@@ -1,15 +1,11 @@
#+title: System Profiles
#+title: Machines
This directory contains various system profiles which can easily be set in [[../flake.nix][my flake.nix]] by setting the =profile= variable. Each profile directory contains a =configuration.nix= for system-level configuration and a =home.nix= for user-level configuration. Setting the =profile= variable in [[../flake.nix][my flake]] will automatically source the correct =configuration.nix= and =home.nix=.
This directory contains config for each of my machines.
Current profiles I have available are:
- [[./personal][Personal]] - What I would run on a personal laptop/desktop*
- [[./work][Work]] - What I would run on my work laptop/desktop*
- [[./homelab][Homelab]] - What I would run on a server or homelab*
- [[./worklab][Worklab]] - My homelab config with my work SSH keys preinstalled*
- [[./wsl][WSL]] - Windows Subsystem for Emacs (uses [[https://github.com/nix-community/NixOS-WSL][NixOS-WSL]])
- [[./nix-on-droid][Nix on Droid]] - So that I can run Emacs on my phone (uses [[https://github.com/nix-community/nix-on-droid][nix-on-droid]])
*My [[./personal][personal]] and [[./work][work]] profiles are actually functionally identical (the [[./work][work]] profile is actually imported into the [[./personal][personal]] profile)! The only difference between them is that my [[./personal][personal]] profile has a few extra things like gaming and social apps.
*My [[./homelab][homelab]] and [[./worklab][worklab]] profiles are similarly functionally identical (they both utilize the this [[./homelab/base.nix][base.nix]] file)! The only difference is that they have different preinstalled ssh keys.
In this directory you'll find:
- [[./snowfire][snowfire]] - My main machine (gaming laptop)
- [[./duskfall][duskfall]] - An old thinkpad I use occasionally
- [[./stardust][stardust]] - My wife's laptop
- [[./zenith][zenith]] - My work laptop
- [[./ori][ori]] - My homelab server host
- [[./TEMPLATE][TEMPLATE]] - Template files to use for a new host

View File

@@ -0,0 +1,3 @@
#+title: Just chillin'
This is my profile for a personal computer. It is functionally identical to my [[../work]] profile, but includes extra things like games and social apps!

View File

@@ -0,0 +1,61 @@
{ config, lib, pkgs, ... }:
{
config = {
systemSettings = {
# users
users = [ "USERNAME" ];
adminUsers = [ "USERNAME" ];
# hardware
cachy.enable = true;
bluetooth.enable = true;
powerprofiles.enable = true;
tlp.enable = false;
printing.enable = true;
# software
flatpak.enable = false;
gaming.enable = false;
virtualization = {
docker.enable = false;
virtualMachines.enable = false;
};
brave.enable = true;
# wm
hyprland.enable = true;
# dotfiles
dotfilesDir = "/etc/nixos";
# security
security = {
automount.enable = true;
blocklist.enable = true;
doas.enable = true;
firejail.enable = false; # TODO setup firejail profiles
firewall.enable = true;
gpg.enable = true;
openvpn.enable = true;
sshd.enable = false;
};
# style
stylix = {
enable = true;
theme = "orichalcum";
};
};
users.users.USERNAME.description = "NAME";
home-manager.users.USERNAME.userSettings = {
name = "NAME";
email = "EMAIL";
};
## EXTRA CONFIG GOES HERE
};
}

View File

@@ -0,0 +1,14 @@
{ config, lib, pkgs, ... }:
{
imports = [
./configuration.nix
./hardware-configuration.nix
];
config = {
home-manager.users = builtins.listToAttrs
(map (user: { name = user; value =
({ imports = [ ./home.nix ../../modules/user ]; });}) config.systemSettings.users);
};
}

View File

@@ -0,0 +1,8 @@
## THIS FILE MUST BE GENERATED ON A PER MACHINE BASIS
## RUN
{ config, lib, pkgs, modulesPath, inputs, ... }:
{
}

47
hosts/TEMPLATE/home.nix Normal file
View File

@@ -0,0 +1,47 @@
{ config, lib, pkgs, ... }:
{
config = {
userSettings = {
# setup
shell = {
enable = true;
apps.enable = true;
extraApps.enable = true;
};
xdg.enable = true;
# programs
browser = "brave";
editor = "emacs";
vscodium.enable = true;
yazi.enable = true;
git.enable = true;
engineering.enable = false;
art.enable = false;
flatpak.enable = false;
godot.enable = false;
keepass.enable = false;
media.enable = true;
music.enable = false;
office.enable = true;
recording.enable = false;
virtualization = {
virtualMachines.enable = false;
};
ai.enable = false;
# wm
hyprland.enable = true;
# style
stylix.enable = true;
# hardware
bluetooth.enable = true;
};
## EXTRA CONFIG GOES HERE
};
}

View File

@@ -1,3 +1,3 @@
#+title: Just chillin'
#+title: Thinkpad go brrr...
This is my profile for a personal computer. It is functionally identical to my [[../work]] profile, but includes extra things like games and social apps!
This is my config for an old Thinkpad. It's /really/ slow, but it's nice since it has a touch screen and pen with palm rejection! I don't use it that often, and I'm considering connecting it to the TV and trying Kodi out on it.

View File

@@ -1,3 +1,7 @@
#+title: Just chillin'
This is my profile for a personal computer. It is functionally identical to my [[../work]] profile, but includes extra things like games and social apps!
This is for my personal gaming laptop. Necessary and extra batteries included: office, engineering, development, media, recording, and gaming apps. Highly bloated system.
Specs:
- Asus ROG Strix G15 Advantage
- Upgraded to 64GB of RAM + 1TB SSD

View File

@@ -1,3 +1,3 @@
#+title: Just chillin'
#+title: For my wife
This is my profile for a personal computer. It is functionally identical to my [[../work]] profile, but includes extra things like games and social apps!
This is a config for my wife's computer. She likes Plasma and she mainly uses it for her art work and some light gaming.

View File

@@ -1,3 +1,3 @@
#+title: Just chillin'
#+title: Time to focus
This is my profile for a personal computer. It is functionally identical to my [[../work]] profile, but includes extra things like games and social apps!
This is config for my work computer. Essentially the same as [[../snowfire][snowfire]], just minus the gaming (and a few other things).