Faits:
A. X._, ressortissant kosovar né en 1971, a été arrêté le 3 novembre 2009 et inculpé, par le Juge d'instruction du canton de Genève, de violation de la LStup. Il lui est reproché d'avoir, le 23 octobre 2009 en Argovie, remis un sac contenant 5 kg d'héroïne aux dénommés A._ et B._ (également inculpés, mais remis en liberté), qui devaient transporter la marchandise jusqu'à Genève. La détention préventive a été prolongée par ordonnances de la Chambre d'accusation genevoise des 10 novembre 2009 et 26 janvier 2010, en raison des risques de fuite et de collusion.
Par ordonnance du 5 février 2010, la Chambre d'accusation a rejeté une demande de mise en liberté. Les charges à l'encontre de X._ étaient suffisantes. Le risque de collusion persistait jusqu'à l'audience de jugement car il était à craindre que l'inculpé ne tente de contacter ceux qui le mettaient en cause, ainsi que le commanditaire présumé du trafic de drogue. Le risque de fuite a lui aussi été confirmé, compte tenu de la nationalité de l'inculpé - lequel aurait cherché, dans un premier temps, à échapper à la justice suisse - et de la gravité des faits.
Par arrêt du 2 mars 2010 (1B_40/2010), le Tribunal fédéral a rejeté le recours en matière pénale formé par X._, en confirmant le risque de collusion et en laissant ouverte la question du risque de fuite.
B. A la requête du Juge d'instruction, la Chambre d'accusation a, par ordonnance du 22 juin 2010, autorisé la prolongation de la détention jusqu'au 22 septembre 2010. Elle a considéré qu'il y avait un risque de fuite, compte tenu de l'imminence du jugement et de l'absence d'attaches de l'inculpé avec la Suisse.
X._ forme un recours en matière pénale par lequel il demande l'annulation de l'ordonnance du 22 juin 2010, et sa mise en liberté immédiate.
La Chambre d'accusation se réfère à sa décision. Le Ministère public conclut au rejet du recours. Invité à répliquer, le recourant a renoncé à formuler des observations.

Considérant en droit:
1. Le recours en matière pénale (<ref-law>) est ouvert contre une décision relative au maintien en détention préventive. Le recourant a qualité pour agir au sens de l'<ref-law>; il a agi en temps utile (<ref-law>) et les conclusions formées à l'appui de son recours sont recevables au regard de l'<ref-law>.
2. Le recourant conteste l'existence d'un risque de fuite. Il expose qu'il est arrivé en Suisse en 1987, et s'est marié en 1990. Il est, ainsi que son épouse, au bénéfice d'un permis C. Il a cinq enfants, de 8 à 18 ans, et tous habitent le même appartement à C._ (ZG). Son frère et ses deux soeurs vivent dans le même village. Il bénéficie d'une rente AI de 6'840 fr. par mois. Toute sa famille et son centre de vie seraient dès lors en Suisse. Le recourant explique aussi qu'il s'est rendu au Kosovo en octobre 2009, sans savoir qu'il était recherché, et qu'il était retourné en Suisse aussitôt après l'avoir appris. La Chambre d'accusation n'aurait pas tenu compte de ces éléments, se fondant sur la seule gravité des charges.
2.1 Conformément à la jurisprudence, le risque de fuite doit s'analyser en fonction d'un ensemble de critères tels que le caractère de l'intéressé, sa moralité, ses ressources, ses liens avec l'Etat qui le poursuit ainsi que ses contacts à l'étranger, qui font apparaître le risque de fuite non seulement possible, mais également probable (<ref-ruling> consid. 4a p. 70 et la jurisprudence citée). La gravité de l'infraction ne peut pas, à elle seule, justifier la prolongation de la détention, même si elle permet souvent de présumer un danger de fuite en raison de l'importance de la peine dont le prévenu est menacé (<ref-ruling> consid. 3a p. 62; <ref-ruling> consid. 4a p. 70, 108 Ia 64 consid. 3 p. 67).
2.2 L'ordonnance attaquée se borne à évoquer en quelques lignes la gravité des charges, l'imminence du procès et l'absence d'attaches du recourant avec la Suisse. Même si une motivation aussi lapidaire apparaît problématique au regard de l'obligation de motiver (art. 29 al. 2 Cst. et 112 al. 1 let. b LTF), le recourant ne s'en plaint pas. Il a d'ailleurs pu faire valoir ses arguments sur le fond en exposant dans le détail en quoi consistent ses liens avec la Suisse.
2.3 Quand bien même le recourant apparaît installé en Suisse, il dispose encore manifestement de certaines attaches dans son pays d'origine, qu'il a quitté à l'âge de seize ans. Interrogé le 4 novembre 2009 sur sa situation personnelle, il a indiqué qu'il a encore un frère aîné au Kosovo. Peu avant son arrestation, le recourant est parti pour ce pays, sans en expliquer clairement la raison, laissant sa femme en Suisse avec ses cinq enfants. Il a également indiqué avoir fait des emprunts pour construire une maison au Kosovo. Selon les renseignements figurant dans l'expertise psychiatrique du 11 mai 2010, le recourant se rendrait environ deux fois par année dans cette maison. Par ailleurs, la Chambre d'accusation relève que la prochaine étape de la procédure semble être le renvoi en jugement, la procédure ayant été communiquée au Procureur général le 11 juin 2010. Dès lors, en dépit des attaches du recourant avec la Suisse, on ne saurait exclure la probabilité qu'il ne tente de fuir vers son pays d'origine pour échapper à une condamnation. L'importance de la peine encourue n'est donc pas le seul motif pour lequel un risque de fuite doit être reconnu.
3. Sur le vu de ce qui précède, le recours doit être rejeté, aux frais du recourant (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 1000 fr., sont mis à la charge du recourant.
3. Le présent arrêt est communiqué aux parties et à la Cour de justice du canton de Genève, Chambre d'accusation.
Lausanne, le 8 juillet 2010
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Kurz