In the latest version of Unity, EncodeMeshRenderingLayer is changed to take no parameters when the function is called, opting instead to always call GetMeshRenderingLayer() internally within the function, which causes the shaders to fail to compile with an invalid signature warning.
It can be fixed by removing the uint renderingLayers variable assignment before each of the outRenderingLayers assignments, and removing the input parameter for EncodeMeshRenderingLayer in RetroDepthNormalsPass.hlsl, UnlitForwardPass.hlsl, RetroLit.shader, RetroTerrainLitDepthNormalsPass.hlsl, and RetroTerrainLitPasses.hlsl.
The CRTEffect.cs also fails to compile with "No suitable method found to override", for Configure and Execute, as they were removed from the base class in the latest version. You can fix it by surrounding the whole Configure and Execute functions with #if !UNITY_6000_0_OR_NEWER to remove them completely.
Fixing both of these allows for it to compile successfully in the latest version (6000.4.3f1) and can work as a temporary fix until the asset is updated.
Still loving the asset by the way, just wanting to update the Editor to fix a bug I was experiencing in the Inspector in 6.3, and it seemed to break this and a few other assets. Looking forward to what you're working on next!
