There is a theory that adjective ordering is essentially universal (i.e. the same across all languages), so that in principle we ought to be able to give rules something like this:
- keep words forming a compound or colloquation together;
- if the adjectives all come before the noun in your native language, keep them in that same order in English;
- if some adjectives come after the noun in your native language, then those adjectives will come before the noun in English, but after other adjectives coming befor the noun in both languages;
- if in the adjectives coming after the noun in your native language, colour adjectives come last, then reverse the order of those adjectives in English.
The first rule means you could actually end up with variations of the sort "an elderly single mother" or "a single elderly mother" depending on which colloquation is intended.
The last rule covers some cases where adjectives following the noun can allow a "reversed" order or not, e.g. Rowlett (2007) cites French examples: "une jolie petite jupe [bleue fleurie écossaise']", which also permits "...[écossaise fleurie bleue]", with English "A pretty little blue floral Scottish skirt".
This goes for adjectives that are actually adjectives, incidentally: it isn't necessarily valid to class determiners, quantifiers, adverbs and nouns inside compounds as adjectives, for example (one of the links above appears to, and I think this could confuse the issue).
It should also be noted that we're talking about the unmarked order; for emphasis, the 'emphasised' adjectives can generally be placed before all others even if that means that it's out of place ("There are lots of cheap lawnmowers, but this is an OLD cheap lawnmower").
If you start giving actual lists of orderings (which, as I say, may be universal anyway), there is a danger in assuming that the order that applies with, say, nouns denoting tangible objects will then apply to nouns denoting emotions or actions.