{"id":28389516,"url":"https://github.com/trycua/packer-plugin-lume","last_synced_at":"2025-06-27T17:31:51.646Z","repository":{"id":283296099,"uuid":"944105063","full_name":"trycua/packer-plugin-lume","owner":"trycua","description":"Packer plugin for Lume","archived":false,"fork":false,"pushed_at":"2025-04-19T18:33:40.000Z","size":104,"stargazers_count":10,"open_issues_count":1,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-31T10:59:19.333Z","etag":null,"topics":["apple","lume","packer","plugin","virtualization"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trycua.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":"2025-03-06T19:45:34.000Z","updated_at":"2025-05-15T12:17:47.000Z","dependencies_parsed_at":"2025-03-19T14:41:10.474Z","dependency_job_id":null,"html_url":"https://github.com/trycua/packer-plugin-lume","commit_stats":null,"previous_names":["trycua/packer-plugin-lume"],"tags_count":0,"template":false,"template_full_name":"hashicorp/packer-plugin-scaffolding","purl":"pkg:github/trycua/packer-plugin-lume","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trycua%2Fpacker-plugin-lume","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trycua%2Fpacker-plugin-lume/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trycua%2Fpacker-plugin-lume/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trycua%2Fpacker-plugin-lume/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trycua","download_url":"https://codeload.github.com/trycua/packer-plugin-lume/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trycua%2Fpacker-plugin-lume/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262301836,"owners_count":23290148,"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":["apple","lume","packer","plugin","virtualization"],"created_at":"2025-05-31T01:37:00.707Z","updated_at":"2025-06-27T17:31:51.638Z","avatar_url":"https://github.com/trycua.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003ch1\u003e\n  \u003cdiv class=\"image-wrapper\" style=\"display: inline-block;\"\u003e\n    \u003cpicture\u003e\n      \u003csource media=\"(prefers-color-scheme: dark)\" alt=\"logo\" height=\"150\" srcset=\"img/logo_white.png\" style=\"display: block; margin: auto;\"\u003e\n      \u003csource media=\"(prefers-color-scheme: light)\" alt=\"logo\" height=\"150\" srcset=\"img/logo_black.png\" style=\"display: block; margin: auto;\"\u003e\n      \u003cimg alt=\"Shows my svg\"\u003e\n    \u003c/picture\u003e\n  \u003c/div\u003e\n\n  [![Go](https://img.shields.io/badge/Go-00ADD8?logo=go\u0026logoColor=white\u0026labelColor=00ADD8)](#)\n  [![macOS](https://img.shields.io/badge/macOS-000000?logo=apple\u0026logoColor=F0F0F0)](#)\n  [![Discord](https://img.shields.io/badge/Discord-%235865F2.svg?\u0026logo=discord\u0026logoColor=white)](https://discord.com/invite/mVnXXpdE85)\n\u003c/h1\u003e\n\u003c/div\u003e\n\n**packer-plugin-lume** is a Packer plugin for building macOS and Linux VM images with [Lume](https://github.com/trycua/cua/tree/main/libs/lume) on Apple Silicon. It provides automated VM creation and provisioning through Lume's CLI/API.\n\n## Installation\n\n### Prerequisites\n\n```bash\n# Install Go\nbrew install golang\n\n# Install Packer\nbrew tap hashicorp/tap\nbrew install hashicorp/tap/packer\n```\n\n### Steps\n\n1. Install Lume if you haven't already:\n\n```bash\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/lume/scripts/install.sh)\"\n```\n\n2. Obtain a macOS IPSW restore image:\n```bash\n# Get the latest macOS IPSW download URL\nlume ipsw\n\n# Download the IPSW image (this may take a while)\ncurl -o macOS.ipsw [URL from previous command]\n```\n\n3. Build and install the plugin:\n\n```bash\nmake dev\n```\n\n4. Navigate to the `bin` directory and customize `variables.hcl` with your desired configuration and full path to the IPSW image:\n```bash\ncd bin\n\n# Edit variables.hcl to set vm_name, cpu_count, memory, and path of a IPSW image.\n```\n\n## Usage Example\n\nRun the build:\n\n```bash\npacker build -var-file=variables.hcl macOS-15.arm64.lume.prepare-01.pkr.hcl\n```\n\n## Configuration Reference\n\n### Builder Configuration\n\n| Parameter | Description | Type | Default |\n|-----------|-------------|------|---------|\n| `vm_name` | Name for the VM | string | Required |\n| `vm_base_name` | Base VM to clone | string | Optional |\n| `ipsw` | Path to IPSW file or 'latest' | string | Optional |\n| `cpu_count` | Number of CPU cores | number | 4 |\n| `memory` | Memory size | string | \"4GB\" |\n| `disk_size` | Disk size | string | \"40GB\" |\n| `display` | Display resolution | string | \"1024x768\" |\n| `headless` | Run without display | boolean | false |\n| `recovery_mode` | Start in recovery mode | boolean | false |\n| `ssh_username` | SSH username | string | Required |\n| `ssh_password` | SSH password | string | Required |\n| `ssh_timeout` | SSH connection timeout | string | \"10m\" |\n\n## Contributing\n\nWe welcome and greatly appreciate contributions to packer-plugin-lume! Whether you're improving documentation, adding new features, fixing bugs, your efforts help make this packer plugin better for everyone.\n\nJoin our [Discord community](https://discord.com/invite/mVnXXpdE85) to discuss ideas or get assistance.\n\n## Acknowledgements\n\nThe macOS boot command setup were adapted from the excellent work by [Cirrus Labs](https://github.com/cirruslabs/macos-image-templates), which is licensed under the [MIT License](https://github.com/cirruslabs/macos-image-templates/blob/master/LICENSE). Proper attribution is provided in accordance with the license terms.\n\nThanks to [PrashantRaj18198](https://github.com/PrashantRaj18198) for starting off the work to port the Tart Packer plugin to Lume.\n\n## License\n\nThis project is licensed under the MPL-2.0 License - see the [LICENSE](LICENSE) file for details.\n\n## Trademarks\n\nApple, macOS, and Apple Silicon are trademarks of Apple Inc. Ubuntu and Canonical are registered trademarks of Canonical Ltd. This project is not affiliated with, endorsed by, or sponsored by Apple Inc. or Canonical Ltd. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrycua%2Fpacker-plugin-lume","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrycua%2Fpacker-plugin-lume","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrycua%2Fpacker-plugin-lume/lists"}