{"id":16189380,"url":"https://github.com/caolan/chicken-android-template","last_synced_at":"2025-10-25T19:43:39.922Z","repository":{"id":65991221,"uuid":"67045874","full_name":"caolan/chicken-android-template","owner":"caolan","description":"A getting-started codebase for compiling Chicken for Android (with SDL2)","archived":false,"fork":false,"pushed_at":"2016-08-31T14:42:27.000Z","size":60,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-31T22:37:09.787Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"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/caolan.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":"2016-08-31T14:40:24.000Z","updated_at":"2019-05-20T17:07:48.000Z","dependencies_parsed_at":"2023-02-28T11:16:08.555Z","dependency_job_id":null,"html_url":"https://github.com/caolan/chicken-android-template","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/caolan/chicken-android-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caolan%2Fchicken-android-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caolan%2Fchicken-android-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caolan%2Fchicken-android-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caolan%2Fchicken-android-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caolan","download_url":"https://codeload.github.com/caolan/chicken-android-template/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caolan%2Fchicken-android-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281012083,"owners_count":26429437,"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","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-10-10T07:35:15.890Z","updated_at":"2025-10-25T19:43:39.894Z","avatar_url":"https://github.com/caolan.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Template for CHICKEN on Android\n\n[CHICKEN Scheme](call-cc.org) is a popular Scheme-to-C compiler. While\nCHICKEN runs well under Android, building and packaging it into an\nAndroid app, and getting its dynamic loaders and all these\nAndroid-nuisances out of the way is tedious.\n\nThis project aims to help in this project, and hopes to provide a way\nto bootstrap your CHICKEN Android projects quickly.\n\n## Prerequisites\n\n* Android [SDK](http://developer.android.com/sdk/) and\n  [NDK](http://developer.android.com/tools/sdk/ndk/) r10.\n* A [Chicken](http://code.call-cc.org) installation. Version 4.8.0 or\n  higher is recommended.\n* The `ssax`, `sxpath` and `sxml` eggs\n* `ndk-build` on your path\n\n## Getting started\n\n```\n$ # download SDL2 into ~/opt. See https://libsdl.org/download-2.0.php\n$ git clone https://github.com/chicken-mobile/chicken-android-template.git\n$ cd chicken-sdl2-android-template\n$ android update project -p .\n$ ln -s ~/opt/SDL2-2.0.0 jni/SDL # \u003c-- standard SDL2 instructions\n$ make #\u003c-- this takes very long\n```\n\nThe make command should build CHICKEN, SDL2 and some accompanying\neggs, and an apk. You can add egg dependencies for your app under\n`jni/entry/entry.meta`.\n\nThe template includes an `example.scm` that:\n\n- Renders a green square on a red background in a game-loop\n- Starts a REPL on port 1234\n\n## REPL fun\n\nHere's how you might want to setup your development process. You can\nconnect to the REPL remotely and do some rapid prototyping. For\nexample:\n\n```\n[me@laptop]$ nc 192.168.0.20 1234 #\u003c-- ip of my tablet on the same WiFi\n#;\u003e game-thread\n#\u003cthread: thread0\u003e\n#;\u003e render\n#\u003cprocedure (render)\u003e\n#;\u003e (define render void)\n#;\u003e ;; now my green rectangle has disappeared\n#;\u003e fps  ;; \u003c-- top-level variable updated every second by game-thread\n60\n```\n\nThis also works well with Emacs if you specify `nc \u003cip\u003e 1234` as your\nScheme interpreter (you might have to `C-q space` to force the spaces\nin the Emacs prompt).\n\n## android-chicken-install\n\nThe Makefiles compile its own cross-CHICKEN (tag 4.9.0.1). This\nCHICKEN provies `android-chicken-install` and friends, which work like\nyou're used to on your desktop. The CHICKEN tools are not built for\nthe target however, your app won't have csc, only `libchicken.so`.\n\n## Notes\n\nIf you rename your application package in AndroidManifest,\nchicken-core and eggs will have to be rebuilt from scratch. The\npackage-name is built into the target-CHICKEN so that it knows where\nto look for extensions.\n\nIf you want to install eggs in your app that are not released, adding\nthem to `entry.meta`, won't help. You can run your\n`android-chicken-install` directly, however, from your unrelease egg's\ndirectory. This is also useful if you need to patch official eggs and\ninstall these.\n\nNote that if the Cross-CHICKEN toolchain suceeds in installing an egg\nfor the host, but fails for the target build step - it will\nincorrectly assume the egg is installed and won't retry to install it\nfor the target. For now you'll have to use `android-chicken-uninstall`\nto retry installing failed eggs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaolan%2Fchicken-android-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaolan%2Fchicken-android-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaolan%2Fchicken-android-template/lists"}