{"id":13513979,"url":"https://github.com/qqmajikpp/FBT-AARCH64","last_synced_at":"2025-03-31T02:33:12.734Z","repository":{"id":149898043,"uuid":"622193615","full_name":"qqmajikpp/FBT-AARCH64","owner":"qqmajikpp","description":"This is a setup script that sets up the toolchain for ARM devices, allowing the use of FBT","archived":false,"fork":false,"pushed_at":"2023-07-13T20:07:55.000Z","size":81,"stargazers_count":17,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-02-14T13:29:06.388Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qqmajikpp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-04-01T11:59:01.000Z","updated_at":"2024-02-08T07:47:42.000Z","dependencies_parsed_at":"2024-01-06T22:44:51.726Z","dependency_job_id":null,"html_url":"https://github.com/qqmajikpp/FBT-AARCH64","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qqmajikpp%2FFBT-AARCH64","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qqmajikpp%2FFBT-AARCH64/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qqmajikpp%2FFBT-AARCH64/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qqmajikpp%2FFBT-AARCH64/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qqmajikpp","download_url":"https://codeload.github.com/qqmajikpp/FBT-AARCH64/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246407400,"owners_count":20772126,"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":[],"created_at":"2024-08-01T05:00:41.705Z","updated_at":"2025-03-31T02:33:08.269Z","avatar_url":"https://github.com/qqmajikpp.png","language":"Shell","funding_links":[],"categories":["Off-device \u0026 Debugging"],"sub_categories":["*Development*","Development"],"readme":"# FBT-AARCH64\nThis is a setup script that sets up the toolchain for ARM devices, allowing the use of the Flipper Build Tool.\n \n### This script\n- was created in collaboration with E_Surge\n- assumes you are running a Debian variant of Linux\n- is designed to run on 64-bit AARCH64 systems\n- assumes APT is your package manager\n\n### Usage\nClone this repo or download the script separately to your ARM device, give execute permission to the script, and run.\n\n### What does this script do?\nDuring execution of the setup script, you will be prompted to run a pre-setup script.\n\nThis pre-setup script will remove some symlinks from `/usr/bin` including files referencing `arm-none-eabi`.\n\nAdditionally, this script will remove the following packages from your system:\n- gcc-arm-none-eabi\n- libnewlib-arm-none-eabi\n- libnewlib-dev\n- libstdc++-arm-none-eabi-newlib\n\nRunning the pre-setup is optional but with the risk of the packages conflicting with a successful execution of the Flipper Build Tool.\n\nAfter the pre-setup is complete, the setup script will update your system packages, and install the following packages:\n- python3\n- python3-dev\n- python3-pip\n- nanopb\n- libprotobuf23\n- libprotoc23\n- protobuf-compiler\n\nAlso, it'll install the following Python modules:\n- nanopb == 0.4.7\n- protobuf == 3.20.3\n- heatshrink2 == 0.12.0\n- scons == 4.5.2\n- ansi == 0.3.6\n- colorlog == 6.7.0\n- pillow == 9.4.0\n\nAfter the packages and Python modules are installed, the script will download the **GNU Arm Embedded GCC v10.3.1-2.1** toolchain from a third-party GitHub repo, available [here](https://github.com/xpack-dev-tools/arm-none-eabi-gcc-xpack). The toolchain is extracted to `/usr/share/` and symlinks are created in `/usr/bin/`.\n\nOnce the script is complete, you can clone the FlipperZero Firmware repo, and run FBT with `FBT_NOENV=1 ./fbt` or use the modified `fbt` from the repo.\n\nWhen you get your shiny new dist folder, you can find the dfu inside. If you want to use the aarch64 device to flash your Flipper,\nput your Flipper into DFU mode as outlined in the Flipper Docs, change to the directory where you new dfu is located and run\n`dfu-util -D (FirmwareName).dfu -a 0` to flash you flipper. When the upload is complete, simply reboot your Flipper.\n\nGood Luck \u0026 Have Fun\n\nShout outs to E_Surge, the whole RogueMaster Crew, and the Rabbit-Labs Crew\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqqmajikpp%2FFBT-AARCH64","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqqmajikpp%2FFBT-AARCH64","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqqmajikpp%2FFBT-AARCH64/lists"}