{"id":18331091,"url":"https://github.com/dahliaos/fimage","last_synced_at":"2025-04-09T11:12:51.282Z","repository":{"id":49630341,"uuid":"281807062","full_name":"dahliaOS/fimage","owner":"dahliaOS","description":"Portable Fuchsia Emulator","archived":false,"fork":false,"pushed_at":"2022-12-30T09:35:49.000Z","size":128956,"stargazers_count":282,"open_issues_count":7,"forks_count":21,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-05-22T19:42:11.498Z","etag":null,"topics":["emulator","fimage","fuchsia","google","gui","hacktoberfest"],"latest_commit_sha":null,"homepage":"https://docs.dahliaos.io/os/fimage","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dahliaOS.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}},"created_at":"2020-07-22T23:52:10.000Z","updated_at":"2024-05-20T20:10:45.000Z","dependencies_parsed_at":"2023-01-31T11:15:23.234Z","dependency_job_id":null,"html_url":"https://github.com/dahliaOS/fimage","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dahliaOS%2Ffimage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dahliaOS%2Ffimage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dahliaOS%2Ffimage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dahliaOS%2Ffimage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dahliaOS","download_url":"https://codeload.github.com/dahliaOS/fimage/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248027411,"owners_count":21035594,"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":["emulator","fimage","fuchsia","google","gui","hacktoberfest"],"created_at":"2024-11-05T19:28:01.250Z","updated_at":"2025-04-09T11:12:51.265Z","avatar_url":"https://github.com/dahliaOS.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\ntitle: Portable Fuchsia Emulator (FImage)\npermalink: os/fimage.html\nsummary: Explanation of the FImage tool, and its usage\n---\n## Portable Fuchsia Emulator (FImage)\n### Note\nFImage is provided for the convenience of developers and enthusiasts who don't want to compile Fuchsia.\nWe are in no way affiliated Google. For more information, see [fimage/LICENSE](https://github.com/dahliaOS/fimage/blob/master/LICENSE).                 \nThe windows method is highly unstable and should only be used if you cannot install or boot into linux on your device.\n\n### TL;DR\n* The FImage emulator can be downloaded [here](https://github.com/dahliaOS/fimage/releases).\n* For more information on the Fuchsia Emulator, see [this document](https://fuchsia.dev/fuchsia-src/concepts/emulator).\n\nTo quickly run FImage, use the commands below inside of its folder:\n```bash\n./ffx-linux-x64 platform preflight\n./network-config\n./fimage-gui 4096\n```\n\nSee [Explore Fuchsia](https://fuchsia.dev/fuchsia-src/get-started/explore_fuchsia) for tips on what you can do next.\nWhen you're done, you can clean up via `dm shutdown`.\n\n### Recommended Requirements\n* linux\n    * 8GiB of RAM or more\n    * an Intel processor produced after 2010 (If you have a dedicated GPU)\n    * A 4th generation Intel processor (If you do not have a dedicated GPU) (Ivy Bridge *technically* works, but has all sorts of visual bugs)\n    * Ubuntu 20.04 or equivalent\n    * curl, unzip,git\n    * Up-to-date graphics drivers\n\n* windows (wsl2)\n    * Windows 10/11 build that supports wsl2 with wslg.\n    * Ubuntu 20.04 wsl2 with wslg\n    * 16GiB of RAM or more\n\n# linux\n\n### Fimage Quick Start\nFirst, download the latest Fimage tool at [fimage/releases](https://github.com/dahliaOS/fimage/releases).\nExtract the file `fimage-\u003cversion\u003e.zip` and go into the fimage folder. \n\nBegin by checking your hardware, using the provided `ffx` tool. [FFX Documentation on fuchsia.dev](https://fuchsia.dev/fuchsia-src/reference/tools/sdk/ffx)\n```bash\n./ffx-linux-x64 platform preflight\n```\nThis will print information about the hardware and software. If you are missing any dependencies or lacking hardware, it will let you know. The most common error is related to a lack of a supported GPU, to negate this, FImage uses software rendering by default, which may affect performance. If you have a supported GPU (Intel Ivy Bridge or newer), use the `fimage-gui-hostGPU` script to run FImage.\n\nAfter following the instructions generated by the ffx preflight checks, you will need to configure networking, using the command below. This will configure the network interfaces for FEMU.\n```bash\n./network-config\n```\nFinally, the emulator is ready to run! Select one of the different launch options and use that to launch the emulator.\n\nThe command syntax is the same for each option. For example, to launch an FImage instance with 4GiB of RAM and a GUI, use:\n```bash\n./fimage-gui 4096\n```\nThe launch options are as follows:\n* fimage-headless - Fuchsia emulator using only the command line\n* fimage-gui - Fuchsia emulator with the FEMU interface and the Ermine user shell\n* fimage-gui-hostGPU - Same as fimage-gui, using hostGPU; if supported\n\n### FImage on dahliaOS Linux-based Builds\n\nFimage can be installed on dahliaOS Linux with:\n```bash\ndap install fimage\n```\n\n### Flutter Development with FImage\nA guide to Flutter development with FImage can be found here: [Setting up FImage for Application Development](/developer/fimage-setup)\n\n\n# Windows (wsl2)\n\nA **WIP** script is in testing thats should enable to atleast boot fuchsia in the terminal. Booting fuchsia with the fimage gui is possible but highly unstable.\n\n### Fimage Quick Start\n\nFirst install wsl2 on windows by opening **powershell** or **windows terminal** and running this command.\n```bash\nwsl --install\n```\n\nAfter that reboot your machine and open up again  **powershell** or **windows terminal** and running the first command to use fimage in cli mode **recommended** or the second command to use fimage in gui mode. If you use the gui mode and close fimage make sure you run the reset command afterwards.\n\n**cli command**\n```bash\nwget https://docs.dahliaos.io/scripts/fimage/windows/wsl2/launch.sh \u0026\u0026 sudo chmod +x launch.sh; sudo ./launch.sh -cli\n```\n\n**gui command**\n```bash\nwget https://docs.dahliaos.io/scripts/fimage/windows/wsl2/launch.sh \u0026\u0026 sudo chmod +x launch.sh; sudo ./launch.sh -gui\n```\n\n**reset command**\n```bash\nwget https://docs.dahliaos.io/scripts/fimage/windows/wsl2/launch.sh \u0026\u0026 sudo chmod +x launch.sh; sudo ./launch.sh -reset\n```\n\nCommand-line interface in gnome-terminal\n### Known Issues\n* Flutter development doesn't work yet, due to [a bug in the Flutter tool that escapes IPv6 addresses improperly](https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=77566)\n* Performance when drawn with the software GPU is expectedly awful\n* Mouse input is laggy\n* Terminal application within ermine crashes (Fuchsia bug?); negated by pressing enter in the terminal FEMU was launched from.\n* Extreme jank on Ivy Bridge devices using host GPU\n\n### compiling Fuchsia for Fimage\nFollow the documented steps from fuchsia.dev and then set the full target with tools, `fx set workstation.qemu-x64 --with-base=//bundles:tools`\n\nexport FUCHSIA_SSH_CONFIG=\"/Users/nmcain/fuchsia/out/default/ssh-keys/ssh_config\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdahliaos%2Ffimage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdahliaos%2Ffimage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdahliaos%2Ffimage/lists"}