{"id":21590298,"url":"https://github.com/svelterust/esp32","last_synced_at":"2025-04-10T22:17:46.579Z","repository":{"id":210279158,"uuid":"616180187","full_name":"svelterust/esp32","owner":"svelterust","description":"Rust with Xtensa support Nix using flakes.","archived":false,"fork":false,"pushed_at":"2024-09-09T08:32:08.000Z","size":12,"stargazers_count":13,"open_issues_count":1,"forks_count":14,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T22:17:41.815Z","etag":null,"topics":["esp32","rust"],"latest_commit_sha":null,"homepage":"","language":"Nix","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/svelterust.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-03-19T20:43:06.000Z","updated_at":"2025-03-29T12:24:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"17c6253d-4797-46d7-8166-206f8a6b94fa","html_url":"https://github.com/svelterust/esp32","commit_stats":null,"previous_names":["knarkzel/esp32","svelterust/esp32"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/svelterust%2Fesp32","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/svelterust%2Fesp32/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/svelterust%2Fesp32/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/svelterust%2Fesp32/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/svelterust","download_url":"https://codeload.github.com/svelterust/esp32/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248305855,"owners_count":21081576,"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":["esp32","rust"],"created_at":"2024-11-24T16:17:35.110Z","updated_at":"2025-04-10T22:17:46.535Z","avatar_url":"https://github.com/svelterust.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# esp32\n\nRust with Xtensa support for Nix using flakes.\n\n```\n$ nix flake show github:knarkzel/esp32\n└───packages\n    └───x86_64-linux\n        └───esp32: package 'esp32'\n$ nix build github:knarkzel/esp32#esp32\n$ ls -a result\n.  ..  .cargo  .rustup\n```\n\n## Minimal example\n\n```nix\n{\n  inputs = {\n    nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n    esp32 = {\n      url = \"github:knarkzel/esp32\";\n      inputs.nixpkgs.follows = \"nixpkgs\";\n    };\n  };\n\n  outputs = {\n    self,\n    nixpkgs,\n    esp32,\n  }: let\n    pkgs = import nixpkgs {system = \"x86_64-linux\";};\n    idf-rust = esp32.packages.x86_64-linux.esp32;\n  in {\n    devShells.x86_64-linux.default = pkgs.mkShell {\n      buildInputs = [\n        idf-rust\n      ];\n\n      shellHook = ''\n        export PATH=\"${idf-rust}/.rustup/toolchains/esp/bin:$PATH\"\n        export RUST_SRC_PATH=\"$(rustc --print sysroot)/lib/rustlib/src/rust/src\"\n      '';\n    };\n  };\n}\n```\n\n## Getting started\n\nUse the above flake, then follow the [Rust on ESP Book](https://esp-rs.github.io/book/writing-your-own-application/generate-project-from-template.html).\n\n## Notes\n\nWhen building from source, you need a huge amount of memory, about 36 GB.\nTo create temporary swap, use following commands:\n\n```\n$ fallocate -l 36G /tmp/swap; mkswap /tmp/swap; swapon /tmp/swap\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsvelterust%2Fesp32","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsvelterust%2Fesp32","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsvelterust%2Fesp32/lists"}