{"id":15562411,"url":"https://github.com/longsleep/snappy-odroidc","last_synced_at":"2025-07-15T04:05:23.330Z","repository":{"id":33122241,"uuid":"36761325","full_name":"longsleep/snappy-odroidc","owner":"longsleep","description":"Build Ubuntu Snappy OEM snap and device part for ODROID C1.","archived":false,"fork":false,"pushed_at":"2016-01-06T23:09:42.000Z","size":189,"stargazers_count":16,"open_issues_count":1,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-29T04:48:19.231Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Makefile","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/longsleep.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}},"created_at":"2015-06-02T20:56:23.000Z","updated_at":"2023-09-08T16:58:16.000Z","dependencies_parsed_at":"2022-09-12T17:22:22.489Z","dependency_job_id":null,"html_url":"https://github.com/longsleep/snappy-odroidc","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/longsleep%2Fsnappy-odroidc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Fsnappy-odroidc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Fsnappy-odroidc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Fsnappy-odroidc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/longsleep","download_url":"https://codeload.github.com/longsleep/snappy-odroidc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249192367,"owners_count":21227771,"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-10-02T16:14:13.458Z","updated_at":"2025-04-16T03:47:44.942Z","avatar_url":"https://github.com/longsleep.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ODRDOID Snappy builder\n\nScripts to build [Ubuntu Snappy](http://developer.ubuntu.com/snappy/) OEM and device part for [ODROID C1](http://www.hardkernel.com/main/products/prdt_info.php?g_code=G141578608433).\n\n## Requirements\n\nTo build all parts, a couple of dependencies are required. On Ubuntu you can\ninstall all build dependencies with the following command.\n\n```bash\nsudo apt-get install build-essential u-boot-tools lzop debootstrap debootstrap gcc-arm-linux-gnueabihf\n```\n\n## Building\n\nA `Makefile` is provided to build U-Boot, Kernel and Initrd from source. The\nsources will be cloned into local folders if not there already.\n\nThe U-Boot provided by Hardkernel is lacking features to support Ubuntu Snappy\nand is based on a very old U-Boot version. For now, i have backported the\nmissing required features in [my own U-Boot tree](https://github.com/longsleep/u-boot-odroidc).\n\nSimilar to U-Boot, the Kernel provided by Hardkernel is lacking latest\nAppArmor support. I have a [ODROIDC Kernel tree](https://github.com/longsleep/ubuntu-odroidc)\nwith the changes for ODROIDC from Hardkernel merged together with AppArmor\nupstream.\n\nTo build it all, just run `make`. This will produce a oem snap `odroidc_x.y_all.snap`\nand a `device-odroidc.tar.gz` device part, which can be used to build your own\nUbuntu Snappy image for ODROID C1.\n\n### Build OEM snap\n\nYou can build the OEM snap seperately too. The OEM snap contains the U-Boot,\nso make sure you have build the U-Boot first with `make u-boot`.\n\n```bash\nmake oem\n```\n\nThe OEM snap, contains also a boot.ini which overwrites certain variables to\nmake Snappy work with the U-Boot v2011.03. This is quite hacky but for now\nseems to be the only possible option. In addition, the OEM snap contains the\nbinary proprietary boot loader code which bootstraps the SOC. On build, this\nboot code is split up as required by the hardware platform.\n\n### Build device part\n\nOf course the device part can be built seperately as well. The device part\ncontains the Linux kernel and modules, so make sure to have built the Linux\nKernel first with `make linux`.\n\n```bash\nmake device\n```\n\nThe device part contains the Linux Kernel in the U-Boot compatible format, the\ncompiled device tree, the Kernel modules and the initial ram disk. As there\ndoes not seem to be any reasonable way to build the initrd, it is extracted\nfrom the preinstalled Ubuntu Snappy Core tar and repacked without Kernel and\nmodules.\n\n## Build ODROID-C development image\n\nMake sure you have build the OEM snap and the device part first. You will also\nneed to have the [snappy-tools](https://developer.ubuntu.com/en/snappy/start/)\ninstalled. Then you can simply create the image with `ubuntu-device-flash`.\n\n```bash\nsudo ubuntu-device-flash core \\\n\t--channel stable \\\n\t--oem odroidc_0.5_all.snap \\\n\t--device-part device-odroidc_0.5.tar.xz \\\n\t--developer-mode \\\n\t-o odroidc-15.04-stable-dev.img \\\n\t15.04\n```\n\n## Build ODROID-C image for production\n\nTo build an Ubuntu Snappy image without developer mode, the OEM snap needs to\ncome from the store. The ODROID-C oem snap is available in the store as\n`odroidc.longsleep`. You still need to build a device tarball.\n\n```bash\nsudo ubuntu-device-flash core \\\n\t--channel stable \\\n\t--oem odroidc.longsleep \\\n\t--device-part device-odroidc_0.5.tar.xz \\\n\t-o odroidc-15.04-stable.img \\\n\t15.04\n```\n\n## Flash to SD card\n\nFlash this to SD or eMMC and your ODROID will boot into Snappy. DHCP will be\nused for ethernet networking. Default user is `ubuntu` with password `ubuntu`.\n\nEnjoy!\n\n--\nSimon Eisenmann \u003csimon@longsleep.org\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flongsleep%2Fsnappy-odroidc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flongsleep%2Fsnappy-odroidc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flongsleep%2Fsnappy-odroidc/lists"}