Compare commits

..

3 Commits

11 changed files with 79 additions and 48 deletions

16
hosts/pi4/boot.nix Normal file
View File

@ -0,0 +1,16 @@
{ pkgs, ... }:
{
boot = {
kernelPackages = pkgs.linuxKernel.packages.linux_rpi4;
initrd.availableKernelModules = [
"xhci_pci"
"usbhid"
"usb_storage"
];
loader = {
grub.enable = false;
generic-extlinux-compatible.enable = true;
};
};
}

View File

@ -1,49 +1,15 @@
{
pkgs,
systemConfig,
...
}:
{
boot = {
kernelPackages = pkgs.linuxKernel.packages.linux_rpi4;
initrd.availableKernelModules = [
"xhci_pci"
"usbhid"
"usb_storage"
imports = [
./boot.nix
./hardware.nix
./networking.nix
./security.nix
];
loader = {
grub.enable = false;
generic-extlinux-compatible.enable = true;
};
};
environment.systemPackages = with pkgs; [
vim
];
fileSystems = {
"/" = {
device = "/dev/disk/by-label/NIXOS_SD";
fsType = "ext4";
options = [ "noatime" ];
};
};
hardware.enableRedistributableFirmware = true;
networking = {
hostName = systemConfig.hostName;
networkmanager.enable = true;
};
services.openssh.enable = true;
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
services.pcscd.enable = true;
system.stateVersion = systemConfig.version;

12
hosts/pi4/hardware.nix Normal file
View File

@ -0,0 +1,12 @@
{
fileSystems = {
"/" = {
device = "/dev/disk/by-label/NIXOS_SD";
fsType = "ext4";
options = [ "noatime" ];
};
# TODO mount ext hdd
};
hardware.enableRedistributableFirmware = true;
}

View File

@ -1,17 +1,31 @@
{ pkgs, lib, systemConfig, ... }:
{
lib,
inputs,
outputs,
systemConfig,
...
}:
{
imports = [
inputs.catppuccin.homeModules.catppuccin
(lib.custom.relativeToRoot "shared/home-manager/btop.nix")
(lib.custom.relativeToRoot "shared/home-manager/development/git.nix")
(lib.custom.relativeToRoot "shared/home-manager/development/nixvim")
(lib.custom.relativeToRoot "shared/home-manager/fastfetch.nix")
(lib.custom.relativeToRoot "shared/home-manager/fish.nix")
(lib.custom.relativeToRoot "shared/home-manager/gpg.nix")
];
home.stateVersion = systemConfig.version;
programs.git.signing.key = "E3FA0E995C0D0E5E";
# Adds pkgs.unstable in order to fetch packages from unstable repositories
nixpkgs.overlays = [ outputs.overlays.unstable-packages ];
programs.gpg.enable = true;
services.gpg-agent = {
enable = true;
pinentryPackage = pkgs.pinentry-curses;
programs = {
git.signing.key = "E3FA0E995C0D0E5E";
# Let Home Manager install and manage itself.
home-manager.enable = true;
};
}

10
hosts/pi4/networking.nix Normal file
View File

@ -0,0 +1,10 @@
{ systemConfig, ... }:
{
networking = {
hostName = systemConfig.hostName;
networkmanager.enable = true;
};
services.openssh.enable = true;
}

7
hosts/pi4/security.nix Normal file
View File

@ -0,0 +1,7 @@
{
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
services.pcscd.enable = true;
}

View File

@ -4,6 +4,12 @@ default:
fmt:
treefmt --on-unmatched info
build HOST:
git add .
just fmt
nh os build . -H {{HOST}}
test *FLAGS:
git add .
just fmt

View File

@ -1,4 +1,3 @@
# TODO more defaults
{
xdg.mimeApps = {
enable = true;

View File

@ -1,6 +1,7 @@
{ pkgs, ... }:
{
programs.gpg.enable = true;
services.gpg-agent = {
enable = true;
enableFishIntegration = true;

View File

@ -2,4 +2,6 @@
imports = [
./yubikey.nix
];
programs.gnupg.agent.enable = true;
}

View File

@ -7,8 +7,6 @@
yubioath-flutter # GUI
];
programs.gnupg.agent.enable = true;
security = {
pam = {
services = {