{ description = "My Awesome Desktop Shell"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; ags = { url = "github:aylur/ags"; inputs.nixpkgs.follows = "nixpkgs"; }; matcha = { url = "git+https://codeberg.org/QuincePie/matcha"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, ags, matcha, }: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; astalPkgs = with ags.packages.${system}; [ battery bluetooth hyprland mpris network tray wireplumber pkgs.brightnessctl matcha.packages.${pkgs.system}.default ]; in { packages.${system} = { default = ags.lib.bundle { inherit pkgs; src = ./.; name = "coquille"; entry = "app.ts"; gtk4 = true; # additional libraries and executables to add to gjs' runtime extraPackages = astalPkgs; }; }; devShells.${system} = { default = pkgs.mkShell { buildInputs = [ # includes astal3 astal4 astal-io by default (ags.packages.${system}.default.override { extraPackages = astalPkgs; }) pkgs.brightnessctl matcha.packages.${pkgs.system}.default ]; }; }; }; }