- my $www = $ctx->{www};
- my $env = $ctx->{env};
- my $res = $www->news_www->call($env);
- $res = $www->cgit->call($env, $ctx) if $res->[0] == 404;
+ my $res = $ctx->{www}->news_www->call($ctx->{env});
+
+ $res->[0] == 404 and ($ctx->{www}->{cgit_fallback} //= do {
+ my $c = $ctx->{www}->{pi_cfg}->{'publicinbox.cgit'} // 'first';
+ $c ne 'first' # `fallback' and `rewrite' => true
+ } // 0) and $res = $ctx->{www}->coderepo->srv($ctx);
+