This file is indexed.

/usr/share/pymol/data/shaders/default_es.fs is in pymol-data 1.8.4.0+dfsg-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
precision mediump float;
const int a_MaxLights=4;
struct st_LightSourceParameters { 
  vec4 ambient;
  vec4 diffuse;
  vec4 specular;
  vec4 position;
  vec4 halfVector;
  vec3 spotDirection;
  float spotExponent;
  float spotCutoff;
  float spotCosCutoff;
  float constantAttenuation;
  float linearAttenuation;
  float quadraticAttenuation;
}; 
uniform st_LightSourceParameters u_LightSource[a_MaxLights];
struct gl_MaterialParameters {
  vec4 emission;
  vec4 ambient;
  vec4 diffuse;
  vec4 specular;
  float shininess;
};
uniform gl_MaterialParameters st_FrontMaterial;
varying vec3 N, L0, H0, L1, H1;
varying vec4 D0, A0, D1, A1;

uniform float fog_r;
uniform float fog_g;
uniform float fog_b;
uniform float fog_enabled;

varying float fog;

void main()
{
  vec3 n, h;
  float NdotL, NdotH;
  vec4 color = A0 + A1;
  n = normalize(N);
  NdotL = max(dot(n, normalize(L0)), 0.0);
  float shininess = st_FrontMaterial.shininess;
  if (NdotL > 0.0) {
      color += D0 * NdotL;
      h = normalize(H0);
      NdotH = max(dot(n, h), 0.0);
      color += u_LightSource[0].specular * pow(NdotH, shininess);
  }
  NdotL = max(dot(n, normalize(L1)), 0.0);
  if (NdotL > 0.0) {
      color += D1 * NdotL;
      h = normalize(H1);
      NdotH = max(dot(n, h), 0.0);
      color += u_LightSource[1].specular * pow(NdotH, shininess);
  }

  vec3 fog_color = vec3(fog_r, fog_g, fog_b);
  float cfog = mix(1.0, clamp(fog, 0.0, 1.0), fog_enabled);

  gl_FragColor = vec4(mix(fog_color, color.rgb, cfog), color.a);
}