Check two alternatives:
insert into @User (UserName, InstalledDate)
select UserName, string_agg( FirstSeenDate, ', ') within group (order by FirstSeenDate)
from @Installs
group by UserName
and
insert into @User (UserName, InstalledDate)
select D.UserName,
stuff(( select concat(', ', FirstSeenDate) from @Installs where UserName = D.UserName order by FirstSeenDate for xml path('')), 1, 2, '')
from ( select distinct UserName from @Installs ) D