{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; crane = { url = "github:ipetkov/crane"; inputs.nixpkgs.follows = "nixpkgs"; }; flake-utils.url = "github:numtide/flake-utils"; kile-src = { url = "gitlab:snakedye/kile"; flake = false; }; }; outputs = { self, nixpkgs, crane, flake-utils, kile-src, ... }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; # import nixpkgs { # inherit system; # }; craneLib = crane.lib.${system}; kile = craneLib.buildPackage { src = kile-src; buildInputs = with pkgs; [ wayland ]; # Additional environment variables can be set directly # MY_CUSTOM_VAR = "some value"; }; in { checks = { inherit kile; }; packages.default = kile; apps.default = flake-utils.lib.mkApp { drv = kile; }; devShells.default = craneLib.devShell { # Inherit inputs from checks. checks = self.checks.${system}; # Additional dev-shell environment variables can be set directly # MY_CUSTOM_DEVELOPMENT_VAR = "something else"; # Extra inputs can be added here; cargo and rustc are provided by default. packages = [ # pkgs.ripgrep ]; }; }); }