Find pairs in an integer array whose sum is equal to n (bonus: do it in linear time)
The map by default returns a list. You do not need another wrapper around it.

Your current implementation is of \$ O(n^2) \$ complexity. The statement:

(n - x, x) not in pairs


is of \$ O(n) \$ time, which lies inside a loop with \$ O(n) \$.

To do this in linear time, generate a dict/hash where you store simply the \$ n - x \$ values in first iteration. In the second (and independent) iteration, simply append the pair $$ \left( min(x,\ n - x),\ max(x,\ n - x) \right) $$ for each x in your list, if the \$ O(1) \$ lookup in the dict is true.