{"id":13602086,"url":"https://github.com/antonym/squashible","last_synced_at":"2025-06-14T06:04:02.689Z","repository":{"id":19667402,"uuid":"22920833","full_name":"antonym/squashible","owner":"antonym","description":"Cross-Platform Linux Live Image Builder","archived":false,"fork":false,"pushed_at":"2021-04-04T13:59:58.000Z","size":277,"stargazers_count":20,"open_issues_count":0,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-06-11T10:13:05.397Z","etag":null,"topics":["ansible","boot","dracut","image","live","netboot"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/antonym.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}},"created_at":"2014-08-13T15:34:18.000Z","updated_at":"2023-12-21T16:57:13.000Z","dependencies_parsed_at":"2022-08-21T14:40:50.642Z","dependency_job_id":null,"html_url":"https://github.com/antonym/squashible","commit_stats":null,"previous_names":["antonym/squashible","squashible/squashible"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/antonym/squashible","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonym%2Fsquashible","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonym%2Fsquashible/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonym%2Fsquashible/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonym%2Fsquashible/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antonym","download_url":"https://codeload.github.com/antonym/squashible/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonym%2Fsquashible/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259768509,"owners_count":22908228,"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":["ansible","boot","dracut","image","live","netboot"],"created_at":"2024-08-01T18:01:13.842Z","updated_at":"2025-06-14T06:04:02.670Z","avatar_url":"https://github.com/antonym.png","language":"Shell","funding_links":[],"categories":["ansible","Shell"],"sub_categories":[],"readme":"# squashible\n\n### Cross-Platform Linux Live Image Builder\n\n## What is this?\n\nSquashible is a tool created to generate a bootable LiveOS rapidly and consistently\nacross multiple operating systems.  It primarily relies on dracut to boot the\nLiveOS.\n\nIt utilizes docker to create enough operating system for Ansible to function and\napply all configuration changes from that point.  It then packages up the build into\na vmlinuz, an initrd.img, and a rootfs.img.\n\nThis is a work in progress.  Things will probably blow up.\nPull requests and issues welcome!\n\n## Getting Started\n\n### Requirements\n\nRecommended Build Server Versions:\n\n    Fedora 23\n    Ubuntu 15.10\n\nRequired Packages:\n\n    Ansible \u003e= 2.0.1.0\n    Docker\n\n### Building an image\n\nEdit the group_vars/all file and set the appropriate settings.  Recommended\nsettings to change are:\n\n|variable|description|\n|--------|-----------|\n| live_os | set to one of the listed supported_live_os |\n| user_ssh_keys | set the public ssh keys you'd like to inject |\n\nTo run squashible:\n\n    ansible-playbook -i hosts_generator.py \u003cplaybook.yml\u003e\n\nAvailable playbooks to run:\n\n|type|description|\n|----|-----------|\n| squashible.yml | minimal install |\n| squashible_kvm.yml | minimal install + kvm + nova compute |\n| squashible_xen.yml | minimal install + xen + nova compute |\n\nOutput of the build will be put into {{ outputpath }} which by default is\n./live_output directory.\n\n### Booting the images\n\nHere are some examples for booting the image once you've generated one:\n\n#### iPXE\n\n    kernel http://$deployment_server/images/images/fedora-23-kvm/vmlinuz\n    module http://$deployment_server/images/images/fedora-23-kvm/initrd.img\n    imgargs vmlinuz root=live:http://$deployment_server/images/fedora-23-kvm/rootfs.img ip=dhcp nameserver=8.8.8.8 nomodeset rd.writable.fsimg rd.info rd.shell\n\n#### kexec\n\n    kexec -l vmlinuz —initrd=initrd.img \\\n    —command-line=“root=live:http://$deployment_server/images/fedora-23-kvm/rootfs.img \\\n    ip=dhcp nameserver=8.8.8.8 rd.writable.fsimg rd.info rd.shell”\n    kexec -e\n\n### Logging into the image\n\nYou can use the user live and the password live from the console.  The user is disabled from remote ssh access.  If you want to log in remotely, be sure to set a\npublic ssh key in group_vars/all.\n\n### Known Issues\n\nOpenSUSE currently has issues booting due to the DHCP daemon it uses.\n\n### Test using iPXE Squashible Boot Images\n\nThese iPXE disks will automatically load into boot.squashible.com.  These contain live images that have been generated for demonstration puposes.  Make sure you\nassign 4GB to 8GB of RAM for the images to load properly.  If you run into any errors or kernel panics, usually the cause is not enough memory being available.\n\n| Type | Bootloader | Description |\n|------|------------|-------------|\n|ISO| [boot.squashible.com.iso](http://boot.squashible.com/ipxe/boot.squashible.com.iso)| Used for CD/DVD, Virtual CDs like DRAC/iLO, VMware, Virtual Box|\n|USB| [boot.squashible.com.usb](http://boot.squashible.com/ipxe/boot.squashible.com.usb)| Used for creation of USB Keys|\n|Kernel| [boot.squashible.com.lkrn](http://boot.squashible.com/ipxe/boot.squashible.com.lkrn)| Used for booting from GRUB/EXTLINUX|\n|DHCP| [boot.squashible.com.kpxe](http://boot.squashible.com/ipxe/boot.squashible.com.kpxe)| DHCP boot image file, uses built-in iPXE NIC drivers|\n|DHCP-undionly | [boot.squashible.com-undionly.kpxe](http://boot.squashible.com/ipxe/boot.squashible.com-undionly.kpxe)| DHCP boot image file, use if you have NIC issues|\n\nYou can also chainload into boot.squashible.com if you already have [netboot.xyz](http://netboot.xyz):\n\n    chain --autofree http://boot.squashible.com\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantonym%2Fsquashible","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantonym%2Fsquashible","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantonym%2Fsquashible/lists"}