Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: I6a6a6964a17ac94c2a40f0fd34f339a965abfc9a
		
			
				
	
	
		
			51 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{pkgs ? import <nixpkgs> {}}:
 | 
						|
pkgs.mkShell {
 | 
						|
  name = "chroma";
 | 
						|
  buildInputs = with pkgs; [
 | 
						|
    gnumake
 | 
						|
 | 
						|
    # Optional development tools
 | 
						|
    gdb
 | 
						|
    valgrind
 | 
						|
    strace
 | 
						|
 | 
						|
    # Code formatting and analysis
 | 
						|
    clang-tools # includes clang-format
 | 
						|
    cppcheck
 | 
						|
 | 
						|
    # Wayland libraries
 | 
						|
    wayland.dev
 | 
						|
    wayland-protocols
 | 
						|
    wayland-scanner
 | 
						|
    libxkbcommon
 | 
						|
 | 
						|
    # EGL/OpenGL libraries
 | 
						|
    libGL
 | 
						|
    mesa
 | 
						|
 | 
						|
    # System libraries
 | 
						|
    glibc.dev
 | 
						|
  ];
 | 
						|
 | 
						|
  nativeBuildInputs = with pkgs; [
 | 
						|
    pkg-config
 | 
						|
  ];
 | 
						|
 | 
						|
  shellHook = ''
 | 
						|
    echo "Available commands:"
 | 
						|
    echo "  make          - Build the project"
 | 
						|
    echo "  make debug    - Build with debug symbols"
 | 
						|
    echo "  make clean    - Clean build artifacts"
 | 
						|
    echo "  make install  - Install to ~/.local"
 | 
						|
    echo "  make help     - Show all available targets"
 | 
						|
    echo
 | 
						|
    echo "Run 'make check-deps' to verify all dependencies are available."
 | 
						|
    echo
 | 
						|
  '';
 | 
						|
 | 
						|
  # Environment variables for the build system
 | 
						|
  env = {
 | 
						|
    CHROMA_VERSION = "1.0.0";
 | 
						|
    WAYLAND_DEBUG = 1;
 | 
						|
  };
 | 
						|
}
 |