{ description = "att_wm - a dwm-like window manager for the river Wayland compositor"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils, }: flake-utils.lib.eachDefaultSystem ( system: let pkgs = nixpkgs.legacyPackages.${system}; in { packages = rec { att_wm = pkgs.callPackage ./nix/package.nix { inherit self; zig = pkgs.zig_0_16; }; default = att_wm; }; devShells.default = pkgs.mkShell { strictDeps = false; nativeBuildInputs = with pkgs; [ zig_0_16 zls pkg-config wayland-scanner ]; buildInputs = with pkgs; [ wayland wayland-protocols libxkbcommon ]; packages = with pkgs; [ river quickshell zon2nix ]; }; formatter = pkgs.nixfmt-rfc-style; } ) // { overlays.default = final: prev: { att_wm = final.callPackage ./nix/package.nix { inherit self; zig = final.zig_0_16; }; }; # `homeModules` is the name nix recognises; the older spelling is kept # so existing configs importing it keep working. homeModules.default = import ./nix/hm-module.nix self; homeManagerModules.default = import ./nix/hm-module.nix self; }; }