{"id":24165961,"url":"https://github.com/farazmd/packer-pi-ubuntu","last_synced_at":"2025-06-17T09:32:08.665Z","repository":{"id":270771463,"uuid":"896692856","full_name":"farazmd/packer-pi-ubuntu","owner":"farazmd","description":"Packer code base to build/customize Ubuntu raspberry pi server images","archived":false,"fork":false,"pushed_at":"2025-01-03T00:47:16.000Z","size":13,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-12T20:13:20.583Z","etag":null,"topics":["packer","raspberry-pi","ubuntu-server"],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/farazmd.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-01T03:38:17.000Z","updated_at":"2025-01-03T00:47:21.000Z","dependencies_parsed_at":"2025-01-03T01:30:40.645Z","dependency_job_id":"87d3c755-01d9-47a1-9ca8-5335be2e0ba3","html_url":"https://github.com/farazmd/packer-pi-ubuntu","commit_stats":null,"previous_names":["farazmd/packer-pi-ubuntu"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farazmd%2Fpacker-pi-ubuntu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farazmd%2Fpacker-pi-ubuntu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farazmd%2Fpacker-pi-ubuntu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farazmd%2Fpacker-pi-ubuntu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/farazmd","download_url":"https://codeload.github.com/farazmd/packer-pi-ubuntu/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241476435,"owners_count":19968916,"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":["packer","raspberry-pi","ubuntu-server"],"created_at":"2025-01-12T20:13:25.391Z","updated_at":"2025-03-02T07:50:58.079Z","avatar_url":"https://github.com/farazmd.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# packer-pi-ubuntu\n\nPacker code base to build/customize Ubuntu raspberry pi server images\n\n## Overview\n\nThe project makes use of the [Ubuntu Raspberry Pi server images](https://ubuntu.com/download/raspberry-pi) to build custom image files\nto run on the raspberry-pi platform.\n\n## Setup\n\n- Uses the `mkaczanowski/packer-builder-arm` docker image - [info](https://github.com/mkaczanowski/packer-builder-arm)\n- Uses the [ansible-role-os-user](https://github.com/farazmd/ansible-role-os-user) to create the admin user.\n- Create a `ubuntu.auto.pkrvars.hcl` file with the following required variables\n  ```shell\n    image_name = \u003coutput name of the image\u003e\n    base_dir_name = \u003ca custom directory to store config and tool\u003e\n    admin_user = \u003cadmin user to create to access to server\u003e\n    admin_user_group = \u003cadmin user group to create\u003e\n    additional_groups = \u003ca list of additional groups to add to the admin user\u003e. eg - [\"sudo\"]\n    ssh_pub_key = \u003cthe ssh public key to add to the authorized_keys of the admin user\u003e\n    no_cloud_url = \u003ccloud init's NoCloud Datasource url to provide runtime cloud init config. Will fallback to default cloud init config if does not exists\u003e\n    no_cloud_file_path = \u003clocal cloud-init userdata and metadata path. Falls back to this if no_cloud_url does not exist\u003e\n  ```\n- Create a directory called `images`. This is where the final build images will be stored.\n- Run the following command\n    ```shell\n        docker run --rm --privileged -v /dev:/dev -v $(pwd):/build mkaczanowski/packer-builder-arm:latest build .\n    ```\n\n- Once the image is created, you can write the file to an SD card and run it on a raspberry-pi.\n- Connect to the raspberry-pi via ssh using the private key and `admin_user`\n\n## Configuration\n\n- You can add additional shell execution scripts as needed or modify existing ones to add more tools, etc\n- You can also customize [NoCloud Configuration](https://cloudinit.readthedocs.io/en/latest/reference/datasources/nocloud.html) as needed.\n  - There are 3 configs present\n    - nocloud with user creation\n    - nocloud with no user creation\n    - no cloud with just the datasource defined\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarazmd%2Fpacker-pi-ubuntu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffarazmd%2Fpacker-pi-ubuntu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarazmd%2Fpacker-pi-ubuntu/lists"}