80 lines
1.8 KiB
Nix
80 lines
1.8 KiB
Nix
{ config, pkgs, inputs, ... }:
|
|
|
|
let
|
|
unstable = import inputs.nixpkgs-unstable {
|
|
system = pkgs.stdenv.hostPlatform.system;
|
|
config.allowUnfree = true;
|
|
};
|
|
in
|
|
{
|
|
imports = [
|
|
./hardware.nix
|
|
../../system
|
|
];
|
|
|
|
networking.hostName = "lilac";
|
|
|
|
services.fwupd.enable = true;
|
|
services.fprintd.enable = true;
|
|
services.hardware.bolt.enable = true;
|
|
|
|
system.stateVersion = "26.05";
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
framework-tool
|
|
|
|
# GPU compute diagnostics
|
|
clinfo
|
|
vulkan-tools
|
|
intel-gpu-tools
|
|
|
|
# Vulkan-accelerated llama.cpp CLI/server for manual/advanced use
|
|
(llama-cpp.override { vulkanSupport = true; })
|
|
];
|
|
|
|
networking.interfaces.bnep0.ipv4.addresses = [{
|
|
address = "10.0.0.1";
|
|
prefixLength = 24;
|
|
}];
|
|
|
|
networking.firewall.interfaces."bnep0".allowedUDPPorts = [ 4242 ];
|
|
|
|
systemd = {
|
|
services = {
|
|
# 1. Start the listening server profile
|
|
bt-pan-server = {
|
|
description = "Bluetooth PAN GN Server";
|
|
after = [ "bluetooth.service" ];
|
|
wantedBy = [ "multi-user.target" ];
|
|
serviceConfig = {
|
|
ExecStart = "${pkgs.bluez-tools}/bin/bt-network -s gn pan0";
|
|
Restart = "always";
|
|
RestartSec = 5;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
hardware.graphics = {
|
|
enable = true;
|
|
enable32Bit = true;
|
|
extraPackages = with pkgs; [
|
|
intel-media-driver # Hardware acceleration
|
|
intel-vaapi-driver
|
|
vpl-gpu-rt # Video processing runtime
|
|
intel-compute-runtime # OpenCL + Level Zero GPU compute (Arc iGPU)
|
|
];
|
|
extraPackages32 = with pkgs.pkgsi686Linux; [
|
|
intel-media-driver
|
|
];
|
|
};
|
|
|
|
services.power-profiles-daemon.enable = true;
|
|
services.thermald.enable = true;
|
|
|
|
services.ollama = {
|
|
enable = true;
|
|
package = unstable.ollama-vulkan;
|
|
};
|
|
}
|