# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page, on # https://search.nixos.org/options and in the NixOS manual (`nixos-help`). { config, lib, pkgs, ... }: let user = "matt"; password = config.sops.secrets."desktop/matt_password".path; # kernelBundle = pkgs.linuxAndFirmware.v6_6_31; in { imports = [ ./boot.nix ./impermanence.nix ./hardware-configuration.nix ./networking.nix ./sops.nix ../default.nix ]; programs.zsh.enable = true; # Enable nix flakes and nix-command tools # nix = { # settings = { # substituters = [ # "https://nixos-raspberrypi.cachix.org" # ]; # trusted-public-keys = [ # "nixos-raspberrypi.cachix.org-1:4iMO9LXa8BqhU+Rpg6LQKiGa2lsNh/j2oiYLNOQ5sPI=" # ]; # }; # }; # Configure nixpkgs # nixpkgs = { # overlays = lib.mkAfter [ # (self: super: { # # This is used in (modulesPath + "/hardware/all-firmware.nix") when at least # enableRedistributableFirmware is enabled # I know no easier way to override this package # inherit (kernelBundle) raspberrypiWirelessFirmware; # Some derivations want to use it as an input, # e.g. raspberrypi-dtbs, omxplayer, sd-image-* modules # inherit (kernelBundle) raspberrypifw; # }) # ]; # }; # system.nixos.tags = let # cfg = config.boot.loader.raspberryPi; # in [ # "raspberry-pi-${cfg.variant}" # cfg.bootloader # config.boot.kernelPackages.kernel.version # ]; systemd.services.btattach = { before = [ "bluetooth.service" ]; after = [ "dev-ttyAMA0.device" ]; wantedBy = [ "multi-user.target" ]; serviceConfig = { ExecStart = "${pkgs.bluez}/bin/btattach -B /dev/ttyAMA0 -P bcm -S 3000000"; }; }; environment.systemPackages = with pkgs; [ git libraspberrypi raspberrypi-eeprom raspberrypifw raspberrypiWirelessFirmware raspberrypi-armstubs vim ]; users = { mutableUsers = false; users."${user}" = { isNormalUser = true; initialPassword = "BogieDudie1"; # hashedPasswordFile = password; extraGroups = [ "wheel" "docker" ]; shell = pkgs.zsh; }; }; }