{"id":19514015,"url":"https://github.com/nielsouvrard/epitech-macos","last_synced_at":"2025-04-15T20:20:50.311Z","repository":{"id":196985642,"uuid":"697670408","full_name":"NielsOuvrard/Epitech-MacOS","owner":"NielsOuvrard","description":"Short documentation about how to dump a mac, for Epitech students","archived":false,"fork":false,"pushed_at":"2023-10-20T21:11:51.000Z","size":393,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T00:51:16.076Z","etag":null,"topics":["epitech","macos"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NielsOuvrard.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-28T08:30:17.000Z","updated_at":"2025-02-10T08:54:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"67e129fb-5971-45f4-b6bb-d4654cb6b608","html_url":"https://github.com/NielsOuvrard/Epitech-MacOS","commit_stats":null,"previous_names":["nielsouvrard/epitech-macos"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NielsOuvrard%2FEpitech-MacOS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NielsOuvrard%2FEpitech-MacOS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NielsOuvrard%2FEpitech-MacOS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NielsOuvrard%2FEpitech-MacOS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NielsOuvrard","download_url":"https://codeload.github.com/NielsOuvrard/Epitech-MacOS/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249145882,"owners_count":21220052,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["epitech","macos"],"created_at":"2024-11-10T23:34:19.966Z","updated_at":"2025-04-15T20:20:50.278Z","avatar_url":"https://github.com/NielsOuvrard.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Epitech sur MacOS\n\n## Table of Contents\n- [Epitech sur MacOS](#epitech-sur-macos)\n  - [Table of Contents](#table-of-contents)\n- [Problèmes avec MacOS](#problèmes-avec-macos)\n  - [Les difficultées que vous allez rencontrer :](#les-difficultées-que-vous-allez-rencontrer)\n  - [Ce que je vous recommande :](#ce-que-je-vous-recommande)\n  - [Installation :](#installation)\n- [Solution 1 : Docker](#solution-1--docker)\n  - [Points positifs :](#points-positifs-)\n  - [Points Négatifs :](#points-négatifs-)\n  - [Installation :](#installation-1)\n- [Solution 2 : Machine Virtuelle (VM)](#solution-2-machine-virtuelle-vm)\n  - [Points Positifs :](#points-positifs)\n  - [Points Négatifs :](#points-négatifs--1)\n  - [Installation :](#installation-)\n- [Solution 3 : Machine à distance / Server](#solution-3-machine-à-distance--server)\n  - [Points positifs :](#points-positifs--1)\n  - [Points Négatifs :](#points-négatifs--2)\n  - [Installation :](#installation--1)\n\n# Problèmes avec MacOS\n\nLes projets Epitech seront corrigés sur un ordinateur sur Linux Fedora.\\\nSi vos programmes ne sont pas parfaits, certaines erreurs peuvent\nsurvenir.\\\nCelles-ci seront peut-être corrigés par MacOS. Votre programme\nfonctionnera sur votre mac, mais une fois corrigé... il y a tout qui\ncrash ! ­­­­­­\n\nPour repérer les erreurs, vous allez utiliser le logiciel Valgrind.\\\nCe logiciel existe pour les Mac avec les processeurs Intel (les anciens)\nmais pas avec les M1, M2...\n\n## Les difficultées que vous allez rencontrer :\n\nCertains projets ne seront juste pas faisables sans un réel PC Linux (à\nma connaissance) : Need4Stek\n\nPour les projets graphiques, vous devrez passer par votre Mac\ndirectement\n\n## Ce que je vous recommande :\n\nJe vous invite tous à installer **la solution sur Docker**, c'est la\nplus rapide et la plus simple a installer.\\\nEnsuite, si vous souhaiter plus de confort après la piscine, je vous\nrecommande d'essayer une VM.\\\nDe plus, avec un autre étudiant nous allons réaliser un cours (workshop)\nsur l'installation d'un server Ubuntu après votre piscine.\n\n## Installation :\n\nPour les logiciels suivants, ouvrez votre terminal et copiez les\ncommandes en vert.\n\n**HomeBrew** : gestionnaire de paquets, permet d'installer CSFML, SFML\net bien d'autres\\\n/bin/bash -c \\\"\\$(curl -fsSL\nhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\\\"\n\n**CSFML et SFML** (projets jeu vidéo)\n\nbrew install csfml\n\nbrew install sfml\n\nFacultatif : Un beau terminal avec **oh-my-zsh** :\\\nsh -c \\\"\\$(curl -fsSL\nhttps://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)\\\"\n\n# Solution 1 : Docker\n\nAvec Docker, votre mac va simuler le **processeur**, et le **système\nd'exploitation** linux Fedora.\n\n## Points positifs :\n\nTout ce qui fonctionnera dessus fonctionnera sur la mouli, et vous aurez\naccès à Valgrind !\n\n## Points Négatifs :\n\nC'est leeeeeeeeent ! Compiler sur Docker, surtout avec un processeur ARM\nest très lent, on parle de x10 à x50 en temps...\n\nCela peut dépanner, mais compilez pas en permanence avec.\n\nPas d'affichage graphique, donc pour les projets de jeu vidéo, il faudra\nfaire sans.\n\n## Installation :\n\nCommencez par créer votre clé ssh :\\\n\u003chttps://www.youtube.com/watch?v=X40b9x9BFGo\u003e\n\nDocker :\n\n\u003chttps://www.docker.com/\u003e\n\nLancez Docker une fois installé.\n\nEpitech Container:\\\n\u003chttps://github.com/LucasLeRay/EpitechDocker\u003e\n\nClonez le repo à la racine de votre espace de travail.\n\nDans le dossier du container, executez les commandes suivantes :\n\nmake build\n\nmake run\n\nVous êtes dans un environnement Fedora.\n\nEssayez la commande « valgrind \\--version », celle-ci devrait\nfonctionner, comme sur un Linux.\\\nLorsque vous souhaiterez relancer le container, ne faites que la\ncommande « make run ».\n\n# Solution 2 : Machine Virtuelle (VM)\n\nUne machine virtuelle, c'est bien différent d'un Docker.\\\nComme dit précédemment, Docker simule le système d'exploitation, et le\nprocesseur !**\\\n**Une VM quant à elle, ne simule **que le système d'exploitation**.\nAinsi, vous verrez bien votre linux avec un processeur « M1 ».\n\n## Points Positifs :\n\nValgrind existe bien sur les Linux ARM, hourra !\n\nAffichage graphique (mais je n'ai jamais réussi à faire tourner SFML\ndessus...)\n\n## Points Négatifs :\n\nJ'ai eu l'occasion de faire ma tek1 en grande partie sur Parallèle\nDesktop avec Fedora 16\\\nC'est un logiciel payant\n\nJ'ai eu de nombreux crash (je n'avais pas la dernière version de\nParallèle Desktop), peut-être 1 crash toutes les 5 heures\n\nDe nombreuses fonctionnalités de MacOS ne sont plus accessibles (pas de\ncopié collé entre les systèmes)\n\nJ'ai eu des soucis avec le clavier, entre ctrl et cmd\n\nJ'ai eu des soucis de couleurs, et de plein écran\\\n\\\nC'est très demandeur en ressources -\\\u003e ça chauffe, ça consomme de la\nbatterie...\n\nEt cela peut être lent\n\n## Installation :\n\nChoisissez le logiciel de votre choix, et installez-le :\n\nParallèle Desktop :\\\n\u003chttps://www.youtube.com/watch?v=QO2C14FiUMM\u003e\n\nVirtual Box :\n\n\u003chttps://www.youtube.com/watch?v=7RwS6WgLthk\u003e\n\nAutre...\n\n# Solution 3 : Machine à distance / Server\n\nQuoi de mieux pour **développer des logiciels sur linux**, que de\n**développer des logiciels sur linux **?\n\nOn parle d'un vieux pc (j'ai utilisé pendant 6 mois le PC du conseil\ngénéral, pas besoin de puissance...). On le formate avec un linux server\n(Ubuntu server, Fedora server... peu importe). On le relie au réseau\navec un câble Ethernet, on bidouille et TADAM !\n\nAvec une commande, on se connecte de notre Mac (a Epitech) avec notre PC\n(chez nous), et on peut coder (même avec VScode)\n\n## Points positifs :\n\nTout ce qui fonctionnera dessus fonctionnera sur la mouli, et vous aurez\naccès à Valgrind !\n\nC'est rapide ! Même avec un vieux pc, compiler du C est très rapide.\\\n(Si vous choisissez un PC un peu puissant (i3, i5), c'est encore mieux)\n\nVscode grâce à cette extension :\\\n\u003chttps://marketplace.visualstudio.com/items?itemName=ms-vscode.remote-explorer\u003e\n\n## Points Négatifs :\n\nPas d'affichage graphique, donc pour les projets de jeu vidéo, il faudra\nfaire sans.\n\nBesoin d'internet en permanence\n\n## Installation :\n\nNous réaliserons un cours (workshop) à ce sujet après votre piscine, en\nespérant vous y retrouver. Cependant, si vous souhaitez tout de même le\nfaire de votre côté, voici quelques indications sur comment s'y\nprendre :\n\n1 : Clé bootable -\\\u003e installez le système d'exploitation, puis\nconnectez-le au réseau\n\n2 : Ouvrez un port sur le server (Ubuntu server : avec **UFW**), le port\n22 par exemple\n\n3 : Ouvrez un port sur votre box internet, et redirigez les vers le port\n(22) de votre server\n\nEt on est bon, vous vous y connectez avec cette commande :\n\nssh user@ip -p port\n\n(Mettez bien l'adresse IP de votre box, pas votre IP local)\n\n**Par exemple :**\n\nssh \u003cadmin@192.168.0.1\u003e -p 22\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnielsouvrard%2Fepitech-macos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnielsouvrard%2Fepitech-macos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnielsouvrard%2Fepitech-macos/lists"}