Add a11ywatch and related configurations for Podman and Nginx
- Introduced a new module for a11ywatch with Podman support, creating a bridge network and defining backend and frontend containers. - Configured Nginx to serve the a11ywatch application with SSL and ACME support. - Added user and group configurations for a11ywatch. - Created a systemd service to ensure the Podman network exists on boot. Implement Firefox Container Controller extension and host - Added a module for the Firefox Container Controller extension, allowing installation via Nix. - Created a native messaging host for the extension to communicate with the container controller. - Included CLI helpers to enqueue commands for showing and hiding containers. Enable fingerprint authentication in PAM - Configured fingerprint authentication for login, sudo, and swaylock services. Setup Raspberry Pi OS image creation script - Developed a script to create a read-only Raspberry Pi OS Lite image with Snapcast client. - Included configuration for Wi-Fi, hostname, and Snapcast server. - Implemented user and group setup for Snapcast client and ensured necessary services are enabled. Document Raspberry Pi Zero W setup instructions - Added detailed instructions for configuring Raspberry Pi OS on Zero W, including disabling unused services and setting up Snapcast client. Create test configuration script for NixOS - Implemented a script to perform dry-builds for NixOS configurations, allowing for easy validation of host configurations.
This commit is contained in:
@@ -18,16 +18,10 @@ in
|
||||
nixpkgs.buildPlatform.system = "x86_64-linux"; # Change if building on a different architecture
|
||||
imports = [
|
||||
<nixpkgs/nixos/modules/installer/sd-card/sd-image-aarch64.nix>
|
||||
"${builtins.fetchGit { url = "https://github.com/NixOS/nixos-hardware.git"; }}/raspberry-pi/4"
|
||||
# "${builtins.fetchTarball "https://github.com/NixOS/nixos-hardware/archive/master.tar.gz"}/raspberry-pi/4"
|
||||
];
|
||||
|
||||
# nixpkgs.overlays = [
|
||||
# (final: super: {
|
||||
# makeModulesClosure = x:
|
||||
# super.makeModulesClosure (x // { allowMissing = true; });
|
||||
# })
|
||||
# ];
|
||||
|
||||
nix.settings.trusted-users = [ "root" "dominik" ];
|
||||
|
||||
swapDevices = [ { device = "/swapfile"; size = 2048; } ]; # 2GB swap
|
||||
@@ -44,58 +38,21 @@ in
|
||||
};
|
||||
networking.firewall.logRefusedConnections = false;
|
||||
|
||||
# boot.kernelPackages = pkgs.linuxPackages_rpi3;
|
||||
# hardware.deviceTree.enable = true;
|
||||
# hardware.deviceTree.overlays = [ {
|
||||
# name = "hifiberry-dacplus";
|
||||
# dtboFile = "${pkgs.linuxKernel.kernels.linux_rpi3}/dtbs/overlays/hifiberry-dacplus.dtbo";
|
||||
# } ];
|
||||
|
||||
hardware.deviceTree.filter = "bcm2708-rpi-zero*.dtb"; # This line does not change anything in this case
|
||||
hardware.deviceTree.enable = true;
|
||||
hardware.deviceTree.overlays = [
|
||||
{
|
||||
name = "hifiberry-dacplusadc";
|
||||
dtboFile = "${pkgs.device-tree_rpi.overlays}/hifiberry-dacplus.dtbo";
|
||||
# dtsText = ''
|
||||
# /dts-v1/;
|
||||
# /plugin/;
|
||||
#
|
||||
# / {
|
||||
# compatible = "brcm,bcm2835";
|
||||
#
|
||||
# fragment@0 {
|
||||
# target = <&i2s>;
|
||||
# __overlay__ {
|
||||
# status = "okay";
|
||||
# };
|
||||
# };
|
||||
#
|
||||
# fragment@1 {
|
||||
# target-path = "/";
|
||||
# __overlay__ {
|
||||
# dacplus_codec: dacplus-codec {
|
||||
# #sound-dai-cells = <0>;
|
||||
# compatible = "hifiberry,hifiberry-dacplus";
|
||||
# status = "okay";
|
||||
# };
|
||||
# };
|
||||
# };
|
||||
#
|
||||
# fragment@2 {
|
||||
# target = <&sound>;
|
||||
# __overlay__ {
|
||||
# compatible = "hifiberry,hifiberry-dacplus";
|
||||
# i2s-controller = <&i2s>;
|
||||
# status = "okay";
|
||||
# };
|
||||
# };
|
||||
# };
|
||||
# '';
|
||||
}
|
||||
];
|
||||
hardware.raspberry-pi."4".apply-overlays-dtmerge.enable = true;
|
||||
systemd.services = {
|
||||
"load-dacplus-overlay" = {
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
};
|
||||
wantedBy = ["multi-user.target"];
|
||||
script = ''
|
||||
${pkgs.libraspberrypi}/bin/dtoverlay -d ${config.boot.kernelPackages.kernel}/dtbs/overlays/ hifiberry-dacplus || echo "already in use"
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
sound.enable = true;
|
||||
# sound.enable = true;
|
||||
# hardware.pulseaudio.enable = true;
|
||||
|
||||
systemd.services.snapclient = {
|
||||
|
||||
Reference in New Issue
Block a user