Faits :
A.
Par jugement du 28 août 2013, le Tribunal criminel de la République et canton de Genève a reconnu X._ coupable de meurtre ainsi que d'infractions à la loi fédérale sur les armes et à la loi fédérale sur les stupéfiants, et l'a acquitté du chef de mise en danger de la vie d'autrui. Il l'a condamné à une peine privative de liberté de 61⁄2 ans, sous déduction de la détention subie avant jugement, et l'a astreint à un traitement ambulatoire.
B.
Par arrêt du 19 juin 2014, la Chambre pénale d'appel et de révision de la Cour de justice de la République et canton de Genève a admis l'appel du ministère public contre ce jugement et a reconnu X._ coupable de meurtre, de mise en danger de la vie d'autrui, d'infractions à la loi fédérale sur les armes et à la loi fédérale sur les stupéfiants et l'a condamné à une peine privative de liberté de 10 ans, sous déduction de la détention subie avant jugement.
Cet arrêt repose, en substance, sur les faits suivants:
Le 8 novembre 2011, vers 18h40, X._ s'est rendu dans un centre commercial à Genève, muni d'un revolver chargé de cinq balles. A la caisse, il a été invectivé par B._ qu'il connaissait et qui est ensuite monté à l'étage supérieur. Ayant quitté la caisse, X._ est parvenu à proximité des ascenseurs sur le même étage, lorsqu'il a été rejoint par B._ lequel l'a projeté au sol en le poussant. En se relevant, X._ a sorti son revolver et a tiré dans la direction de B._ au moins à cinq reprises à une distance comprise entre deux et six mètres. Celui-ci a été atteint par quatre balles, dont l'une a traversé le cerveau et l'a mortellement blessé à la tête dans la région temporale antérieure droite. L'une des balles a ricoché sur un panneau de publicité, manquant de toucher un enfant qui s'était réfugié derrière ce panneau, avant de terminer sa trajectoire à l'intérieur d'un commerce, coupant ainsi le chemin des clients quittant la caisse. Une autre balle a brisé la vitre séparant un bar et le commerce voisin, manquant de toucher les clients de l'établissement. Alors que B._ gisait au sol, immobile, X._ s'est approché, a pointé son arme en direction de sa tête, à une dizaine de centimètres de distance, et à cherché à tirer une balle, étant précisé qu'à ce moment-là le chargeur de son revolver était vide.
Il ressort de l'expertise mise en oeuvre en cours d'instruction que X._ souffrait d'un trouble mixte de la personnalité ainsi que de syndromes de dépendance aux opiacés, au cannabis et à l'alcool. Les experts ont également relevé qu'au moment des faits, il était sous influence du cannabis, de la méthadone et de l'alcool, l'alcoolémie relevée étant proche de 2 g o/oo.
C.
X._ forme un recours en matière pénale au Tribunal fédéral contre cet arrêt. En substance, il demande à ce qu'il soit constaté que l'arrêt précité établit, d'une part, de façon manifestement inexacte les faits sur la question de la légitime défense excessive et de la mise en danger de la vie d'autrui et, d'autre part, qu'il viole les art. 16 al. 1 et 129 CP. Pour le surplus, il conclut, principalement, à ce que le jugement de première instance soit confirmé en ce sens qu'il est mis au bénéfice de la légitime défense excessive et acquitté de l'infraction de mise en danger de la vie d'autrui et, subsidiairement, à l'annulation de l'arrêt cantonal et au renvoi de la cause à la cour cantonale pour nouveau jugement dans le sens des considérants. Il sollicite en outre l'assistance judiciaire.

Considérant en droit :
1.
Le recourant formule des conclusions en constatation de fait et de droit. Selon un principe général de procédure, les conclusions constatatoires ont un caractère subsidiaire (cf. <ref-ruling> consid. 4 p. 122). Or, les conclusions en réforme et en annulation prises par le recourant englobent les conclusions constatatoires susmentionnées, de sorte que celles-ci sont irrecevables.
2.
Mélangeant faits et droit, le recourant soutient que la cour cantonale aurait dû retenir qu'il a agi en état de légitime défense excusable lorsqu'il a tiré sur la victime.
2.1. Le Tribunal fédéral conduit son raisonnement sur la base des faits établis par la juridiction précédente (<ref-law>). Il ne peut s'en écarter que si ces faits ont été établis de façon manifestement inexacte - à savoir arbitraire (<ref-ruling> consid. 2.3 p. 266). Le grief d'arbitraire doit être invoqué et motivé de manière précise (<ref-law>). Le recourant doit exposer, de manière détaillée et pièces à l'appui, que les faits retenus l'ont été d'une manière absolument inadmissible, et non seulement discutable ou critiquable. Il ne saurait se borner à plaider à nouveau sa cause, contester les faits retenus ou rediscuter la manière dont ils ont été établis comme s'il s'adressait à une juridiction d'appel (<ref-ruling>). Le Tribunal fédéral n'entre pas en matière sur les critiques de nature appellatoire (<ref-ruling> consid. 2.3 p. 266).
2.2. Selon l'<ref-law>, quiconque, de manière contraire au droit, est attaqué ou menacé d'une attaque imminente a le droit de repousser l'attaque par des moyens proportionnés aux circonstances. Si l'auteur, en repoussant une attaque, a excédé les limites de la légitime défense au sens de l'art. 15, le juge atténue la peine (<ref-law>).
La légitime défense suppose une attaque, c'est-à-dire un comportement visant à porter atteinte à un bien juridiquement protégé, ou la menace d'une attaque, soit le risque que l'atteinte se réalise. Il doit s'agir d'une attaque actuelle ou à tout le moins imminente, ce qui implique que l'atteinte soit effective ou qu'elle menace de se produire incessamment (arrêt 6B_600/2014 du 23 janvier 2015 consid. 5.1 non publié à l'<ref-ruling>; <ref-ruling> consid. 2a p. 14). Une attaque n'est cependant pas achevée aussi longtemps que le risque d'une nouvelle atteinte ou d'une aggravation de celle-ci par l'assaillant reste imminent (<ref-ruling> consid. 2b p. 4 s.). S'agissant en particulier de la menace d'une attaque imminente contre la vie ou l'intégrité corporelle, celui qui est visé n'a évidemment pas à attendre jusqu'à ce qu'il soit trop tard pour se défendre; il faut toutefois que des signes concrets annonçant un danger incitent à la défense. La seule perspective qu'une querelle pourrait aboutir à des voies de fait ne suffit pas. Par ailleurs, l'acte de celui qui est attaqué ou menacé de l'être doit tendre à la défense. Un comportement visant à se venger ou à punir ne relève pas de la légitime défense; il en va de même du comportement qui tend à prévenir une attaque certes possible mais encore incertaine, c'est-à-dire à neutraliser l'adversaire selon le principe que la meilleure défense est l'attaque (<ref-ruling> p. 83).
2.3. La cour cantonale a considéré, à l'instar des juges de première instance, que le recourant avait fait l'objet d'une attaque de la victime lorsque celle-ci l'a projeté contre le mur ou la porte de l'ascenseur du centre commercial. En revanche, contrairement à ceux-ci, elle a écarté l'imminence de l'attaque, au motif qu'elle avait consisté en un unique geste de projection et s'était terminée par son accomplissement. Son appréciation se fonde essentiellement sur les images issues de la vidéosurveillance ainsi que sur les déclarations du recourant, considérées comme variées et hésitantes, ce qui constituait, selon la cour cantonale, une preuve supplémentaire qu'il n'avait aucune raison objective de penser que la victime allait s'en prendre à lui physiquement.
2.4. Le recourant soutient que l'appréciation des preuves aurait dû amener la cour cantonale à retenir que l'attaque était imminente. Il fait valoir que lorsqu'il a tiré le premier coup de feu, il n'a fait que se défendre, l'attaque étant toujours en cours. La victime était face à lui et n'était pas en train de s'en aller. Il ajoute qu'au vu de la rapidité de sa riposte, la cour cantonale aurait dû déduire que l'attaque était toujours en cours. Enfin, il lui reproche d'être tombée dans l'arbitraire en retenant que la présence de poudre à l'arrière des vêtements suggérait que la victime allait prendre la fuite.
L'essentiel de l'argumentation du recourant relève d'une libre discussion des faits et des preuves, celui-ci se contentant d'opposer sa propre appréciation à celle de la cour cantonale sans démontrer en quoi celle-ci serait arbitraire. Purement appellatoire, son argumentation est irrecevable. Au demeurant, supposés recevables, les griefs ne seraient pas fondés. En effet, examinant les images issues de la vidéosurveillance, la cour cantonale a relevé ce qui suit s'agissant du déroulement des événements immédiatement après que le recourant ait été projeté au sol: " Encore au sol, X._ se retourne et pointe son arme, qu'il tient avec la main droite, en direction de la victime laquelle fait un geste de recul. Tout en se relevant et en avançant, X._ saisit son arme avec les deux mains, les bras tendus en direction de B._ alors que celui-ci disparaît du champ de la caméra. La séquence durant laquelle on voit X._ pointer son revolver en direction de B._ dure moins de quatre secondes, puis X._ baisse son bras armé et le tient le long de son corps. La même séquence est filmée sous un autre angle. B._ fait un demi-tour et s'écroule, sur le dos, après deux pas " (arrêt attaqué, p. 16). Le recourant ne dit pas en quoi la cour cantonale aurait versé dans l'arbitraire en décrivant les images de vidéosurveillance. Sa requête générale tendant à ce que le Tribunal fédéral visionne lui-même les images est insuffisante à établir un quelconque arbitraire, faute de spécifier quel passage précisément aurait mal été décrit. Partant, la cour cantonale n'a pas versé dans l'arbitraire en retenant que la victime a fait un geste de recul au moment où le recourant a sorti son arme à feu et que rien ne laissait présager qu'elle s'apprêtait à l'attaquer. En effet, aucun élément ne laisse à penser, qu'à partir de ce moment, elle l'attaquait ou le menaçait d'une attaque imminente. Le recourant l'admet d'ailleurs lui-même lorsqu'il indique " Quand le premier coup de feu est tiré, Monsieur B._ est face au recourant [...] [il] ne s'avance effectivement pas [...] a le réflexe de s'écarter en voyant l'arme " (recours, p. 26). Enfin, contrairement à ce qu'il prétend, la cour cantonale pouvait sans arbitraire déduire de la trace de poudre à l'arrière des habits de la victime que celle-ci était sur le point de prendre la fuite.
2.5. Le recourant considère que la cour cantonale n'a pas suffisamment tenu compte du comportement de la victime. Il relate diverses agressions dont il aurait fait l'objet, par le passé, de la part de celle-ci, dont notamment une attaque au couteau. Il évoque également le crachat et l'agression verbale qu'il a subis à la caisse, peu avant les faits. Enfin, il fait également valoir qu'il a été attaqué, violemment et par surprise, par la victime. A bien le comprendre, il en déduit que ces éléments auraient dû amener la cour cantonale à considérer qu'il avait toutes les raisons de penser qu'après l'avoir projeté au sol, la victime allait à nouveau s'en prendre à lui avec un couteau et que, partant, l'attaque était imminente.
En évoquant les attaques subies par le passé, le recourant omet que les éléments déterminants pour examiner la question de la légitime défense sont ceux qui se sont éventuellement déroulés juste avant les faits. A cet égard, si on peut certes admettre qu'il a sans doute été perturbé par le comportement agressif et humiliant de la victime à la caisse, puis par son attaque à la hauteur de l'ascenseur du centre commercial, il n'en demeure pas moins, qu'au moment de tirer, il ne faisait pas l'objet d'une attaque actuelle ou imminente (cf. supra consid. 2.4). Pour le surplus, qu'il ait subi peu avant les faits diverses humiliations de la part de la victime ne constitue en aucun cas un fait justificatif.
2.6. Le recourant se prévaut de son état physique au moment des faits, lequel aurait eu pour conséquence d'amplifier son état de panique lors de l'agression. Ce faisant, il omet que l'état physique joue un rôle au stade de la fixation de la peine, dont il a été tenu compte en l'espèce (arrêt attaqué, p. 34), mais non quant à la qualification juridique de la légitime défense. Le grief est rejeté.
2.7. Au regard des éléments qui précèdent, la cour cantonale était fondée à retenir que le recourant n'avait pas fait l'objet d'une attaque actuelle ou imminente et que les conditions de la légitime défense (<ref-law>) n'entraient pas en considération. Il en découle que faute d'être en présence d'une attaque imminente, actuelle et concrète, donc d'une légitime défense, un éventuel excès dans son exercice au sens de l'<ref-law> n'a pas à être examiné, pas plus que la critique consistant à faire valoir que la cour cantonale a violé le droit en considérant que le recourant n'avait pas rendu vraisemblable l'existence d'un fait justificatif.
3.
Le recourant conteste l'infraction de mise en danger de la vie d'autrui.
3.1. L'<ref-law> réprime le comportement de celui qui, sans scrupules, aura mis autrui en danger de mort imminent. Du point de vue subjectif, il faut que l'auteur ait agi intentionnellement et que l'acte ait été commis sans scrupules (sur cette condition, voir <ref-ruling> consid. 2a p. 108). L'auteur doit avoir conscience du danger de mort imminent pour autrui et adopter volontairement un comportement qui le crée (<ref-ruling> consid. 2d p. 75 in fine). En revanche, il ne veut pas, même à titre éventuel, la réalisation du risque (<ref-ruling> consid. 3 p. 165).
Dans le cas particulier de l'usage d'une arme à feu, il est admis qu'il y a mise en danger de la vie d'autrui lorsque l'auteur tire un coup de feu à proximité d'une personne qui, par un mouvement inattendu, pourrait se trouver sur la trajectoire et recevoir un coup mortel. Il en va de même si l'auteur tire un coup de feu, sans viser personne, et que quelqu'un pourrait être frappé mortellement par un ricochet de la balle ( BERNARD CORBOZ, Les infractions en droit suisse, vol. I, 3 e éd., 2010, n° 19 ad <ref-law>; TRECHSEL/FINGERHUTH, Schweizerisches Strafgesetzbuch, Praxiskommentar, 2 e éd., 2012, n° 3 ad <ref-law>).
3.2. En l'espèce, il ressort de l'arrêt attaqué que le recourant a tiré cinq coups de feu dans un lieu public, qui plus est à une heure de forte affluence, sans connaissance aucune du maniement des armes. Il s'en est fallu de peu que deux projectiles qui ont, pour l'un pris la direction de la blanchisserie avant de traverser un bar, pour l'autre, été détourné par un panneau publicitaire derrière lequel se trouvait un enfant, atteignent une personne. Dans la mesure où le recourant soutient que les coups ne sont pas partis de façon aléatoire, qu'il n'avait pas pensé que ceux-ci puissent ricocher ou encore que lorsqu'il a tiré sur la victime, tous deux se trouvaient dans un couloir où il n'y avait personne, il s'écarte de l'état de fait de l'arrêt attaqué, sans pour autant démontrer que celui-ci était arbitraire. Il en va de même lorsqu'il allègue qu'il souffrait de différentes pathologies au moment des faits, la cour cantonale ayant relevé qu'à dires d'experts, il était parfaitement en contact avec la réalité.
3.3. Le recourant fait valoir que l'élément subjectif de l'infraction de mise en danger de la vie d'autrui n'est pas réalisé, en particulier l'absence de scrupules.
Sur le plan subjectif, celui qui, avec conscience et volonté, tire à plusieurs reprises dans un lieu public, fortement fréquenté, tient nécessairement pour possible qu'il puisse mettre concrètement la vie d'autrui en danger et l'accepte. Il faut donc admettre, à la suite de la cour cantonale, que le recourant a agi intentionnellement. Pour le surplus, son comportement traduit une absence de scrupules: il n'a eu aucune hésitation à mettre en danger la vie des personnes présentes dans le centre commercial en y tirant les coups de feu. En conséquence, c'est à juste titre que la cour cantonale a condamné le recourant pour mise en danger de la vie d'autrui.
4.
Le recours doit être rejeté dans la mesure où il était recevable. Comme les conclusions étaient vouées à l'échec, l'assistance judiciaire ne peut être accordée (<ref-law>). Le recourant, qui succombe, supportera les frais de justice (<ref-law>), dont le montant sera toutefois fixé en tenant compte de sa situation financière.

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté dans la mesure où il est recevable.
2.
La demande d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 1'600 fr., sont mis à la charge du recourant.
4.
Le présent arrêt est communiqué aux parties et à la Cour de justice de la République et canton de Genève, Chambre pénale d'appel et de révision.
Lausanne, le 7 octobre 2015
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Bichovsky Suligoj