{ pkgs, lib, config, ... }: with lib; let
	cfg = config.module.amd.gpu;
in {
	options = {
		module.amd.gpu.enable = mkEnableOption "Enable AMD Gpu support.";
	};

	config = mkIf cfg.enable {
		boot.initrd.kernelModules     = [ "amdgpu" ];
		services.xserver.videoDrivers = [ "amdgpu" ];
		hardware.graphics = {
			enable      = true;
			enable32Bit = true;
		};
		environment.variables.AMD_VULKAN_ICD = "RADV";

		# AMDVLK was broken for me (huge stuttering). So keep it disabled, at least for now.
		# hardware.opengl.extraPackages = with pkgs; [
		# 	amdvlk
		# ];
		# hardware.opengl.extraPackages32 = with pkgs; [
		# 	driversi686Linux.amdvlk
		# ];
	};
}