{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; mypkgs = { url = "git+https://git.sys-con.ru/thek0tyara/nixpkgs-extension.git"; inputs.nixpkgs.follows = "nixpkgs"; }; ragenix.url = "github:yaxitech/ragenix/2025.03.09"; niri.url = "github:YaLTeR/niri/v25.11"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; ghostty.url = "github:ghostty-org/ghostty/tip"; # ghostty.url = [ # "github:ghostty-org/ghostty/1.3.0" # "github:ghostty-org/ghostty/tip" # ]; dw-proton.url = "github:imaviso/dwproton-flake"; intel-hw.url = "github:MordragT/nixos"; # }; outputs = inputs@{ # self, nixpkgs, mypkgs, ragenix, home-manager, ghostty, intel-hw, ... }: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; in { devShells.${system}.default = pkgs.mkShell { packages = [ ragenix.packages.x86_64-linux.default ]; }; nixosConfigurations.testenv = nixpkgs.lib.nixosSystem { inherit system; # specialArgs = { inherit inputs; }; modules = [ ragenix.nixosModules.default ( { pkgs, pkgdefault, ... }: { _module.args = { pkgdefault = pkg: pkg.packages.${pkgs.stdenv.hostPlatform.system}.default; }; nixpkgs.overlays = [ intel-hw.overlays.default # (import ./custom/overlays/default.nix) mypkgs.overlays.default (import ./custom/override.nix) ]; # boot.kernelPatches = [ # { # name = "name"; # patch = null; # extraConfig = ""; # } # ]; hardware = { graphics = { enable = true; extraPackages = ( with pkgs; [ intel-media-driver intel-ocl vpl-gpu-rt intel-compute-runtime ] ); # ++ (with inputs.intel-hw.packages."${system}"; [ # # oneapi-dal # # oneapi-dpl # # oneapi-ccl # ]); # enable32Bit = true; }; enableRedistributableFirmware = true; }; nix.settings = { # keep-logs = true; trusted-users = [ "root" "thek0tyara" ]; download-buffer-size = 160000000; }; age = { secrets = { # "wg/syscon0.key".file = ./secrets/wg/syscon0.key.age; "github/token.ro.age" = { file = ./secrets/github/token.ro.age; owner = "root"; group = "wheel"; mode = "0440"; }; }; identityPaths = [ "/root/.ssh/id_ed25519" ]; }; environment = { sessionVariables = { LIBVA_DRIVER_NAME = "iHD"; LLAMA_CACHE = "/home/thek0tyara/Downloads/llm"; CCACHE_DIR = "/mnt/HDD_A_DATA/ccache"; # LLVM = "1"; # UV_CACHE_DIR = ""; # PIP_CACHE_DIR = ""; # PYTHONPYCACHEPREFIX = ""; }; systemPackages = with pkgs; [ ### compiler ccache sccache (pkgdefault inputs.ragenix) devenv htop ### storage btrfs-progs ### gpu vulkan-tools libva-utils intel-gpu-tools pciutils inxi mesa-demos xhost # llm # llama-cpp-vulkan ### development git nixpkgs-fmt nixfmt nixd nil android-tools ]; }; security = { polkit = { enable = true; }; sudo = { extraRules = [ { commands = [ { command = "/run/current-system/sw/bin/nix"; options = [ "NOPASSWD" ]; } ]; groups = [ "wheel" ]; } ]; }; }; # virtualisation.qemu = { # options = [ # ]; # }; programs = { # amnezia-vpn.enable = true; ccache.enable = true; nix-ld = { enable = true; libraries = with pkgs; [ stdenv.cc.cc.lib ]; }; obs-studio.enableVirtualCamera = true; steam = { enable = true; extraCompatPackages = [ inputs.dw-proton.packages.${system}.dw-proton ]; protontricks = { enable = true; }; }; traceroute.enable = true; ydotool = { enable = true; group = "wheel"; }; }; services = { displayManager = { enable = true; defaultSession = "niri"; }; locate.enable = true; pipewire = { enable = true; pulse.enable = true; }; tor = { enable = true; client.enable = true; relay = { enable = true; role = "relay"; }; }; xserver = { enable = true; displayManager.lightdm.enable = true; xkb = { layout = "us,ru"; options = "grp:alt_shift_toggle"; }; }; zerotierone = { enable = true; localConf = { settings = { bind = [ "10.20.0.201" ]; }; }; }; }; } ) ./configuration.nix # home-manager.nixosModules.default { home-manager = { useGlobalPkgs = true; useUserPackages = true; extraSpecialArgs = { inherit system; inherit ghostty; }; users.thek0tyara = ./home.nix; }; } ]; }; }; }