8 Commits

Author SHA1 Message Date
1c7b7c4cae Add pi definition 2023-12-10 22:42:33 +00:00
aabecfd68f Merge branch 'master' into rpi 2023-12-10 20:19:13 +00:00
75506d5acd Disable onboard audio, support Digi Pro DAC 2023-12-08 23:22:40 +00:00
81a46270b8 Update zigbee2mqtt settings 2023-12-08 22:56:53 +00:00
18f1efdaff Merge branch 'master' into rpi 2023-12-08 22:43:35 +00:00
47c304833c flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a89745edd5f657e2e5be5ed1bea86725ca78d92e' (2023-12-03)
  → 'github:NixOS/nixos-hardware/fa194fc484fd7270ab324bb985593f71102e84d1' (2023-12-04)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5de0b32be6e85dc1a9404c75131316e4ffbc634c' (2023-12-01)
  → 'github:NixOS/nixpkgs/933d7dc155096e7575d207be6fb7792bc9f34f6d' (2023-12-02)
2023-12-04 18:28:29 +00:00
f47fd2217e Add services to pi 2023-12-03 23:24:21 +00:00
4ad4814bed Initial pi config 2023-12-03 23:17:30 +00:00
4 changed files with 105 additions and 0 deletions

16
flake.lock generated
View File

@@ -100,6 +100,21 @@
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1701656485,
"narHash": "sha256-xDFormrGCKKGqngHa2Bz1GTeKlFMMjLnHhTDRdMJ1hs=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "fa194fc484fd7270ab324bb985593f71102e84d1",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1677676435,
@@ -136,6 +151,7 @@
"agenix": "agenix",
"firefox-gnome-theme": "firefox-gnome-theme",
"home-manager": "home-manager_2",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2",
"thunderbird-gnome-theme": "thunderbird-gnome-theme"
}

View File

@@ -3,6 +3,7 @@
inputs = {
nixpkgs.url = "nixpkgs/nixos-23.11";
nixos-hardware.url = "github:NixOS/nixos-hardware";
agenix.url = "github:ryantm/agenix";
home-manager = {
url = "github:nix-community/home-manager/release-23.11";
@@ -80,6 +81,15 @@
];
specialArgs = { inherit lib inputs; };
};
pi = nixpkgs.lib.nixosSystem {
modules = [
home-manager.nixosModules.home-manager
agenix.nixosModules.default
(import ./modules)
./hosts/pi
];
specialArgs = { inherit lib inputs; };
};
};
};
}

58
hosts/pi/default.nix Normal file
View File

@@ -0,0 +1,58 @@
{ config, lib, pkgs, ... }:
with lib.my;
{
imports = [
./hardware-configuration.nix
../server.nix
];
networking.hostName = "pi";
networking.hostId = "";
hardware = {
raspberry-pi."4" = {
apply-overlays-dtmerge.enable = true;
fkms-3d.enable = true;
};
deviceTree = {
enable = true;
filter = "*rpi-4-*.dtb";
};
};
sound.enable = true;
console.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
systemWide = true;
};
services.shairport-sync = {
enable = true;
group = [ "pipewire" ];
openFirewall = true;
};
services.zigbee2mqtt = {
enable = true;
settings = {
homeassistant = true;
frontend = true;
permit_join = true;
};
};
environment.systemPackages = with pkgs; [
libraspberrypi
raspberrypi-eeprom
];
system.stateVersion = "22.11";
}

View File

@@ -0,0 +1,21 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports = [
<nixos-hardware/raspberry-pi/4>
];
boot.loader.raspberryPi.firmwareConfig = ''
dtoverlay=vc4-kms-v3d,noaudio
dtoverlay=hifiberry-digi-pro
'';
fileSystems = {
"/" = {
device = "/dev/disk/by-label/NIXOS_SD";
fsType = "ext4";
options = [ "noatime" ];
};
};
}