You can set up these VARIABLE package types as ATTRIBUTES - as you have discussed.

Attributes work on the basis of an OPTION NAME, and then each OPTION NAME has a range of OPTION VALUES associated with it.

So in your case, you could set up an attribute set with OPTION NAME called "SIZE"

And for that OPTION NAME, you could give it the following OPTION VALUES

1 Litre
2 Litre
4 Litre
5 Litre
60 Litre
202 Litre
240 Litre

It does not matter if several products SHARE this attribute set... You will just "allocate" relevant OPTION VALUES to each product, so if a product has ALL the options available, you add ALL the values when you apply the attribute set to that product.

If another product is just 1 Litre and 5 Litre, then you just apply those two values when setting up the attribute set.

For EACH product, the PRICE of the attribute value can be addedd on a per-product basis...

... so,

If PRODUCT "A" can be bought in 1 litre packs, and that litre pack costs 10 dollars, you apply that PRICE when you insert the option value to the product.

If PRODUCT "B" can be bought in 1 litre packs, and that litre pack costs 25 dollars, you apply that PRICE when you insert the option value to the product.