Is virus a countable or non-countable noun?

Solution 1:

Both are fine, just as ‘There are six types of person’ and ‘There are six types of people’ are both fine. However, ‘There are six types of computer virus’ seems more natural to me. (But not sure which is better.)

And yes, ‘virus’ can be a count noun.

Solution 2:

Whether one chooses a singular or plural after types of can depend on whether one thinks of the noun as a generic or as an aggregate of individual things.

In fact, the uniform color of several types of oranges is due to injection of an artificial dye, Citrus Red Number 2 into their skins. — John Davidson, M. Usman, Health Benefits of Oranges For Cooking and Health, 2013.

An interesting relationship exists between different types of orange and the tristeza virus. Both sweet and sour orange are highly resistant to injury when on their own roots, so that each species appears to have a high degree of tolerance of the concentration of virus it produces in its own tissues. — K. M. Smith, Plant Viruses, 2012, 32.

The plural oranges is how one encounters the mass of oranges in processing and sales. The singular orange is the orange tree, of which there are two types listed.

The same is the case with coffee beans:

All coffee beans have qualities that are remedied or enhanced by mixing them with other types of beans, and to achieve a good blend, up to eight types are sometimes used. — Valéria Vieira Sisti, Leith's Latin-American Cooking, 1998, 263.

Simply speaking there are two types of bean: Arabica and Robusta. — Seb Emina, Malcolm Eggs, The Breakfast Bible, 2013.

The plural is more the consumer product and the singular is the bean produced by a particular kind of plant.

This distinction is not especially rigid and in most cases makes little difference, just as one can say that the potato is a starchy vegatable or potatoes are high in starch. In your particular example the difference is minimal.

The standard English plural of virus, by the way, is viruses. The pseudo-Latin plural viri is limited to computer jargon. For instance, the plural of rhinovirus never has been and never will be *rhinoviri. The Latin word had no plural, but viri does happen to be the nominative plural of vir, ‘man’ (think “virile”).