mirror of
https://github.com/nmasur/dotfiles
synced 2026-11-15 07:35:02 +00:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
66661ba048 | ||
|
|
ba834215a4 |
No files matched your search
@@ -1,5 +1,14 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2026-10-11
|
||||||
|
|
||||||
|
- **Configured `arrow` host for AWS EC2 deployment**:
|
||||||
|
- Imported `${modulesPath}/virtualisation/amazon-image.nix` in `hosts/x86_64-linux/arrow/default.nix` for native EC2 configuration (EBS root filesystem with auto-resize, partition auto-growth, serial console on `ttyS0`, and EC2 udev utilities).
|
||||||
|
- Explicitly disabled `boot.loader.systemd-boot` and enabled BIOS `boot.loader.grub` to override `systemd-boot` default set by the server profile on non-UEFI EC2 partition layouts.
|
||||||
|
- Enabled `nmasur.presets.services.openssh-aws.enable` to resolve SSH `PermitRootLogin` conflicting definitions between the base SSH preset and `amazon-image.nix`.
|
||||||
|
- Added `ssm-user` to the `wheel` group for elevation when connecting via AWS Systems Manager Session Manager.
|
||||||
|
- Removed obsolete dummy `fileSystems."/boot"` and `fileSystems."/"` declarations.
|
||||||
|
|
||||||
## 2026-09-29
|
## 2026-09-29
|
||||||
|
|
||||||
- **Separated Restic backup repositories per host**:
|
- **Separated Restic backup repositories per host**:
|
||||||
|
|||||||
@@ -2,9 +2,24 @@
|
|||||||
# System configuration for temporary VM
|
# System configuration for temporary VM
|
||||||
|
|
||||||
rec {
|
rec {
|
||||||
|
imports = [
|
||||||
|
({ modulesPath, ... }: {
|
||||||
|
imports = [ "${modulesPath}/virtualisation/amazon-image.nix" ];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
# Hardware
|
# Hardware
|
||||||
networking.hostName = "arrow";
|
networking.hostName = "arrow";
|
||||||
|
|
||||||
|
# Ensure BIOS GRUB is used instead of server profile's systemd-boot
|
||||||
|
boot.loader.systemd-boot.enable = false;
|
||||||
|
boot.loader.grub.enable = true;
|
||||||
|
|
||||||
|
# Resolves PermitRootLogin conflict with amazon-image.nix
|
||||||
|
nmasur.presets.services.openssh-aws.enable = true;
|
||||||
|
|
||||||
|
users.users.ssm-user.extraGroups = [ "wheel" ];
|
||||||
|
|
||||||
nmasur.settings = {
|
nmasur.settings = {
|
||||||
username = "noah";
|
username = "noah";
|
||||||
fullName = "Noah Masur";
|
fullName = "Noah Masur";
|
||||||
@@ -24,24 +39,16 @@ rec {
|
|||||||
nmasur.profiles = {
|
nmasur.profiles = {
|
||||||
common.enable = true;
|
common.enable = true;
|
||||||
linux-base.enable = true;
|
linux-base.enable = true;
|
||||||
|
llm-development.enable = true;
|
||||||
|
work-base.enable = true;
|
||||||
};
|
};
|
||||||
home.stateVersion = "23.05";
|
nmasur.presets.programs.git-work.work = {
|
||||||
|
name = "Noah-Masur_1701";
|
||||||
|
email = "${nmasur.settings.username}@take2games.com";
|
||||||
|
};
|
||||||
|
home.stateVersion = "26.05";
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = "23.05";
|
system.stateVersion = "26.05";
|
||||||
|
|
||||||
# These filesystems are ignored by nixos-generators
|
|
||||||
|
|
||||||
# This is the root filesystem containing NixOS
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-label/nixos";
|
|
||||||
fsType = "ext4";
|
|
||||||
};
|
|
||||||
|
|
||||||
# This is the boot filesystem for Grub
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-label/boot";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.nmasur.profiles.work-base;
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
options.nmasur.profiles.work-base.enable = lib.mkEnableOption "base work config";
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
|
||||||
|
home.packages = [
|
||||||
|
pkgs.actionlint # Lint for GitHub Actions Workflows
|
||||||
|
pkgs.claude-code # AI LLM Agent
|
||||||
|
pkgs.stable.visidata # CSV inspector
|
||||||
|
pkgs.dos2unix # Convert Windows text files
|
||||||
|
pkgs.inetutils # Includes telnet
|
||||||
|
pkgs.gnupg # Encryption
|
||||||
|
pkgs.awscli2
|
||||||
|
pkgs.ssm-session-manager-plugin
|
||||||
|
pkgs.awslogs
|
||||||
|
pkgs.pre-commit
|
||||||
|
pkgs.google-cloud-sdk
|
||||||
|
pkgs.ipcalc # Make IP network calculations
|
||||||
|
pkgs.nmasur.aws-ec2 # Browse EC2 instances
|
||||||
|
pkgs.nmasur.terraform-init # Quick shortcut for initializing Terraform backend
|
||||||
|
pkgs.uv # Python packaging
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.fish.shellAliases.ec2 = "aws-ec2";
|
||||||
|
|
||||||
|
nmasur.presets = {
|
||||||
|
programs = {
|
||||||
|
# _1password.enable = lib.mkDefault true;
|
||||||
|
atuin.enable = lib.mkDefault true;
|
||||||
|
aws-ssh.enable = lib.mkDefault true;
|
||||||
|
bash.enable = lib.mkDefault true;
|
||||||
|
bat.enable = lib.mkDefault true;
|
||||||
|
direnv.enable = lib.mkDefault true;
|
||||||
|
dotfiles.enable = lib.mkDefault true;
|
||||||
|
fd.enable = lib.mkDefault true;
|
||||||
|
fish.enable = lib.mkDefault true;
|
||||||
|
fzf.enable = lib.mkDefault true;
|
||||||
|
git-work.enable = lib.mkDefault true;
|
||||||
|
git.enable = lib.mkDefault true;
|
||||||
|
github.enable = lib.mkDefault true;
|
||||||
|
jujutsu.enable = lib.mkDefault true;
|
||||||
|
ripgrep.enable = lib.mkDefault true;
|
||||||
|
starship.enable = lib.mkDefault true;
|
||||||
|
terraform.enable = lib.mkDefault true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
Reference in new issue
Block a user